Показать сообщение отдельно
Старый 07.01.2008, 16:31   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
и даже после такой модификации код все еще не будет оптимальным и универсальным.
ведь кто-то может заоптимизировать inventSum или добавить туда статусов и дополнительных полей.
А этот австралийский индус жестко указывает список суммируемых полей в жестко написанном запросе.
Разобраться с методом newQuery?... Нет это же "quick and dirty" программирование.

На самом деле должно быть так:
X++:
Query = InventSum::newQuery(null, 'your item',DimCriteria, ParmCriteria, ParmGroupBy);
QueryRun = new Qureyrun(Query);
while( QueryRun.next() )
{
    inventSum = QueryRun.get(tablenum(InventSum));
    inventQty += inventSum.availPhysical();
}
info(strfmt('%1', inventQty));
Код сразу стал прозрачным и универсальным.
Недели и месяцы, потраченные на оптимизацию производительности запросов не пропадают зря только потому, что какой-то индус написал прямой запрос к таблице.

Но ведь для этого надо разобраться с параметрами.
А это так сложно, чтобы делать "enjoy" от "fast and dirty" примера...
__________________
полезное на axForum, github, vk, coub.
За это сообщение автора поблагодарили: belugin (3).