Работа с таблицами SQL в VIP

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Работа с таблицами SQL в VIP

Сообщение evchic »

Суть вопроса такова:
Возможно ли из VIP получить доступ к таблице находящийся в другой БД на SQL сервере...
Версия галактики не имеет значение... Если можно то как? Через OLE-обьекты? Кто знает подскажите пожалуйста!!!
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

ну вы же всегда можете подключить свою dll( лучше на делфи), вызвать внешнее приложение и т.д. Мне когда в лом, так я просто генерю нужный vip.cfg и вызываю vip из галки с выгрузкой в dbf , а потом ее считываю уже в галку. На первасиве была возможность напрямую обратиться к табле на другой бд.
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Сообщение evchic »

А можно пример как это делалось на первасиве?
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Сообщение Den »

Имелось ввиду навернео следующее :
Делаешь vip.bat в нем в примеру :

C:\gal800\exe\vip.exe %1 /c:c:\gal800\comp\vip.cfg

а в vip.cfg том рисуешь нужную платформу и путь на базу нужную. И вызываешь все это из vip-программы exec('')
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Сообщение Den »

вместо %1 конечно нужный lot :grin:
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Сообщение evchic »

это все понятно но не совсем удобно
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Сообщение evchic »

Дело в том что БД из которой нужно вытащить данные не галактическая
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Сообщение evchic »

Или может кто-нибудь встречал пример исходника DLL для навигации по таблицам SQL-базы
san
Местный житель
Сообщения: 412
Зарегистрирован: 28 апр 2005, 11:34
Откуда: Галактика Млечный Путь

Сообщение san »

Если делать доступ с помощью атлантиса, то таблица к которой нужен доступ должна быть прописана в словаре, пусть она и из другой базы.
Есть вариант писать длл которая будет пребрасывать данные из сторонней таблицы в галактическую, это же на скл можно сделать тригером.
В 5 атлантисе развивается прямой доступ к скл базам, на сколько это работоспособно я не знаю.
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Сообщение evchic »

Прямой доступ работает в пределах текущей бд... в словарь закомпилить нельзя т.к. имя таблице в бд динамическое
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Сообщение Den »

Даже если Вы напишите dll, в которой будет осуществлен доступ к нужной БД (неважно в формате MSSQL, BTRIEVE, ORACLE...) то как Вы этими данными воспользуетесь в VIP ? Там же, по видимому, все на атлантических объектах завязано..до данных этих невозможно будет достучаться просто так - только буферизация потока во внешнюю, читабельную vip-ом структуру, или в словарную подходящую таблицу текущей БД галки. Мне дак так кажется...
Если вариант ,что название таблицы динамически меняется - то только напрашивается вариант dll где будет считываться информация из нужной табл. какой-либо другой БД и все это вливаться в текущ. галактическую бд подходящей стуктуры.
Den
Местный житель
Сообщения: 1842
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
Контактная информация:

Сообщение Den »

Хотя может в 5-м атлантисе и появились какие то средства для доступа к произволным данным..
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Сообщение evchic »

нет не появились в том то все и дело что прийдется писать dll
блин но возникла проблема делфи чето не хочет конектится через ADO
coolibin
Постоянный обитатель
Сообщения: 151
Зарегистрирован: 29 мар 2005, 17:49

Сообщение coolibin »

Не надо никаких dll и делфей. У тебя есть на машине WSH, в котором уже есть все средства для того, чтобы подцепиться к любой базе через OLEDB и ADO. Остается придумать как данные передать випу. Как вариант - промежуточный текстовый формат. То есть скриптом из внешней базы формируешь текстовую таблицу, а потом атлантисом ее читаешь в таблицу в памяти и делаешь с ней все что хочешь.
Скрипт запускаешь через ExecProgram()
evchic
Местный житель
Сообщения: 216
Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:

Сообщение evchic »

все реализовал написал dll на делфи все работает.. все получилось
Ответить