Public void LinkPOAndSO(InventTransId _poTransid | InventTransId _soTransId | Qty _qtyToMark) |
{ | ||
tmpInventTransMark tmpInventTransMark; | ||
InventTransId issueInventTransId = _poTransid; | ||
InventTransId receiptInventTransId = _soTransId; | ||
InventTransOriginId receiptInventTransOriginId = | ||
InventTransOrigin::findByInventTransId(receiptInventTransId).RecId; | ||
InventTrans receiptInventTrans = | ||
InventTrans::findByInventTransOrigin(receiptInventTransOriginId); | ||
InventTransOriginId issueInventTransOriginId = | ||
InventTransOrigin::findByInventTransId(issueInventTransId).RecId; | ||
InventTrans issueInventTrans = | ||
InventTrans::findByInventTransOrigin(issueInventTransOriginId); | ||
MarkingCollection collection = TmpInventTransMark::markingCollection( | ||
InventTransOrigin::find(receiptInventTransOriginId) | ||
receiptInventTrans.inventDim() | ||
receiptInventTrans.Qty); | ||
collection.insertCollectionToTmpTable(tmpInventTransMark); | ||
select firstonly tmpInventTransMark | ||
where tmpInventTransMark.InventTransOrigin == issueInventTrans.InventTransOrigin | ||
&& tmpInventTransMark.InventDimId == issueInventTrans.InventDimId; | ||
if (tmpInventTransMark.RecId != 0) | ||
{ | ||
Qty qtyToMark; | ||
if (_qtyToMark) | ||
{ | ||
qtyToMark = _qtyToMark; | ||
} | ||
else | ||
{ | ||
qtyToMark = issueInventTrans.Qty; | ||
} | ||
tmpInventTransMark.QtyMarkNow = qtyToMark; | ||
tmpInventTransMark.QtyRemain -= tmpInventTransMark.QtyMarkNow; | ||
Map mapUpdated = new Map(Types::Int64 | Types::Record); | |
mapUpdated.insert(tmpInventTransMark.RecId | tmpInventTransMark); | |
TmpInventTransMark::updateTmpMark( | ||
receiptInventTransOriginId | ||
receiptInventTrans.inventDim() | ||
-qtyToMark | ||
mapUpdated.pack()); | ||
} | ||
} |
adsenseheader
Thursday, October 20, 2022
Link Purchase order and Sales order through Marking in x++ D365 FO
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment