Counting Journal Line Creation Through Code AX X++ D365
public boolean createCountJourLines(ItemId _itemId, InventDimId _inventDimId, Real _qty, InventJournalId _inventJournalId)
{
InventTable inventTable;
InventJournalTable inventJournalTable = InventJournalTable::find(_inventJournalId);
InventItemBarcode inventBarCode;
InventDim inventDim;
InventLocation inventLocation;
InventJournalTrans inventJournalTrans;
InventDimParm inventDimParm;
boolean ret = false;
;
inventTable.clear();
select * from inventTable
where inventTable.itemId == _tmpRetailProductsToAdd.itemId;
select firstonly inventBarCode
where inventBarCode.itemId == _ItemId &&
inventBarCode.inventDimId == _inventDim;
inventLocation = InventLocation::find(inventJournalTable.InventLocationId);
inventDim = inventBarCode.inventDim();
inventDim.InventLocationId = inventJournalTable.InventLocationId;
inventDim.InventSiteId = inventJournalTable.InventSiteId;
inventDim = InventDim::findOrCreate(inventDim);
inventDimParm.initFromInventDim(inventDim);
inventJournalTrans.clear();
inventJournalTrans.selectForUpdate(true);
inventJournalTrans.initFromInventJournalTable(inventJournalTable);
inventJournalTrans.initFromInventTable(inventTable);
inventJournalTrans.InventDimId = inventDim.inventDimId;
inventJournalTrans.InventOnHand = InventSumDatePhysicalDim::onHandQty(systemDateGet(),inventTable.itemId,inventDim,inventDimParm);
inventJournalTrans.TransDate = systemDateGet();
inventJournalTrans.Qty = _qty;
inventJournalTrans.setCostPrice(inventJournalTrans.InventDimId);
if (inventJournalTrans.validateWrite())
{
inventJournalTrans.insert();
ret = true;
}
return ret;
}
{
InventTable inventTable;
InventJournalTable inventJournalTable = InventJournalTable::find(_inventJournalId);
InventItemBarcode inventBarCode;
InventDim inventDim;
InventLocation inventLocation;
InventJournalTrans inventJournalTrans;
InventDimParm inventDimParm;
boolean ret = false;
;
inventTable.clear();
select * from inventTable
where inventTable.itemId == _tmpRetailProductsToAdd.itemId;
select firstonly inventBarCode
where inventBarCode.itemId == _ItemId &&
inventBarCode.inventDimId == _inventDim;
inventLocation = InventLocation::find(inventJournalTable.InventLocationId);
inventDim = inventBarCode.inventDim();
inventDim.InventLocationId = inventJournalTable.InventLocationId;
inventDim.InventSiteId = inventJournalTable.InventSiteId;
inventDim = InventDim::findOrCreate(inventDim);
inventDimParm.initFromInventDim(inventDim);
inventJournalTrans.clear();
inventJournalTrans.selectForUpdate(true);
inventJournalTrans.initFromInventJournalTable(inventJournalTable);
inventJournalTrans.initFromInventTable(inventTable);
inventJournalTrans.InventDimId = inventDim.inventDimId;
inventJournalTrans.InventOnHand = InventSumDatePhysicalDim::onHandQty(systemDateGet(),inventTable.itemId,inventDim,inventDimParm);
inventJournalTrans.TransDate = systemDateGet();
inventJournalTrans.Qty = _qty;
inventJournalTrans.setCostPrice(inventJournalTrans.InventDimId);
if (inventJournalTrans.validateWrite())
{
inventJournalTrans.insert();
ret = true;
}
return ret;
}
Comments
Post a Comment