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

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

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

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

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

Возможно, что-то я и упустил... Если вспомню - напишу еще...
...
Рейтинг: 0 / 0
15.10.2009, 07:46
    #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
15.10.2009, 08:10
    #36252048
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с подключением баз!
Всем большое спасибо за советы!
Я не так давно занимаюсь фоксом, по этому не всё так просто =( Я покапалась в файлах и нашла теже таблице (которые используются в клипере) на фокс про. Мне нужно эти таблицы как то с сервера взять в свою базу, и вывести на форму в виде грида. Как это сделать? Причем эти таблицы должны оставаться на сервере.
...
Рейтинг: 0 / 0
15.10.2009, 09:12
    #36252118
Помогите с подключением баз!
TeddyMUM Я покапалась в файлах и нашла те же таблице (которые используются в клипере) на фокс про.
То есть без мемо-полей (нет файлов *.dbt)? Это уже лучше... :)

TeddyMUM Мне нужно эти таблицы как то с сервера взять в свою базу, и вывести на форму в виде грида. Как это сделать? Причем эти таблицы должны оставаться на сервере.
Легко, грузить данные прямо с сервера:
Код: plaintext
1.
2.
3.
private PathToData = "\\server\folder\subfolder\"
Use (PathToData+"table.dbf") in  0  shared
&& затем отображаем данные таблицы в гриде, но для этого хелп есть 
...
Рейтинг: 0 / 0
16.10.2009, 09:23
    #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
16.10.2009, 10:47
    #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
19.10.2009, 13:20
    #36259325
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с подключением баз!
А есть ли возможность в фоксе 9.0 брать данные с сетевого диска, например, таблицы? Если можно то где нужно прописать путь к этим таблицам, что бы потом можно было данные таблицы отобразить в гриде. в каком событие?
...
Рейтинг: 0 / 0
19.10.2009, 13:25
    #36259339
Помогите с подключением баз!
TeddyMUMА есть ли возможность в фоксе 9.0 брать данные с сетевого диска, например, таблицы?Можно. Если можно то где нужно прописать путь к этим таблицам, что бы потом можно было данные таблицы отобразить в гриде. в каком событие?Там же где и к локальным. Таблица на сетевом диске отличается от локальной только длиной пути к ней.
...
Рейтинг: 0 / 0
19.10.2009, 14:11
    #36259536
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с подключением баз!
Извените за такой, наверное, нелепый вопрос, но где прописывается путь к локальным таблицам?=( Просто я вот указала путь сохранения и вообще хранения своей базы в file locations (tools-options...) и я как то не заморачивалася на счет подключения локальных таблиц. =(
...
Рейтинг: 0 / 0
19.10.2009, 15:39
    #36259846
pitermax
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с подключением баз!
use путь до таблицы\имя таблицы
...
Рейтинг: 0 / 0
19.10.2009, 17:12
    #36260210
?
?
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с подключением баз!
Всообщении 7788536 уже был ответ на этот вопрос.
...
Рейтинг: 0 / 0
20.10.2009, 12:36
    #36261692
TeddyMUM
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с подключением баз!
Всем большое спасибо за помощь!!!
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с подключением баз! / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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