跨公司代码做销售订单,做发票时利润中心的确认逻辑

来源:互联网 发布:怎么找到淘宝客旺旺 编辑:程序博客网 时间:2024/04/30 14:57

创建销售订单时,系统会根据物料的工厂主数据确定利润中心,将确定的利润中心存入到vbap-prctr中,但是对于跨公司代码的情况,即销售组织的公司代码为A而订单行项目中的物料的工厂的公司代码为B,工厂所在的公司代码可以从T001W中查到工厂的评估范围,在根据评估范围在T001K中查到公司代码,在做发票时,如果发现销售组织所在的公司代码和工厂的公司代码不一致,那么发票的利润中心便不以订单行项目中的公司代码为准,标准程序的源代码如下:

主程序:SAPLV60A

源代码:LV60AA28

  IF NOT T001K-BUKRS IS INITIAL AND

     T001K-BUKRS NE VBRK-BUKRS.

    CLEAR: VBRP-VBELV,

           VBRP-POSNV,

           VBRP-AUFNR,

           VBRP-KOKRS,

           VBRP-PAOBJNR.

    PERFORM VBRP_PRCTR_ERMITTELN.

  ENDIF.

 

* Invoice check for quantity update in CO

  PERFORM INVOICE_QUANTITY_CHECK

系统会根据其他逻辑来判断利润中心,比如. VBRP_PRCTR_ERMITTELN.中用FM: COPCA_SD_PRCTR_GET来判断利润中心,如果找不到在过账到财务凭证时系统还会在成本要素的缺省成本中心中去找利润中心,如果还没有的话就填不上利润中心了。