Интеграция СуперОкна7 и УНФ
Изучаем базу данных СуперОкна7, смотрим возможности передачи и получения информации.
- Описание
- Подробнее
Описание
Здравствуйте!
О чем всё это.
Решил поделиться накопленной информацией о базе данных СуперОкна7, далее для краткости БДСО. Зная состав таблиц и полей БДСО, можно написать много чего полезного, для производства окон.
Например выгрузку и загрузку текущей информации в 1С, реализовать дополнительные отчеты, которые невозможно создать во встроенном генераторе отчетов, из за недоступности необходимых таблиц и полей БДСО.
Так же можно создать выгрузки для станков ЧПУ, средствами 1С и получить полный контроль над доработкой и возможными изменениями, без обращения к разработчикам программы. Цена возможной экономии по прайсу КСТсофт, от 59 т.р., в общем есть за что "пошвыряться" в коде ))).
И еще хочу сразу уточнить, что информации и способов ей воспользоваться очень много, и выложить в одной статье не получиться. Я планирую написать несколько статей, в которых хочу поделиться своими идеями и полученным опытом в реализации этих идей.
По поводу кода 1С, скорее всего вряд ли удивлю чем то новым, почти вся информация так или иначе, есть на этом сайте. В 99% случаев обычный "копи паст", который свалю в несколько статей, и тем самым кому то сэкономлю время на поиск. Примеры кода мягко говоря не оптимальны с точки зрения рекомендованных 1С, т.е. буду приводить куски кода тестовые не оптимальные говнокод, но реально работающие, о чем немного ниже, кому надо сами разберутся как доработать.
Готового решения, так же не будет, т.к. внедрял на 3-х производствах, где свои бизнес процессы и свои тараканы в головах. Но есть много общего, и если покрутить, повертеть куски кода, то можно что то реализовать, всё зависит от желания и возможностей разработчика 1С.
Цель данного "обзора" не полный список таблиц и полей, а как раздобыть нужную информацию, для конкретных идей. Да и сами идеи позволяют заработать, как с точки зрения разработчиков, так и владельцев производств.
О базе данных СуперОкна7.
Итак — БДСО работает на СУБД FireBird, версии 2.1, и сразу уточню, что программа СуперОкна7 работает на любой версии СУБД 2.1-2.5, без каких либо видимых косяков, проверено в течении 4-х лет. Причем ставил СУБД при переустановках ОС первую попавшуюся с сайта разработчика. Но сразу оговорюсь, что так делать не стоит, т.к. и каких то преимуществ в обновлении СУБД, так же замечено не было.
Ещё как мне кажется ценная информация про версии программы СуперОкна 6, 7 — состав таблиц остается тем же самым от шестой к седьмой версии, за исключением добавленных некоторых таблиц и полей в седьмую версию. Тем самым написанное в шестой версии будет работать и в седьмой версии базы данных. И я так предполагаю, в восьмой версии СуперОкон, так же состав таблиц и полей сохраняется.
Для связи БДСО с 1С на Инфостарте и других сайтах достаточно много рецептов, но мы воспользуемся примером выгрузки с сайта разработчиков СуперОкна в разделе загрузки. Драйвер ODBC качаем с сайта разработчиков СУБД, текущую версию 32-х разрядную (1С и СУБД так же 32-х разрядная).
Заготовка выгрузки с сайта КСТ написана для версии 1С 8.0-8.1. И еще она интересная особенность кода, которая кидается в глаза, там везде используются запросы к БДСО в цикле, т.е. один запрос генерирует, много дополнительных запросов к другим таблицам, мы оставим так как есть у разработчиков.
Вопрос о таком подходе к написанию кода оставим на комментарии и разработчикам СО, т.к. на форумах есть сторонники и такого подхода (лучше куча маленьких запросов, чем один 3-х этажный). Наша цель понять где и что лежит, а как реализовать код это уже вопрос тридцать третий.
Пример правильных запросов к БД FireBird в похожей статье о выгрузке из ПрофОкна в 1С на Инфостарте, там требуется драйвер iBProvider, для параметрических запросов, т.к. с драйвер ODBC не поддерживает такие запросы (если ошибаюсь поправьте).
И еще понадобится программа iBExpert, для просмотра доступных таблиц и полей БДСО.
Так же не забываем включить галку доступ из сторонних программ к базе данных в настройках программы СуперОкна
Вопросы по установке, администрированию и настройке программ отправим к Гуглу, для тех кто в теме это не составит труда, а мы начнем поиск полезной информации в БДСО.
Доступные таблицы базы данных СуперОкна.
Открываем БДСО в программе iBExpert, видим 106 таблиц из которых не все нам доступны, но для наших поставленных целей вполне достаточно, выглядит это примерно так:
Смысл информации, находящейся в таблицах и полях, почти всегда можно определить по названию полей, и дополнительной информации на других вкладках, но бывают и тяжелые случаи.
Самая первая таблица содержит артикулы, наименования, единицы измерения, цены и другие поля. Есть название таблицы, названия полей, а дальше дело техники (метод научного тыка), загоняем счета меняем данные в полях и смотрим как меняются данные в соответствующих таблицах.
Назначение некоторых таблиц мне неизвестно, т.к. программа СуперОкна используется не в полном объеме, и состояние данных некоторых таблиц просто не меняется (нет соответствующих настроек в БДСО).
Обзор доступных таблиц БДСО7, сборка 31: