Bài viết liên quan
- - Macro to insert data in X++ (D365FO)
- - Bài hiện tại
- - Changes to DimensionStorage class in Dynamics 365
- - Computed Column in Data Entity (D365FO)
- 1 - Computed Columns in View (SysComputedColumn)
- 2 - Gọi phương thức của class sử dụng SysDictClass
- 3 - Gọi phương thức của FormDataSource từ method của table.
- 4 - throw error()
Filter nhiều điều kiện linh động
14/10/2020- duocnt 446 Views
NGUỒN GỐC
Tham khảo class
InventAgingStorageChart
InventAgingStorage inventAgingStorage;
InventAgingTmp inventAgingTmp;
str itemGroupSelTxt, itemSelTxt, siteSelTxt, warehouseSelTxt, filterTxt;
str txtAll = strFmt('%1', '@SYS11696');
#LOCALMACRO.InsertInventAgingChartTmp
inventAgingChartTmp.clear();
inventAgingChartTmp.Period = %1;
inventAgingChartTmp.TransactionId = inventAgingStorage.TransactionId;
inventAgingChartTmp.Filters = filterTxt;
select sum(%2) from inventAgingTmp
where inventAgingTmp.CreatedTransactionId == inventAgingStorage.TransactionId
&& (itemGroupSelTxt == txtAll || inventAgingTmp.ItemGroupId == itemGroupSelTxt)
&& (itemSelTxt == txtAll || inventAgingTmp.ItemId == itemSelTxt)
&& (siteSelTxt == txtAll || inventAgingTmp.InventSiteId == siteSelTxt)
&& (warehouseSelTxt == txtAll || inventAgingTmp.InventLocationId == warehouseSelTxt);
inventAgingChartTmp.PeriodValue = round(inventAgingTmp.%2, 0.01);
inventAgingChartTmp.insert();
// Add additional zero record to make the chart don't throw error. Each period need at least two records.
inventAgingChartTmp.clear();
inventAgingChartTmp.Period = %1;
inventAgingChartTmp.PeriodValue = 0;
inventAgingChartTmp.insert();
#ENDMACRO
Góp ý kiến