|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
По требованию заказчика, необходимо использовать DBF FoxPro 2.6 в проекте, написанном на FoxPro 9.0. Вопрос: 1 Как добавить DBF (DBF находятся удаленно на сервере) 2 Можно ли добавить DBF в контейнер FoxPro 9.0 3 Как быть с кодовой страницей DBF 2.6 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 10:04 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_Aleks, Наверное заказчик хочет данные из таблицы FPD 2.6, а не саму таблицу Ручками создаёте аналог таблицы в контейнере и затем через APPEND FROM добавляете данные если будет необходимость, то используете параметр Код: c# 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 10:33 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
alextashk, Может просто через config указать путь к таблицам, и использовать их. Но есть проблема Fox 9.0 ругается что к нему подключают Fox 2.6, APPEND FROM – решит эту проблему? Что за параметр [AS nCodePage], поподробнее!? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 10:52 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Еще, DBFы 2.6 используются другой программой. Мне нужно в 9.0 для статистики! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 10:55 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksМне нужно в 9.0 для статистики!Значит, постоянный доступ к ним Вам не нужен. Делаете свои таблицы, отдельные, и с необходимой частотой в заранее определённые периоды (чтобы, к примеру, не напороться на exclusive lock старой программой) доливаете в них новые записи из базовых таблиц. А уж потом со своей копией делайте что хотите... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 11:27 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksЕще, DBFы 2.6 используются другой программой. Мне нужно в 9.0 для статистики!Тогда вообще можно даже не делать аналоги таблиц FPD, а воспользоваться ADODB и просто тянуть информацию запросами через соответствующие драйверы ( 1 2 ) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 11:31 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksНо есть проблема Fox 9.0 ругается что к нему подключают Fox 2.6 Как ругается? Матом? :) Напиши код который ты понимаешь под словом "подключают" и какое сообщение об ошибке. подключать ничего не куда не надо, надо просто открыть таблицу: Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:27 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Dima T Код: sql 1.
а то мало ли что... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:34 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Где можно скачать нормальные драйвера для DBF 2.6 и для DBC 9.0, скиньте ссылку!!! И что за ошибка ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:37 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksГде можно скачать нормальные драйвера для DBF 2.6 и для DBC 9.0, скиньте ссылку!!! Глупостями не занимайся, не надо никаких ODBC дров, фокс без них отлично работает с DBF. см. выше ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:40 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Dima T, Да, я чего-то запаниковал. И правда открывается, и все ок. А если у таблицы нет codepage, что делать? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:44 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksА если у таблицы нет codepage, что делать?stff cpzero.prg ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:46 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
tanglir, Даже для таблиц 2.6!? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:51 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Dima T, Сори я затупил. Я таблицы не просто открывал а добавлял их в контейнер, вот он и ругался ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:54 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksДаже для таблиц 2.6!?Досовскому фоксу ЕМНИП начхать на указание кодировки, он понимает только 866. Так что если вместо нуля в байте(ах? не помню), отвечающем за кодировку, прописать номер досовской кодировки, то ничего страшного не случится. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 12:57 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksDima T, Сори я затупил. Я таблицы не просто открывал а добавлял их в контейнер, вот он и ругался Не надо их в контейнер добавлять. Просто открывай. Закрывать не забывай :) С кодировкой скорее всего проблемы будут, fpd в заголовок кодовую страницу не писал. два варианта: 1. конвертировать при чтении cpconvert(866, 1251, MyTable.MyField) 2. Поправить заголовок с помощью DO CPZERO или так Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Работе проги на FPD это никак не повредит. заголовок будет поправленным до тех пор пока в FPD не запустят команду PACK (и будут помеченные на удаления записи) проверить стоит или нет кодовая страница в заголовке с помощью CPDBF() - вернет 866 значит стоит. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 13:11 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
tanglirAleks_AleksДаже для таблиц 2.6!?Досовскому фоксу ЕМНИП начхать на указание кодировки, он понимает только 866. Так что если вместо нуля в байте(ах? не помню), отвечающем за кодировку, прописать номер досовской кодировки, то ничего страшного не случится. 29 или 30 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 13:15 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Dima T, С этой функцией разобрался: cpconvert(866, 1251, MyTable.MyField) С этой тоже: func SetCP866 А вот cpzero чего-то не работает !!! Что нужно сделать, что бы заработало? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 14:23 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksА вот cpzero чего-то не работает Тут 13048733 привели аналог cpzero. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 14:55 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksDima T, С этой функцией разобрался: cpconvert(866, 1251, MyTable.MyField) С этой тоже: func SetCP866 А вот cpzero чего-то не работает !!! Что нужно сделать, что бы заработало? SetCP866 делает тоже самое что и cpzero, просто cpzero универсальнее, оно другие кодовые страницы может ставить. Но на практике проблемы только с 866 бывают. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 15:12 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Dima T, Еще такой вопрос, не могу допереть, походу переработал))) А как при открытии формы, изменить кодовую страницу ? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 16:38 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_AleksDima T, Еще такой вопрос, не могу допереть, походу переработал))) А как при открытии формы, изменить кодовую страницу ? в DE.BeforeOpenTables() или Init() формы например. Не знаю как у тебя эта таблица открывается, в общем логика такая: открыть, проверить, если надо закрыть, поставить и снова открыть. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Кстати учти что SetCP866() не сможет поправить заголовок если кто-то еще открыл эту DBF даже в расшаренном режиме. И постарайся долго не держать открытыми DBF-ки от чужой проги, запросто может оказаться что там есть моменты когда она использует монопольное открытие (например проиндексировать решат), а тут твоя прога файл открытым держит и мешает. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 17:04 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Aleks_Aleks, А что, просто COPY TO .... AS ..... уже не работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 17:19 |
|
DBF из 2.6 в 9,0
|
|||
---|---|---|---|
#18+
Jonny540Aleks_Aleks, А что, просто COPY TO .... AS ..... уже не работает? В данном случае нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2012, 17:33 |
|
|
start [/forum/topic.php?fid=41&fpage=53&tid=1583491]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 155ms |
0 / 0 |