v7: 1с++ Прямой запрос. УлржитьСписокОбъектов
☑
0
aass
17.04.12
✎
07:24
не могу победить метод при повторном выпонении запроса 1с вываливается , где копать ?
Соединение = "Provider=VFPOLEDB.1;Data Source=" + текКаталог + ";Mode=ReadWrite;Collating Sequence=MACHINE";
MW = CreateObject("MetaDataWork");
ОлеДБ = СоздатьОбъект("OLEDBData");
Рез = ОлеДБ.Соединение(Соединение);
ЗапросOLE = ОлеДБ.СоздатьКоманду();
ЗапросOLE.Выполнить("EXECSCRIPT('SET ANSI OFF')");
ЗапросOLE.Выполнить("EXECSCRIPT('SET REPROCESS TO 260 SECONDS')");
ЗапросOLE.Выполнить("EXECSCRIPT('SET REFRESH TO 0,-1')");
ЗапросOLE.Выполнить("Exec('SET TABLEVALIDATE TO 0')");
Если (ТаблицаМФ.ПолучитьЗначение(1,"ФлВкл") = 2)
И(ТаблицаМФ.ПолучитьЗначение(1,"СписокЭлементов").РазмерСписка()>0) Тогда
ВрТаблЦена = "";
спс = ТаблицаМФ.ПолучитьЗначение(1,"СписокЭлементов");
Вид = ТаблицаМФ.ПолучитьЗначение(1,"Вид");
ЗапросOLE.УложитьСписокОбъектов(спс, ВрТаблЦена,Вид);
КонецЕсли;
ТекстЗапроса = "
|SELECT
| NOM as [Номенклатура $Справочник.Номенклатура]
| ,TIP as [ЦенаОсн $Справочник.КатегорииЦен]
| ,TIP1 as [ЦенаРасч $Справочник.КатегорииЦен]
| ,NAC
| ,CEN
|FROM
| "+ текТабЕПЦ + "
|WHERE
| TIP1 IN (SELECT Val FROM " + ВрТаблЦена + ")
|ORDER BY
| TIP1,NOM
|";
тзНом = ЗапросOLE.ВыполнитьИнструкцию(ТекстЗапроса);
ЗапросOLE = "";
1
nicxxx
17.04.12
✎
07:29
повторно выполняется весть этот код?
2
aass
17.04.12
✎
07:32
да
3
aass
17.04.12
✎
07:33
еще момент, это "текТабЕПЦ" лежит не в базе, отдельная табличка
4
nicxxx
17.04.12
✎
07:34
попробуй явно закрывать команду методом Закрыть()
и еще - в каком месте вываливается 1с?
5
nicxxx
17.04.12
✎
07:35
без временной таблицы с ценами запрос нормально работает?
6
aass
17.04.12
✎
07:43
(5) точно дело не в уложить, сам запрос не хочет работать
за счет чего ?
7
aass
17.04.12
✎
07:46
вообщем разобрался у меня дальше дерево формировалось проблема в нем ....
спасибо за на водку (5) за на пиво с меня )))
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший