using System.IO;
using OfficeOpenXml;
using OfficeOpenXml.ExcelPackage;
using OfficeOpenXml.ExcelRange;
using OfficeOpenXml.Style;
using OfficeOpenXml.Table;
class INTC_ExpenseTemplate
{
#define.TransactionDate("Transaction date")
#define.ExpenseType("Expense type")
#define.Amount("Amount")
#define.ProjId("Project Id")
#define.SalesTaxGroup("Sales tax group")
#define.TaxItemGroup("Tax item group")
#define.ReceiptNumber("Receipt number")
#define.AdditionalInformation("Additional information")
public static void main(Args _args)
{
TrvExpTrans trvExpTrans;
TrvExpTable trvExpTable;
MemoryStream memoryStream = new MemoryStream();
INTC_ExpenseTemplate expenseTemplate = INTC_ExpenseTemplate::construct();
trvExpTrans = _args.record();
expenseTemplate.generateTemplate(trvExpTrans.ExpNumber, memoryStream);
}
public static INTC_ExpenseTemplate construct()
{
return new INTC_ExpenseTemplate();
}
public void generateTemplate(TrvExpNumber _expNum, MemoryStream _memoryStream = new MemoryStream())
{
using (var package = new ExcelPackage(_memoryStream))
{
var currentRow = 1;
var worksheets = package.get_Workbook().get_Worksheets();
var worksheet = worksheets.Add('Template');
var cells = worksheet.get_Cells();
System.String coloum;
TrvExpTrans trvExpTrans;
OfficeOpenXml.ExcelRange cell = cells.get_Item(currentRow, 1);
System.String value = #TransactionDate;
cell.set_Value(value);
cell = null;
value = #ExpenseType;
cell = cells.get_Item(currentRow, 2);
cell.set_Value(value);
value = #Amount;
cell = cells.get_Item(currentRow, 3);
cell.set_Value(value);
value = #ProjId;
cell = cells.get_Item(currentRow, 4);
cell.set_Value(value);
value = #SalesTaxGroup;
cell = cells.get_Item(currentRow, 5);
cell.set_Value(value);
value = #TaxItemGroup;
cell = cells.get_Item(currentRow, 6);
cell.set_Value(value);
value = #ReceiptNumber;
cell = cells.get_Item(currentRow, 7);
cell.set_Value(value);
value = #AdditionalInformation;
cell = cells.get_Item(currentRow, 8);
cell.set_Value(value);
while select trvExpTrans where trvExpTrans.ExpNumber == _expNum
{
currentRow++;
coloum = #TransactionDate;
cell = cells.get_Item(currentRow, 1);
cell.set_Value(trvExpTrans.TransDate);
cell = null;
coloum = #ExpenseType;
cell = cells.get_Item(currentRow, 2);
cell.set_Value(trvExpTrans.CostType);
cell = null;
coloum = #Amount;
cell = cells.get_Item(currentRow, 3);
cell.set_Value(trvExpTrans.AmountCurr);
cell = null;
coloum = #ProjId;
cell = cells.get_Item(currentRow, 4);
cell.set_Value(trvExpTrans.ProjId);
cell = null;
coloum = #SalesTaxGroup;
cell = cells.get_Item(currentRow, 5);
cell.set_Value(trvExpTrans.TaxGroup);
cell = null;
coloum = #TaxItemGroup;
cell = cells.get_Item(currentRow, 6);
cell.set_Value(trvExpTrans.TaxItemGroup);
cell = null;
coloum = #ReceiptNumber;
cell = cells.get_Item(currentRow, 7);
cell.set_Value(trvExpTrans.ReceiptNumber);
cell = null;
coloum = #AdditionalInformation;
cell = cells.get_Item(currentRow, 8);
cell.set_Value(trvExpTrans.AdditionalInformation);
cell = null;
}
package.Save();
file::SendFileToUser(_memoryStream, 'Expense lines template.xlsx');
}
}
}
using OfficeOpenXml;
using OfficeOpenXml.ExcelPackage;
using OfficeOpenXml.ExcelRange;
using OfficeOpenXml.Style;
using OfficeOpenXml.Table;
class INTC_ExpenseTemplate
{
#define.TransactionDate("Transaction date")
#define.ExpenseType("Expense type")
#define.Amount("Amount")
#define.ProjId("Project Id")
#define.SalesTaxGroup("Sales tax group")
#define.TaxItemGroup("Tax item group")
#define.ReceiptNumber("Receipt number")
#define.AdditionalInformation("Additional information")
public static void main(Args _args)
{
TrvExpTrans trvExpTrans;
TrvExpTable trvExpTable;
MemoryStream memoryStream = new MemoryStream();
INTC_ExpenseTemplate expenseTemplate = INTC_ExpenseTemplate::construct();
trvExpTrans = _args.record();
expenseTemplate.generateTemplate(trvExpTrans.ExpNumber, memoryStream);
}
public static INTC_ExpenseTemplate construct()
{
return new INTC_ExpenseTemplate();
}
public void generateTemplate(TrvExpNumber _expNum, MemoryStream _memoryStream = new MemoryStream())
{
using (var package = new ExcelPackage(_memoryStream))
{
var currentRow = 1;
var worksheets = package.get_Workbook().get_Worksheets();
var worksheet = worksheets.Add('Template');
var cells = worksheet.get_Cells();
System.String coloum;
TrvExpTrans trvExpTrans;
OfficeOpenXml.ExcelRange cell = cells.get_Item(currentRow, 1);
System.String value = #TransactionDate;
cell.set_Value(value);
cell = null;
value = #ExpenseType;
cell = cells.get_Item(currentRow, 2);
cell.set_Value(value);
value = #Amount;
cell = cells.get_Item(currentRow, 3);
cell.set_Value(value);
value = #ProjId;
cell = cells.get_Item(currentRow, 4);
cell.set_Value(value);
value = #SalesTaxGroup;
cell = cells.get_Item(currentRow, 5);
cell.set_Value(value);
value = #TaxItemGroup;
cell = cells.get_Item(currentRow, 6);
cell.set_Value(value);
value = #ReceiptNumber;
cell = cells.get_Item(currentRow, 7);
cell.set_Value(value);
value = #AdditionalInformation;
cell = cells.get_Item(currentRow, 8);
cell.set_Value(value);
while select trvExpTrans where trvExpTrans.ExpNumber == _expNum
{
currentRow++;
coloum = #TransactionDate;
cell = cells.get_Item(currentRow, 1);
cell.set_Value(trvExpTrans.TransDate);
cell = null;
coloum = #ExpenseType;
cell = cells.get_Item(currentRow, 2);
cell.set_Value(trvExpTrans.CostType);
cell = null;
coloum = #Amount;
cell = cells.get_Item(currentRow, 3);
cell.set_Value(trvExpTrans.AmountCurr);
cell = null;
coloum = #ProjId;
cell = cells.get_Item(currentRow, 4);
cell.set_Value(trvExpTrans.ProjId);
cell = null;
coloum = #SalesTaxGroup;
cell = cells.get_Item(currentRow, 5);
cell.set_Value(trvExpTrans.TaxGroup);
cell = null;
coloum = #TaxItemGroup;
cell = cells.get_Item(currentRow, 6);
cell.set_Value(trvExpTrans.TaxItemGroup);
cell = null;
coloum = #ReceiptNumber;
cell = cells.get_Item(currentRow, 7);
cell.set_Value(trvExpTrans.ReceiptNumber);
cell = null;
coloum = #AdditionalInformation;
cell = cells.get_Item(currentRow, 8);
cell.set_Value(trvExpTrans.AdditionalInformation);
cell = null;
}
package.Save();
file::SendFileToUser(_memoryStream, 'Expense lines template.xlsx');
}
}
}
No comments:
Post a Comment