IDOC配置手册.docx

上传人:b****6 文档编号:4295421 上传时间:2022-11-29 格式:DOCX 页数:27 大小:751.28KB
下载 相关 举报
IDOC配置手册.docx_第1页
第1页 / 共27页
IDOC配置手册.docx_第2页
第2页 / 共27页
IDOC配置手册.docx_第3页
第3页 / 共27页
IDOC配置手册.docx_第4页
第4页 / 共27页
IDOC配置手册.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

IDOC配置手册.docx

《IDOC配置手册.docx》由会员分享,可在线阅读,更多相关《IDOC配置手册.docx(27页珍藏版)》请在冰豆网上搜索。

IDOC配置手册.docx

IDOC配置手册

IDOC配置手册

1.自建IDOC类型

1.1首先创建用来记录增量发送时间戮的自建表ZIDOC_LOG,结构如下图:

通过自建表来记录IDOC发送的时间戳,有一定的漏单危险,推荐每次取值设置的时间为当前时间往前一段时间来避免因为多次IDOC发送过程中遗漏的记录。

假如想统计或查询已发记录,可以通过自建表来保存已发送信息。

1.2WE31定义自定义段ZMKAL(用于自定义IDOC类型发布生产版本),开发完成后可设置批准,表示开发完成,如需修改则需要取消批准。

1.3WE30定义基本类型ZMKAL_IDOC,将刚才定义的段ZMKAL挂在此类型下,开发完成后可设置版本,表示开发完成,如需修改则需要取消发布。

1.4WE81定义消息类型MKAL_IDOC。

1.5WE82把基本类型MKAL_IDOC分配给消息类型MKAL_IDOC。

1.6定义自定义IDOC类型所需的结构ZMKAL_LINE。

表结构,ZMKAL_TYP,对应行类型结构为ZMKAL_LINE

1.7创建发送生产版本IDOC用的函数:

ZMKAL_IDOC_SEND,

源代码如下,参数、异常定义见函数开头说明

FUNCTION zmkal_idoc_send .

*"----------------------------------------------------------------------

*"*"Local interface:

*"  TABLES

*"      ZMKAL TYPE  ZMKAL_TYP

*"  EXCEPTIONS

*"      NO_IDOC

*"      NO_MODEL

*"----------------------------------------------------------------------

*variables of general interest

  DATA:

*control record for the IDoc

  idoc_control LIKE edidc,

*data records for the IDoc

  t_idoc_data LIKE edidd OCCURS 0 WITH HEADER LINE,

*table for the IDocs created by MASTER_IDOC_CONTROL

  t_comm_control LIKE edidc OCCURS 0 WITH HEADER LINE,

*partner type for logical system

  c_partner_type_logical_system LIKE edidc-rcvprt,

*help variable for the check if an IDoc has to be created

  h_create_idoc.

* variables specific for this example

  DATA:

*       field strings with IDoc segment structure

        e1xmkal TYPE zmkal_line,

*       data to be put to the control record

        c_message_type LIKE edidc-mestyp VALUE 'ZMKAL_IDOC',

        c_base_idoc_type LIKE edidc-idoctp VALUE 'ZMKAL_IDOC',

*       segment types to be put to the data record table

        c_header_segtyp LIKE edidd-segnam VALUE 'ZMKAL'.

* check if an IDoc has to be created, read the distribution model

  CALL FUNCTION 'ALE_MODEL_DETERMINE_IF_TO_SEND'

       EXPORTING

            message_type           = c_message_type

*         SENDING_SYSTEM         = ' '

*         RECEIVING_SYSTEM       = ' '

*         VALIDDATE              = SY-DATUM

       IMPORTING

            idoc_must_be_sent      = h_create_idoc.

*    exceptions

*         own_system_not_defined = 1

*         others                 = 2.

  IF h_create_idoc IS INITIAL.

    raise no_model.

*   no message flow maintained in the model, nothing to do

    EXIT.

  ENDIF.

* put the application header record to the IDoc

  LOOP AT zmkal.

    MOVE-CORRESPONDING zmkal TO e1xmkal.

* append record to IDoc data table

    t_idoc_data-segnam = c_header_segtyp.

    t_idoc_data-sdata = e1xmkal.

    APPEND t_idoc_data.

  ENDLOOP.

  idoc_control-mestyp = c_message_type.

  idoc_control-idoctp = c_base_idoc_type.

  CALL FUNCTION 'MASTER_IDOC_DISTRIBUTE'

* in update task   "if application document is posted in update task

       EXPORTING

            master_idoc_control            = idoc_control

       TABLES

            communication_idoc_control     = t_comm_control

            master_idoc_data               = t_idoc_data

       EXCEPTIONS

            error_in_idoc_control          = 1

            error_writing_idoc_status      = 2

            error_in_idoc_data             = 3

            sending_logical_system_unknown = 4

            OTHERS                         = 5.

* A commit work has to be done. It could also be done in the calling

* application.

  COMMIT WORK.

  READ TABLE t_comm_control INDEX 1.

  IF sy-subrc <> 0.

    raise no_idoc.

* no IDoc was created, you can react here, if neccessary

  ENDIF.

ENDFUNCTION.

1.8程序中通过自建时间戳表来抓取增量数据,并调用函数zmkal_idoc_send。

传递数据表,生成IDOC。

2.扩展标准IDOC

2.1新建ZE1PLPOL_TEXT(用于扩展工艺路线IDOC基本类型,增加描述文本)

2.2创建扩展类型ZLOIROU02

衔接扩展到基本类型LOIROU02

选中段E1PLPOL,点击新建,将之前创建的段类型扩展至该段下。

2.3WE82将基本类型、扩展关联起来,通过定位查找基本类型LOIROU。

选中我们要扩展的行点复制

输入扩展类型ZLOIROU02

填充数据则需要通过前台发送TCODE,找到其相应的出口,进行填充扩展的数据。

3.创建接口端口和逻辑系统

3.1WE21,选择端口类型后点新建按钮

这里创建文件类型,idoc将保存到服务器上指定目录

3.2配置接收/发送IDOC系统

事物代码:

SALE

定义逻辑系统:

输入一个逻辑系统名及其描述:

定义rfc目标系统

以目标系统为sap系统为例:

选择创建新RFC链接

名称、描述和逻辑系统名一样,并输入地址/系统编号等

在登录标签页输入集团号、用户名、密码

保存退出

4.配置分布模型和伙伴参数

4.1维护分布模型和分布视图

创建一个模型试图,输入一个描述及其名称

选中新创建的视图,点击添加消息类型

输入发送方为当前SAP系统,接收方为目标系统(逻辑系统名),并填写消息类型LOIROU(工艺路线)

添加如下消息类型:

BOMMATBOM:

物料BOM

CREMAS供应商主数据分配

DEBMAS客户主数据分配

LOIBOM物料清单

LOIPLO计划订单

LOIROU路由

MATMAS物料主数据

ZMKAL_IDOCProductVersionIDOC

点击菜单中的生成伙伴参数文件

点击执行

退回之前屏幕可以点击更改伙伴参数文件来查看刚才生成的结果并适当修改,将目标端口改为ZFILE(XML格式则为ZXML),以将IDOC存为文件或XML

WE20,双击对应的消息类型

修改接收方端口

如果有扩展,则在扩展一项里输入扩展消息类型

5.激活指针

5.1完成了ALE模型配置,我们需要增量发送主数据(物料、供应商、客户、BOM)所以需要激活修改指针

BD50

选中需要通过增量发送的消息类型

BOMMATBOM:

物料BOM

CREMAS供应商主数据分配

DEBMAS客户主数据分配

MATMAS物料主数据

SALE配置筛选(限制工厂等条件)

6.设置筛选器

选择维护模型

双击筛选器

双击工厂填入值来限制工厂

确定即可

如果需要可以点击创建筛选组,来实现对不同情况下应用不同筛选条件

完成配置。

可以通过程序发送IDOC了

参见IDOC发送方法

7.异常处理

产生的IDOC可能会失败

状态02:

处理T-CODE:

BD83

状态30:

处理T-CODE:

WE14

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学研究 > 教学计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1