点击蓝字 关注我们

前言

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

详见链接

无峰,公众号: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

约定

如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.

(如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.)

公众号 : syjf1976_abap

          ABAP开发技巧

微信号 : 392077

请微信联系管理员:

  • syjf1976

  • sharry_xlp

  • Yannick_Duan

申请进入公众号讨论群提问或参与话题讨论

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

  1. SAP工具箱 自动生成发出接口程序(三 配置表)

    点击蓝字 关注我们 一 前言 前文讲了自动生成发出接口程序的基本操作及接口定义表的用处 详见链接 无峰,公众号:ABAP 技巧与实战SAP工具箱 自动生成发出接口程序(一) 详见链接 无峰,公众号:A ...

  2. Java生成微信小程序二维码

    Java生成微信小程序二维码 import java.io.BufferedInputStream; import java.io.BufferedReader; import java.io.Byt ...

  3. MyBatis自动生成实体类、DAO接口和Mapping映射文件的代码(逆向工程)

    MyBatis属于一种半自动的ORM框架,它需要程序员自己编写sql语句和映射文件,但是编写映射文件和sql语句很容易出错,所以mybatis官方提供了Generator生成器,自动生成DAO接口.实 ...

  4. Java生成微信小程序二维码,5种实现方式,一个比一个简单

    文章目录 前言 先看官网 一.JDK自带的URLConnection方式 二.Apache的HttpClient方式 三.okhttp3方式 四.Unirest方式 五.RestTemplate方式 ...

  5. 【java】Java生成微信小程序二维码

    文章目录 前言 应用场景 微信小程序官网 1.RestTemplate方式 核心代码 getAccessToken 2. Unirest方式 Maven依赖 核心代码 3. okhttp3方式 Mav ...

  6. 生成微信小程序二维码(携带参数跳转指定页面)

    需求:生成微信小程序二维码并携带参数,扫码跳转指定页面 获取WxMaService对象 WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl ...

  7. 实体类dao接口mysql_利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件...

    解决问题: 可利用MyBatis生成器自动生成实体类.DAO接口和Mapping映射文件. 测试环境准备: 新建一个mysql数据库,例如mungerzTest. 生成一张主键为自增ID的学生表: C ...

  8. 选择产品套餐自动生成报价小程序开发制作

    选择产品套餐自动生成报价小程序开发制作 按照客户需求选择广告服务套餐自动生成报价小程序开发制作具体的功能: 1.选择套餐后,显示固定内容供选择: 2.产品的选择上有金额限制和部分服务多选少的限制,需要 ...

  9. 大论文 自动生成标题目录、图目录和表目录

    大论文 自动生成标题目录.图目录和表目录 到了写大论文的时间啦,结果卡在了目录生成这里,各种小问题,网上找了找,没有一个较为系统地说明,花费了一些时间,在这里系统地介绍一下. 标题目录自动生成 1.刚 ...

最新文章

  1. ServletJSP学习笔记--导航
  2. 与姬十三探讨如何42天搞定2500万美金投资,创业秘密都在这里
  3. Spring 自动装配模式之构造函数装配方式
  4. String | 263. Ugly Number
  5. java get set 注解_java技能提升,用Lombok甩掉get和set,让代码变得更简洁
  6. 职场新鲜人必读:那些被“误读”的真经
  7. 求英语单词第一个交集
  8. Debian Ubuntu/Centos7设置某些软件不自动更新
  9. paip.提升安全性----Des加密 java php python的实现总结
  10. java设置环境变量jre_JRE环境变量配置图解
  11. JAVA实现126邮箱发送及部署后发送邮箱报错问题
  12. 添加引用提示:未能找到引用的组件“XXX”。未能加载类型库。加载类型库/DLL 时出错。...
  13. INA230测量电压电流功率
  14. R语言实现决策树和朴素贝叶斯分类预测,并比较准确度(含数据集)
  15. 84键键盘没有insert键
  16. python 相关性检验_Python中的相关分析correlation analysis的实现
  17. android app后台收不到消息,不打开智能关怀App收不到手表发的消息
  18. linux中more是什么命令,linux系统more命令
  19. 基于遥感的大蒜种植面积量测
  20. 60行代码爬取知乎神回复,笑到停不下来

热门文章

  1. harmonyos2.0刷机包,harmonyos2.0怎么刷机 harmonyos2.0刷机教程
  2. java 获取邮编_JAVA爬取邮编信息,生成XML
  3. Python-函数应用
  4. 2010年,哪些智能手机很热门?
  5. delete请求数据详解
  6. EXCEL技巧2:EXCEL中的数组公式
  7. SRIO学习(二)——SRIO结构
  8. REBOL的HelloWorld
  9. 统一身份认证登录详细介绍-identity4
  10. 小程序video隐藏控件