Доброго времени суток.
Вот решил попробовать освоить приемы работы с прямыми запросами и сразу же столкнулся с проблемами. Пытался найти ответы на свои вопросы в уже имеющихся темах и статьях, но так ничего и не получилось. Если можно, помогите.
Итак, у меня DBF версия 1C, установил драйвер MICROSOFT OLE DB PROVIDER FOR VISUAL FOXPRO 9.0 SP2. Пытаюсь сделать простейший запрос по остаткам товаров на текущую дату:
Процедура Остатки()
База = СоздатьОбъект("OLEDBData");
Соединение = "Provider=VFPOLEDB.1;Data Source="+КаталогИБ()+";Mode=ReadWrite;Collating Sequence=MACHINE";
РезультатПодключения = База.Соединение(Соединение);
Если РезультатПодключения = 0 Тогда
Предупреждение("Не удалось подключиться к базе данных!");
Возврат;
КонецЕсли;
Запрос = База.СоздатьКоманду();
Запрос.УстановитьТекстовыйПараметр("ВыбДата",ТекущаяДата());
ТекстЗапроса = "
|SELECT
| Рег.Товар as [Товар $Справочник.Номенклатура],
| Рег.Количество as Количество
|FROM
| $РегистрОстатки.ОстаткиТоваров(:ВыбДата~,,,(Товар),(Количество)) as Рег";
ТЗ = СоздатьОбъект("ТаблицаЗначений");
Запрос.ВыполнитьИнструкцию(ТекстЗапроса,ТЗ);
ТЗ.ВыбратьСтроку();
КонецПроцедуры
При попытке выполнить процедуру ругается следующим образом:
Запрос.ВыполнитьИнструкцию(ТекстЗапроса,ТЗ);
{D:\TRADE\ADDINS\1CPP\SQLDIRECT.ERT(52)}: FAILED! ICommandText::Execute(): Syntax error.
Кто-нибудь, подскажите в чем тут дело и что я делаю не так. Заранее благодарен за помощь.