SAP工具箱 自动生成发出接口程序(二 接口定义表)

点击蓝字 关注我们

前言

前文介绍了发出接口程序的执行原理及怎么自动生成发出接口程序.

详见链接无峰,公众号:ABAP 技巧与实战SAP工具箱 自动生成发出接口程序(一)

本文主要介绍生成发出接口程序时使用的基本配置表ZTIF002中的字段及用法

接口表定义表

接口定义表ZTIF002. 用来记录所有的接口信息,并通过特定的字段控制接口的行为.

01

JIEKNO

JIEKNO 接口编号

02

JIEKNM

JIEKNM 接口描述

03

01

请输入标题

EXSYS

EXSYS 外部系统

接口对应的外部系统.这里的接口不包含外部系统之间的接口. 只包含ECC/S4 和外部系统之间的接口.所以通过外部系统编码标识接口对应的外部系统(外部系统登记在表ZTIF001中)

04

JIEKNO_COMM

JIEKNO_COMM 通用接口编号

底层使用的接口编号. 比如外部系统传到ECC创建商品凭证接口,底层接口编号BC010, 该接口中也有个接口编号字段.用于区分不同业务:比如盘点接口使用MM120 报损业务 MM121 收货MM122 等.

这样可以通过接口编号区分不通的业务, 同时这些不同的业务实际上又使用了同一个底层接口传递商品凭证.

配置通用接口编号,以便ZIFLOG中能解析并查看消息内容

05

IFDIR

IFDIR 接口方向:I/O

I 入站 O 出站 该字段会影响通用编码转换逻辑:出站会使用字段域定义中的转换函数转出(比如去掉前置0),入站会使用字段域定义中的转换函数转入(比如添加前置0),接口方向一定不能定义错误.如果出现了不必要的转换, 可以使用一个不带域转换函数的域来定义数据,避免自动转换逻辑生效

自动转换逻辑调用了类方法

ZCL_DATA_HELPER=>AUTO_CONVERSION_EXIT_INPUT 和AUTO_CONVERSION_EXIT_OUTPUT

一般情况下,RFC函数创建的接口都是入站接口. 但是也可以把外部系统接口调用封装到一个RFC函数中给ECC系统调用, 此时该RFC函数是出站接口

06

IFTYP

IFTYP 接口类型(M 主数据 D 单据)

仅标记一下是主数据还是单据接口, 无实际控制作用. 主数据接口可能通过一个接口编号群发给多个系统. 单据接口不能群发,只会通过特定的接口编号发送或分发到一个系统

07

IFASY

IFASY 异步接口标记 标记接口是异步接口, 无标记则是同步接口. 一般同步接口无需通过PO. 异步接口必须通过PO.

08

MABIAO

MABIAO 是否码表接口(停用)

09

CHTAB

CHTAB 变化点记录的表(如果没有维护下传控制表,则按所有数据比较是否改变, 如果改变传输所有数据)

下传控制表的命名规则ZTIF<主表> .

比如商品主表 MARA 下传控制表 ZTIFMARA

采购订单主表EKKO  下传控制表 ZTIFEKKO

10

KEYFT

KEYFT 关键字过滤标记(停用)

11

MAXLN

MAXLN 每个消息最大传输的条目数

用于控制传出程序每个消息中的最大条目数,如果配置了该值并且选择屏幕中的最大条目数>该值,则替换成配置的最大条目数,如果没有配置,按程序选择屏幕中的设置

12

CONVERT_UNIT

CONVERT_UNIT 数量转换为基本单位数量(维护接口的商品/数量/单位的字段名, 用/分割).

在通用转换类方法

ZCL_DATA_HELPER=>AUTO_CONVERSION_EXIT_OUTPUT中会使用这个逻辑,用来把数量转换成基本单位数量. 这里维护接口中商品/数量/单位的字段名

比如: MATNR/MENGE/MEINS

这个转换逻辑用处不太大,一般的单据都有单据数量和基本数量. 比如交货单 LIPS-LFIMG 是单据数量  LIPS-LGMNG 是基本数量. 接口中可以直接传输LIPS-LGMNG.表示传输的基本单位数量.如果单据没有基本单位数量. 则可以通过这个配置执行数量转换.

13

ACTIV

ACTIV 接口活动标记

用于标记接口活动,没有设置该标记的接口无法执行(传出接口会报错并中断执行,传入接口会在SXI_MONITOR中报错),可以通过设置该字段为空停止传出或传入接口的执行.

14

ZQKTZ

ZQKTZ 账期可调整标记

影响小票/商品凭证相关接口

特定接口中实现该逻辑:如果发现单据中账期已经关闭,则调整为当前月的第一天.这样避免账期关闭而报错(该逻辑个别项目使用)

15

NODUP

NODUP 不检查单据重复

上传接口默认都会检查单据是否重复.允许通过配置取消重复性检查.

上传接口在PROXY中调用对应函数产生IDOC ,比如商品凭证调用函数Z_CREATE_IDOC_OF_MB产生商品凭证的IDOC

产生IDOC时通过函数Z_CHECK_IDOC_DUPLICATE检查IDOC是否重复产生.如果重复,调整IDOC的消息类型(EDIDC-MESTYP)为ERROR_DUP 这样后续执行IDOC时报错.

通过如下字段检查重复性

  • EDIDC-REFINT  接口编号

  • EDIDC-RCVPRN  合作伙伴(客户或逻辑系统)

  • EDIDC-SNDLAD  外部单号

  • EDIDC-SNDSAD  地点

  • EDIDC-REFMES  外部单号对应多个IDOC时,添加识别序号

16

WDATA

WDATA 接口内容记录在表 ZTIF_LOG_DATA中

标记后的RFC函数的传入参数和传出参数内容会写入表ZTIF_LOG_DATA中. 后续可以通过ZIFLOG查询内容.对于使用PO的接口,该字段无意义.

17

WIFLOG

WIFLOG 写入接口控制日志表ZTIF_LOG标记.

通过程序ZIFLOG可以监控接口的执行情况及接口传输的数据内容

18

JKTYP

JKTYP 地点库位检查(单据类接口的地点库位检查逻辑)

单据类的接口有时需要按地点/库位识别该单据是否需要通过特定接口传输.

  • 空 地点/库位检查维护的服务器对应的系统ID与接口的系统ID一致. 如果地点/库位.在字段在单据记录下传控制表的保存函数中使用.

  • A 地点/库位检查T001L-ZWHSY 非空(WMS接口)

  • B 地点/库位检查t001l-ZZXS = 'A'(线上系统接口)

  • C 地点/库位检查T001L-ZZSX = 'Z'(中台系统接口)

  • D 不执行地点/库位检查

19

TZMSG

TZMSG 消息通知类接口标记

因为使用了接口体系在单据保存时记录了需要自动发送的邮件信息,所以需要标记一下该接口是消息通知类,这样在单据保存时,会写入表 ZTMSG_H/ZTMSG_I 后续通过程序ZREP_SEND_MAIL_1                邮件发送程序 统一发送邮件

比如交货单过账后,邮件通知相应的人员给交货单已经过账(物流已经发出货物)

20

SYSCT

SYSCT 群发系统数(涉及外围系统的服务器个数)

当主数据群发的时候, 每个接收系统都需要有一个成功的反馈,为了确保所有系统都成功的收到.需要用成功反馈的个数和系统个数比较,如果成功反馈的个数>=系统个数,才会认为所有的系统都接收到了. 才能够标记数据发送成功(体现在下传控制表RSTATUS字段 比如ZTIFMARA-RSTATUS . 同时ZIFLOG在界面也会显示(消息成功响应标记 FLAG_ACK = 'X' )

如果未设置,视同为1处理

关于系统消息的反馈详见链接无峰,公众号:ABAP 技巧与实战PO系列之 消息的确认反馈

21

SAVE_PROC_LOG

SAVE_PROC_LOG 写入下传控制表过程记录日志(单据)

对于单据类的接口, 单据在保存时根据过滤条件写入下传控制表. 这个标记用来控制是否把过滤的过程写入标准日志. 如果标记了. 可以使用TCODE SLG1 查询对象ZIF 获取日志信息,查看单据没有写入下传控制表的原因

22

FUNCNAME

FUNCNAME 函数名

如果是RFC函数定义的同步接口,可以在此维护一个函数名, 如果函数名为空, 默认会按照命名规则Z_IF_<接口编号> 生成一个函数名. 在监控程序ZIFLOG中使用. 通过函数名读取函数的参数信息,以便读取保存的参数值呈现出来

23

DPATH

DPATH 下载路径/发布的webservice

特殊情况下使用.

对于传出接口,用于记录对方的服务调用路径.

比如外围系统发布了一个服务 http://testwb.xx.cn/<动态部分> .PO调用对方服务的时候,需要通过接口传输的动态路径拼出最终调用的服务路径

对于传入接口, 则用于记录PO产生的webservice的wsdl定义地址或http调用地址

24

PREFIX

PREFIX 文件名前缀

对于文件类接口(不通过PO),记录该文件名的前缀.

25

MAILADD

MAILADD 邮箱地址(停用)

26

LIFNR_FLAG

LIFNR_FLAG 供应商转换标记

把对方传输的外部供应商编码转换成SAP供应商,外部供应商编号记录在but000-bpext中

转换逻辑写在底层转换方法

ZCL_DATA_HELPER=>AUTO_CONVERSION_EXIT_INPUT中

27

WERKS_FLAG

WERKS_FLAG 地点转换标记

把对方传输的外部地点编码转换成SAP地点编码,外部地点编码记录在T001W-ZJMDH中

转换逻辑写在底层转换方法

ZCL_DATA_HELPER=>AUTO_CONVERSION_EXIT_INPUT中

28

DISP_METHOD

DISP_METHOD接口发送特性(停用)

29

CAN_COMPARE

CAN_COMPARE 接口可比较标记(单据类的可以通过ZIF_COMPARE比较单据的发出,收到情况)

单据类的接口在发出或者接收时会根据配置写入表 ZTIF_COMPARE中. 然后外部系统通过接口BC000传回单据的接收或发送信息. 这样表ZTIF_COMPARE中对于ECC发出的单据或者ECC接收的单据就会记录完整的发出,接收信息.

通过报表ZIF_COMPARE可以监控单据的发出接口情况. 对于只有发出,没有接收的单据需要检查是否因为PO的原因或者其它原因没有传输到目标系统. 有利于快速发现传输失败的单据.

总结

自动生成发出接口程序和传入接口模板要求接口编号必须登记在接口定义表中. 这样就可以通过该表查看系统中的所有接口信息.

接口定义表对传出接口和传入接口都有控制作用.

接口定义表中整合了许多和接口相关的控制信息,这些控制方式在不同的项目中提出并整合到这个表中. 有些控制有通用价值,得以保留,有些没有通用价值,逐渐废弃.

THE

END

约定

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,616评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,020评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,078评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,040评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,154评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,265评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,298评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,072评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,491评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,795评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,970评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,654评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,272评论 3 318
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,985评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,223评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,815评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,852评论 2 351

推荐阅读更多精彩内容