1.客户主数据
1.1 创建、修改客户主数据
*该函数更新所有字段,X表用来新增和修改,Y表为删除
  CALL FUNCTION 'SD_CUSTOMER_MAINTAIN_ALL'
   EXPORTING
     i_kna1                              =  is_kna1
     i_knb1                              =  is_knb1
     i_knvv                              =  is_knvv
     i_bapiaddr1                         =  is_bapiaddr1
     i_maintain_address_by_kna1          = 'X'
     pi_postflag                         = 'X'
     i_from_customermaster               = 'X'
   IMPORTING
     e_kunnr                             =   op_kunnr
   TABLES
     t_xknbk                             =   it_bank_new
     t_xknvi                             =   it_knvi
     t_xknvp                             =   it_knvp
     t_xknvk                             =   it_knvk
     t_yknbk                             =   it_yknbk
     t_yknvi                             =   it_yknvi
     t_yknvp                             =   it_yknvp
     t_yknvk                             =   it_yknvk
   EXCEPTIONS
     client_error                        = 1
     kna1_incomplete                     = 2
     knb1_incomplete                     = 3
     knb5_incomplete                     = 4
     knvv_incomplete                     = 5
     kunnr_not_unique                    = 6
     sales_area_not_unique               = 7
     sales_area_not_valid                = 8
     insert_update_conflict              = 9
     number_assignment_error             = 10
     number_not_in_range                 = 11
     number_range_not_extern             = 12
     number_range_not_intern             = 13
     account_group_not_valid             = 14
     parnr_invalid                       = 15
     bank_address_invalid                = 16
     tax_data_not_valid                  = 17
     no_authority                        = 18
     company_code_not_unique             = 19
     dunning_data_not_valid              = 20
     knb1_reference_invalid              = 21
     cam_error                           = 22
     OTHERS                              = 23.

1.2 创建银行主数据
          CALL FUNCTION 'BAPI_BANK_CREATE'
          EXPORTING
            bank_ctry    = it_bank-banks
            bank_key     = it_bank-bankl
            bank_address = bankaddress
            i_xupdate    = 'X'.

1.3 删除、解除删除、冻结、解除冻结客户主数据
    CALL FUNCTION 'SD_CUSTOMER_MAINTAIN_ALL'
   EXPORTING
     i_kna1                              = is_kna1
     i_knb1                              = is_knb1
     i_knvv                              = is_knvv
     i_maintain_address_by_kna1          = 'X'
     pi_postflag                         = 'X'
     i_from_customermaster               = 'X'
   IMPORTING
     e_kunnr                             =  op_kunnr.

1.4 显示客户主数据,可直接查询表 kna1 ,knb1, knvv , knvp , knvk

2 显示客户信贷主数据
 CALL FUNCTION 'CREDIT_EXPOSURE'
    EXPORTING
      kkber                      = ip_kkber
      kunnr                      = ip_kunnr
      date_credit_exposure       = '99991231'
  IMPORTING
    creditlimit                = creditlimit
    sum_opens                  = sum_opens.

3 客户物料
3.1 创建、修改客户物料
 CALL FUNCTION 'ENQUEUE_EVKNMT'
   EXPORTING
     mode_knmt            = 'E'
     mandt                = sy-mandt
     vkorg                = is_zrfc_s_sd024-vkorg
     vtweg                = is_zrfc_s_sd024-vtweg
     kunnr                = is_zrfc_s_sd024-kunnr
*      MATNR                =
     x_vkorg              = ' '
     x_vtweg              = ' '
     x_kunnr              = ' '
     x_matnr              = ' '
     _scope               = '2'
     _wait                = ' '
     _collect             = ' '
   EXCEPTIONS
     foreign_lock         = 1
     system_failure       = 2
     OTHERS               = 3.

*在此添加必要的逻辑判断
   CALL FUNCTION 'RV_CUSTOMER_MATERIAL_UPDATE' IN UPDATE TASK
    TABLES
      xknmt_tab    = xknmt
      yknmt_tab    = yknmt
      tcatalog_tab = lt_catalog.

CALL FUNCTION 'DEQUEUE_EVKNMT'
    EXPORTING
      mode_knmt = 'E'
      mandt     = sy-mandt
      vkorg     = is_zrfc_s_sd024-vkorg
      vtweg     = is_zrfc_s_sd024-vtweg
      kunnr     = is_zrfc_s_sd024-kunnr
*     MATNR           =
      x_vkorg   = ' '
      x_vtweg   = ' '
      x_kunnr   = ' '
      x_matnr   = ' '
      _scope    = '3'
      _synchron = ' '
      _collect  = ' '.

3.2 显示客户物料,可直接查询表 knmt

4.订单价格条件
4.1 创建,修改条件记录,可使用BDC实现
4.2 显示条件记录,可直接查询表A305

5.销售订单
5.1创建销售订单
*凭证类型->凭证类别->对象类型  
SELECT SINGLE VBTYP INTO  VBTYP   FROM TVAK WHERE  AUART = IS_ZRFC_S_SD037-DOC_TYPE.
  CALL FUNCTION 'SD_OBJECT_TYPE_DETERMINE'
    EXPORTING
      I_DOCUMENT_TYPE   = VBTYP
    IMPORTING
      E_BUSINESS_OBJECT = OBJTYPE.

IF  OBJTYPE  =  'BUS2032'.
    CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
      EXPORTING
        ORDER_HEADER_IN      = ORDER_HEADER_IN
        ORDER_HEADER_INX     = ORDER_HEADER_INX
        LOGIC_SWITCH         = LOGIC_SWITCH
        TESTRUN              = ' '
        CONVERT              = ' '
      IMPORTING
        SALESDOCUMENT        = EP_VBELN
      TABLES
        RETURN               = ET_LOG
        ORDER_ITEMS_IN       = ORDER_ITEMS_IN
        ORDER_ITEMS_INX      = ORDER_ITEMS_INX
        ORDER_PARTNERS       = ORDER_PARTNERS
        ORDER_SCHEDULES_IN   = ORDER_SCHEDULES_IN
        ORDER_SCHEDULES_INX  = ORDER_SCHEDULES_INX
        ORDER_CONDITIONS_IN  = ORDER_CONDITIONS_IN
        ORDER_CONDITIONS_INX = ORDER_CONDITIONS_INX
        ORDER_TEXT           = IS_ORDER_TEXT.
  ELSE.
 fbgenmac 'BAPI_SALESORDER_CREATEFROMDAT2'.

* BAPIs run without dialog
  CALL FUNCTION 'DIALOG_SET_NO_DIALOG'.

* Set global Bapiflag for further background processing          "1112263
  CALL FUNCTION 'IBAPI_Z_SET_BAPI_FLAG'                     "1112263
    EXPORTING                                               "1112263
      iv_flag = 'X'.                                        "1112263

*ENHANCEMENT-SECTION     BAPI_SALESORDER_CREATEFROMD_02 SPOTS ES_SAPL2032.
  CALL FUNCTION 'SD_SALESDOCUMENT_CREATE'
    EXPORTING
      salesdocument           = salesdocumentin
      sales_header_in         = order_header_in
      sales_header_inx        = order_header_inx
      sender                  = sender
      binary_relationshiptype = binary_relationshiptype
      int_number_assignment   = int_number_assignment
      behave_when_error       = behave_when_error
      logic_switch            = logic_switch
      business_object         = business_object
      testrun                 = testrun
      convert_parvw_auart     = convert
    IMPORTING
      salesdocument_ex        = salesdocument
    TABLES
      return                  = return
      sales_items_in          = order_items_in
      sales_items_inx         = order_items_inx
      sales_partners          = order_partners
      sales_schedules_in      = order_schedules_in
      sales_schedules_inx     = order_schedules_inx
      sales_conditions_in     = order_conditions_in
      sales_conditions_inx    = order_conditions_inx
      sales_cfgs_ref          = order_cfgs_ref
      sales_cfgs_inst         = order_cfgs_inst
      sales_cfgs_part_of      = order_cfgs_part_of
      sales_cfgs_value        = order_cfgs_value
      sales_cfgs_blob         = order_cfgs_blob
      sales_cfgs_vk           = order_cfgs_vk
      sales_cfgs_refinst      = order_cfgs_refinst
      sales_ccard             = order_ccard
      sales_text              = order_text
      sales_keys              = order_keys
      extensionin             = extensionin
      partneraddresses        = partneraddresses.
*END-ENHANCEMENT-SECTION.

* reset the dialogflag
  CALL FUNCTION 'DIALOG_SET_WITH_DIALOG'.
ENDIF.

5.2 修改销售订单
   CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
    EXPORTING
      SALESDOCUMENT         = IS_ZRFC_S_SD042-VBELN
      ORDER_HEADER_IN       = ORDER_HEADER_IN
      ORDER_HEADER_INX      = ORDER_HEADER_INX
      LOGIC_SWITCH          = LOGIC_SWITCH
    TABLES
      RETURN                = ET_LOG
      ORDER_ITEM_IN         = ORDER_ITEM_IN
      ORDER_ITEM_INX        = ORDER_ITEM_INX
*      partners              = partners
      PARTNERCHANGES        = PARTNERCHANGES
      SCHEDULE_LINES        = SCHEDULE_LINES
      SCHEDULE_LINESX       = SCHEDULE_LINESX
      ORDER_TEXT            = IT_BAPISDTEXT
      CONDITIONS_IN         = CONDITIONS_IN
      CONDITIONS_INX        = CONDITIONS_INX.

5.3 显示销售订单
   CALL FUNCTION 'BAPISDORDER_GETDETAILEDLIST'
    EXPORTING
      I_BAPI_VIEW             = I_BAPI_VIEW
      I_MEMORY_READ           = SPACE
    TABLES
      SALES_DOCUMENTS         = IT_SALES_KEY
      ORDER_HEADERS_OUT       = ORDER_HEADERS_OUT
      ORDER_ITEMS_OUT         = ORDER_ITEMS_OUT
      ORDER_SCHEDULES_OUT     = ORDER_SCHEDULES_OUT
      ORDER_BUSINESS_OUT      = ORDER_BUSINESS_OUT
      ORDER_PARTNERS_OUT      = ORDER_PARTNERS_OUT
      ORDER_ADDRESS_OUT       = ORDER_ADDRESS_OUT
      ORDER_STATUSHEADERS_OUT = ORDER_STATUSHEADERS_OUT
      ORDER_STATUSITEMS_OUT   = ORDER_STATUSITEMS_OUT
      ORDER_CONDITIONS_OUT    = ORDER_CONDITIONS_OUT
      ORDER_COND_HEAD         = ORDER_COND_HEAD
      ORDER_COND_ITEM         = ORDER_COND_ITEM
      ORDER_COND_QTY_SCALE    = ORDER_COND_QTY_SCALE
      ORDER_COND_VAL_SCALE    = ORDER_COND_VAL_SCALE
      ORDER_CONTRACTS_OUT     = ORDER_CONTRACTS_OUT
      ORDER_TEXTHEADERS_OUT   = ORDER_TEXTHEADERS_OUT
      ORDER_TEXTLINES_OUT     = ORDER_TEXTLINES_OUT
      ORDER_FLOWS_OUT         = ORDER_FLOWS_OUT
      ORDER_BILLINGPLANS_OUT  = ORDER_BILLINGPLANS_OUT
      ORDER_BILLINGDATES_OUT  = ORDER_BILLINGDATES_OUT
      ORDER_CREDITCARDS_OUT   = ORDER_CREDITCARDS_OUT
      EXTENSIONOUT            = EXTENSIONOUT.

5.4 销售订单清单,可直接查询表VBAK,VBAP,VBUK,VBUK,VBEP,VBKD,KONV等

5.5 销售凭证审批(VKM1),可用EXPORT,IMPORT方法调用系统标准程序RVKRED01实现

5.5 销售订单在分配(VKM2,VKM3)
   CALL FUNCTION 'DIALOG_SET_NO_DIALOG'.
   CALL FUNCTION 'SD_ORDER_CREDIT_RECHECK'
     EXPORTING
       flg_update = 'X'
       vbeln      = it_zrfc_s_sd013-vbeln.

6 显示销售凭证流

CALL FUNCTION 'RV_ORDER_FLOW_INFORMATION'
  EXPORTING
*   AUFBEREITUNG        = '2'
*   BELEGTYP            = ' '
    COMWA               = COMWA
*   NACHFOLGER          = 'X'
*   N_STUFEN            = '50'
*   VORGAENGER          = 'X'
*   V_STUFEN            = '50'
* IMPORTING
*   BELEGTYP_BACK       = BELEGTYP_BACK
  TABLES
    VBFA_TAB            = VBFA_TAB
* EXCEPTIONS
*   NO_VBFA             = 1
*   NO_VBUK_FOUND       = 2.

7 销售雇员
7.1 创建、修改销售雇员
*可根据实际需求创建试图
    CALL FUNCTION 'BAPI_HRMASTER_SAVE_REPL_MULT'
    TABLES
      HR_OBJECT_HEADER              = HR_OBJECT_HEADER
      HR_INFOTYPE_HEADER            = HR_INFOTYPE_HEADER
      EMPLOYEE_PERSONNEL_ACTION     = EMPLOYEE_PERSONNEL_ACTION
      EMPLOYEE_ORG_ASSIGNMENT       = EMPLOYEE_ORG_ASSIGNMENT
      EMPLOYEE_PERSONAL_DATA        = EMPLOYEE_PERSONAL_DATA
      EMPLOYEE_SALES_ORG_ASSIGNMENT = EMPLOYEE_SALES_ORG_ASSIGNMENT
      EMPLOYEE_PRIVATE_ADDRESS      = EMPLOYEE_PRIVATE_ADDRESS
      EMPLOYEE_COMMUNICATIONS       = EMPLOYEE_COMMUNICATIONS
      EMPLOYEE_PAYROLL_STATUS       = EMPLOYEE_PAYROLL_STATUS
      RETURN                        = RETURN.

7.2 显示销售雇员,可直接查询表 PA0001 , PA0002 ,PA0900等

注:以上RFC为项目中实际使用,读者可根据实际情况调整参数即可使用,此贴为长时间积累所得,转载请注明出处!

参考:http://xingbo.com.blog.163.com/blog/static/767516320114101057428/

RFC总结-SD模块的更多相关文章

  1. SAP-SD-ABAP-VMOD 查找和应用SD模块用户出口(user exit) 好方法 .

    针对 SD 模块,有一个专门管理 user-exit 的开发包  VMOD , 只要用tcode: se80 查看它, 会发现绝大部分的 SD 要相关的 user-exit 都能在这找到.

  2. SAP ERP SD模块中维护销售人员

    SAP ERP SD模块中维护销售人员信息并分配销售组织   分类: SAPHCM用户指南   在SAP ERP系统,销售和分销(SD)模块中需要创建销售人员(Sales Personnels)消息, ...

  3. [转]SAP一句话入门SD模块

    SD是Sales and Distribution的简称.在SAP系统中,销售与分销模块处在供应链下游,关注从客户订单到向客户收款的全过程. SD模块中的Sales好理解,而Distribution却 ...

  4. 【SD系列】SAP SD模块-送达方和售达方的区别和联系

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[SD系列]SAP SD模块-送达方和售达方的区 ...

  5. 【SD系列】SAP SD模块-公司间销售简介

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[SD系列]SAP SD模块-公司间销售简介   ...

  6. 【SD系列】SAP SD模块-销售收入科目的配置

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[SD系列]SAP SD模块-销售收入科目的配置 ...

  7. 【SD系列】SAP SD模块-创建供应商主数据BAPI

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[SD系列]SAP SD模块-创建供应商主数据B ...

  8. SAP SD模块功能构成

  9. SAP销售模块塑工常见问题和解决方案(自己收藏)

    当创建订单时出现提示不存在该产品层次,如图: 解决方案:将该物料正确的产品层次提供给创建物料主数据的相关人员,将其改正. 对于包装膜类物料,在创建完销售订单进行后续的动作时,如开票,发现没有带出相应的 ...

随机推荐

  1. 记录整合sprinmvc+log4j的的过程

    简介 由于进一步的学习以及便于自己更好的调试程序中遇到的错误,开始了将log4j整合到web项目中,项目是基于springmvc的,所以就做了一个springmvc和web项目的整合demo,本篇博客 ...

  2. MySQL存储引擎中的MyISAM和InnoDB区别详解

    在使用MySQL的过程中对MyISAM和InnoDB这两个概念存在了些疑问,到底两者引擎有何分别一直是存在我心中的疑问.为了解开这个谜题,搜寻了网络,找到了如下信息: MyISAM是MySQL的默认数 ...

  3. 骑士cms(74cms)个人版 整合UC

    1.安装74cms完成后登录总后台在菜单条工具选项中添加uc整合菜单. 在admin/templates/sys/admin_left_tools.htm这个文件中添加 <li >< ...

  4. char 型变量中能不能存贮一个中文汉字,为什么?

    char类型可以存储一个中文汉字,因为Java中使用的编码是Unicode(不选择任何特定的编码,直接使用字符在字符集中的编号,这是统一的唯一方法),一个char类型占2个字节(16比特),所以放一个 ...

  5. linux修改mac地址

    先禁用网卡ifconfig eth0 down 再用ifconfig eth0 hw ether 新地址 这样就可以了 要想永久修改的话,在/etc/rc.d/rc.local里加上下面三句(/etc ...

  6. 多校赛3- Painter 分类: 比赛 2015-07-29 19:58 3人阅读 评论(0) 收藏

    D - Painter Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Submit Status P ...

  7. JAVA基础知识之List集合

    List接口和ListIterator接口介绍 List集合新增方法 List集合判断元素重复的标准 ListIterator List.ArrayList和List.Vector 固定长度的List ...

  8. protobuf安装

    Protocol Buffers - Google's data interchange format 一.简介 名字已经很好的说明它是什么,这里还是要简单的介绍一下,protobuf是protoco ...

  9. sys模块的初步认识

    #!/usr/bin/python # Filename: cat.py import sys def readfile(filename): '''Print a file to the stand ...

  10. 2016-2017 CT S03E05: Codeforces Trainings Season 3 Episode 5 (2016 Stanford Local Programming Contest, Extended) B

    链接:http://codeforces.com/gym/101116 学弟做的,以后再补 #include <iostream> #include <stdio.h> #in ...