Saturday, May 18, 2019

Updating InventDim


static void OGSUpdateInventDim(Args _args)
{
    InventDimId dim1;
    SalesLine salesLine;
    InventTransOrigin inventTransOrigin;
    InventTrans inventTrans;

    dim1 = "INDP-000051";
    while select forupdate salesLine
    where salesLine.InventDimId != dim1 && salesLine.SalesStatus == SalesStatus::Backorder
    && salesLine.dataAreaId == "INDP" //&& salesLine.SalesId == "SO-ASAP000525"
    {
        ttsBegin;
        salesLine.InventDimId = dim1;
        salesLine.update();

        inventTransOrigin = null;
        select forupdate inventTransOrigin
        where inventTransOrigin.InventTransId == salesLine.InventTransId &&
        inventTransOrigin.dataAreaId == salesLine.dataAreaId;
        inventTransOrigin.ItemInventDimId = dim1;
        inventTransOrigin.update();

        inventTrans = null;
        select forUpdate inventTrans
        where inventTrans.InventTransOrigin == inventTransOrigin.RecId;
        inventTrans.inventDimId = dim1;
        inventTrans.update();
        ttsCommit;
    }
    info("Finished");
}

No comments:

Post a Comment