一次取消整张订单剩余交货量

void clicked()
{
    SalesLine       RemainSalesLine;
    ;

    super();

    ttsbegin;

    if (Box::yesNo(strfmt("是否取消订单 %1 的所有剩余交货?",salestable.SalesId) +'\n',DialogButton::No)==DialogButton::Yes)
    {
        while select forupdate RemainSalesLine
            where RemainSalesLine.SalesId   ==  SalesTable.SalesId
        {
            if (salesTable.checkUpdate())
            {
                RemainSalesLine.RemainSalesPhysical     =   0;
                RemainSalesLine.RemainInventPhysical    =   0;

                InterCompanyUpdateRemPhys::synchronize(RemainSalesLine,
                                                       RemainSalesLine.RemainSalesPhysical,
                                                       RemainSalesLine.RemainInventPhysical);
                RemainSalesLine.update();

                SalesLine_ds.reread();
                SalesLine_ds.refresh();
            }
        }
    }

    ttscommit;
}

posted @ 2010-01-20 10:22  Joshua_Li  阅读(137)  评论(0)    收藏  举报