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. PDA调用WCF服务引用

    在 http://www.cnblogs.com/yiping06993010/archive/2009/11/01/1593912.html 中,的作者提到使用NetCFSvcUtil.exe生成代 ...

  2. PHP程序员如何突破成长瓶颈

    PHP因为简单而使用,但不能因为它的简单而限制我们成长!文章给PHP工程师突破成长瓶颈提了一些建议,希望PHPer能够突破自己,有更好的发展. AD: 作为Web开发中应用最广泛的语言之一,PHP有着 ...

  3. MD5加密,Base64加密/解密,AES加密/解密

    1.从github上下载GTMBase64-master和AESCrypt-ObjC-master导入工程,如下图所示. 2.使用前的配置及注意事项: (1) 在build phases中的GTMBa ...

  4. [HTML]js动态修改表格里面的内容

    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/T ...

  5. 杭电1013-Digitai Root(另解)

    #include<stdio.h>#define maxsize 1000 int main(){    char N[maxsize+1];    int i,j,sum,n;    c ...

  6. JSONArray传值的使用小结

    今天使用了SpringMVC+mybatis传值.从controller中传到service中.可是由于版本问题参数中不能有大写和下划线,在service中只能用String 来接受json字符串.接 ...

  7. Distinct<TSource>(IEqualityComparer<TSource> comparer) 根据列名来Distinct

    1. DistinctEqualityComparer.cs public class DistinctEqualityComparer<T, V> : IEqualityComparer ...

  8. 关于Filter的配置

    配置代码: <filter> <display-name>OneFilter</display-name>  <filter-name>OneFilte ...

  9. 驱动之module_init/module_exit

    在前面helloworld的编写里面,我们使用了两个宏分别是module_init和module_exit,这里分析下为什么使用这两个宏. 在写模块的时候有两个特殊的函数,分别是init_module ...

  10. SharePoint自动化系列——Select-option标签的定位方法总结

    转载请注明出自天外归云的博客园:http://www.cnblogs.com/LanTianYou/ C#中通过Selenium定位页面上的select-option结构,尝试了以下几种方法,均没有生 ...