![]() |
#29 |
Участник
|
Цитата:
А вы не могли бы подробнее раскрыть тему ? Покопал классы InventSumDate InventSumDateDim InventSumDatePhysical InventSumDatePhysicalDim InventSumDateValue InventSumDateValueReport InventSumDateValueReportDim не нашел нигде зависимости от наличия закрытых Inventsum. Исключение - метод \Classes\InventSumDateValueReportDim\newParameters X++: server static InventSumDateValueReportDim newParameters( TransDate _perDate, ItemId _itemId, InventDim _inventDimCriteria, InventDimParm _inventDimParm ) { InventSumDateValueReportDim inventSumDateValueReportDim = new InventSumDateValueReportDim(); InventDimParm inventDimParmGroupBy; Query query; QueryRun queryRun; InventDim inventDim; ; inventSumDateValueReportDim.parmItemId(_itemId); inventSumDateValueReportDim.parmPerDate(_perDate); inventSumDateValueReportDim.parmInventDim(_inventDimCriteria); inventSumDateValueReportDim.parmInventDimParm(_inventDimParm); if (InventTable::find(_itemId).ItemDimCostPrice == NoYes::Yes) { inventDimParmGroupBy = _inventDimParm.data(); inventDimParmGroupBy.setActiveItemDim(InventTable::find(_itemId).DimGroupId); inventSumDateValueReportDim.parmInventDimParm(inventDimParmGroupBy); query = InventSum::newQuery(null,_itemId,_inventDimCriteria,_inventDimParm,inventDimParmGroupBy); query.dataSourceTable(tablenum(InventSum)).findRange(fieldnum(InventSum,Closed)).value(''); queryRun = new QueryRun(query); while (queryRun.next()) { inventDim = queryRun.get(tablenum(InventDim)); inventSumDateValueReportDim.parmInventDim(inventDim); inventSumDateValueReportDim.init(); } inventSumDateValueReportDim.parmInventDimParm(_inventDimParm); } else { inventSumDateValueReportDim.init(); } return inventSumDateValueReportDim; } X++: while (queryRun.next()) { inventDim = queryRun.get(tablenum(InventDim)); inventSumDateValueReportDim.parmInventDim(inventDim); inventSumDateValueReportDim.init(); } |
|