В таком вот варианте не работает, ругается на синтаксис - ". Типа кавычки не там...
Неужели снова с запятыми намутил, перепроверял много раз.
Если убираю из текста запроса переменную :ОЛЕ, то все нормально.
//*******************************************
Перем ТекБ;
Функция ОборотыБИ()
ТЗ = СоздатьОбъект("ТаблицаЗначений");
ТЗ.Очистить();
ARS = СоздатьОбъект("AccountsRecordset");
ARS.УстановитьТекстовыйПараметр("НачПериода" ,Дата1);
ARS.УстановитьТекстовыйПараметр("КонПериода" ,Дата2);
ARS.УстановитьТекстовыйПараметр("запрВыбСч1",Сч);
ARS.УстановитьТекстовыйПараметр("запрВыбСч2",КорСч);
ARS.УстановитьТекстовыйПараметр("ОЛЕ",?(ТекБ=0,"",ТекБ));
// обороты
Текст = "
|SELECT
| Счет [запрВыбСч1 $Счет.Основной]
|, КорСчет [запрВыбСч2 $Счет.Основной]
|, СуммаОборотДт
|, СуммаОборотКт
|, Субконто1 [Субконто1 $Субконто]
|, Субконто1_вид
|, КорСубконто1 [КорСубконто1 $Субконто]
|, КорСубконто1_вид
|FROM
|$БИОбороты.Основной(:НачПериода,:КонПериода ~,
|,:ОЛЕ
|,(Счет = :запрВыбСч1)
|,
|,(КорСчет = :запрВыбСч2))
|AS BasicAP"
;
ТЗ = ARS.ВыполнитьИнструкцию(Текст);
ИтОб = ТЗ.Итог(3) - ТЗ.Итог(4);
Возврат ИтОб;
КонецФункции // ОборотыБИ
Процедура Сформировать()
ТекБ = СоздатьОбъект("V77.Application");
Открыта = ТекБ.Initialize(ТекБ.RMTrade, "/d L:\TEST_DB /N юзер /P 111", "NO_SPLASH_SHOW");
Если Открыта = 0 Тогда
Сообщить("База не была открыта...");
Возврат;
КонецЕсли;
Сообщить(Строка(ОборотыБИ()));
ТекБ = 0;
КонецПроцедуры
Лог ошибки:
ТЗ = ARS.ВыполнитьИнструкцию(Текст);
{K:\ZZZ\EXTFORMS\ОЛЕ.ERT(39)}:
AccountsRecordset::СформироватьОшибку
(Строка Ошибка=
State 42000, native 170,
message [Microsoft][ODBC SQL Server Driver][SQL Server]Line 70: Incorrect syntax near ''.)
: State 42000, native 170,
message [Microsoft][ODBC SQL Server Driver][SQL Server]Line 70: Incorrect syntax near ''.
вм.СформироватьОшибку(Ошибка);
{K:\zzz\AccountsRecordsetV3.ert(57) }