Creat Class and creat a following method under Class:
A. Declare variable in ClassDeclaration.
class Acx_OnHandPlanningReport
{
System.IO.StreamWriter sw;
InteropPermission perm;
Dialog dialog;
DialogField dialogField, dialogField1, dialogField2;
Filename fileName;
FilePath filePath;
Str string;
str 200 timeStamp;
ItemId itemId;
InventLocationId warehouse;
InventSiteId site;
ACX_InventOnHand_2 inventOnHand;
}
--------------------------------------------------------------------------------------------------------------------------
B. Create a method called "reportData" or anything as you want.
void reportData()
{
;
string = 'Item Type' + ',' +
'Bar code' + ',' +
'Item Number' + ',' +
'Item Name ' + ',' +
'Site ' + ',' +
'Warehouse ' + ',' +
'Location '
;
sw.WriteLine(string);
string ='' ;
while select inventOnHand
where inventOnHand.inventBatchId != ''
&& inventOnHand.wMSLocationId != ''
&& inventOnHand.InventSiteId like site
&& inventOnHand.InventLocationId like warehouse
{
string = enum2str(inventOnHand.ACX_ItemType) + ',' +
strRem(inventOnHand.ItemId,',') + ',' +
strRem(InventTable::find(inventOnHand.ItemId).itemName(),',') + ',' +
strRem(inventOnHand.InventSiteId,',') + ',' +
strRem(inventOnHand.InventLocationId,',') + ',' +
strRem(inventOnHand.wMSLocationId,',')
;
sw.WriteLine(string);
string = '';
}
sw.Flush();
sw.Close();
sw.Dispose();
CodeAccessPermission::revertAssert();
}
--------------------------------------------------------------------------------------------------------------------------
D. Create a run method
public void run()
{
dialog = new Dialog("On Hand Planning Report");
dialogField = dialog.addFieldValue(ExtendedTypeStr(InventSiteId), site, "Site Id");
dialogField1= dialog.addFieldValue(ExtendedTypeStr(InventLocationId), warehouse, "Warehouse");
dialogField2= dialog.addFieldValue(ExtendedTypeStr(FilePath), filePath, "File Path");
if (dialog.run())
{
site = dialogField.value();
site = !site ? '*' : site;
warehouse = dialogField1.value();
warehouse = !warehouse ? '*' : warehouse;
filePath = dialogField2.value();
if (!filePath)
{
throw error("Please define file path.");
}
perm = new InteropPermission(InteropKind::ClrInterop);
timeStamp = System.String::Format("{0:ddMMMyy_hhmm}", (DateTimeUtil::applyTimeZoneOffset(DateTimeUtil::utcNow(), Timezone::GMTPLUS0530CHENNAI_KOLKATA_MUMBAI)));
fileName = filePath + "\\\\On Hand Planning Report_"+ timeStamp + ".csv";
perm.assert();
sw = new System.IO.StreamWriter(fileName);
this.reportData();
}
}
--------------------------------------------------------------------------------------------------------------------------
D. Create a main method
static client void main(Args args)
{
Acx_OnHandPlanningReport onHandPlanning = new Acx_OnHandPlanningReport();
onHandPlanning.run();
}
A. Declare variable in ClassDeclaration.
class Acx_OnHandPlanningReport
{
System.IO.StreamWriter sw;
InteropPermission perm;
Dialog dialog;
DialogField dialogField, dialogField1, dialogField2;
Filename fileName;
FilePath filePath;
Str string;
str 200 timeStamp;
ItemId itemId;
InventLocationId warehouse;
InventSiteId site;
ACX_InventOnHand_2 inventOnHand;
}
--------------------------------------------------------------------------------------------------------------------------
B. Create a method called "reportData" or anything as you want.
void reportData()
{
;
string = 'Item Type' + ',' +
'Bar code' + ',' +
'Item Number' + ',' +
'Item Name ' + ',' +
'Site ' + ',' +
'Warehouse ' + ',' +
'Location '
;
sw.WriteLine(string);
string ='' ;
while select inventOnHand
where inventOnHand.inventBatchId != ''
&& inventOnHand.wMSLocationId != ''
&& inventOnHand.InventSiteId like site
&& inventOnHand.InventLocationId like warehouse
{
string = enum2str(inventOnHand.ACX_ItemType) + ',' +
strRem(inventOnHand.ItemId,',') + ',' +
strRem(InventTable::find(inventOnHand.ItemId).itemName(),',') + ',' +
strRem(inventOnHand.InventSiteId,',') + ',' +
strRem(inventOnHand.InventLocationId,',') + ',' +
strRem(inventOnHand.wMSLocationId,',')
;
sw.WriteLine(string);
string = '';
}
sw.Flush();
sw.Close();
sw.Dispose();
CodeAccessPermission::revertAssert();
}
--------------------------------------------------------------------------------------------------------------------------
D. Create a run method
public void run()
{
dialog = new Dialog("On Hand Planning Report");
dialogField = dialog.addFieldValue(ExtendedTypeStr(InventSiteId), site, "Site Id");
dialogField1= dialog.addFieldValue(ExtendedTypeStr(InventLocationId), warehouse, "Warehouse");
dialogField2= dialog.addFieldValue(ExtendedTypeStr(FilePath), filePath, "File Path");
if (dialog.run())
{
site = dialogField.value();
site = !site ? '*' : site;
warehouse = dialogField1.value();
warehouse = !warehouse ? '*' : warehouse;
filePath = dialogField2.value();
if (!filePath)
{
throw error("Please define file path.");
}
perm = new InteropPermission(InteropKind::ClrInterop);
timeStamp = System.String::Format("{0:ddMMMyy_hhmm}", (DateTimeUtil::applyTimeZoneOffset(DateTimeUtil::utcNow(), Timezone::GMTPLUS0530CHENNAI_KOLKATA_MUMBAI)));
fileName = filePath + "\\\\On Hand Planning Report_"+ timeStamp + ".csv";
perm.assert();
sw = new System.IO.StreamWriter(fileName);
this.reportData();
}
}
--------------------------------------------------------------------------------------------------------------------------
D. Create a main method
static client void main(Args args)
{
Acx_OnHandPlanningReport onHandPlanning = new Acx_OnHandPlanningReport();
onHandPlanning.run();
}
Comments
Post a Comment