设为首页 收藏本站
查看: 1480|回复: 0

[经验分享] SAP供应商和客户的创建

[复制链接]

尚未签到

发表于 2015-9-20 11:48:20 | 显示全部楼层 |阅读模式
  【转自http://blog.iyunv.com/lyb_yt/article/details/17962609】
进来遇到一个创建供应商的需求,由于在系统中关于供应商和客户的创建比较特殊,且没有相关函数进行创建,
  找到一个类和方法来创建,类名:VMD_EI_API  方法名:MAINTAIN_DIRECT_INPUT,类似的
  * 供应商表头
  ls_vendors-header-object_instance-lifnr = lv_vendor.  "供应商
  ls_vendors-header-object_task = 'M'.              "创建/更改
* 通用数据
  ls_vendors-central_data-central-data-stceg       = stceg.      "增值税登记号
  ls_vendors-central_data-central-data-ktokk       = '0001'.     "账户组
  ls_vendors-central_data-central-data-j_1kfrepre  = j_1kfrepre. "代表名称
  ls_vendors-central_data-central-datax-stceg      = 'X'.        "增值税登记号
  ls_vendors-central_data-central-datax-ktokk      = 'X'.        "账户组
  ls_vendors-central_data-central-datax-j_1kfrepre = 'X'.        "代表名称
* 电话
  ls_phone-contact-data-telephone = phone.
  APPEND ls_phone TO ls_vendors-central_data-address-communication-phone-phone.
  CLEAR ls_phone.
* 邮箱
  ls_smtp-contact-data-e_mail      = smtp.
  APPEND ls_smtp TO ls_vendors-central_data-address-communication-smtp-smtp.
  CLEAR ls_smtp.
  ls_vendors-central_data-address-postal-data-name         = name.       "名称
  ls_vendors-central_data-address-postal-data-name_2       = name.       "名称
  ls_vendors-central_data-address-postal-data-sort1        = sort1.      "属性(SAP为搜索项 1)
  ls_vendors-central_data-address-postal-data-street       = street.     "街道/门牌号
  ls_vendors-central_data-address-postal-data-postl_cod1   = postl_cod1. "邮政编码
  ls_vendors-central_data-address-postal-data-city         = city.       "城市
  ls_vendors-central_data-address-postal-data-country      = country.    "国家
  ls_vendors-central_data-address-postal-data-region       = region.     "地区
  ls_vendors-central_data-address-postal-data-langu        = '1'.        "语言
  ls_vendors-central_data-address-postal-datax-name        = 'X'.
  ls_vendors-central_data-address-postal-datax-name_2      = 'X'.
  ls_vendors-central_data-address-postal-datax-sort1       = 'X'.
  ls_vendors-central_data-address-postal-datax-street      = 'X'.
  ls_vendors-central_data-address-postal-datax-postl_cod1  = 'X'.
  ls_vendors-central_data-address-postal-datax-city        = 'X'.
  ls_vendors-central_data-address-postal-datax-country     = 'X'.
  ls_vendors-central_data-address-postal-datax-region      = 'X'.
  ls_vendors-central_data-address-postal-datax-langu       = 'X'.
* 采购组织数据
  ls_purchasing-task = 'M'.
  ls_purchasing-data_key-ekorg = '1000'.
  ls_purchasing-data-waers = waers.
  ls_purchasing-data-verkf = verkf.
  ls_purchasing-data-telf1 = telf1.
  ls_purchasing-data-eikto = eikto.
  ls_purchasing-data-webre  = 'X'.
  ls_purchasing-datax-waers = 'X'.
  ls_purchasing-datax-verkf = 'X'.
  ls_purchasing-datax-telf1 = 'X'.
  ls_purchasing-datax-webre = 'X'.
  ls_purchasing-datax-eikto = 'X'.
  IF requesttype = 'CREATE'.
    ls_functions-task = 'I'.
    ls_functions-data_key-parvw = 'BA'.
    ls_functions-data-defpa = ''.
    ls_functions-data-partner = lv_vendor.
    ls_functions-datax-defpa = 'X'.
    ls_functions-datax-partner = 'X'.
    APPEND ls_functions TO lt_functions.
    ls_functions-data_key-parvw = 'LF'.
    ls_functions-data-defpa = ''.
    ls_functions-data-partner = lv_vendor.
    ls_functions-datax-defpa = 'X'.
    ls_functions-datax-partner = 'X'.
    APPEND ls_functions TO lt_functions.
    ls_functions-data_key-parvw = 'RS'.
    ls_functions-data-defpa = ''.
    ls_functions-data-partner = lv_vendor.
    ls_functions-datax-defpa = 'X'.
    ls_functions-datax-partner = 'X'.
    APPEND ls_functions TO lt_functions.
    ls_purchasing-functions-functions = lt_functions.
  ENDIF.
  APPEND ls_purchasing TO ls_vendors-purchasing_data-purchasing.
  CLEAR ls_purchasing.
  APPEND ls_vendors TO lt_vendors.
  CLEAR ls_vendors.
  ls_main-vendors = lt_vendors.
* 创建或者更新供应商
  CALL METHOD vmd_ei_api=>maintain_direct_input
    EXPORTING
      is_master_data           = ls_main
    IMPORTING
      es_master_data_correct   = l1
      es_message_correct       = l2
      es_master_data_defective = l3
      es_message_defective     = l4.
  IF l4-is_error = ''.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        wait = 'X'.
    return_status = 'S'.
    IF requesttype = 'CREATE'.
      return_value = '供应商创建成功!'.
    ELSEIF requesttype = 'UPDATE'.
      return_value = '供应商更新成功!'.
    ENDIF.
    sapcode = lv_vendor.
  ELSE.
    CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
    return_status = 'F'.
    CLEAR ls_message.
    READ TABLE l4-messages INTO ls_message WITH KEY type = 'E'.
    IF sy-subrc = 0.
      MESSAGE ID ls_message-id              
TYPE ls_message-type              
NUMBER ls_message-number              
WITH  ls_message-message_v1                    ls_message
-message_v2                    ls_message
-message_v3                    ls_message
-message_v4              
INTO return_value.   
ENDIF.  
ENDIF.

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-116201-1-1.html 上篇帖子: [转]SAP一句话入门:Material Management 下篇帖子: SAP CRM市场营销表结构
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表