Цель: получать полезные данные в Digitals/Reports из электронного журнала регистрации клиентов EJRC. Результат: С отчетами более менее разобрался:
В винде в панели управления ODBC Administrator настраиваем подключение к MS SQL серверу, задаем логин, пароль, выбираем базу данных.
В Reports создаем ADODatabase1, выбираем сервер, повторяем все настройки к базе, тестим..
Создаем ADOQuery1 на него пишем код:
смотрим значение proba, тут выведется имя заказчика по номеру договора Agreement_Num = ‘1’, все работает.
Как только шаблон закрыли ADOQuery в поле данных БД (дерево данных) пропадает, видать нужно создавать кодом. Позже до этого доберусь. В Reports очень удобно выводить нужные ячейки таблицы (наглядно отображаются в дереве данных), к тому-же у EJRC есть описание таблиц.
Пробуем повторить финт в Digitals, настраиваем SQL.UDL, в SQL соединении наблюдаем базу EJRC.
В первый попавшийся параметр пихаю значение:
=SQL(select cust_name from agreement where Agreement_Num = ‘1’) Факир был пьян и фокус не удался
В результате получаю значение “0”.
Что делаю не так? В отчетах данный результат отображается. В плотную с БД не работал.
Лучше это делать через скриптовые функции Новые возможности программы - #159 від Bondarets_Alexander тогда UDL файл не нужен, прямо в скрипте задаем параметры подключения. А SQL.udl выполняет свою основную функцию, обеспечивая связь с пространственной БД.
Для заметки, Bondarets Alexander поделился подробной информацией о скриптах SQL, решил описать, что получилось.
Чтоб не изучать настройки подключения и не делать в них ошибок, они были позаимствованы из Reports, из подключения которое было создано для шаблона описанного выше, из ADODatabase1, строка с выбором базы данных и есть все нужные настройки:
Был настроен скрипт, для получения ФИО заказчика(cust_name), по ячейке Agreement_Num.
Теперь можно начинать создавать более сложные запросы.
Только вот, пока не решил куда пихать значения, в XML или ИН4.
Плановые материалы с ХМЛ нормально не дружат. Хотя теперь и планы можно генерить напрямую из базы ГИС6(EJRC), единственное, что соседей и метрику все-таки придется вытягивать из дигиталса.
Можно, поступайте аналогично kukin. Найдите строку подключения к БД (можно использоваться модуль отчетов для создания подключения, как делал kukin), изучите структуру БД и пробуйте вытягивать данные из нужных таблиц.