how to export transactions with default dimensions to Excel
public static void main(Args _args)
{
AssetTrans assetTrans;
SysExcelApplication application;
SysExcelWorkBooks workbooks;
SysExcelWorkBook workbook;
SysExcelWorksheets worksheets;
SysExcelWorksheet worksheet;
SysExcelCells cells;
SysExcelCell cell;
int row;
DimensionAttributeValueSetItemView dimAttrSet;
DimensionAttribute dimAttr;
str dimAttrStr;
Map dims;
int dimNum;
;
application = sysExcelApplication::construct();
workbooks = application.workbooks();
workbook = workbooks.add();
worksheets = workbook.worksheets();
worksheet = worksheets.itemFromNum(1);
cells = worksheet.cells();
cells.range(‘A:A’).numberFormat(‘@’);
dims = new Map(Types::String, Types::Integer);
//generate header row++;
cell = cells.item(row, 1);
cell.value(“Voucher“);
cell = cells.item(row, 2);
cell.value(“Transaction date“);
cell = cells.item(row, 3);
cell.value(“Fixed asset number“);
cell = cells.item(row, 4);
cell.value(“Transaction type“);
cell = cells.item(row, 5);
cell.value(“Amount“);
cell = cells.item(row, 6);
cell.value(“Fixed asset group“);
//generate lines while select assetTrans
//The following loop will provide the data to be populated in each column {
row++;
//add fixed asset trans data cell = cells.item(row,1);
cell.value(assetTrans.Voucher);
cell = cells.item(row,2);
cell.value(assetTrans.TransDate);
cell = cells.item(row,3);
cell.value(assetTrans.AssetId);
cell = cells.item(row,4);
cell.value(enum2str(assetTrans.TransType));
cell = cells.item(row,5);
cell.value(assetTrans.AmountCur);
cell = cells.item(row,6);
cell.value(assetTrans.AssetGroup);
// add dimensions while select dimAttrSet
where dimAttrSet.DimensionAttributeValueSet == assetTrans.DefaultDimension
join Name from dimAttr
where dimattr.RecId == dimAttrSet.DimensionAttribute
{
if (!dims.exists(dimAttr.Name)) // if dim column does not exists {
//add dimension column dims.insert(dimAttr.Name, dimNum + 7);
dimNum++;
cell = cells.item(1, dims.lookup(dimAttr.Name));
cell.value(dimAttr.Name);
}
//add dimension value cell = cells.item(row, dims.lookup(dimAttr.Name));
cell.value(dimAttrSet.DisplayValue);
}
}
application.visible(true); // opens the excel worksheet}
Hiç yorum yok:
Yorum Gönder