powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с подключением баз!
15 сообщений из 15, страница 1 из 1
Помогите с подключением баз!
    #36250447
TeddyMUM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем дня!
Пожалуйста подскажите мне, как можно к базе фокспро подключить др. базу?
В организации, где я работаю, много программ написанный на клиперре. Теперь эти программы переносят в фокс. Так вот, на сервере лежат таблицы (dbf) в них вся важная информация. Ими пользуются все программы клиперра. Мне нужно в фокс (9.0) подключить несколько таких таблиц, что бы можно было просматривать и выбирать нужные данные. Как организовать подключение таблиц?
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36250520
TeddyMUMКак организовать подключение таблиц?Какое еще подключение? Просто открываешь и выбираешь нужные данные.
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36251448
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проходящий.,

Дополню. Не о команде USE ли вопрошал ТС?
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36252017
TeddyMUM,

Клиппер была достаточно продвинутой системой. Обеспечивалась совместимость с различными "типами" dBase-подобных систем. Эта совместимость обеспечивалась специальными драйверами.
Поэтому надо посмотреть какие у вас файлы:
1. Если имеются файлы *.dbf, *.fpt, *.idx, *.cdx, котрые не создавались вами, а были изначально, то считайте, что вам повезло - преобразований не потребуется, так как это файлы, совместимые с FoxPro 2.x

2. Если же файлы *.dbf, *.dbt, *.ntx, *.ndx (*.mdx), то вам не повезло и предстоит большая работа.
В принципе, если не планируется совместная работа Фоксового и Клипперного варианта программ, то Фокс автоматически может преобразовать клипперные базы в свой формат.

Если же совместная работа планируется, то требуются преобразования. Есть несколько подводных камней в этом процессе:
1) у Фокса и Клиппера несовместимые форматы файлов для хранения мемо-поля. Поэтому, мемо перекачивать будет проблематично... Можно написать конвертер на Клиппере, который будет, используя разные драйвера, перекачивать данные мемо-полей из "клипперного" формата в "фоксовый"...
2) У Клиппера длина символьного поля может быть больше 254 символов, в Фоксе же такое ограничение зашито жестко.
3) индексы фокса и клиппера несовместимы, надо их создавать/пересоздавать "руками"...

Возможно, что-то я и упустил... Если вспомню - напишу еще...
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36252026
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Станислав С...кийTeddyMUM,
Клиппер была достаточно продвинутой системой.

Но самое неприятное - DOS-кодировка в клипперных таблицах. Байт 29 в заголовке клипперной таблицы равен 0, т.е. кодовая страница не указана вообще и VFP при попытке USE будет назойливо спрашивать, какую кодовую страницу присвоить данному файлу. Чтобы раз и навсегда убить эти поползновения VFP, следует предварительно прописать 29-й байт КАЖДОЙ таблицы нужной кодовой страницей 866. Это можно сделать простейшим кодом на низком уровне.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
  
han=FOPEN('MyTable.dbf', 12 )  
IF han< 0   
   =MESSAGEBOX('Не могу открыть MyTable.dbf !', 0 ,'')  
   RETURN  
ENDIF  
FSEEK(han, 29 , 0 )  
FWRITE(han,CHR(0x65), 1 ) &&  65  - code page  866  (Russian DOS)  
                                    && C9 - code page  1251  (Russian Windows)  
FCLOSE(han)
После этого таблица нормально открывается из VFP командой USE.
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36252048
TeddyMUM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем большое спасибо за советы!
Я не так давно занимаюсь фоксом, по этому не всё так просто =( Я покапалась в файлах и нашла теже таблице (которые используются в клипере) на фокс про. Мне нужно эти таблицы как то с сервера взять в свою базу, и вывести на форму в виде грида. Как это сделать? Причем эти таблицы должны оставаться на сервере.
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36252118
TeddyMUM Я покапалась в файлах и нашла те же таблице (которые используются в клипере) на фокс про.
То есть без мемо-полей (нет файлов *.dbt)? Это уже лучше... :)

TeddyMUM Мне нужно эти таблицы как то с сервера взять в свою базу, и вывести на форму в виде грида. Как это сделать? Причем эти таблицы должны оставаться на сервере.
Легко, грузить данные прямо с сервера:
Код: plaintext
1.
2.
3.
private PathToData = "\\server\folder\subfolder\"
Use (PathToData+"table.dbf") in  0  shared
&& затем отображаем данные таблицы в гриде, но для этого хелп есть 
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36254722
leaf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 reware

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
han=FOPEN('MyTable.dbf', 12 )  
IF han< 0   
   =MESSAGEBOX('Не могу открыть MyTable.dbf !', 0 ,'')  
   RETURN  
ENDIF  
FSEEK(han, 29 , 0 )  
FWRITE(han,CHR(0x65), 1 ) &&  65  - code page  866  (Russian DOS)  
                                    && C9 - code page  1251  (Russian Windows)  
FCLOSE(han)

4 года без фокса ...
все прекрасно. сам так писал
но ... на этом форуме подсказали, что если версии последние то проже пользоваться оператором
TRY, вроде тот что обрабатывает ошибки
и потом ... не обязательно в "чужом" файле свои страницы ставить ...
можно выбирать в курсор
можно cpconvert использовать ... set exlusive off\on
set codepage
и может в последних версиях даже есть параметр кодовой страницы в use
не помню )))
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36254934
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leaf4 года без фокса ...
все прекрасно. сам так писал
но ... на этом форуме подсказали, что если версии последние то проже пользоваться оператором
TRY, вроде тот что обрабатывает ошибки
и потом ... не обязательно в "чужом" файле свои страницы ставить ...
можно выбирать в курсор
можно cpconvert использовать ... set exlusive off\on
set codepage
и может в последних версиях даже есть параметр кодовой страницы в use
не помню )))

А вы попробуйте хотя бы часть собственных советов на практике.
SELECT...INTO CURSOR все равно выдает запрос на указание конкретной кодовой страницы.
SELECT CPCONVERT() AS...INTO CURSOR - аналогично.
SET EXCLUSIVE тут вообще мимо кассы.
Конструкция TRY...CATCH...ENDTRY отработает вам ошибочную ситуацию, но в данном случае никакой ошибки и не будет, просто назойливо появится запрос фокса для выбора нужной кодовой страницы, штатная ситуация.
Насчет сказочных возможностей команды USE в VFP9 вас, мягко говоря, ввели в заблуждение.
Ну, да, конечно, всегда хочется верить в то, что пока ты тут плюшками балуешься, кто-то уже давно изобрел изяЧный способ с помощью одной команды перевернуть мир. Увы.
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36259325
TeddyMUM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А есть ли возможность в фоксе 9.0 брать данные с сетевого диска, например, таблицы? Если можно то где нужно прописать путь к этим таблицам, что бы потом можно было данные таблицы отобразить в гриде. в каком событие?
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36259339
TeddyMUMА есть ли возможность в фоксе 9.0 брать данные с сетевого диска, например, таблицы?Можно. Если можно то где нужно прописать путь к этим таблицам, что бы потом можно было данные таблицы отобразить в гриде. в каком событие?Там же где и к локальным. Таблица на сетевом диске отличается от локальной только длиной пути к ней.
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36259536
TeddyMUM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извените за такой, наверное, нелепый вопрос, но где прописывается путь к локальным таблицам?=( Просто я вот указала путь сохранения и вообще хранения своей базы в file locations (tools-options...) и я как то не заморачивалася на счет подключения локальных таблиц. =(
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36259846
pitermax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
use путь до таблицы\имя таблицы
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36260210
?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
?
Гость
Всообщении 7788536 уже был ответ на этот вопрос.
...
Рейтинг: 0 / 0
Помогите с подключением баз!
    #36261692
TeddyMUM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем большое спасибо за помощь!!!
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с подключением баз!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]