public class InventJournalTransUploadSPL_movement
//UploadInventTrans
{
InventJournalTable inventJournalTable;
FormRun formRunInventJournalTable;
MaterialIssueTable material;
}
void callModified(FormRun _formRun, Types _types, int _dsId, int _fieldId)
{
FormStringControl fc1;
FormRealControl fc2;
FormIntControl fc3;
FormComboboxControl fc4;
FormDateControl fc5;
;
switch (_types)
{
case (Types::String) :
fc1= _formRun.design().addControl(FormCOntrolType::String,"InventXXX");
fc1.dataSource(_dsid);
fc1.dataField(_fieldId);
fc1.modified();
_formRun.design().removeControl(fc1.id());
return;
case (Types::Real) :
fc2= _formRun.design().addControl(FormCOntrolType::Real,"InventXXX");
fc2.dataSource(_dsid);
fc2.dataField(_fieldId);
fc2.modified();
_formRun.design().removeControl(fc2.id());
return;
case (Types::Integer) :
fc3= _formRun.design().addControl(FormCOntrolType::Integer,"InventXXX");
fc3.dataSource(_dsid);
fc3.dataField(_fieldId);
fc3.modified();
_formRun.design().removeControl(fc3.id());
return;
case (Types::Enum) :
fc4= _formRun.design().addControl(FormCOntrolType::ComboBox,"InventXXX");
fc4.dataSource(_dsid);
fc4.dataField(_fieldId);
fc4.modified();
_formRun.design().removeControl(fc4.id());
return;
case (Types::Date) :
fc5= _formRun.design().addControl(FormCOntrolType::Date,"InventXXX");
fc5.dataSource(_dsid);
fc5.dataField(_fieldId);
fc5.modified();
_formRun.design().removeControl(fc5.id());
return;
}
throw "";
}
void createJournalTable()
{
Args args = new args();
FormDataSource fds;
;
args.name(formStr(InventJournalTable));
args.parmEnumType(enumname2id("InventJournalType"));
args.parmEnum(InventJournalType::project);
formRunInventJournalTable = classFactory.formRunClass(args);
formRunInventJournalTable.init();
formRunInventJournalTable.design().visible(false);
formRunInventJournalTable.run();
fds = formRunInventJournalTable.dataSource();
fds.create();
inventJournalTable = fds.cursor();
inventJournalTable.JournalNameId = material.InventJournalNameId;
this.callModified(formRunInventJournalTable, Types::String, fds.id(), fieldNum(InventJournalTable, JournalNameId));
inventJournalTable.Description = material.Name;
this.callModified(formRunInventJournalTable, Types::String, fds.id(), fieldNum(InventJournalTable, Description));
inventJournalTable.VoucherSeqId = material.InventJournalVoucherSeqId;
this.callModified(formRunInventJournalTable, Types::String, fds.id(), fieldNum(InventJournalTable, VoucherSeqId));
inventJournalTable.MaterialIssueId = material.MaterialIssueId;
this.callModified(formRunInventJournalTable, Types::String, fds.id(), fieldNum(InventJournalTable, MaterialIssueId));
inventJournalTable.NumOfLines = material.Lines;
this.callModified(formRunInventJournalTable, Types::Integer, fds.id(), fieldNum(InventJournalTable, NumOfLines));
formRunInventJournalTable.dataSource().write();
}
void createJournalTrans()
{
Args args = new args();
FormDataSource fds;
FormRun formRun;
InventJournalTrans inventJournalTrans;
InventDim inventDim;
object obj;
MaterialIssueLine MaterialIssueLine;
;
args.name(formStr(InventJournalProject));
args.record(inventJournalTable);
args.caller(formRunInventJournalTable);
formRun = classFactory.formRunClass(args);
formRun.init();
formRun.design().visible(false);
formRun.run();
while select MaterialIssueLine where MaterialIssueLine.MaterialIssueId == material.MaterialIssueId
{
fds = formRun.dataSource();
fds.create();
inventJournalTrans = fds.cursor();
inventJournalTrans.ItemId = MaterialIssueLine.ItemId;//"B-Uad";
this.callModified(formRun, Types::String, fds.id(), fieldNum(InventJournalTrans, ItemId));
inventJournalTrans.Qty = MaterialIssueLine.IssuedQty;// 10;
this.callModified(formRun, Types::Real , fds.id(), fieldNum(InventJournalTrans, Qty));
inventJournalTrans.ProjId =material.ProjId;// '40110';
this.callModified(formRun, Types::String , fds.id(), fieldNum(InventJournalTrans, ProjId));
inventJournalTrans.ProjSalesCurrencyId = MaterialIssueLine.CurrencyCode;//'INR';
this.callModified(formRun, Types::String , fds.id(), fieldNum(InventJournalTrans, ProjSalesCurrencyId));
inventJournalTrans.ProjUnitID = MaterialIssueLine.UnitID;// 'pcs';
this.callModified(formRun, Types::String , fds.id(), fieldNum(InventJournalTrans, ProjUnitID));
inventJournalTrans.ProjCategoryId = MaterialIssueLine.ProjCategoryId;// 'Bulbs';
this.callModified(formRun, Types::String , fds.id(), fieldNum(InventJournalTrans, ProjCategoryId));
obj = fds;
fds = obj.inventDimDs();
inventDim = fds.cursor();
inventDim.InventLocationId =MaterialIssueLine.InventLocationId;// "NW";
this.callModified(formRun, Types::String , fds.id(), fieldNum(InventDim, InventLocationId));
formRun.dataSource().write();
}
formRun.close();
}
public void first(MaterialIssueTable _MaterialIsuueTable)
{
JournalForm _journalForm;
Args args,args1;
boolean check;
;
check = true;
Material = _MaterialIsuueTable;
ttsbegin;
this.createJournalTable();
try
{
if (inventJournalTable)
{
this.createJournalTrans();
// this.postJournalTable();
args = new Args();
args.record(inventJournalTable);
args.caller(formRunInventJournalTable);
new menuFunction(menuItemActionStr(InventJournalPost),
MenuItemType::Action).run(args);
}
}
catch
{
ttscommit;
}
ttscommit;
}
static void main(args _args)
{
InventJournalTransUploadSPL_movement InventJournalTransUploadSPL_movement = new InventJournalTransUploadSPL_movement();
MaterialIssueTable Material1;
;
Material1 = _args.record();
InventJournalTransUploadSPL_movement.first(Material1);
}
This is done as per one of the customer specification
No comments:
Post a Comment