• Intercompany Sales order


    1)Update Intercompany infomation

    void updateNewDimension()
    {
    /**
    Add by Jimmy 2010-07-12
    update New dimension
    */
    SalesLine UpInterSOCN,UpInterSOHK;
    PurchLine _purchLine;
    // SalesLine _salesLine;
    ;
    if(salesLine.isInterCompanyOrder())
    {
    changecompany(salesLine.salesTable().InterCompanyCompanyId)
    {
    select firstonly _purchLine
    index hint PurchLineIdx
    where _purchLine.InventTransId == salesLine.InterCompanyInventTransId ;

    ttsbegin;
    select firstonly forupdate UpInterSOCN
    index hint SalesLineIdx
    where UpInterSOCN.InventTransId == _purchLine.InventRefTransId;

    if (UpInterSOCN)
    {

    UpInterSOCN.NewDimension
    = salesLine.NewDimension;
    UpInterSOCN.doUpdate();
    }
    ttscommit;
    }
    }
    else
    {
    if(salesLine.salesTable().InterCompanyAutoCreateOrders)
    {
    select firstonly _purchLine
    index hint PurchLineIdx
    where _purchLine.InventRefTransId == SalesLine.InventTransId;

    if (PurchTable::find(_purchLine.PurchId).InterCompanyCompanyId)
    {
    ChangeCompany(PurchTable::find(_purchLine.PurchId).InterCompanyCompanyId)
    {
    ttsbegin;
    select firstonly forupdate UpInterSOHK
    index hint SalesLineIdx
    where UpInterSOHK.InventTransId == _purchLine.InterCompanyInventTransId;

    if(UpInterSOHK)
    {
    UpInterSOHK.NewDimension
    = SalesLine.NewDimension;
    UpInterSOHK.doUpdate();
    }
    ttscommit;
    }
    }
    }
    }
    }

    2)check intercompany delivery date

    static void Jimmy_CheckIntercompanyOrderDeliveryDate(Args _args)
    {
    SalesLine SalesLineHK,SalesLineCN;
    PurchLine PurchLineHK;
    Container con;
    int i;
    ;
    //qcn
    setprefix("Different delivery date!");
    changecompany(
    "qcn")
    {
    while select SalesLineCN
    where SalesLineCN.SalesStatus == SalesStatus::Backorder
    && SalesLineCN.InterCompanyInventTransId != ""
    {
    con
    = ["qhk"];
    select firstonly crosscompany:con PurchLineHK
    where PurchLineHK.InventTransId == SalesLineCN.InterCompanyInventTransId
    && PurchLineHK.InterCompanyInventTransId != "";
    select firstonly crosscompany:con SalesLineHK
    where SalesLineHK.SalesId == PurchLineHK.InventRefId //CN SO
    && SalesLineHK.InventRefTransId == PurchLineHK.InventTransId;
    if(SalesLineHK)
    {
    if(SalesLineCN.ConfirmedDlv != SalesLineHK.ConfirmedDlv)
    {
    i
    ++;
    info(strfmt(
    "%6 - SO: %1,ItemId: %2,HK: %3,CN: %4,HK PO: %5",
    i,SalesLineHK.SalesId,SalesLineHK.ItemId,SalesLineHK.ConfirmedDlv,
    SalesLineCN.ConfirmedDlv,PurchLineHK.DeliveryDate));
    }
    }
    }
    }

    //qhk
    setprefix("Different delivery date!");
    changecompany(
    "QHK")
    {
    while select SalesLineHK
    where SalesLineHK.SalesStatus == SalesStatus::Backorder
    && SalesLineHK.InventRefType == InventRefType::Purch
    {
    PurchLineHK
    = PurchLine::findInventTransId(SalesLineHK.InventRefTransId);
    //if(SalesLineHK.interCompanySalesLineExist())
    if(PurchLineHK.InterCompanyInventTransId)
    {
    CON
    = ["QCN"];
    select firstonly crosscompany:con SalesLineCN
    where SalesLineCN.SalesId == SalesLineHK.SalesId
    && SalesLineCN.InterCompanyInventTransId == PurchLineHK.InventTransId;
    if(SalesLineCN.ConfirmedDlv != SalesLineHK.ConfirmedDlv)
    {
    i
    ++;
    info(strfmt(
    "%6 - SO: %1,ItemId: %2,HK: %3,CN: %4,HK PO: %5",
    i,SalesLineHK.SalesId,SalesLineHK.ItemId,SalesLineHK.ConfirmedDlv,
    SalesLineCN.ConfirmedDlv,PurchLineHK.DeliveryDate));
    }
    }
    }
    }
    info(strfmt(
    "total %1 records",i));
    }
  • 相关阅读:
    数据库课程设计心得【3】存储过程的运用
    看BBC研究大脑的科教片中“放松产生灵感”的笔记
    成功干掉“恶心的U盘自动运行病毒免疫目录”!共享方法,让更多的人干掉这东西!
    分享一大堆最新dot net asp.net c# 电子书下载 , 英文原版的。经典中的经典
    SQL学习之 对GROUP BY 和 HAVING 的理解 学习笔记
    关于Theme中.skin与css需要理清的关系
    最近的学习笔记,记录一些通俗易懂的学习类文章。更像是好资料参与索引。
    关于DNN Module开发学习以来的一点总结
    工具发布!QQ空间阅读与备份工具
    被忽视的大道理
  • 原文地址:https://www.cnblogs.com/Fandyx/p/1775651.html
Copyright © 2020-2023  润新知