Процедура ЗагрКомпоненту() //Загружаем компоненту Если ЗагрузитьВнешнююКомпоненту(КаталогПрограммы() + "1CPP.DLL")=0 Тогда ок=0; КонецЕсли; КонецПроцедуры //******************************************* Процедура Сформировать() ТЗSQL = СоздатьОбъект("ТаблицаЗначений"); Запрос = "SELECT | ARTIKLS.ANUMB AS ARTICLE_PROF, | ARTSVST.ASKL1 AS ARTICLE_SKLAD, | ARTSVST.ASKL2 AS ARTICLE_1C, | ARTIKLS.ANAME AS NOMNAME, | ARTSVST.CLPRV AS TARIF_ED_IZM, | COLSLST.CNAME AS CVET_TEKSTURI, | COLSLST.CNAMP AS CVET_ARTICLE, | ARTSVST.CLPRC AS TARIF_OSN_TEKSTURI, | ARTSVST.CLPR1 AS TARIF_VNUTR_TEKSTURI, | ARTSVST.CLPR2 AS TARIF_VNESHN_TEKSTURI, | ARTSVST.CLPRA AS TARIF_DVUHSTORONNEY_TEKSTURI, | GRUPART.MNAME AS NOMGRUPNAME, | GRUPART.MUNIC AS GRUPUNICNOMER, | ARTIKLS.NUNIC AS KATEGORYUNICNOMER, | ARTIKLS.APREF AS KATEGORY, | ARTIKLS.ANAMP AS NOMNAMECONTR, | CORRENC.CNAME AS VALUTE, | CASE | WHEN ARTIKLS.ATYPI = 1 THEN 'пог.м.' | WHEN ARTIKLS.ATYPI = 2 THEN 'м.кв.' | WHEN ARTIKLS.ATYPI = 3 THEN 'шт' | WHEN ARTIKLS.ATYPI = 5 THEN 'компл.' | ELSE 'неизвестно' | END AS ED_IZM | | FROM COLSLST | RIGHT OUTER JOIN ARTSVST ON (COLSLST.CNUMB = ARTSVST.CLNUM) | RIGHT OUTER JOIN ARTIKLS ON (ARTSVST.ANUMB = ARTIKLS.ANUMB) | LEFT OUTER JOIN CORRENC ON (ARTIKLS.CNUMB = CORRENC.CNUMB) | LEFT OUTER JOIN GRUPART ON (ARTIKLS.MUNIC = GRUPART.MPREF) |"; Попытка ЛокDB = СоздатьОбъект("ODBCDataBase"); Исключение Сообщить(ОписаниеОшибки()); Сообщить("Компонента 1С++ не обнаружена","!!"); Возврат; КонецПопытки; ЛокODBC = СоздатьОбъект("ODBCRecordSet"); Сообщить("Начало соединения: " + ТекущееВремя()); ЛокDB.Соединение("DRIVER={Gemini InterBase ODBC Driver 2.0};uid=SYSDBA;pwd=masterkey;database=C:\ProfSegment\Profstroy3\BASE.gdb"); Если ЛокDB.ЕстьСоединение() = 1 Тогда Сообщить("Конец соединения: " + ТекущееВремя()); Иначе Сообщить(ЛокODBC.ПолучитьОписаниеОшибки()); Возврат; КонецЕсли; ЛокODBC.УстБД(ЛокDB); ТЗSQL = ЛокODBC.ВыполнитьИнструкцию(Запрос, , 1); Сообщить("В ТЗSQL находится " + Строка(ТЗSQL.КоличествоСтрок()) + " строк."); Сообщить("Конец : " + ТекущееВремя()); ЗначениеВФайл(КаталогИБ() + "Профстрой", ТЗSQL, 1); ЛокDB.Закрыть();
|