AX/D365 Create an inventory counting journal and Post it
static void createInvCountingAndPost(Args _args)
{
InventJournalName inventJournalName;
InventJournalTable inventJournalTable;
InventJournalTrans inventJournalTrans;
InventDim inventDim;
InventJournalCheckPost inventjournalCheckPost;
JournalId journalId;
InventSum inventSum;
int numOfLine;
;
inventJournalName = InventJournalName::find(“YourJournalName”);// Must have
inventJournalTable.initFromInventJournalName(inventJournalName);
inventJournalTable.SystemBlocked = true;
inventJournalTable.insert();
inventJournalTrans.initFromInventJournalTable(inventJournalTable);
inventJournalTrans.TransDate = systemdateget();
inventJournalTrans.ItemId = "YourItemId";
inventDim.InventSiteId = "YourInventSite";
inventDim.InventLocationId = "YourInventLocationId";
inventDim.configId = "InventConfigId";
inventDim = InventDim::findOrCreate(inventDim);
inventJournalTrans.InventDimId = inventDim.inventDimId;
inventSum =InventSum::find(inventJournalTrans.ItemId,inventJournalTrans.InventDimId);
InventSum.reread();
inventJournalTrans.InventOnHand = InventSum.AvailPhysical;
inventJournalTrans.Counted = 1200;
inventJournalTrans.Qty = inventJournalTrans.Counted - inventJournalTrans.InventOnHand;
inventJournalTrans.insert();
journalId = inventJournalTable.JournalId;
inventJournalCheckPost =InventJournalCheckPost::newJournalCheckPost(JournalCheckPostType::Post, inventJournalTable);
inventJournalCheckPost.run();
update_recordSet inventJournalTable
setting SystemBlocked = false, NumOfLines = numOfLine
where inventJournalTable.JournalId == journalId;
}
Comments
Post a Comment