CNS0项目创建交货单增加销售办事处

发布时间 2023-11-30 08:09:18作者: 斌将军

1、业务需求

1.1、销售办事处介绍

销售办事处是指在企业中负责销售活动的区域性单位或部门。在SD模块中,可以表示企业的不同销售地点、销售办公室、分销中心或分公司。

销售办事处扮演着多种角色和职责,例如:

  1. 销售活动管理:销售办事处负责管理和监控属于其管辖范围内的销售活动。这包括销售订单的处理、客户询价、报价管理、合同管理等。

  2. 客户关系管理:销售办事处是与客户直接互动的关键机构。它们负责与客户进行沟通、建立关系、处理客户投诉和问题,并确保客户满意度。

  3. 销售数据分析:销售办事处负责收集、记录和分析销售数据以及相关指标。这些数据可以用于制定销售策略、优化销售过程,并为企业的决策提供支持。

  4. 销售区域划分:销售办事处可以根据不同的售点、终端市场、产品类型或地理位置划分销售区域,可以被指定到一个或多个销售区域。可以更好地组织销售团队和资源,并实现销售目标。

  5. 销售团队管理:销售办事处可以负责管理属于其管辖范围内的销售团队。这包括分配任务、跟踪销售业绩、培训和发展销售人员等。

  6. 价格和折扣管理:销售办事处可以管理与销售相关的价格策略、折扣和促销活动。这包括为特定客户、销售区域或产品定义价格和折扣。

1.2、背景和问题

背景:项目实施过程中需要通过销售办事处进行权限校验,控制项目的交货单和销售订单的交货单。

问题:项目本身是不具备销售订单组织架构的,因此在创建交货单时,缺失销售办事处,不能实现权限控制,所以要在项目CNS0中添加销售办事处,并带入到创建的交货单中,达到权限控制两类交货单的目的。

2、增强实现

2.1、新增销售办事处

将销售办事处添加到组件屏幕

F1找到该界面的屏幕为SAPLCNSH→1100,且界面的字段在结构CNSH_LIF中,为了后边代码传值时方便,新增的销售办事处字段,也需要添加到结构CNSH_LIF中

仿照界面现有字段,新增销售办事处字段CNSH_LIF-VKBUR,和对应描述TVKBT-BEZEI

接着实现输入销售办事处时敲回车,带出对应描述

模仿销售区域字段带出描述的FILL_TEXT方法

 实现销售办事处带出描述

"--------------------@斌将军--------------------
MODULE fill_text02 OUTPUT.
* 销售办事处
  IF CNSH_LIF-VKBUR IS INITIAL.
    CLEAR TVKBT.
  ELSEIF TVKBT-VKBUR NE CNSH_LIF-VKBUR.
    SELECT SINGLE * FROM TVKBT WHERE SPRAS EQ SY-LANGU AND
                                     VKBUR EQ CNSH_LIF-VKBUR.
    IF SY-SUBRC NE 0.
      CLEAR TVKBT.
    ENDIF.
  ENDIF.
ENDMODULE.
"--------------------@斌将军--------------------

其中表TVKBT也要添加到相同位置的全局结构中

效果如下

2.2、将增强字段赋值到交货单

销售办事处在交货单抬头LIKP表,通过源码调试,在FORM:GN_LIEFERKOPF_AUFBAUEN(设置交货抬头)中找到给LIKP赋值的地方

方法:找该增强点时,我的办法就是,观察销售区域三个字段何时传递到LIKP中,那么新增的销售办事处,理应也可以在此处传入到LIKP中

在FORM的末尾做隐式增强

"--------------------@斌将军--------------------
FORM gn_lieferkopf_aufbauen
     USING    ii_cd_plant TYPE REF TO /spe/badi_determine_cd_plant
     CHANGING gla_subrc   LIKE sy-subrc.
……

ENHANCEMENT 1  ZESD_CNS0.    "active version
CALL FUNCTION 'ZXX01_USER_EXITS'"增强开关
  EXPORTING
    i_encode = 'SD058'
  EXCEPTIONS
    close    = 1
    OTHERS   = 2.
IF sy-subrc = 0.
  IF xkomdlgn-vkbur IS NOT INITIAL.
    likp-vkbur = xkomdlgn-vkbur."销售办事处
  ENDIF.
ENDIF.
ENDENHANCEMENT.
ENDFORM.                    "gn_lieferkopf_aufbauen
"--------------------@斌将军--------------------

点击保存创建交货单后,成功将销售办事处保存到交货单中

定期更文,欢迎关注