Показать сообщение отдельно
Старый 23.03.2004, 13:51   #1  
Lora is offline
Lora
Участник
 
9 / 10 (1) +
Регистрация: 16.07.2002
Адрес: Kiev
Как добавить в addRange условие по "или" на контейнерные поля?
Добрый день!
Необходимо определить следующее ограничение по "или" на поля типа Dimension:
this.query().dataSourceTable(tablenum(PurchTable)).addRange(fieldId2Ext(fieldNum(PurchTable,Dimension),1)).value(strfmt('((%2.%4 == "%1") || (%2.%3 == "%1"))',
"10-000",
this.query().dataSourceTable(tablenum(PurchTable)).name(),
"ExecuterDimension[1]",
"Dimension[1]",
));
Sql запрос на сколько я вижу корректный, но проблема в следующем - Система пишет, что не хватает правой круглой скобки и ничего соответсвенно не фильтрует.
Попробовала тот же синтаксис определения ограничения только на простых полях:
this.query().dataSourceTable(tablenum(PurchTable)).addRange(fieldId2Ext(fieldNum(PurchTable,Dimension),1)).value(strfmt('((%2.%4 == "%1") || (%2.%3 == "%1"))',
"10-000",
this.query().dataSourceTable(tablenum(PurchTable)).name(),
"OrderAccount",
"InvoiceAccount",
));
В данном случае все отрабатывает корректно и без всяких предупреждений...Похоже что проблема именно с контейнерными полями, может в данном случае нужно по другому как то представлять в запросе эти поля?
Кто нибудь сталкивался с подобной проблемой и методом ее решения?
Спасибо
__________________