![]() |
#4 |
Участник
|
и даже после такой модификации код все еще не будет оптимальным и универсальным.
ведь кто-то может заоптимизировать 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" примера... |
|
|
За это сообщение автора поблагодарили: belugin (3). |