Подозреваю, что сие возможно, но не хватает тямы.
Хочу получить в ТЗ данные из 2-х баз на Oracle и MS SQL 2000 (родная 1С) одним запросом. Запрос простой. Требуется из оракла выбрать коды альтернативных товаров по переданному в запрос коду товара, и в этой же выборке получить элементы справочника ТМЦ, найденные по коду этих найденных альтернатив в оракле.
Дилетантски делаю так, без надежды на работоспособность:
Процедура ПриОткрытии()
MD=CreateObject("MetaDataWork");
TMZ="sp"+MD.ИДСправочника("ТМЦ");
DB=СоздатьОбъект("OLEDBData");
DB.Соединение("Provider=MSDASQL.1;Password=***;Persist Security Info=True;User ID=***;Data Source=***;Mode=Read;");
Команда=DB.СоздатьКоманду();
Команда.Отладка(1);
Команда.ДобПараметр(1,129,11,0,0);
Попытка
Команда.Подготовить("select alt.ALT_DART_NO, tmz.id as [Nomen $Справочник.ТМЦ] from DS_ALTERDART as alt, [rom].[db1c77].[dbo]."+TMZ+" as tmz where alt.ORG_DART_NO = ? and tmz.id = alt.ALT_DART_NO");
Исключение
DB.Закрыть();
КонецПопытки;
КонецПроцедуры
Процедура Сформировать()
Команда.УстановитьПараметр(1,СокрЛП(ДартНомер.Код));
Команда.ВыполнитьИнструкцию(,ТЗ);
КонецПроцедуры
... и ессно получаю FAILED! ICommandText::Execute(): [Oracle][ODBC][Ora]ORA-00923: FROM keyword not found where expected
Может кто знает как это делается грамотно и правильно? Окажите любезность, плз!
Или хотя бы пните в нужном направлении...