SAP系统与FlexNet系统的接口设计

2016-03-13 08:52上汽通用东岳汽车有限公司信息系统部苏维玲上汽通用东岳汽车有限公司北厂孟庆军
电子世界 2016年13期
关键词:接口

上汽通用东岳汽车有限公司信息系统部 苏维玲上汽通用东岳汽车有限公司北厂 孟庆军



SAP系统与FlexNet系统的接口设计

上汽通用东岳汽车有限公司信息系统部 苏维玲
上汽通用东岳汽车有限公司北厂 孟庆军

【摘要】通过对FlexNet系统和业务需求的认知,以及对SAP系统要求的研究,制定了FlexNet系统同SAP系统接口方案。

【关键词】权限;接口;DN;SA;BAPI;BDC

一、引言

Flexnet系统是质量跟踪系统,Sap系统是目前企业使用的资源管理系统。为了将两个系统资源实现共享和产品跟踪,要用FLEXNET 系统进行货物发运的跟踪;为保证系统上线后和现在使用的SAP系统数据保持一致,需要将SAP系统中销售的产成品的相关信息下载,通过EAI接口传到FLEXNET系统作为FlexNet系统发货的依据,再对SAP系统进行改造开发。

二、权限更改和操作注意事项

Flexnet系统的应用需要与SAP进行数据的传递,为保证flexnet系统上线后,SAP系统和flexnet系统能够如期运行满足业务需要,保证SAP系统和flexnet系统的数据一致性,特对下面几点进行明确,具体体现在如下方面内容:

(1)权限变更:

为了避免SAP系统中对DN进行修改和删除,在SAP系统中用户原有的修改和删除权限将被限制,仅保留原有的创建 DN的权限;修改和删除权限会仅分配给KBU。

(2)如确实需对已下传到FlexNet的DN进行修改、删除,需要KBU与FlexNet用户或Flexnet系统管理员联系协调处理。这又分下面几种情况:1)对于尚未在FlexNet系统中发运的DN,SAP系统中的任何修改、删除都是可以的,保存后再次下传至FlexNet;2)对于已经在FlexNet发运的DN,不能在SAP中再对其物料和数量进行修改,当然也不能进行删除操作,所以创建DN需谨慎。3)对于实际发货的物料或数量与DN不匹配的情况(或者发现DN有误),请FlexNe发货员要第一时间跟KBU联系确认后再发货。以免出现上面B无法更改的情况。4)对于由于价格原因需要更改价格的情况,也不能随意删除DN了,删除的话也是需要KBU与FlexNe用户或系统管理员联系协调处理。5)对于退货流程的DN,不需将该DN下传FlexNet。FlexNet也follow其退货流程,将退货回来的零件做restatus等处理,但不涉及到库存管理。

(3)FlexNet上传SAP的XML文件中datestamp、timestamp一定是在FlexNet系统中真实发货时间也就是SAP post goods issue时间。

三、SAP系统中创建的DN下载到FlexNet系统

FlexNet和SAP 数据逻辑条件:

当用户在SAP中创建了DN 时,需要运行此程序选择‘Create’按钮将DN下传,当需要将尚未发运的DN从SAP系统中删除的话,用户不能直接在SAP系统中进行删除,也要运行此程序,根据屏幕输入条件输入DN后,选择Delete按钮。

该程序首先会根据用户的输入条件DN和Plant 来检查输入数据是否正确、存在。

如果不存在或不正确则提示“输入有误,”并中断;

判断该DN的LIKP-BEROT字段的值前两个字符是否是‘Gn OR gn OR GN’。如果不是则提示:‘该DN不是要下载的DN,请检查输入的DN号码’。并中断。

当用户在输入屏幕选中Create按钮时,会将‘A’附给ACDFlag,同时还要再判断该DN 是否已经下传过,如果已经下传过则提示:‘该DN已经下传了,请不要重复下传’并中断。

当Create 的DN 下传成功后,系统会提示‘下传成功’。

若选择Delete 按钮则ADCFlag值为‘D’,同时还要call VL02N对SAP 系统中的该DN 进行删除,为了保证SAP和FlexNet系统中数据的一致性,不允许用户直接通过VL02N在SAP中删除已经下传给FlexNet的DN。

四、DN确认并过账

FlexNet把对产品实际发运的信息生成XML文件,并把这个文件放到指定的服务器文件夹下,EAI会定时到这个文件夹下取文件并对文件内容进行编译。EAI会以编译后的数据作为输入参数来调用l SAP系统中的function来进行DN的过账。

1、接口的触发方式有2种:

(1)正常流程是通过设置后台作业在规定时间自动执行。(2)在特殊情况下可通过用户手动触发。.

2、程序的逻辑如下:

(1)读原文件数据到内表。(2)程序会检查DN (LIKP-VBELN) 是否存在。(3)然后程序根据DN号检查系统中的到达方(LIKP-KUNNR), 物料(LIPSMATNR), 和数量(LIPS -LFIMG) 以及工厂(LIPS-WERKS) 。(4)检查库存地(LIPS-LGORT)是否为空。(5)如果条件都匹配,程序会调用 VL02N 把实际发运日期作为系统中的actual GI date(LIKP-WADAT_IST),然后调用 BAPI ‘posting goods issue’过账。(6)程序执行完后,会生成LOG文件,这个文件包含成功信息和不成功信息,并放到目的地文件夹中。(7)在程序检查的过程中,发现任何问题,程序会报错并退出。

五、SAP系统中创建的SA 下载到FlexNet系统

下载程序基本功能要求:

根据用户输入的“销售组织”,“SA”从表VBAK中取出SA相关的字段,同时根据SA行项目中的物料编号从物料主数据表中取出相关的物料主数据字段。

该程序首先会根据用户的输入条件SA number 和销售组织来检查输入的SA是否存在表VBAK中和销售组织是否正确。

如果不存在或错误则提示“输入有误,”并中断;

如果存在,再检查输入的SA和销售组织是否匹配,

如果不匹配,则提示:“SA和销售组织不匹配”,并中断执行。

如果匹配,再判断字段 AUART值的后两位是否为‘ly’或‘LY’,如果是,继续;如果不是,则提示:‘请确认该SA的客户是否正确?(Y/ N)’默认为’N’,如果确认值为‘N’则终止,否则为‘Y’时程序继续。

当用户在输入屏幕选中Create按钮时,会将‘A’附给ACDFlag;如果选中Change 按钮则ACDFlag值为‘C’;若选择Delete 按钮则ADCFlag值为‘D’。

六、DN 生成并过账

1.程序首先检查SA和物料

1)如果FlexNet生成的文件中SA和物料都不为空,则继续进行下面的检查,如果为空,程序报错并跳出。 2)检查SA在系统中是否存在,如果不存在,则将错误信息写到内表中。如果存在,则程序继续再检查物料是否跟系统中SA的物料一致,如果不一致,则将报错并把错误信息写到内表中,如果一致 ,则程序继续。3)根据Vbeln WerksLgort Bolnr Matnr.对数量进行汇总检查和计算SA scheduleline的open 数量,如果open 数量是0,则报错并退出,否则程序继续。

2.创建DN并过账如果检查数据都没有错误,接下来程序Call BDC创建DN并进行过账。如果在调用BDC创建DN或过账的过程中有问题,则程序报错,并将错误信息保存到内表中。

备注:如果上载文件中一个行项目数据有问题,则整个上载文件中的数据都不执行。

七 总结

通过将SAP中已经存在的DN和SA以及其中的发运信息进行下载,并将EAI编译并传输到FlexNet系统;FlexNet根据接收到的DN或SA、物料和数量以及库位信息作为依据进行实物的发运。FlexNet对实物发运后会,将发运的DN、物料以及数量再传到EAI,EAI通过调用SAP中的程序对DN进行过账,或者SA的话创建DN再进行过账。从而实现了两个系统数据的共享,节约了系统资源,并且做到了帐物一致管理和产品销售发运的跟踪。

作者简介:

苏维玲(1972-),女,上汽通用东岳汽车有限公司信息系统部工程师。

孟庆军(1972-),男,上汽通用东岳汽车有限公司北厂电气工程师。

猜你喜欢
接口
现场采购代表与总部及现场各部门的接口关系
某电站工程设计管理与施工、质量控制接口关系研究
西门子SPPA—T3000在委内瑞拉燃机电厂中的应用与接口
高性能计算机管理软件基本原理研究
基于海洋石油XGIS平台组件式开发接口的研究与应用
基于HIS的体检软件设计与应用
中俄网络语言编码接口问题的研究
含有二氧化钛薄膜增强虚拟阀的微流控芯片用于二维凝胶电泳分离
经济法律系统与ERP、财务管控系统的业务应用集成在电力行业中的应用