ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 销售订单中的成本中心问题

销售订单中的成本中心问题

原创 Linux操作系统 作者:gaohangzzu 时间:2011-11-24 23:20:02 0 删除 编辑
Debug 发现,只有Free of Charge订单类型是才会显示成本中心字段。
Include:        FV45PF0C_COBL_SEND_PBO_VBAK的form. COBL_SENG_PBO_VBAK下列代码

* Geschäftsbereich
  int_coblf-fdnam = 'GSBER'.
  int_coblf-output = char1.
  int_coblf-active = char1.
  append int_coblf.
  clear int_coblf.

* Kostenstelle
  if not vbak-kostl is initial or
     vbak-vbtyp ca vbtyp_kl.
    int_coblf-fdnam = 'KOSTL'.
    if t180-trtyp ne chara.如果
      int_coblf-input  = char1.
说明:char1值为1。
说明:vbak-vbtyp为order type,vbtyp_kl(值为I,代表order type为free of charge类型)
如果在还未输入cost center的情况下,kostl即cost center已有值,或者order type为free of charge类型的 ,则将int_coblf-fdnam栏位的值置为’KOSTL’,后面相应的程序会根据int_coblf这个内表中是否有’KOSTL’来对内表SCREEN进行modify,从而控制屏幕中’KOSTL’栏位是否可见。(例如将栏位’KOSTL’的invisible属性置为1,则’KOSTL’栏位变为不可见)

    endif.
    int_coblf-output = char1.
    int_coblf-active = char1.
    append int_coblf.
    clear int_coblf.
  endif.

* Projekt
  int_coblf-fdnam = 'PS_PSP_PNR'.
  int_coblf-output = char1.
  if t180-trtyp ne chara.
    int_coblf-input  = char1.
  endif.
  if fehler = charx and
     fehlerfeld = 'VBAK-PS_PSP_PNR'.
    int_coblf-cupos = char1.
  endif.
  int_coblf-active = char1.
  append int_coblf.
  clear int_coblf.

  cobl-process = 'COBL_ALL'.
  cobl-event = 'PRUEFEN'.
 
Sap的设计就是没有成本中心,如果有ML就会有后续问题。
没有必要把出库消耗到成本中心,一定要实现可以通过下面的方法实现:
可以参考以下代码
MV45AFZB
FORM. USEREXIT_COBL_SEND_ITEM.
INT_COBLF-FDNAM = 'KOSTL'.  
INT_COBLF-OUTPUT   = '1'. 
INT_COBLF-INPUT    = '1'.   
INT_COBLF-REQUIRED = '1'.
INT_COBLF-INTENS   = '1'.
INT_COBLF-CUPOS    = '1'.
INT_COBLF-ACTIVE   = '1'.
 APPEND INT_COBLF.

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10350860/viewspace-712026/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 批量打印SO
请登录后发表评论 登录
全部评论

注册时间:2010-05-20

  • 博文量
    43
  • 访问量
    91197