В общем я почти ничего не понял... Только то, что Оракл еще не дорос до "иннер джойн", и, как писал выше VIP - мелкомягкий дривер "Microsoft ODBC for Oracle" тут действительно не работает...
Всё заработало так:
DB=СоздатьОбъект("OLEDBData");
DB.Соединение("Provider=MSDASQL.1;Password=***;Persist Security Info=True;User ID=***;Data Source=***");
Команда=DB.СоздатьКоманду();
ТЗ=Создатьобъект("ТаблицаЗначений");
ТекстЗапроса="select TRANS.bl_no, trunc(TRANS.receive_dt,'DDD') AS DT, SUPL.PAY_TO, TRANS.part_no, TRANS.part_desc, to_char(TRANS.part_price,'999999999.99') as PRICE, sum(TRANS.transit_qty) as QTY
|from SVC.TS_PURC_D PURCH,
|SVC.TS_TRANSIT_D TRANS, SVC.TS_SUPPL SUPL
|where
|PURCH.purchase_no = TRANS.purchase_no and
|PURCH.purchase_seq = TRANS.purchase_seq and
|PURCH.STATUS = 'CLOS' and
|TRANS.supplier_cd = SUPL.supplier_cd
|and trunc(TRANS.receive_dt,'DDD') between to_date('"+Строка(Дата1)+"','DD.MM.YY') and to_date('"+Строка(Дата2)+"','DD.MM.YY')
|and SUPL.nation_cd <> 'NLD'
|group by TRANS.receive_dt, TRANS.bl_no, SUPL.PAY_TO, TRANS.part_no, TRANS.part_desc, TRANS.part_price";
ТЗ=Команда.ВыполнитьИнструкцию(ТекстЗапроса);
ТЗ.ВыбратьСтроку();
и так;
DB=СоздатьОбъект("ODBCDatabase");
DB.Соединение("Driver={Oracle in OraDb10g_Home1};dbq=***;Uid=***;Pwd=***");
RS=СоздатьОбъект("ODBCRecordSet");
RS.SetDatabase(DB);
ТЗ=Создатьобъект("ТаблицаЗначений");
ТекстЗапроса="select TRANS.bl_no, trunc(TRANS.receive_dt,'DDD') AS DT, SUPL.PAY_TO, TRANS.part_no, TRANS.part_desc, to_char(TRANS.part_price,'999999999.99') as PRICE, sum(TRANS.transit_qty) as QTY
|from SVC.TS_PURC_D PURCH,
|SVC.TS_TRANSIT_D TRANS, SVC.TS_SUPPL SUPL
|where
|PURCH.purchase_no = TRANS.purchase_no and
|PURCH.purchase_seq = TRANS.purchase_seq and
|PURCH.STATUS = 'CLOS' and
|TRANS.supplier_cd = SUPL.supplier_cd
|and trunc(TRANS.receive_dt,'DDD') between to_date('"+Строка(Дата1)+"','DD.MM.YY') and to_date('"+Строка(Дата2)+"','DD.MM.YY')
|and SUPL.nation_cd <> 'NLD'
|group by TRANS.receive_dt, TRANS.bl_no, SUPL.PAY_TO, TRANS.part_no, TRANS.part_desc, TRANS.part_price";
ТЗ=RS.ВыполнитьИнструкцию(ТекстЗапроса);
ТЗ.ВыбратьСтроку();
А с мелкомягкими дровами таки жо:
DB.Соединение("DRIVER={Microsoft ODBC for Oracle}...
ТЗ=RS.ВыполнитьИнструкцию(ТекстЗапроса);
{D:\1S BASES\ЗАГРУЗКАСЧЕТОВ.ERT(646)}: State 01S01, native 0, message [Microsoft][ODBC driver for Oracle]Ошибка в строке 1
Всем спасибооооооо!