当前位置: 首页 > news >正文

广东省建设监理协会网站 首页中国品牌设计公司

广东省建设监理协会网站 首页,中国品牌设计公司,网站关键词有哪些,外贸网站域名文章目录1.前台操作2.需求分析2.1调用方式2.2分为两大概括:2.3业务逻辑细节图3.BAPI_GOODSMVT_CREATE4.RFC接口代码5.总结1.前台操作 SAP CO01(创建生产订单)/MIGO(发货投料)前台操作 这里面有migo的前台操作,首先了解前台操作后再去写RFC接口是比较容易理解的.!! 2.需求分析…

文章目录

    • 1.前台操作
    • 2.需求分析
      • 2.1调用方式
      • 2.2分为两大概括:
      • 2.3业务逻辑细节图
    • 3.BAPI_GOODSMVT_CREATE
    • 4.RFC接口代码
    • 5.总结

1.前台操作

SAP CO01(创建生产订单)/MIGO(发货投料)前台操作
这里面有migo的前台操作,首先了解前台操作后再去写RFC接口是比较容易理解的.!!

2.需求分析

2.1调用方式

mesOS->SAPOS

2.2分为两大概括:

同一过账标识 10

  1. 0 的时候单一过账,无论行项目中有多少个物料号,都会对应生成多少个物料凭证号
  2. 1的时候同一过账,也就是无论行项目中有多少个物料号,都只生成一个物料凭证编号.
    这两个逻辑是是相反的.

2.3业务逻辑细节图

在这里插入图片描述

3.BAPI_GOODSMVT_CREATE

下面的这些参数我只介绍了此需求用过的.

EXPORTING部分
bapi2017_gm_head_01,   "凭证中的过帐日期等一些抬头信息
bapi2017_gm_code,        "这个是你要进行的是什么样的操作比如说是发货,收货,取消等都对应相应的编号比如01 02 03IMPORTING部分
bapi2017_gm_head_ret,  "物料凭证号,凭证年度
bapi2017_gm_head_ret-mat_doc, "物料凭证号
bapi2017_gm_head_ret-doc_year, "凭证年度TABLES部分bapi2017_gm_item_create, "行项目bapiret2, "返回值

4.RFC接口代码

代码感觉比较臃肿,欢迎大佬前来补充优化!!!

FUNCTION zmigo_carry_to.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     VALUE(IN_NUM) TYPE  BAPI_MTYPE
*"  EXPORTING
*"     VALUE(MSG_TYPE) TYPE  BAPI_MTYPE
*"     VALUE(MESSAGE) TYPE  BAPI_MSG
*"  TABLES
*"      IT_TAB_IN STRUCTURE  ZCARRY_TO_INPUT OPTIONAL
*"      INT_TAB_OUT STRUCTURE  ZCARRY_TO_OUTPUT OPTIONAL
*"----------------------------------------------------------------------DATA:goodsmvt_header       LIKE  bapi2017_gm_head_01,goodsmvt_code         LIKE  bapi2017_gm_code,goodsmvt_headret      LIKE  bapi2017_gm_head_ret,materialdocument      TYPE  bapi2017_gm_head_ret-mat_doc,matdocumentyear       TYPE  bapi2017_gm_head_ret-doc_year,goodsmvt_item         TYPE TABLE OF  bapi2017_gm_item_create,goodsmvt_item_0       TYPE TABLE OF  bapi2017_gm_item_create,w_goodsmvt_item       TYPE           bapi2017_gm_item_create,goodsmvt_serialnumber LIKE  bapi2017_gm_serialnumber,it_return             TYPE TABLE OF  bapiret2,wa_return             TYPE           bapiret2.DATA gs_tab_in TYPE zcarry_to_input .DATA gt_tab_in TYPE TABLE OF zcarry_to_input .DATA gs_tab_out TYPE zcarry_to_output .IF in_num = 1 .MOVE-CORRESPONDING  it_tab_in[]  TO  gt_tab_in.SORT gt_tab_in BY bwart.LOOP AT gt_tab_in INTO DATA(ls_tab).DELETE ADJACENT DUPLICATES FROM gt_tab_in COMPARING bwart.ENDLOOP.IF lines( gt_tab_in ) > 1.CLEAR:gt_tab_in, ls_tab.msg_type = 'E'.message = '不同移动类型请分批出库!'.RETURN.ENDIF.LOOP AT it_tab_in[] INTO gs_tab_in.gs_tab_in-zeile = sy-tabix.MODIFY it_tab_in FROM gs_tab_in.goodsmvt_header-pstng_date = gs_tab_in-budat_mkpf. "过账日期goodsmvt_code-gm_code      = '03'.w_goodsmvt_item-material  = gs_tab_in-matnr. "物料号w_goodsmvt_item-plant     = gs_tab_in-werks. "工厂w_goodsmvt_item-stge_loc  = gs_tab_in-lgort.  "库位w_goodsmvt_item-costcenter     = it_tab_in-kostl. "成本中心w_goodsmvt_item-entry_qnt = gs_tab_in-menge.  "数量w_goodsmvt_item-ref_doc_it = gs_tab_in-zeile.  "物料参考项目w_goodsmvt_item-move_type = gs_tab_in-bwart. "移动类型(库存管理)APPEND w_goodsmvt_item TO goodsmvt_item.CLEAR: w_goodsmvt_item,gs_tab_in.ENDLOOP.IF goodsmvt_item[] IS  NOT INITIAL.CALL FUNCTION 'BAPI_GOODSMVT_CREATE'EXPORTINGgoodsmvt_header  = goodsmvt_headergoodsmvt_code    = goodsmvt_code
*         TESTRUN          = ' '
*         GOODSMVT_REF_EWM =IMPORTING
*         goodsmvt_headret = goodsmvt_headermaterialdocument = materialdocumentmatdocumentyear  = matdocumentyearTABLESgoodsmvt_item    = goodsmvt_item[]
*         GOODSMVT_SERIALNUMBER         =return           = it_return[]
*         GOODSMVT_SERV_PART_DATA       =
*         EXTENSIONIN      =.READ TABLE it_return INTO wa_return WITH KEY type = 'E'.IF sy-subrc = 0.CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.msg_type = 'E'.message = wa_return-message.ELSE.CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'EXPORTINGwait = 'X'.msg_type = 'S'." message = '物料凭证:' && materialdocument && '已过账!'.LOOP AT it_tab_in[] INTO gs_tab_in.int_tab_out-mjahr = matdocumentyear. "凭证年份int_tab_out-mblnr = materialdocument."物料凭证int_tab_out-zeile = gs_tab_in-zeile."物料参考项目int_tab_out-budat_mkpf = gs_tab_in-budat_mkpf. "过账日期int_tab_out-matnr  = gs_tab_in-matnr. "物料号int_tab_out-werks     = gs_tab_in-werks. "工厂int_tab_out-lgort  = gs_tab_in-lgort.  "库位int_tab_out-kostl     = it_tab_in-kostl. "成本中心int_tab_out-menge = gs_tab_in-menge.  "数量int_tab_out-bwart = gs_tab_in-bwart. "移动类型(库存管理)APPEND int_tab_out.ENDLOOP.ENDIF.ENDIF.ELSEIF in_num = 0.LOOP AT it_tab_in[] INTO gs_tab_in  .goodsmvt_header-pstng_date = gs_tab_in-budat_mkpf. "过账日期goodsmvt_code-gm_code      = '03'.w_goodsmvt_item-material  = gs_tab_in-matnr. "物料号w_goodsmvt_item-plant     = gs_tab_in-werks. "工厂w_goodsmvt_item-stge_loc  = gs_tab_in-lgort.  "库位w_goodsmvt_item-costcenter     = it_tab_in-kostl. "成本中心w_goodsmvt_item-entry_qnt = gs_tab_in-menge.  "数量w_goodsmvt_item-move_type = gs_tab_in-bwart. "移动类型(库存管理)w_goodsmvt_item-ref_doc_it = '1'.  "物料参考项目APPEND w_goodsmvt_item TO goodsmvt_item_0.IF goodsmvt_item_0[] IS  NOT INITIAL.CALL FUNCTION 'BAPI_GOODSMVT_CREATE'EXPORTINGgoodsmvt_header  = goodsmvt_headergoodsmvt_code    = goodsmvt_code
*           TESTRUN          = ' '
*           GOODSMVT_REF_EWM =IMPORTING
*           goodsmvt_headret = goodsmvt_headermaterialdocument = materialdocumentmatdocumentyear  = matdocumentyearTABLESgoodsmvt_item    = goodsmvt_item_0[]
*           GOODSMVT_SERIALNUMBER         =return           = it_return[]
*           GOODSMVT_SERV_PART_DATA       =
*           EXTENSIONIN      =.ENDIF.READ TABLE it_return INTO wa_return WITH KEY type = 'E'.IF sy-subrc = 0.CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.msg_type = 'E'.message = wa_return-message.ELSE.CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'EXPORTINGwait = 'X'.msg_type = 'S'."  message = '物料凭证已过账!'.int_tab_out-mjahr = matdocumentyear. "凭证年份int_tab_out-mblnr = materialdocument."物料凭证int_tab_out-zeile = w_goodsmvt_item-ref_doc_it ."物料参考项目int_tab_out-budat_mkpf = gs_tab_in-budat_mkpf. "过账日期int_tab_out-matnr  = gs_tab_in-matnr. "物料号int_tab_out-werks     = gs_tab_in-werks. "工厂int_tab_out-lgort  = gs_tab_in-lgort.  "库位int_tab_out-kostl     = it_tab_in-kostl. "成本中心int_tab_out-menge = gs_tab_in-menge.  "数量int_tab_out-bwart = gs_tab_in-bwart. "移动类型(库存管理)APPEND int_tab_out.ENDIF.CLEAR:goodsmvt_item_0[] ,goodsmvt_header,goodsmvt_code.CLEAR: w_goodsmvt_item.ENDLOOP.ENDIF.
ENDFUNCTION.

5.总结

RFC接口首先要明确的是,接口参数以及业务逻辑.(我尼玛,说的都是废话);如果调用bapi就需要研究一下bapi中的参数.

http://www.yayakq.cn/news/312975/

相关文章:

  • 国企有没有必要建设网站国家高新技术企业认定申请条件
  • 上杭网站设计公司中国服务外包网网址
  • 演示网站怎么做公司名字大全10000个
  • 58网站怎么样做效果会更好永久免费的连外网的软件
  • 加强公司内部网站建设广州商城网站建设地址
  • 惠州网站制作网站保定制作网站软件
  • 辉县网站建设求职简历北京网站设计公司兴田德润信任高
  • 俱乐部网站 模板做冷库的网站
  • 网站建设公司专业开发北京网站模板网站和定制网站影响排名
  • 电子商务网站建设与维护读书心得软件开发行业发展前景
  • 广州市 住房建设局网站龙华网站网页设计
  • 怎么搭建局域网网站吉林省建设厅网站杨学武
  • html5 wap网站模板动画河北邢台房价多少钱一平方
  • 视频网站开发策划书seo网络推广方法
  • 洛阳 网站建设公司哪家好学校如何重视校园网站建设
  • 网站建设工作落实情况福建省住房和城乡建设厅官网
  • 语言网站建设海外网站加速
  • 网站一般做几个关键词中国核工业第二二建设有限公司是国企吗
  • 网站建设管理策划书品牌全案策划案例
  • c 做网站的六大对象昆明网站设计制作公司
  • 城市建设理论研究收录网站网站建设办公
  • 上饶做网站家政公司在哪个平台推广效果好
  • 成都网站建设交易网站项目建设规划书案例
  • 怎样选择 网站建设网站双线选择
  • 网站个人备案材料现在建网站赚钱吗
  • wordpress站点地址写错做照片视频的网站
  • 做贷超网站 前期需要什么分析杨园建设社区网站
  • 成都论坛网站建设督查营商环境建设网站
  • 淘宝客网站开发 猪八戒晋城住房保障和城乡建设管网站
  • 公园网站建设方案做网站多少钱?