packingSlipをコードで更新した後で注文を閉じるには?コードを使用してpackingSlipを更新した後で注文を閉じる方法
私はpurchaseLine.receivedNowで各purchaseLineで異なる数量を持つことができます。配送されるアイテムの数にかかわらず、梱包伝票を投稿して購入注文を閉じる必要があります。
私はAX 2009でx ++経由でpackingSlipを投稿しようとしていますが、正常に動作します。 しかし、私は同時に注文を閉じる必要があります。
私は基本的に必要があります。これを実装する方法について
purchParmline.closed = true;
任意のアイデア?私は検索し、購入注文を投稿するための多くの異なる方法を見つけたが、私の質問には全く答えません。
void postPackingSlip(purchId _purchId, num _packingSlipId)
{
PurchFormLetter PurchFormLetter;
PurchTable PurchTable;
;
PurchTable = PurchTable::find(_purchId,true);
purchFormLetter = purchFormLetter::construct(DocumentStatus::PackingSlip);
PurchFormLetter.update(PurchTable, _packingSlipId , today(), PurchUpdate::ReceiveNow ,AccountOrder::None,NoYes::No,NoYes::No);
}
私はまた、このようにそれを実行しようとしましたが、ノー成功
void postPackingSlipOld(purchId _purchId, num _packingSlipId)
{
PurchFormLetter purchFormLetter;
PurchTable purchTable;
purchparmtable purchParmtable;
ParmId parmId;
PurchLine purchLine;
purchparmline purchparmline;
;
purchTable=PurchTable::find(_purchId);
purchFormLetter = PurchFormLetter::construct(DocumentStatus::PackingSlip);
purchFormLetter.createParmUpdate();
purchParmtable = purchParmtable::find(_purchid, _packingSlipId);
purchFormLetter.createParmTable(purchParmTable,purchTable);
purchParmTable.Num = _packingSlipId;
purchParmTable.insert();
while select purchLine
where purchLine.PurchId == purchTable.purchId
{
purchParmLine.ParmId = purchParmTable.ParmId;
purchParmLine.InitFromPurchLine(purchLine);
purchParmLine.ReceiveNow = PurchLine.PurchReceivedNow;
purchParmLine.TableRefId = purchParmTable.TableRefId ;
purchParmLine.closed = true;
purchParmLine.setQty(DocumentStatus::PackingSlip,false, true);
purchParmLine.setLineAmount();
purchParmLine.insert();
}
purchFormLetter.proforma (false);
purchFormLetter.specQty (PurchUpdate::ReceiveNow);
purchFormLetter.transDate (today());
purchFormLetter.run();
}
アレックスに感謝します。私は変更を見るために購入テーブルをリフレッシュしなければならなかったので、最初はうまくいきませんでした。 – AlexanderTh