使用到的BAPI: RFC_CVI_EI_INBOUND_MAIN

这个BAPI 可以用来创建/修改 供应商和客户。
本篇文章只用来导入客户主数据,想要导供应商的请转到:ABAP 供应商主数据批量导入
使用方法,与我上一篇供应商导入基本一致,数据填写与校验逻辑有所不同而已。
另外,本文有长文本创建,以及一些Z开头的参数值,要根据你的需求来调整。注意下。
源代码


TABLES:sscrfields.TYPE-POOLS:truxs,icon,slis.*INCLUDE BDCRECX1_S.
************************************************************************
* GLOBAL STRUCTURES
************************************************************************TYPES: BEGIN OF ty_out,sel        TYPE  c LENGTH 3,  "选中标记zt         TYPE  c LENGTH 2, "状态scdw       TYPE  c LENGTH 4, "生产单位yxtbm      TYPE  c LENGTH 10, "原系统编码kunnr      TYPE  kunnr,       "客户编号ktokd      TYPE  ktokd,       "客户帐户组zhzmc      TYPE  txt30,       "集团账户组名称name_org1  TYPE  c LENGTH 80,       "客户名称bu_sort1   TYPE  bu_sort1,    "客户简称  检索词land1      TYPE  land1,       "国家landx      TYPE  landx,       "国家名称regio      TYPE  regio,       "地区代码bezei      TYPE  bezei,       "地区名称mcod3      TYPE  ort01_gp,    "城市名称stras      TYPE  c LENGTH 220, "注册地址pstl2      TYPE  pstl2,       "邮政编码dianh      TYPE  ad_tlnmbr1,  "电话fenji      TYPE  ad_tlxtns1,  "电话分机号yddhh      TYPE  ad_tlnmbr1,  "移动电话ad_fxnmbr1 TYPE  ad_fxnmbr1,  "传真ad_fxxtns1 TYPE  ad_fxxtns1,  "传真分机号ad_smtpadr TYPE  ad_smtpadr,  "电子邮件地址katr1      TYPE  kna1-katr1,  "是否完成三证合一swdjz      TYPE  ltext,  "税务登记证号sydjh      TYPE  ltext, "商业登记号zzjgh      TYPE  ltext, "组织机构代码xydmh      TYPE  ltext, "社会统一信用代码jyfw       TYPE  ltext, "经营范围zczb       TYPE  ltext, "注册资本(单位:万元)zcsj       TYPE  ltext, "注册时间fddbr      TYPE  ltext, "法定代表人frsfz      TYPE  ltext, "法人身份证myhb       TYPE  ltext, "贸易伙伴ssjtb      TYPE  gpanr, "集团编码ssjtm      TYPE  ltext, "集团名称kunnr2     TYPE  gpanr, "终端编码zname      TYPE  name1, "终端名称bukrs      TYPE  bukrs, "公司代码vtweg      TYPE  vtweg, "分销渠道bzirk      TYPE  bzirk , "销售地区vkbur      TYPE  vkbur, "销售办公室kdgrp      TYPE  kdgrp, "客户组(ABC等级)vmibz      TYPE  kna1-katr7, "VMI业务标志kalks      TYPE  knvv-kalks, "价格类别vsbed      TYPE  vsbed, "装运条件zterm      TYPE  dzterm, "付款条件(账期)inco1      TYPE  inco1,   "国贸条款inco2_l    TYPE  inco2_l, "国际贸易条款位置 1inco3_l    TYPE  inco3_l, "国际贸易条款位置 2xszjm      TYPE  c LENGTH 10, "销售总监姓名xszjg      TYPE  gpanr, "销售总监工号xsjlm      TYPE  c LENGTH 10, "销售经理姓名xsjlg      TYPE  gpanr, "销售经理工号xsyzm      TYPE  c LENGTH 10, "业务助理姓名xsyzg      TYPE  gpanr, "业务助理工号zjs1m      TYPE  c LENGTH 10, "中间商1名称zjs1g      TYPE  gpanr, "中间商1编号zjs2m      TYPE  c LENGTH 10, "中间商2名称zjs2g      TYPE  gpanr, "中间商2编号zjs3m      TYPE  c LENGTH 10, "中间商3名称zjs3g      TYPE  gpanr, "中间商3编号waers      TYPE  waers, "币种name3      TYPE  c LENGTH 80, "客户名称(英文)zyddm      TYPE  c LENGTH 40, "装运地点名称scgc       TYPE  lfa1-lifnr, "审厂工厂kurst      TYPE  c LENGTH 10, "税率种类bpkind     TYPE  but000-bpkind, "经销/终销(业务伙伴合作类型)group_1    TYPE  bp001-group_feature, "终端/非终端  分组特征dzrq       TYPE  ltext, "对帐日期akont      TYPE  akont, "总帐中的统驭科目ktgrd      TYPE  ktgrd, "此客户的账户分配组zxy1       TYPE ukmbp_cms-limit_rule, "信用参数文件记分规则zxy2       TYPE ukmbp_cms_sgm-credit_sgmnt,  "信用段zxy3       TYPE ukmbp_cms_sgm-credit_limit,   "信用额度zxy4       TYPE ukmbp_cms_sgm-limit_valid_date,  "有效终止日期zkhfxjg    TYPE c LENGTH 100, "客户风险警告drjg       TYPE  c LENGTH 500 , "导入结果END OF ty_out.TYPES: BEGIN OF ty_out1,kunnr TYPE  kunnr,  "客户编号vkorg TYPE  vkorg, "销售组织vtweg TYPE  vtweg, "分销渠道spart TYPE spart, "产品组END OF ty_out1.************************************************************************
* INTERNAL TABLES
*************************************************************************----------数据存储表----------
DATA: gt_out TYPE TABLE OF ty_out,gs_out TYPE ty_out.*"------------ALV-----------------
DATA: gt_fieldcat TYPE lvc_t_fcat, "字段目录gs_fieldcat LIKE LINE OF gt_fieldcat,gs_layout   TYPE lvc_s_layo.*---------------信用段数据-----------------------------------*
DATA: return TYPE ukm_t_monitor_return.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE TEXT-001.
PARAMETERS: cb_up RADIOBUTTON GROUP grp3 DEFAULT 'X' USER-COMMAND com1 .
PARAMETERS: cb_down RADIOBUTTON GROUP grp3 .
SELECTION-SCREEN END OF BLOCK b3.SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-002.
PARAMETERS: p_file TYPE rlgrap-filename MODIF ID mg1 MEMORY ID me2 . " 导入文件下载模板
SELECTION-SCREEN END OF BLOCK b1.SELECTION-SCREEN: FUNCTION KEY 1 .
*&---------------------------------------------------------------------*
*& INITIALIZATION/选择屏幕前初始化                                     *
*&---------------------------------------------------------------------*
INITIALIZATION.AT SELECTION-SCREEN OUTPUT.
*&---控制选择条件显示设置M1LOOP AT SCREEN.IF screen-group1 = 'MG1' .
*&---下载模板隐藏IF cb_down = abap_true.screen-active = 0.ENDIF.
*&---上传文件显示IF cb_up = abap_true .screen-active = 1.ENDIF.MODIFY SCREEN.ENDIF.MODIFY SCREEN.ENDLOOP.
*&---文件路径搜索帮助
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.PERFORM frm_get_filename.*&---------------------------------------------------------------------*
*& FORM FRM_GET_FILENAME
*&---------------------------------------------------------------------*
*& TEXT
*&---------------------------------------------------------------------*
*& -->  CB_CENTR        TEXT
*& <--  CB_BANK        TEXT
*&---------------------------------------------------------------------*
FORM frm_get_filename .CALL FUNCTION 'WS_FILENAME_GET'EXPORTINGdef_filename     = p_filemask             = '*.*,*.*,*.XLS,*.XLS,*.XLSX,*.XLSX.' "DEF_PATH = 'C:\'
*     MASK             = '*.TXT,*.TXT.' "DEF_PATH = 'C:\'mode             = 'O'IMPORTINGfilename         = p_fileEXCEPTIONSinv_winsys       = 1no_batch         = 2selection_cancel = 3selection_error  = 4OTHERS           = 5.ENDFORM.*&---------------------------------------------------------------------*
*& Form EXCEL_CREATE
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM excel_create .
*&---------------------------------------------------------------------*
*& FORM FRM_DOWN_LOAD
*&---------------------------------------------------------------------*
*& TEXT
*&---------------------------------------------------------------------*
*& -->  CB_CENTR        TEXT
*& <--  CB_BANK        TEXT
*&---------------------------------------------------------------------*
*FORM frm_down_load .*&---变量定义DATA: lv_text       TYPE string,                    "MESSAGElv_filename   TYPE string,                    "DOWNLOAD FILE NAMElv_path       TYPE string,                    "DOWNLOAD FILE PATHls_functxt    TYPE smp_dyntxt,                "MENU NAMElv_filepath   TYPE rlgrap-filename VALUE 'C', "FILE PATCHlv_mod(20)    TYPE c VALUE 'ZSDB001',         "MODELlv_fullpath   TYPE string,                    "FULL PATHls_object     TYPE wwwdatatab,                "OBJECT NAMElv_rc         TYPE sy-subrc,                  "RETURN CODElv_title      TYPE string VALUE '保存',    "TITLElv_title_name TYPE string VALUE '客户主数据导入模板'.       "TITLE NAME*&---调用OS 操作系统对话框CALL METHOD cl_gui_frontend_services=>file_save_dialogEXPORTINGwindow_title              = lv_titledefault_extension         = 'XLSX'default_file_name         = lv_title_name" WITH_ENCODING             =file_filter               = 'EXCEL文件(*.XLS)|*.XLS|全部文件 (*.*)|*.*|'initial_directory         = 'D:\'prompt_on_overwrite       = 'X'CHANGINGfilename                  = lv_filename  "默认文件名称path                      = lv_path   "文件路径fullpath                  = lv_fullpath  "文件路径" USER_ACTION               =" FILE_ENCODING             =EXCEPTIONScntl_error                = 1error_no_gui              = 2not_supported_by_gui      = 3invalid_default_file_name = 4OTHERS                    = 5.IF sy-subrc <> 0.
*   IMPLEMENT SUITABLE ERROR HANDLING HEREENDIF.
*&---操作系统文件路径CONCATENATE lv_pathlv_filename'.XLSX'INTO lv_filepath.
*&---OS长度控制/*&---下载模板IF strlen( lv_filepath ) <> 5.
*&---查询模板.SELECT SINGLErelid objidFROM wwwdataINTO CORRESPONDING FIELDS OF ls_objectWHERE srtf2 = '0'AND objid = lv_mod.                         "SMW0里对象名称IF sy-subrc <> 0 OR ls_object-objid = space .CONCATENATE '模板文件'"'模板文件:'lv_mod'不存在,请用smw0进行加载'"'不存在,请用SMW0进行加载.'INTO lv_text.MESSAGE lv_text TYPE 'E'.STOP.ENDIF.
*&---下载模板CALL FUNCTION 'DOWNLOAD_WEB_OBJECT'EXPORTINGkey         = ls_objectdestination = lv_filepathIMPORTINGrc          = lv_rc.IF lv_rc <> 0.CONCATENATE TEXT-911"''模板文件:'lv_mod'下载失败,请与开发人员联系'"''下载失败,请与开发人员联系.'INTO lv_text.MESSAGE lv_text TYPE 'E'.STOP.ENDIF.
*&---'已下载'MESSAGE '已下载' TYPE 'S'.ELSE.
*&---'已取消下载'MESSAGE '已取消下载' TYPE 'S'.ENDIF.ENDFORM.*************************************************************************
**EVENT  START-OF-SELECTION.
*************************************************************************
START-OF-SELECTION.IF cb_down EQ 'X'.PERFORM excel_create.      "下载模板LEAVE LIST-PROCESSING.ENDIF.PERFORM check_file .        "检查上传文件的格式PERFORM upload_document .   "进行文档上传*************************************************************************
**EVENT  END-OF-SELECTION
*************************************************************************
END-OF-SELECTION.PERFORM frm_output. "导入消息输出
*************************************************************************
**EVENT  END-OF PAGE
*************************************************************************
END-OF-PAGE.*&---------------------------------------------------------------------*
*&      Form  FRM_OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM frm_output ."输出PERFORM form_fieldcat."列格式PERFORM form_layout.  "布局设置PERFORM form_showdata.
ENDFORM.
*&---------------------------------------------------------------------*
*&      Form  FORM_FIELDCAT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM form_fieldcat ."列格式 传的参数参PERFORM frm_get_fieldcat USING:
*                 sel        TYPE  c LENGTH 3,  "选中标记'ZT'         '状态'               '' '' ,'SCDW'       '生产单位'           '' '' ,'YXTBM'      '原系统编码'         '' '' ,'KUNNR'      '客户编号'          'KNA1' 'KUNNR','KTOKD'      '客户帐户组'        '' 'KTOKD','ZHZMC'      '集团账户组名称'    '' 'TXT30','NAME_ORG1 ' '客户名称'          '' '','BU_SORT1  ' '客户简称(检索词)'  '' 'BU_SORT1','LAND1'      '国家'              ''  'LAND1','LANDX'      '国家名称'          ''  'LANDX','REGIO'      '地区代码'          ''  'REGIO','BEZEI'      '地区名称'          ''  'BEZEI','MCOD3'      '城市名称'          ''  'ORT01_GP','STRAS'      '注册地址'          ''  '','PSTL2'      '邮政编码'          ''  'PSTL2','DIANH'      '电话'              ''  'AD_TLNMBR1','FENJI'      '电话分机号'        ''  'AD_TLXTNS1','YDDHH'      '移动电话'          ''  'AD_TLNMBR1','AD_FXNMBR1' '传真'              ''  ' AD_FXNMBR1','AD_FXXTNS1' '传真分机号'        ''  'AD_FXXTNS1','AD_SMTPADR' '电子邮件地址'      ''  'AD_SMTPADR','KATR1'      '是否完成三证合一'  'KNA1' 'KATR1','SWDJZ'      '税务登记证号'      '' '','SYDJH '     '商业登记号'        ''  '','ZZJGH '     '组织机构代码'      ''  '','XYDMH '     '社会统一信用代码'  ''  '','JYFW  '     '经营范围'         '' '','ZCZB  '     '注册资本(单位:万元)' '' '' ,'ZCSJ  '     '注册时间'             ''  '','FDDBR '     '法定代表人'           '' '','FRSFZ '     '法人身份证'           ''  '' ,'MYHB  '     '贸易伙伴'             ''  '','SSJTB '     '所属集团编码'          '' 'GPANR','SSJTM '     '所属集团名称'         ''  '' ,'KUNNR2'     '终端编码'             '' 'GPANR','ZNAME'      '终端名称'             '' 'NAME1','BUKRS '     '公司代码'             '' 'BUKRS','VTWEG '     '分销渠道'             ''  'VTWEG','BZIRK '     '销售地区'             ''  'BZIRK' ,'VKBUR '     '销售办公室'           'KNVV' 'VKBUR' ,'KDGRP '     '客户组(abc等级)'    '' 'KDGRP','VMIBZ '     'VMI业务标志'          'KNA1' 'KATR7'   ,'KALKS'      '价格类别'            'KNVV' 'KALKS','VSBED '     '装运条件'            '' 'VSBED','ZTERM '     '付款条件(账期)'      ''  ' DZTERM','INCO1 '     '国贸条款'            ''  'INCO1','INCO2_L'    '国际贸易条款位置 1' '' 'INCO2_L','INCO3_L'    '国际贸易条款位置 2' '' 'INCO3_L','XSZJM'      '销售总监姓名'  ''   '','XSZJG'      '销售总监工号'       ''   'GPANR','XSJLM'      '销售经理姓名'       ''   '','XSJLG'      '销售经理工号'       ''   'GPANR','XSYZM'      '业务助理姓名'       ''   '','XSYZG'      '业务助理工号'       ''   'GPANR','ZJS1M'      '中间商1名称'        ''  '','ZJS1G'      '中间商1编号'        ''  'GPANR','ZJS2M'      '中间商2名称'        ''  '','ZJS2G'      '中间商2编号'        ''  'GPANR','ZJS3M'      '中间商3名称'        ''  '','ZJS3G'      '中间商3编号'        ''  'GPANR','WAERS '     '币种'              '' ' WAERS','NAME3 '     '客户名称(英文)'     'KNA1' 'NAME3'   ,'ZYDDM '     '客户联系人'       '' ''   ,'SCGC  '     '审厂工厂'           'LFA1' 'LIFNR'   ,'KURST '     '税率种类'           ''  'KURST','BPKIND'     '经销/终销'          'BUT000' 'BPKIND','GROUP_1'    '终端/非终端'        'BP001' 'GROUP_FEATURE','DZRQ  '     '对帐日期'           '' '','AKONT'      '总帐中的统驭科目'   'KNB1' 'AKONT','KTGRD'      '此客户的账户分配组' '' 'KTGRD','ZXY1'       '信用参数文件记分规则' 'UKMBP_CMS' 'LIMIT_RULE', "'ZXY2'       '信用段' 'UKMBP_CMS_SGM' 'CREDIT_SGMNT',  "'ZXY3'       '信用额度' 'UKMBP_CMS_SGM' 'CREDIT_LIMIT',   "'ZXY4'       '有效终止日期' 'UKMBP_CMS_SGM' 'LIMIT_VALID_DATE','ZKHFXJG'    '客户风险警告'       '' '','DRJG'       '导入结果'           ''  ''.ENDFORM.
*&---------------------------------------------------------------------*
*&      Form  FRM_GET_FIELDCAT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->pv_fieldname   text
*      -->pv_coltext   text
*      -->pv_ref_table   text
*      -->pv_ref_table   text
*----------------------------------------------------------------------*
FORM frm_get_fieldcat USING "列格式 传参形式pv_fieldname  TYPE anypv_coltext    TYPE anypv_ref_table  TYPE anypv_ref_field  TYPE any.CLEAR gs_fieldcat.gs_fieldcat-fieldname = pv_fieldname.gs_fieldcat-coltext = pv_coltext.gs_fieldcat-scrtext_l = pv_coltext.gs_fieldcat-ref_table = pv_ref_table.gs_fieldcat-ref_field = pv_ref_field.APPEND gs_fieldcat TO gt_fieldcat.ENDFORM.
*&---------------------------------------------------------------------*
*&      Form  FORM_LAYOUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM form_layout ."布局设置gs_layout-cwidth_opt = 'X'.gs_layout-zebra      = 'X'.gs_layout-box_fname  = 'SEL'.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form OPEN_DIALOG
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM open_dialog .DATA:lt_file_table TYPE filetable.DATA:ls_file_table TYPE file_table.DATA:l_rc TYPE i.DATA: lv_filter   TYPE string.lv_filter = 'ALL FILES (*.*)|*.*|EXCEL FILES (*.XLS)|*.XLS|WORD FILES(*.DOC)|*.DOC'.CALL METHOD cl_gui_frontend_services=>file_open_dialogEXPORTINGwindow_title            = '选择文件'default_filename        = '*.XLSX'  "默认excel文件"initial_directory       = 'D:\ '  "默认打开D盘,也可以默认空"multiselection          = ''   "文件单选"CHANGINGfile_table              = lt_file_tablerc                      = l_rcEXCEPTIONSfile_open_dialog_failed = 1cntl_error              = 2error_no_gui            = 3not_supported_by_gui    = 4OTHERS                  = 5.IF sy-subrc <> 0.MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgnoWITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.EXIT.ELSE."选择文件框的赋值 将选择的文件地址写入到地址栏"READ TABLE lt_file_table INTO ls_file_table INDEX 1.IF sy-subrc = 0.p_file =  ls_file_table-filename.REFRESH : lt_file_table.CLEAR:ls_file_table.ENDIF.ENDIF.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form CHECK_FILE
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM check_file .DATA: lv_s1 TYPE string,lv_s2 TYPE string.IF p_file IS NOT INITIAL.
*    SPLIT p_file AT '.' INTO lv_s1 lv_s2.
*    TRANSLATE lv_s2 TO UPPER CASE.
*    IF lv_s2 <> 'XLS' AND lv_s2 <> 'XLSX' AND lv_s2 <> 'TXT'.
*      MESSAGE '文件格式不对!' TYPE 'S' DISPLAY LIKE 'E'.
*      LEAVE  LIST-PROCESSING.
*    ENDIF.ELSE.MESSAGE '文件名不能为空!' TYPE 'S' DISPLAY LIKE 'E'.LEAVE  LIST-PROCESSING.ENDIF.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form UPLOAD_DOCUMENT
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM upload_document ."定义表格结构内表。"DATA: lt_excel TYPE TABLE OF zalsmex_tabline, "表格结构。"ls_excel TYPE zalsmex_tabline."ALSMEX_TABLINE是具有Excel数据的表行,有三个组件,row col value 。"DATA:get_file TYPE rlgrap-filename."这里参照系统中的结构字段。"MOVE p_file TO get_file."将地址栏的值赋值给GET_FILE""调用此函数,将Excel中的内容以类似坐标的形式存储到LT_EXCEL内表中。""使用ALSM_EXCEL_TO_INTERNAL_TABLE函数导入数据,一个excel文件最大行数只可为9999,如果超出是无法全部读入内表中的,会丢失其余行。call function 'ZALSM_EXCEL_TO_INTERNAL_TABLE'EXPORTINGfilename                = get_filei_begin_col             = 1i_begin_row             = 6i_end_col               = 76i_end_row               = 65535TABLESintern                  = lt_excelEXCEPTIONSinconsistent_parameters = 1upload_ole              = 2OTHERS                  = 3.DELETE lt_excel WHERE row = 1."删除第一行抬头。如果excel文件中不存在抬头的话,可不写此句。"IF lt_excel IS INITIAL.CALL FUNCTION 'POPUP_TO_CONFIRM_WITH_MESSAGE'EXPORTING
*       DEFAULTOPTION = 'Y'diagnosetext1 = '数据错误'
*       DIAGNOSETEXT2 = ' '
*       DIAGNOSETEXT3 = ' 'textline1     = 'Excel表格中没有内容!'titel         = '提示'.RETURN.ENDIF.CLEAR:gt_out.FIELD-SYMBOLS:<fs>.SORT lt_excel BY row col.DATA:num_col TYPE i."将转换后的EXCEL内表中数据按照导入模板顺序依次放入内表,"故应将EXCEL模板顺序和内表顺序保持一致LOOP AT lt_excel INTO ls_excel.num_col = ls_excel-col.ASSIGN COMPONENT  num_col  OF STRUCTURE gs_out TO <fs>.<fs> = ls_excel-value.AT END OF row.APPEND gs_out TO gt_out.CLEAR:gs_out.ENDAT.CLEAR:ls_excel.ENDLOOP.ENDFORM.*&---------------------------------------------------------------------*
*&      Form  FORM_SHOWDATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM form_showdata .CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'EXPORTINGi_callback_program       = sy-repidis_layout_lvc            = gs_layouti_save                   = 'A'it_fieldcat_lvc          = gt_fieldcat[]i_callback_pf_status_set = 'FRM_SET_STATUS'i_callback_user_command  = 'USER_COMMAND'TABLESt_outtab                 = gt_outEXCEPTIONSprogram_error            = 1OTHERS                   = 2.
ENDFORM.
*&---------------------------------------------------------------------*
*&      FORM  FRM_SET_STATUS
*&---------------------------------------------------------------------*
*       TEXT
*----------------------------------------------------------------------*
*      -->RT_EXTAB   TEXT
*----------------------------------------------------------------------*
FORM frm_set_status USING rt_extab TYPE slis_t_extab.SET PF-STATUS 'STANDARD' .
ENDFORM. "FRM_SET_STATUS
*---------------------------------------------------------------------*
*       FORM USER_COMMAND                                             *
*---------------------------------------------------------------------*
*       ........                                                      *
*--------------------------------------------------------------------*
*  -->  R_UCOMM                                                       *
*  -->  RS_SELFIELD                                                   *
*---------------------------------------------------------------------*
FORM user_command USING r_ucomm LIKE sy-ucommrs_selfield TYPE slis_selfield.DATA: lr_grid TYPE REF TO cl_gui_alv_grid.CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'IMPORTINGe_grid = lr_grid.CALL METHOD lr_grid->check_changed_data.rs_selfield-refresh = 'X'.rs_selfield-col_stable = 'X'.rs_selfield-row_stable = 'X'.CASE r_ucomm.WHEN 'ZIMPORT'.PERFORM badi_daoru.CALL METHOD lr_grid->refresh_table_display.WHEN OTHERS.ENDCASE.ENDFORM.*&---------------------------------------------------------------------*
*& Form BADI_DAORU
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*& -->  p1        text
*& <--  p2        text
*&---------------------------------------------------------------------*
FORM badi_daoru .DATA:ls_cvis_bp_general             TYPE cvis_bp_general,lt_cvis_bp_general             LIKE TABLE OF ls_cvis_bp_general,ls_cvis_bp_role                TYPE cvis_bp_role,lt_cvis_bp_role                LIKE TABLE OF ls_cvis_bp_role,
*       ls_cvis_bp_tax_number    TYPE cvis_bp_tax_number,
*       lt_cvis_bp_tax_number    LIKE TABLE OF ls_cvis_bp_tax_number,ls_cvis_bp_address             TYPE cvis_bp_address,lt_cvis_bp_address             LIKE TABLE OF ls_cvis_bp_address,ls_cvis_bp_address_teleno      TYPE cvis_bp_address_teleno, "电话号码lt_cvis_bp_address_teleno      LIKE TABLE OF ls_cvis_bp_address_teleno,ls_cvis_bp_address_faxno       TYPE cvis_bp_address_faxno,lt_cvis_bp_address_faxno       LIKE TABLE OF ls_cvis_bp_address_faxno, "传真号码ls_cvis_bp_address_email       TYPE cvis_bp_address_email,lt_cvis_bp_address_email       LIKE TABLE OF ls_cvis_bp_address_email, "邮箱号码ls_cvis_bp_finserv             TYPE cvis_bp_finserv,lt_cvis_bp_finserv             LIKE TABLE OF cvis_bp_finserv, "分组字符ls_cvis_customer_company       TYPE cvis_customer_company,lt_cvis_customer_company       LIKE TABLE OF ls_cvis_customer_company, "公司代码ls_cvis_customer_sales         TYPE cvis_customer_sales,lt_cvis_customer_sales         LIKE TABLE OF ls_cvis_customer_sales, "销售视图相关ls_cvis_customer_sales_func    TYPE cvis_customer_sales_func,lt_cvis_customer_sales_func    LIKE TABLE OF ls_cvis_customer_sales_func, "伙伴功能ls_cvis_customer_tax_indicator TYPE cvis_customer_tax_indicator,lt_cvis_customer_tax_indicator LIKE TABLE OF ls_cvis_customer_tax_indicator, "销售视图税ls_cvis_customer_general       TYPE cvis_customer_general,lt_cvis_customer_general       LIKE TABLE OF ls_cvis_customer_general,
*       ls_cvis_supplier_general LIKE cvis_supplier_general,
*       lt_cvis_supplier_general LIKE TABLE OF ls_cvis_supplier_general,
*       ls_cvis_bp_ident_numbers LIKE cvis_bp_ident_numbers,
*       lt_cvis_bp_ident_numbers LIKE TABLE OF ls_cvis_bp_ident_numbers,
*       ls_cvis_bp_bank_details  LIKE cvis_bp_bank_details,
*       lt_cvis_bp_bank_details  LIKE TABLE OF ls_cvis_bp_bank_details,ls_cvis_bp_return              TYPE cvis_bp_return,lt_cvis_bp_return              LIKE  TABLE OF cvis_bp_return,lv_bpartner                    TYPE bu_partner,ls_tb003i                      TYPE tb003i,lt_tb003i                      LIKE TABLE OF ls_tb003i,lv_guid                        TYPE but000-partner_guid,lv_object_task                 TYPE bus_ei_object_task, "I为创建,U修改lv_bkvid                       TYPE bu_bkvid,lv_index                       TYPE sy-tabix,lv_category                    TYPE bu_id_category,lv_bezei                       TYPE bezei20,lv_run_id                      TYPE cvi_run_id,lv_lines                       TYPE i.*长文本参数DATA:ls_line  TYPE tline,lt_line  TYPE TABLE OF tline,ls_thead TYPE thead-tdname,ls_fxjg  TYPE ty_out1.DATA:ls_strlen TYPE i,lv_strlen TYPE i,i_subruc  TYPE i.
*  CLEAR ls_header.LOOP AT gt_out ASSIGNING FIELD-SYMBOL(<fs_kunnr>) WHERE sel = 'X'.PERFORM frm_kunnr_alpha_input CHANGING <fs_kunnr>-kunnr.  "业务伙伴CLEAR lv_guid.SELECT SINGLE partner_guid INTO lv_guidFROM but000 WHERE partner = <fs_kunnr>-kunnr.IF sy-subrc = 0.lv_object_task = 'U'.  "修改BPELSE.lv_object_task = 'I'.  "创建BPENDIF.ls_cvis_bp_general-object_task = lv_object_task.IF lv_run_id IS INITIAL.lv_run_id = '1000000' .ELSE.lv_run_id = lv_run_id + 1.ENDIF.*    PERFORM bp_general TABLES lt_cvis_bp_general USING <fs_kunnr> .
* bp_generalls_cvis_bp_general-run_id = lv_run_id.".'1000000'.ls_cvis_bp_general-category = '2'.IF lv_guid IS NOT INITIAL.ls_cvis_bp_general-bpartnerguid = lv_guid.ENDIF.IF <fs_kunnr>-kunnr IS NOT INITIAL.  "客户ls_cvis_bp_general-grouping = <fs_kunnr>-ktokd. "业务合作伙伴组
*        ls_cvis_bp_general-legalorg =  ls_header-nsrbskh. "法律实体ENDIF.
*    IF <fs_kunnr>-bpkind = '终销' OR <fs_kunnr>-bpkind = '终销客户'.
*      ls_cvis_bp_general-partnertype = 'Z002'.
*    ELSEIF <fs_kunnr>-bpkind = '经销' OR <fs_kunnr>-bpkind = '经销客户'.
*      ls_cvis_bp_general-partnertype = 'Z001'.
*    ELSE.
*      ls_cvis_bp_general-partnertype = 'Z003'.
*    ENDIF.ls_cvis_bp_general-partnertype = <fs_kunnr>-bpkind .ls_cvis_bp_general-bpartner = <fs_kunnr>-kunnr.ls_cvis_bp_general-title_key = '0003'."公司CLEAR: ls_strlen,lv_strlen .ls_strlen = strlen( <fs_kunnr>-name_org1 ).IF  ls_strlen LE 40.ls_cvis_bp_general-name1 = <fs_kunnr>-name_org1.ELSEIF ls_strlen GT 40 AND ls_strlen LE 80.ls_cvis_bp_general-name1 = <fs_kunnr>-name_org1+0(40).lv_strlen = ls_strlen - 40.ls_cvis_bp_general-name2 = <fs_kunnr>-name_org1+40(lv_strlen).ENDIF.CLEAR: ls_strlen,lv_strlen .ls_strlen = strlen( <fs_kunnr>-name3 ).IF  ls_strlen LE 40.ls_cvis_bp_general-name3 = <fs_kunnr>-name3."英文名ELSEIF ls_strlen GT 40 AND ls_strlen LE 80.ls_cvis_bp_general-name3 = <fs_kunnr>-name3+0(40).lv_strlen = ls_strlen - 40.ls_cvis_bp_general-name4 = <fs_kunnr>-name3+40(lv_strlen).ENDIF.ls_cvis_bp_general-searchterm1 = <fs_kunnr>-bu_sort1.*    ls_cvis_bp_general-comm_type = 'TEL'.APPEND ls_cvis_bp_general TO lt_cvis_bp_general.CLEAR ls_cvis_bp_general.*bp_address 地址数据ls_cvis_bp_address-run_id =  lv_run_id.                 "'1000000'.IF <fs_kunnr>-pstl2 IS NOT INITIAL.ls_cvis_bp_address-postl_cod1 = <fs_kunnr>-pstl2.ELSE.IF <fs_kunnr>-land1 = 'CN' OR <fs_kunnr>-land1 = 'HK' OR <fs_kunnr>-land1 = 'IN'OR <fs_kunnr>-land1 = 'SG' OR <fs_kunnr>-land1 = 'VN' OR <fs_kunnr>-land1 = 'RO'.ls_cvis_bp_address-postl_cod1 = '000000'.ELSEIF <fs_kunnr>-land1 = 'BE' OR <fs_kunnr>-land1 = 'HU' OR <fs_kunnr>-land1 = 'PH' OR <fs_kunnr>-land1 = 'TN' .ls_cvis_bp_address-postl_cod1 = '0000'.ELSEIF <fs_kunnr>-land1 = 'TW' OR  <fs_kunnr>-land1 = 'KR' OR <fs_kunnr>-land1 = 'US' OR <fs_kunnr>-land1 = 'TR' OR <fs_kunnr>-land1 = 'MY'OR <fs_kunnr>-land1 = 'MX' OR <fs_kunnr>-land1 = 'IT' OR <fs_kunnr>-land1 = 'FR' OR <fs_kunnr>-land1 = 'TH' OR <fs_kunnr>-land1 = 'DE'OR <fs_kunnr>-land1 = 'ID' OR <fs_kunnr>-land1 = 'FI' OR <fs_kunnr>-land1 = 'ES'.ls_cvis_bp_address-postl_cod1 = '00000'.ELSEIF <fs_kunnr>-land1 = 'BR'.ls_cvis_bp_address-postl_cod1 = '000000000'.ELSEIF <fs_kunnr>-land1 = 'JP'.ls_cvis_bp_address-postl_cod1 = '00000000'.ELSEIF <fs_kunnr>-land1 = 'PL'.ls_cvis_bp_address-postl_cod1 = '00-000'.ELSEIF <fs_kunnr>-land1 = 'VG' OR <fs_kunnr>-land1 = 'MO'.ls_cvis_bp_address-postl_cod1 = '0'.ELSEIF <fs_kunnr>-land1 = 'CZ'.ls_cvis_bp_address-postl_cod1 = '000 00'.ENDIF.ENDIF.ls_cvis_bp_address-city = <fs_kunnr>-mcod3.
*    ls_cvis_bp_address-district = <fs_kunnr>-bezei.
*    ls_cvis_bp_address-po_box = ls_header-po_box.ls_cvis_bp_address-country = <fs_kunnr>-land1.ls_cvis_bp_address-region  = <fs_kunnr>-regio.
*    CLEAR lv_bezei.
*    lv_bezei = <fs_kunnr>-bezei+0(2) && '%'.
*    SELECT SINGLE bland
*             FROM t005u
*             INTO ls_cvis_bp_address-region  "省份
*            WHERE spras = sy-langu
*              AND land1 = <fs_kunnr>-land1
*              AND bezei LIKE lv_bezei.IF <fs_kunnr>-land1 = 'BR'.ls_cvis_bp_address-region = 'AM' .ls_cvis_bp_address-taxjurcode = 'AM' .ENDIF.*    ls_cvis_bp_address-region = <fs_kunnr>-regio.CLEAR: ls_strlen,lv_strlen .ls_strlen = strlen( <fs_kunnr>-stras ).IF ls_strlen LE 60 .ls_cvis_bp_address-street = <fs_kunnr>-stras.ELSEIF ls_strlen GT 60 AND ls_strlen LE 100.ls_cvis_bp_address-street     = <fs_kunnr>-stras+0(60).lv_strlen = ls_strlen - 60.ls_cvis_bp_address-str_suppl1 = <fs_kunnr>-stras+60(lv_strlen).ELSEIF ls_strlen GT 100 AND ls_strlen LE 140.ls_cvis_bp_address-street     = <fs_kunnr>-stras+0(60).ls_cvis_bp_address-str_suppl1 = <fs_kunnr>-stras+60(40).lv_strlen = ls_strlen - 100.ls_cvis_bp_address-str_suppl2 = <fs_kunnr>-stras+100(lv_strlen).ELSEIF ls_strlen GT 140 AND ls_strlen LE 180.ls_cvis_bp_address-street     = <fs_kunnr>-stras+0(60).ls_cvis_bp_address-str_suppl1 = <fs_kunnr>-stras+60(40).ls_cvis_bp_address-str_suppl2 = <fs_kunnr>-stras+100(40).lv_strlen = ls_strlen - 140.ls_cvis_bp_address-str_suppl3 = <fs_kunnr>-stras+140(lv_strlen).ELSEIF ls_strlen GT 180 AND ls_strlen LE 220.ls_cvis_bp_address-street     = <fs_kunnr>-stras+0(60).ls_cvis_bp_address-str_suppl1 = <fs_kunnr>-stras+60(40).ls_cvis_bp_address-str_suppl2 = <fs_kunnr>-stras+100(40).ls_cvis_bp_address-str_suppl3 = <fs_kunnr>-stras+140(40).lv_strlen = ls_strlen - 180.ls_cvis_bp_address-location   = <fs_kunnr>-stras+180(lv_strlen).ENDIF.ls_cvis_bp_address-comm_type = 'INT'.
*    ls_cvis_bp_address-house_no = ls_header-house_num1.ls_cvis_bp_address-langu    = sy-langu.ls_cvis_bp_address-c_o_name = <fs_kunnr>-zyddm.APPEND ls_cvis_bp_address TO lt_cvis_bp_address.CLEAR ls_cvis_bp_address.ls_cvis_bp_address_teleno-run_id    = lv_run_id. "电话号码ls_cvis_bp_address_teleno-country   = <fs_kunnr>-land1.ls_cvis_bp_address_teleno-telephone = <fs_kunnr>-dianh.       "电话ls_cvis_bp_address_teleno-extension = <fs_kunnr>-fenji.       "电话分机号
*      ls_cvis_bp_address_teleno-R_3_USER = '3'."是否移动电话APPEND ls_cvis_bp_address_teleno TO lt_cvis_bp_address_teleno .CLEAR ls_cvis_bp_address_teleno.IF <fs_kunnr>-yddhh IS NOT INITIAL.ls_cvis_bp_address_teleno-run_id    = lv_run_id. "电话号码ls_cvis_bp_address_teleno-country   = <fs_kunnr>-land1.ls_cvis_bp_address_teleno-telephone = <fs_kunnr>-yddhh.       "电话ls_cvis_bp_address_teleno-r_3_user  = '2'."是否移动电话APPEND ls_cvis_bp_address_teleno TO lt_cvis_bp_address_teleno .CLEAR ls_cvis_bp_address_teleno.ENDIF.ls_cvis_bp_address_faxno-run_id    = lv_run_id.ls_cvis_bp_address_faxno-country   = <fs_kunnr>-land1.ls_cvis_bp_address_faxno-fax       = <fs_kunnr>-ad_fxnmbr1.  "传真ls_cvis_bp_address_faxno-extension = <fs_kunnr>-ad_fxxtns1.  "传真分机号APPEND ls_cvis_bp_address_faxno TO lt_cvis_bp_address_faxno. "传真号码CLEAR ls_cvis_bp_address_faxno.ls_cvis_bp_address_email-run_id = lv_run_id.IF <fs_kunnr>-ad_smtpadr IS INITIAL.ls_cvis_bp_address_email-e_mail = 'TEST@126.COM'."<fs_kunnr>-ad_smtpadr.  "电子邮件地址ELSE.ls_cvis_bp_address_email-e_mail = <fs_kunnr>-ad_smtpadr.  "电子邮件地址ENDIF.APPEND ls_cvis_bp_address_email TO lt_cvis_bp_address_email. "邮箱号码
*    CLEAR ls_cvis_bp_address_email.
*    ls_cvis_bp_role-run_id = '1000000'.
*    ls_cvis_bp_role-data_key = '000000'." 'FLVN00'.
*    APPEND ls_cvis_bp_role TO lt_cvis_bp_role.
*    CLEAR ls_cvis_bp_role.IF  <fs_kunnr>-kunnr IS NOT INITIAL.  "客户ls_cvis_bp_role-run_id =  lv_run_id.                  "'1000000'.ls_cvis_bp_role-data_key = 'UKM000'." 'FLVN01'.APPEND ls_cvis_bp_role TO lt_cvis_bp_role.CLEAR ls_cvis_bp_role.ls_cvis_bp_role-run_id =  lv_run_id.                  "'1000000'.ls_cvis_bp_role-data_key = 'FLCU00'." 'FLVN00'.APPEND ls_cvis_bp_role TO lt_cvis_bp_role.CLEAR ls_cvis_bp_role.ls_cvis_bp_role-run_id =  lv_run_id.                  "'1000000'.ls_cvis_bp_role-data_key = 'FLCU01'." 'FLVN01'.APPEND ls_cvis_bp_role TO lt_cvis_bp_role.CLEAR ls_cvis_bp_role.ls_cvis_bp_finserv-run_id = lv_run_id.
*      IF <fs_kunnr>-group_1 = '终端'.
*        ls_cvis_bp_finserv-group_feature = 'Z01' .
*      ELSEIF <fs_kunnr>-group_1 = '非终端'.
*        ls_cvis_bp_finserv-group_feature = 'Z02' .
*      ELSEIF <fs_kunnr>-group_1 = '其他'.
*        ls_cvis_bp_finserv-group_feature = 'Z03' .
*      ENDIF.ls_cvis_bp_finserv-group_feature = <fs_kunnr>-group_1 .APPEND ls_cvis_bp_finserv TO lt_cvis_bp_finserv . "分组字符CLEAR ls_cvis_bp_finserv.ls_cvis_customer_general-object_task = lv_object_task.ls_cvis_customer_general-run_id =  lv_run_id.         "'1000000'.ls_cvis_customer_general-ktokd = <fs_kunnr>-ktokd.ls_cvis_customer_general-katr1 = <fs_kunnr>-katr1.       "是否完成三证合一ls_cvis_customer_general-katr7 = <fs_kunnr>-vmibz.       "VMIls_cvis_customer_general-kunnr = <fs_kunnr>-kunnr.APPEND ls_cvis_customer_general TO lt_cvis_customer_general.CLEAR ls_cvis_customer_general.ls_cvis_customer_company-run_id = lv_run_id.ls_cvis_customer_company-bukrs  = <fs_kunnr>-bukrs. "公司代码
*      IF <fs_kunnr>-akont = '应收账款集团外'.
*        ls_cvis_customer_company-akont  = '1122020000'. "总帐中的统驭科目
*      ELSEIF <fs_kunnr>-akont = '应收账款集团内'.
*        ls_cvis_customer_company-akont  = '1122010000'. "总帐中的统驭科目
*      ENDIF.ls_cvis_customer_company-akont  = <fs_kunnr>-akont . "总帐中的统驭科目ls_cvis_customer_company-zterm  = <fs_kunnr>-zterm.APPEND ls_cvis_customer_company TO lt_cvis_customer_company . "公司代码CLEAR ls_cvis_customer_company.ls_cvis_customer_sales-run_id = lv_run_id.ls_cvis_customer_sales-vkorg = <fs_kunnr>-bukrs."销售组织.ls_cvis_customer_sales-vtweg = <fs_kunnr>-vtweg. "分销渠道ls_cvis_customer_sales-spart = '10'.            "产品组ls_cvis_customer_sales-kalks = <fs_kunnr>-kalks."用于定价过程确定的客户分类ls_cvis_customer_sales-konda = '01'."客户价格组ls_cvis_customer_sales-vwerk = <fs_kunnr>-bukrs."交货工厂 (自有或外部)ls_cvis_customer_sales-bzirk = <fs_kunnr>-bzirk. "销售地区ls_cvis_customer_sales-vkbur = <fs_kunnr>-vkbur. "销售办公室ls_cvis_customer_sales-inco1   = <fs_kunnr>-inco1. "国贸条款ls_cvis_customer_sales-inco2_l = <fs_kunnr>-inco2_l. "国际贸易条款位置 1ls_cvis_customer_sales-inco3_l = <fs_kunnr>-inco3_l. "国际贸易条款位置 2ls_cvis_customer_sales-ktgrd = <fs_kunnr>-ktgrd."此客户的账户分配组"客户组(ABC等级)IF <fs_kunnr>-kdgrp = 'A' OR <fs_kunnr>-kdgrp = 'ZA'.ls_cvis_customer_sales-kdgrp = 'A'.ELSEIF <fs_kunnr>-kdgrp = 'B' OR <fs_kunnr>-kdgrp = 'ZB'.ls_cvis_customer_sales-kdgrp = 'B'.ELSEIF <fs_kunnr>-kdgrp = 'C' OR <fs_kunnr>-kdgrp = 'ZC'.ls_cvis_customer_sales-kdgrp = 'C'.ENDIF.ls_cvis_customer_sales-vsbed = <fs_kunnr>-vsbed. "装运条件ls_cvis_customer_sales-zterm = <fs_kunnr>-zterm. "付款条件(账期)ls_cvis_customer_sales-waers = <fs_kunnr>-waers. "币种APPEND ls_cvis_customer_sales TO lt_cvis_customer_sales. "销售视图相关CLEAR ls_cvis_customer_sales.ls_cvis_customer_sales_func-run_id = lv_run_id.ls_cvis_customer_sales_func-vkorg = <fs_kunnr>-bukrs."销售组织.ls_cvis_customer_sales_func-vtweg = <fs_kunnr>-vtweg. "分销渠道ls_cvis_customer_sales_func-spart = '10'.            "产品组IF <fs_kunnr>-ktokd NE 'Z003'.ls_cvis_customer_sales_func-parvw   = 'WE'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-kunnr.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-ktokd NE 'Z005'.ls_cvis_customer_sales_func-parvw   = 'AG'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-kunnr.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ls_cvis_customer_sales_func-parvw   = 'RG'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-kunnr.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ls_cvis_customer_sales_func-parvw   = 'RE'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-kunnr.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .IF <fs_kunnr>-ktokd EQ 'Z002'.ls_cvis_customer_sales_func-parvw   = 'Z1'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-kunnr.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-ktokd EQ 'Z002' OR <fs_kunnr>-ktokd EQ 'Z001'.IF <fs_kunnr>-scgc IS NOT INITIAL.CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'EXPORTINGinput  = <fs_kunnr>-scgcIMPORTINGoutput = <fs_kunnr>-scgc.ls_cvis_customer_sales_func-parvw   = 'LW'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-scgc.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-ssjtb IS NOT INITIAL AND <fs_kunnr>-ktokd EQ 'Z001'.ls_cvis_customer_sales_func-parvw   = 'Z1'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-ssjtb.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-kunnr2 IS NOT INITIAL.ls_cvis_customer_sales_func-parvw   = 'Z2'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-kunnr2.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-xszjg IS NOT INITIAL.ls_cvis_customer_sales_func-parvw   = 'S1'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-xszjg.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-xsjlg IS NOT INITIAL.ls_cvis_customer_sales_func-parvw   = 'S2'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-xsjlg.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-xsyzg IS NOT INITIAL.ls_cvis_customer_sales_func-parvw   = 'VE'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-xsyzg.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-zjs1g IS NOT INITIAL.ls_cvis_customer_sales_func-parvw   = 'S3'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-zjs1g.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-zjs2g IS NOT INITIAL.ls_cvis_customer_sales_func-parvw   = 'S4'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-zjs2g.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.IF <fs_kunnr>-zjs3g IS NOT INITIAL.ls_cvis_customer_sales_func-parvw   = 'S5'."伙伴功能ls_cvis_customer_sales_func-partner = <fs_kunnr>-zjs3g.APPEND ls_cvis_customer_sales_func TO lt_cvis_customer_sales_func .ENDIF.ENDIF.ENDIF.CLEAR  ls_cvis_customer_sales_func .ls_cvis_customer_tax_indicator-run_id = lv_run_id.IF <fs_kunnr>-bukrs = '3000' OR <fs_kunnr>-bukrs = '4000'.ls_cvis_customer_tax_indicator-aland  = 'HK'.ELSE.ls_cvis_customer_tax_indicator-aland  = 'CN'.ENDIF.ls_cvis_customer_tax_indicator-tatyp  = 'MWST'.
*      IF <fs_kunnr>-kurst = '记增值税16%'.
*        ls_cvis_customer_tax_indicator-taxkd  = '1'.
*      ELSE.
*        ls_cvis_customer_tax_indicator-taxkd  = '0'.
*      ENDIF.ls_cvis_customer_tax_indicator-taxkd  = <fs_kunnr>-kurst .APPEND  ls_cvis_customer_tax_indicator TO lt_cvis_customer_tax_indicator. "销售视图税CLEAR  ls_cvis_customer_tax_indicator.ENDIF.*    IF ls_header-nwgsbs IS NOT INITIAL.  "供应商
*
*      ls_cvis_bp_role-run_id =  lv_run_id.                  "'1000000'.
*      ls_cvis_bp_role-data_key = 'FLVN00'." 'FLVN00'.
*      APPEND ls_cvis_bp_role TO lt_cvis_bp_role.
*      CLEAR ls_cvis_bp_role.
*
*      ls_cvis_supplier_general-object_task = lv_object_task.
*      ls_cvis_supplier_general-run_id =  lv_run_id.         "'1000000'.
*
*      ls_cvis_supplier_general-lifnr = ls_header-bpartner.
*
*      APPEND ls_cvis_supplier_general TO lt_cvis_supplier_general.
*      CLEAR ls_cvis_supplier_general.
*    ENDIF.*    IF ls_header-idnumber IS NOT INITIAL.
*
*      ls_cvis_bp_ident_numbers-run_id =  lv_run_id.         "'1000000'.
*      ls_cvis_bp_ident_numbers-identificationcategory = 'BUP002'. "ID类型
*      ls_cvis_bp_ident_numbers-identificationnumber = ls_header-idnumber.
*
*      DO 2 TIMES.
*        REPLACE '-' INTO ls_header-bu_datefromstr_id WITH space.
*        CONDENSE ls_header-bu_datefromstr_id NO-GAPS.
*        REPLACE '-' INTO ls_header-bu_datetostr_id WITH space.
*        CONDENSE ls_header-bu_datetostr_id NO-GAPS.
*      ENDDO.
*      ls_cvis_bp_ident_numbers-idvalidfromdate = ls_header-bu_datefromstr_id.
*      ls_cvis_bp_ident_numbers-idvalidtodate = ls_header-bu_datetostr_id.
*      APPEND ls_cvis_bp_ident_numbers TO lt_cvis_bp_ident_numbers.
*      CLEAR ls_cvis_bp_ident_numbers.
*    ENDIF.*    LOOP AT it_bank INTO ls_bank WHERE id = ls_header-id*      AND bankl IS NOT INITIAL.
*      MOVE-CORRESPONDING ls_bank TO ls_zmmt00100.
*      lv_bkvid = lv_bkvid + 1.
*      CONDENSE lv_bkvid NO-GAPS.
*      lv_index = strlen( lv_bkvid ).
*      lv_index = 4 - lv_index.
*      DO lv_index TIMES.
*        lv_bkvid = '0' && lv_bkvid.
*      ENDDO.
*
*      ls_cvis_bp_bank_details-run_id =  lv_run_id.          "'1000000'.
*      ls_cvis_bp_bank_details-data_key = lv_bkvid.
*      IF ls_bank-banks IS INITIAL.
*        ls_cvis_bp_bank_details-bank_ctry = 'CN'.  "银行国家代码
*      ELSE.
*        ls_cvis_bp_bank_details-bank_ctry = ls_bank-banks.  "银行国家代码
*      ENDIF.
*
** ls_cvis_bp_bank_details- = ls_bank-BKDSC. "银行名称, 不用填
*      ls_cvis_bp_bank_details-bank_key = ls_bank-bankl.  "银行代码
*      ls_cvis_bp_bank_details-bank_acct = ls_bank-bankn.  "银行账号
*      IF strlen( ls_bank-bankn ) > 18.
*        ls_cvis_bp_bank_details-bank_ref = ls_bank-bankn+18(12).  "银行账号的参考明细
*      ENDIF.
*
*      ls_cvis_bp_bank_details-bankaccountname = ls_bank-accname."银行帐户的名称
*
*      APPEND ls_cvis_bp_bank_details TO lt_cvis_bp_bank_details.
*      ls_zmmt00100-bankn_1 = ls_bank-bankn.
*      APPEND ls_zmmt00100 TO lt_zmmt00100.
*      CLEAR:ls_zmmt00100, ls_cvis_bp_bank_details.
*    ENDLOOP.CALL FUNCTION 'RFC_CVI_EI_INBOUND_MAIN'EXPORTINGiv_docommit             = 'X'TABLESit_bp_general           = lt_cvis_bp_generalit_bp_role              = lt_cvis_bp_role
*       it_bp_tax_number        = lt_cvis_bp_tax_numberit_bp_address_teleno    = lt_cvis_bp_address_teleno "电话号码it_bp_address_faxno     = lt_cvis_bp_address_faxno "传真号码it_bp_address_email     = lt_cvis_bp_address_email "邮箱号码it_bp_finserv           = lt_cvis_bp_finserv "分组字符
*       it_bp_ident_numbers     = lt_cvis_bp_ident_numbersit_cust_general         = lt_cvis_customer_generalit_cust_company         = lt_cvis_customer_company "公司代码it_cust_sales           = lt_cvis_customer_sales "销售视图相关it_cust_sales_functions = lt_cvis_customer_sales_func  "伙伴功能it_cust_tax_indicator   = lt_cvis_customer_tax_indicator "销售视图税
*       it_sup_general          = lt_cvis_supplier_general
*       it_bp_bank_details      = lt_cvis_bp_bank_detailsit_bp_address           = lt_cvis_bp_addressct_return               = lt_cvis_bp_return.CLEAR ls_cvis_bp_return.LOOP AT lt_cvis_bp_return INTO ls_cvis_bp_return  WHERE type = 'E' OR type = 'A' .IF sy-subrc = 0.CONCATENATE ls_cvis_bp_return-message  sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4INTO <fs_kunnr>-drjg.i_subruc = 1.ENDIF.ENDLOOP.IF  i_subruc = 0.IF lv_object_task = 'U'.  "修改BP.<fs_kunnr>-drjg = '修改成功'.ELSEIF lv_object_task = 'I'.  "创建BP.<fs_kunnr>-drjg = '创建成功'.ENDIF.ls_thead = <fs_kunnr>-kunnr."长文本处理  税务登记证号IF <fs_kunnr>-swdjz IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-swdjz.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0001'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '税务登记证号录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  商业登记号IF <fs_kunnr>-sydjh IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-sydjh.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0002'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '商业登记号录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  组织机构代码IF <fs_kunnr>-zzjgh IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-zzjgh.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0003'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '组织机构代码录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  社会统一信用代码IF <fs_kunnr>-xydmh IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-xydmh.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0004'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '社会统一信用代码失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  注册资本IF <fs_kunnr>-zczb IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-zczb.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0005'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '注册资本录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  注册时间IF <fs_kunnr>-zcsj IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-zcsj.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0006'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '注册时间录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  对账日期IF <fs_kunnr>-dzrq IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-dzrq.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0007'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE   '对账日期录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  法定代表人IF <fs_kunnr>-fddbr IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-fddbr.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0008'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE  '法定代表人录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  法人身份证IF <fs_kunnr>-frsfz IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-frsfz.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0009'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE  '法人身份证录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  贸易伙伴IF <fs_kunnr>-myhb IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-myhb.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0010'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '贸易伙伴录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  经营范围IF <fs_kunnr>-jyfw IS NOT INITIAL.CLEAR:lt_line,ls_line.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-jyfw.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = '0011'flanguage   = sy-langufname       = ls_theadfobject     = 'KNA1'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '经营范围录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."长文本处理  客户风险警告IF <fs_kunnr>-zkhfxjg IS NOT INITIAL.CLEAR:lt_line,ls_line,ls_fxjg,ls_thead.ls_fxjg-kunnr = <fs_kunnr>-kunnr.ls_fxjg-vkorg = <fs_kunnr>-bukrs.ls_fxjg-vtweg = <fs_kunnr>-vtweg.ls_fxjg-spart =  '10'.ls_thead = ls_fxjg.ls_line-tdformat = '*' .ls_line-tdline   = <fs_kunnr>-zkhfxjg.APPEND ls_line TO lt_line.CALL FUNCTION 'CREATE_TEXT'EXPORTINGfid         = 'Z001'flanguage   = sy-langufname       = ls_theadfobject     = 'KNVV'save_direct = 'X'
*           FFORMAT     = '*'TABLESflines      = lt_lineEXCEPTIONSno_init     = 1no_save     = 2OTHERS      = 3.IF sy-subrc <> 0.CONCATENATE '经营范围录入失败' <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg.ENDIF.ENDIF."$. Region 信用段数据维护MOVE-CORRESPONDING <fs_kunnr> TO gs_out.PERFORM xinyongduan USING gs_out CHANGING return.LOOP AT  return INTO DATA(ls_return).CONCATENATE <fs_kunnr>-drjg ls_return-partner ls_return-msgtyls_return-msgv1 ls_return-msgv2 ls_return-msgv3ls_return-msgv4 ls_return-message INTO <fs_kunnr>-drjg.ENDLOOP."$. Endregion 信用段数据维护ELSE.
*      ls_return-bp_number = ls_header-bpartner.
*      ls_return-type = 'E'.CONCATENATE '导入失败'  <fs_kunnr>-drjg INTO  <fs_kunnr>-drjg SEPARATED BY ':'.CLEAR i_subruc .ENDIF.REFRESH:lt_cvis_bp_general,lt_cvis_bp_role,
*            lt_cvis_bp_tax_number,lt_cvis_bp_address_teleno, "电话号码lt_cvis_bp_address_faxno, "传真号码lt_cvis_bp_address_email, "邮箱号码lt_cvis_bp_finserv, "分组字符
*            lt_cvis_bp_ident_numbers,lt_cvis_customer_general,lt_cvis_customer_company, "公司代码lt_cvis_customer_sales, "销售视图相关lt_cvis_customer_tax_indicator, "销售视图税lt_cvis_customer_sales_func,"伙伴功能
*            lt_cvis_supplier_general,
*            lt_cvis_bp_bank_details,lt_cvis_bp_address,lt_cvis_bp_return.CLEAR:lv_category, lv_bkvid,lv_index.ENDLOOP.
ENDFORM.
*&---------------------------------------------------------------------*
*& Form XINYONGDUAN
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*
*&      --> GS_OUT
*&      <-- RETURN
*&---------------------------------------------------------------------*
FORM xinyongduan USING p_gs_out TYPE ty_outCHANGING p_return TYPE ukm_t_monitor_return.DATA: io_facade        TYPE REF TO cl_ukm_facade,io_bupa_factory  TYPE REF TO cl_ukm_bupa_factory,io_partner       TYPE REF TO cl_ukm_business_partner,io_account       TYPE REF TO cl_ukm_account,lw_bp_credit_sgm TYPE ukm_s_bp_cms_sgm.DATA: lwa_ukm_s_bp_cms TYPE ukm_s_bp_cms.DATA: lv_partner      TYPE bu_partner,lv_credit_sgmnt TYPE ukm_credit_sgmnt.*  创建'MAINTAIN'对象io_facade     = cl_ukm_facade=>create( i_activity = cl_ukm_cnst_eventing=>bp_maintenance ).io_bupa_factory = io_facade->get_bupa_factory( ).lv_partner      =  p_gs_out-kunnr. "客户代码lv_credit_sgmnt =  p_gs_out-zxy2.     "信用段io_partner = io_bupa_factory->get_business_partner( lv_partner ).io_partner->get_bp_cms( IMPORTING es_bp_cms =  lwa_ukm_s_bp_cms ).lwa_ukm_s_bp_cms-risk_class      = ''. "风险类lwa_ukm_s_bp_cms-check_rule      = '01'. "检查规则lwa_ukm_s_bp_cms-limit_rule      = p_gs_out-zxy1."信用参数文件记分规则
*  lwa_ukm_s_bp_cms-rating_val_date = p_gs_out-zxy4.io_partner->set_bp_cms( lwa_ukm_s_bp_cms ).CALL METHOD io_bupa_factory->get_credit_accountEXPORTINGi_partner         = lv_partneri_credit_sgmnt    = lv_credit_sgmntRECEIVINGro_credit_account = io_account.io_account->get_bp_cms_sgm( IMPORTING es_bp_cms_sgm = lw_bp_credit_sgm ).lw_bp_credit_sgm-credit_limit     = p_gs_out-zxy3."信用额度lw_bp_credit_sgm-limit_valid_date = p_gs_out-zxy4.io_account->set_bp_cms_sgm( EXPORTING is_bp_cms_sgm = lw_bp_credit_sgm ).io_bupa_factory->save_all( EXPORTING i_upd_task = abap_falseRECEIVING et_return = p_return   ).ENDFORM.FORM frm_kunnr_alpha_input CHANGING cv_bpartner.CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'EXPORTINGinput  = cv_bpartnerIMPORTINGoutput = cv_bpartner.ENDFORM.
*&---------------------------------------------------------------------*
*& Form CONVERSION_EXIT_PARVW_INPUT
*&---------------------------------------------------------------------*
*& text
*&---------------------------------------------------------------------*d
*&      <-- LS_HEADER_PARVW
*&---------------------------------------------------------------------*
FORM conversion_exit_parvw_input CHANGING cv_parvw.CALL FUNCTION 'CONVERSION_EXIT_PARVW_INPUT'EXPORTINGinput  = cv_parvwIMPORTINGoutput = cv_parvw.ENDFORM.

好了,分享使我快乐,我是寒武青锋!

记得点赞哟

ABAP 客户主数据批量导入相关推荐

  1. ABAP 供应商主数据批量导入

    使用到的BAPI: RFC_CVI_EI_INBOUND_MAIN 这个BAPI 可以用来创建/修改 供应商和客户. 本篇文章只写了导入供应商的部分,客户也可以通过这个bapi导入的,但是请自行更改使 ...

  2. SAP ABAP 客户主数据的 查询-创建-修改-锁定 API或BAPI

    文章目录 前言 范例代码 总结 前言 采用BDC创建客商主数据复用性低,且时常发生错误,比如字段必输性调整造成报错等 现通过API或BAPI去查询,创建,修改,锁定 以下为实际做的一个RFC接口 范例 ...

  3. BP客户主数据信用数据批量修改

    S4 HANA中BP客户主数据信用数据批量修改 修改的关键性代码: LOOP AT gt_upload INTO gs_upload. *------------------------------- ...

  4. SAP 批量导出客户主数据

    SAP批量导出客户主数据 事务代码:VCUST

  5. SAP中使用LSMW批量导入总账科目

    遗留数据迁移平台,可以导入主数据:科目.资产主数据.物料主数据.供应商.客户主数据.成本中心.内部订单数据.... FSP0 FSS0 分层导入:适合集团和分公司分别维护科目主数据,集团和公司自行维护 ...

  6. SAP RETAIL 对WG22执行LSMW批量导入物料组描述信息时需要前台执行

    SAP RETAIL 对WG22执行LSMW批量导入物料组描述信息时需要前台执行 在SAP RETAIL系统中,物料组的维护不再是后台配置方式了,而是以前台方式作为主数据来维护进入SAP系统上.相关事 ...

  7. 从TXT文本文档向Sql Server中批量导入数据

    因为工作的需要,近期在做数据的分析和数据的迁移.在做数据迁移的时候需要将原有的数据导入到新建的数据库中.本来这个单纯的数据导入导出是没有什么问题的,但是客户原有的数据全部都是存在.dat文件中的.所以 ...

  8. 快速批量导入庞大数据到SQL SERVER数据库(ADO.NET)

    原文地址:http://www.cnblogs.com/chenxizhang/archive/2008/11/11/1331060.html 如果你需要在程序中批量插入成千上万行的数据,你会怎么编写 ...

  9. POI批量导入及一键上传ocupload和pinyin4j组件的使用案例

    主要讲解四点: 快递员批量作废功能(重点,本质上是快递员的批量修改操作) 一键上传.POI解析Excel.pinyin4j(会用) 代码重构:优化模型驱动和优化分页代码(理解) 定区添加.带条件分页查 ...

  10. 在Exchange 2010中批量导入用户

    在某一个项目中,客户需要将2000多个联系人导入到Exchange 2010中,作为外部邮件联系人对MAPI连接的用户可见,而且要划分到特定的地址簿中去.客户提供excel列表以便导入使用.      ...

最新文章

  1. LeetCode简单题之数组的相对排序
  2. shell中单引号的嵌套
  3. ActionScript3(AS3)类库学习之(八)——自定义上下文菜单
  4. 如何在ashx页面获取Session值
  5. 在Data Lake Analytics中使用视图
  6. React开发(114):不建议用setstate回调
  7. ansible-playbook Roles include
  8. 99.9%的数据分析师,都做不到这些
  9. 腾讯PCG事业部后台实习开发过经(已拿offer)
  10. UiPath视频教程
  11. IDEA如何进行debug调试
  12. FineReport 11.0 帆软报表 授权文件 补丁
  13. Sepic变换器的基本原理
  14. 统计学--从对P值的理解谈起
  15. SYSTEM_INFO
  16. eChars实现哈尔滨市区县地图展示
  17. 金三银四求职季,程序员面试必备——编程语言篇
  18. Java虚拟机之字节码查看工具
  19. 运输公司对用户计算运输费用。
  20. RoadFlow ASP.NET Core工作流配置文件说明

热门文章

  1. 小成本创造高回报?这家企业的创新培训模式有点牛
  2. 小米、Vivo、Oppo后台弹出界面和锁屏权限检测
  3. 图像滤镜艺术---ZPhotoEngine超级算法库
  4. ardupilot rover ardurover 电机相关源码 PreArm servo function 33 unassigned
  5. android平板和ipad区别,为什么说买平板必须买ipad?那么安卓平板和iPad到底有什么区别?...
  6. console接口(console接口定义)
  7. dns服务器 性能测试,dns服务器性能测试报告.docx
  8. Canvas-2d fillRect
  9. jquery.printarea.js 局部打印去掉页眉页脚
  10. 【大话云原生】微服务篇-五星级酒店的服务方式