Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

снова 866 и 1251

0 views
Skip to first unread message

Dmitry V.K.

unread,
Jul 19, 2001, 4:03:56 AM7/19/01
to
Здрасте Всем!
может я повторяюсь, но НАДО:(
есть рабочая база (постоянно обновляется) с CodePage=866, и есть VFP6 из
которого надо смотреть на базу-866 и делать в ней изменения (как то : пометки
на удаление и тп).
как это лучше сделать? уж больно не хочется копировать из 866-базы в
1251-базу, а потом отслеживать были ли изменения в 866-базе...

- Лучше промолчи! Знаешь, сколько стоит разговор? ... (Л.Кэррол:)

Alex Shustikov

unread,
Jul 19, 2001, 5:45:47 AM7/19/01
to
Привет

в config.fpw в VFP каталоге засунь
CODEPAGE=1251
VFP при этом будет нормально работать и с 866 и с 1251

Alex

Dmitry V.K.

unread,
Jul 19, 2001, 6:16:07 AM7/19/01
to
Hi Alex,

Thu Jul 19 2001 13:45, Alex Shustikov wrote to All:

AS> From: "Alex Shustikov" <ale...@bsr.ee>

AS> Привет

AS> в config.fpw в VFP каталоге засунь
AS> CODEPAGE=1251
AS> VFP при этом будет нормально работать и с 866 и с 1251

AS> Alex

засунул, положил рядом с ехе-шником, запустил - и ничего:(((

German Zinov'evich

unread,
Jul 19, 2001, 6:52:36 AM7/19/01
to
> Здрасте Всем!
> может я повторяюсь, но НАДО:(
> есть рабочая база (постоянно обновляется) с CodePage=866, и есть VFP6 из
> которого надо смотреть на базу-866 и делать в ней изменения (как то :
пометки
> на удаление и тп).
> как это лучше сделать? уж больно не хочется копировать из 866-базы в
> 1251-базу, а потом отслеживать были ли изменения в 866-базе...
Я бы воспользовался шрифтами для отображения 866 кодировки...
В заначке есть три шрифта, пробовал сам - получалось нормально.
Успехов. Герман.


Dmitry V.K.

unread,
Jul 19, 2001, 7:31:21 AM7/19/01
to
Hi German,

GZe> Я бы воспользовался шрифтами для отображения 866 кодировки...
GZe> В заначке есть три шрифта, пробовал сам - получалось нормально.
GZe> Успехов. Герман.

что за шрифты и как ты их используешь, в гриде или еще где???

Alex Pichkur

unread,
Jul 19, 2001, 7:43:33 AM7/19/01
to
Привет,

"Dmitry V.K." <d...@vkab.kazan.ru> wrote in message
news:9j6c24$b6$3...@www.fido-online.com...
> AS> CODEPAGE=1251
Это только устанавливает текущую страницу, нужно что б страница была
прописана в таблице, найди прогу из дистрибутива cpzero.prg она
устанавливает указанную страницу для файла. Можно просто открыть таблицу
экслюзивно в вижуале, тогда если страница не прописана он (фокс) тебя о ней
спросит и пропишет. Текущую страницу для таблицы выдает cpdbf(), для работы
с разными кодировками посмотри другие функции LIKE("cp*")

Я не пробовал но если сделать
CODEPAGE=866
то может тоже получится

WBR, Alex.

Dmitry V.K.

unread,
Jul 19, 2001, 8:30:10 AM7/19/01
to
Hi Alex,

AP> Это только устанавливает текущую страницу, нужно что б страница была
AP> прописана в таблице, найди прогу из дистрибутива cpzero.prg она
AP> устанавливает указанную страницу для файла. Можно просто открыть таблицу
AP> экслюзивно в вижуале, тогда если страница не прописана он (фокс) тебя о
AP> ней спросит и пропишет. Текущую страницу для таблицы выдает cpdbf(), для
AP> работы
AP> с разными кодировками посмотри другие функции LIKE("cp*")

AP> Я не пробовал но если сделать
AP> CODEPAGE=866
AP> то может тоже получится

AP> WBR, Alex.

ну нельзя мне ЭКСКЛЮЗИВНО ЕЁ открывать!

Alex Shustikov

unread,
Jul 19, 2001, 9:56:04 AM7/19/01
to
> ну нельзя мне ЭКСКЛЮЗИВНО ЕЁ открывать!

Один раз придется. Если в заголовке таблицы не прописана страница, то VFP ее
понимает непонятно какой.
Если же стоит 866 или 1251, то и VFP и FPD 2.6 будут читать ее нормально

Alex


Светлана Фрейдман

unread,
Jul 19, 2001, 2:33:56 PM7/19/01
to
Если кодовая страница прописана в досовской таблице, то никаких проблем
не возникает. Если же кодовая страница не была указана, устанавливать
ее при работающем дос-приложении не безопасно. Из VFP можно обращаться
к таблицам через View, для текстовых полей использовать oemtoansi() или
cpconvert()
--
Светлана Фрейдман
Отправлено через сервер Talk.Ru - http://www.talk.ru

Dmitry V.K.

unread,
Jul 20, 2001, 3:13:53 AM7/20/01
to
Hi усем!,-)

всем спасибо за обсуждение данной темы. забабахал вьюху с cpconvert(),
поставил галочки в Update Criteria - всё замечательно работает, занося все
изменения из вьюшки в родительскую БД-866!:)))

Igor Shanuk

unread,
Jul 20, 2001, 2:58:00 AM7/20/01
to
Hi, Dmitry!

19 Июля 2001г. (Четверг) Dmitry V.K. писал All:

DK> есть рабочая база (постоянно обновляется) с CodePage=866, и есть VFP6 из
DK> которого надо смотреть на базу-866 и делать в ней изменения (как то :
DK> пометки на удаление и тп). как это лучше сделать? уж больно не хочется
DK> копировать из 866-базы в 1251-базу, а потом отслеживать были ли изменения
DK> в 866-базе...

А вчем проблема, собственно? VFP нормально работает с таблицами CP866.

WBR&W, Igor Shanuk

Paul Prikhodko

unread,
Aug 23, 2001, 3:46:00 AM8/23/01
to

"Alex Shustikov" <ale...@bsr.ee> сообщил/сообщила в новостях следующее:
news:9j6orq$57a$1...@news.gamma.ru...

А что делать, когда в 866 пишет clipper?


Alex Shustikov

unread,
Aug 23, 2001, 5:07:17 AM8/23/01
to
> А что делать, когда в 866 пишет clipper?
Для VFP проблема не в том, что в заголовке стоит 866. Такие таблицы он
понимает прекрасно. Проблема когда кодовая страница НЕ ПРОПИСАНА вообще.
Стоит попробовать прописать 866 страницу. Вероятнее всего клиппер будет
нормально с этим работать. Но точно сказать не могу- с клиппером дела не
имею

Alex


Paul Prikhodko

unread,
Aug 23, 2001, 5:49:57 AM8/23/01
to

"Alex Shustikov" <ale...@bsr.ee> сообщил/сообщила в новостях следующее:
news:9m2h0o$1ri0$1...@news.gamma.ru...

Я пробовал прописывать, он в следующий раз опять такая фигня. :(
Ему нельзя сказать напрямую, что это база в 866?


Alex Pichkur

unread,
Aug 23, 2001, 6:10:17 AM8/23/01
to

"Paul Prikhodko" <prik...@optima.odessa.ua> wrote in message
news:9m2jhq$jn$1...@news.ukr.net...

>
> "Alex Shustikov" <ale...@bsr.ee> сообщил/сообщила в новостях следующее:
> news:9m2h0o$1ri0$1...@news.gamma.ru...
> > Стоит попробовать прописать 866 страницу. Вероятнее всего клиппер будет
> > нормально с этим работать. Но точно сказать не могу- с клиппером дела не
> > имею
>
> Я пробовал прописывать, он в следующий раз опять такая фигня. :(
> Ему нельзя сказать напрямую, что это база в 866?
Клиппер "нормально" сносит кодовую страницу к той самой бабушке

не знает клиппер никаких страниц, до 5-й версии точно не знал, дальше я уже
не знаю

играться прийдется в вижуале, с помощью CPCONVERT, может быть еще SET
NOCPTRANS на что нибудь сгодится... если нет возможности или желания
прописать код страницы в таблицу.

Счасливо

Michael Drozdov

unread,
Aug 23, 2001, 6:08:04 AM8/23/01
to
Привет, Paul.

Thu Aug 23 2001 13:49, Paul Prikhodko wrote to All:

PP> Я пробовал прописывать, он в следующий раз опять такая фигня. :(
PP> Ему нельзя сказать напрямую, что это база в 866?

Если кодовая страница не указана в заголовке, а CPCURRENT() всё равно
какая-то, то вот и проблемы... см. на http://vfpdmur.narod.ru/docs/cpcl_r.html
Code Page и Collating Sequence - ряд замечаний относительно использования Code
Page и Collate Sequence

см. также в MSDN:
- Q129631 "Understanding Code Pages in Visual FoxPro"
- Q181085 "BUG: SET COLLATE & Queries - Additional Problem Scenarios"
Table File Structure (.dbc, .dbf, .frx, .lbx, .mnx, .pjx, .scx, .vcx) - [29
Code page mark]
- ...

Если CP в заголовке не задана, хм... то CPCONVERT() по символьным полям,
однако... есть ещё правда SET NOCPTRANS ... но чегой-то я сомневаюсь...

Best regards.
Михаил Дроздов, ИВС Софт, Пермь, Россия
[Michael Drozdov, ICS Soft, Perm, Russia]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Mailto:Dro...@ics.perm.su
My Page: http://vfpdmur.narod.ru/
ICS Page: http://ics.perm.ru/ [on Russian]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Thu Aug 23 2001 13:49, Paul Prikhodko wrote to All:

PP> From: "Paul Prikhodko" <prik...@optima.odessa.ua>

PP> "Alex Shustikov" <ale...@bsr.ee> сообщил/сообщила в новостях следующее:
PP> news:9m2h0o$1ri0$1...@news.gamma.ru...

>> > А что делать, когда в 866 пишет clipper?
>> Для VFP проблема не в том, что в заголовке стоит 866. Такие таблицы он

>> понимает прекрасно. Проблема когда кодовая страница HЕ ПРОПИСАHА вообще.


>> Стоит попробовать прописать 866 страницу. Вероятнее всего клиппер будет

>> нормально с этим работать. Hо точно сказать не могу- с клиппером дела не
>> имею

PP> Я пробовал прописывать, он в следующий раз опять такая фигня. :(
PP> Ему нельзя сказать напрямую, что это база в 866?

Hаилучшие пожелания

Pirozhkoff Vadim

unread,
Aug 23, 2001, 8:56:33 AM8/23/01
to
Привет Paul

У меня получилась такая штука тут минут за 15, если устроит
Взял таблицу, сохранил как 866, потом вытер 29 байт получил
эффект клипера, далее что бы ее увидеть делаешь следующее

Set Exclusive OFF

select * from Clipper into cursor _

copy to x866 as 1251

x=fopen('x866.dbf',2)
fseek(x,29)
fwrite(x,chr(101),1)
fclose(x)

select * from x866 nowait
use in x866
use in Clipper

Пирвжков Вадим
pi...@kurgan.isp.ru

Thu Aug 23 2001 13:49, Paul Prikhodko wrote to All:

PP> From: "Paul Prikhodko" <prik...@optima.odessa.ua>

PP> "Alex Shustikov" <ale...@bsr.ee> сообщил/сообщила в новостях следующее:
PP> news:9m2h0o$1ri0$1...@news.gamma.ru...

>> > А что делать, когда в 866 пишет clipper?
>> Для VFP проблема не в том, что в заголовке стоит 866. Такие таблицы он

>> понимает прекрасно. Проблема когда кодовая страница HЕ ПРОПИСАHА вообще.


>> Стоит попробовать прописать 866 страницу. Вероятнее всего клиппер будет

>> нормально с этим работать. Hо точно сказать не могу- с клиппером дела не
>> имею

PP> Я пробовал прописывать, он в следующий раз опять такая фигня. :(
PP> Ему нельзя сказать напрямую, что это база в 866?

Paul Prikhodko

unread,
Aug 27, 2001, 10:58:37 AM8/27/01
to

"Pirozhkoff Vadim" <pi...@kurgan.isp.ru> сообщил/сообщила в новостях
следующее: news:9m2ukn$8v$1...@www.fido-online.com...

> Привет Paul
>
> У меня получилась такая штука тут минут за 15, если устроит
> Взял таблицу, сохранил как 866, потом вытер 29 байт получил
> эффект клипера, далее что бы ее увидеть делаешь следующее
>
> Set Exclusive OFF
>
> select * from Clipper into cursor _
>
> copy to x866 as 1251
>
> x=fopen('x866.dbf',2)
> fseek(x,29)
> fwrite(x,chr(101),1)
> fclose(x)
>
> select * from x866 nowait
> use in x866
> use in Clipper

Все это классно, а если база ~50 метров и изменяется постоянно?

Michael Filippov

unread,
Sep 4, 2001, 7:22:40 AM9/4/01
to
Здравствуй, "Paul Prikhodko" <prik...@optima.odessa.ua>! Я сейчас наверное
скажу какую-нибудь глупость:

>
> "Pirozhkoff Vadim" <pi...@kurgan.isp.ru> сообщил/сообщила в новостях
> следующее: news:9m2ukn$8v$1...@www.fido-online.com...
> > Привет Paul
> >
> > У меня получилась такая штука тут минут за 15, если устроит
> > Взял таблицу, сохранил как 866, потом вытер 29 байт получил
> > эффект клипера, далее что бы ее увидеть делаешь следующее
> Все это классно, а если база ~50 метров и изменяется постоянно?
Возможно ест такой вариант:
Клипер работает с таблицами монопольно?
Если да, то ни что не мешает нам выставить(ополся его работы) в его рабочих
таблицах кодовую страницу.
Ежели нет, то есть 3 варианта - писать на том же клипере, на FPD и на VFP с
codepage=866
И еще вариант использовать nocptran.
Других вариантов я просто не вижу.

--
От имени семейки Адамсов настучал Michael.
ICQ: 22643703


0 new messages