ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:476.72KB ,
资源ID:6342725      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6342725.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(JCO与BAPI学习小节Word文档下载推荐.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

JCO与BAPI学习小节Word文档下载推荐.docx

1、1)事务码BAPI:BAPI Explore2)双击Function module,可以浏览实现BAPI的功能模块。3)在该界面,可以浏览该BAPI的IMPORT、EXPORT、TABLE参数,以及功能模块的相关文档。4)事务码:bwo2:Business Object Browser5)选中业务对象Salesorder,可以以面向对象的方式进行浏览。(注:其中只有蓝色的方法是有BAPI实现的,红色的方法不提供BAPI实现)6)BAPI测试工具,(点下图中注释的界面)7)该界面可以输入测试数据,测试相关的BAPI。1.3 BAPI使用方法在ABAP中调用BAPI的方法与调用Function M

2、odule的方法相同。只是要注意BAPI函数没有Exception,调用是否成功是通过参数return返回的。该return参数在不同的BAPI中结构不同,可能是structure,也可能是table,编程时要注意。下面的程序是ABAP中调用BAPI_SALESORDER_CREATEFROMDAT2的例子。注意:1 创建时,订单类性等参数必须使用德语代码2 必须调用BAPI_TRANSACTION_COMMIT完成整个事务。3 某些数据必须用辅助结构(负责确定所要更新的数据位)完成数据更新。(如ORDER_ITEMS_IN和ORDER_ITEMS_INX)* Order header:* -

3、 Order type: OR Important you must use the german code TA* - Sales org: 1000* - Distrb. chan.: 10* - Division: 00* - Sold to party: 1032* - Ship to party:* - Purch order: DG-19970626-3* Order item:* - Material: P-100* - Qty: 1DATA:* Order partners LI_ORDER_PARTNERS TYPE STANDARD TABLE OF BAPIPARNR,

4、L_ORDER_PARTNERS LIKE BAPIPARNR,* Structures for order header L_ORDER_HEADER_IN LIKE BAPISDHD1, L_ORDER_HEADER_INX LIKE BAPISDHD1X,* Tables for order items LI_ORDER_ITEMS_IN TYPE STANDARD TABLE OF BAPISDITM, L_ORDER_ITEMS_IN LIKE BAPISDITM, LI_ORDER_ITEMS_INX TYPE STANDARD TABLE OF BAPISDITMX, L_ORD

5、ER_ITEMS_INX LIKE BAPISDITMX,* Return table from bapi call LI_RETURN TYPE STANDARD TABLE OF BAPIRET2, L_RETURN TYPE BAPIRET2,* Sales document number L_VBELN LIKE BAPIVBELN-VBELN,* Error flag L_ERRFLAG(1) TYPE C.START-OF-SELECTION.*-* Build partner information CLEAR L_ORDER_PARTNERS. L_ORDER_PARTNERS

6、-PARTN_ROLE = AG. Remember German codes ! L_ORDER_PARTNERS-PARTN_NUMB = 0000001000. APPEND L_ORDER_PARTNERS TO LI_ORDER_PARTNERS.* Build order header* Update flag L_ORDER_HEADER_INX-UPDATEFLAG = I* Sales document type L_ORDER_HEADER_IN-DOC_TYPE = TA L_ORDER_HEADER_INX-DOC_TYPE = X* Sales organizatio

7、n L_ORDER_HEADER_IN-SALES_ORG = 1000 L_ORDER_HEADER_INX-SALES_ORG = * Distribution channel L_ORDER_HEADER_IN-DISTR_CHAN = 10 L_ORDER_HEADER_INX-DISTR_CHAN = * Division L_ORDER_HEADER_IN-DIVISION = 00 L_ORDER_HEADER_INX-DIVISION = * Purchase order L_ORDER_HEADER_IN-PURCH_NO_C = DG-19970626-300-FLC L_

8、ORDER_HEADER_INX-PURCH_NO_C = * Build order item(s) - Only 1 is used in this example* L_ORDER_ITEMS_IN-ITM_NUMBER = 000010 L_ORDER_ITEMS_INX-ITM_NUMBER = L_ORDER_ITEMS_IN-MATERIAL = P-100 L_ORDER_ITEMS_INX-MATERIAL = L_ORDER_ITEMS_IN-TARGET_QTY = 3.000 L_ORDER_ITEMS_INX-TARGET_QTY = L_ORDER_ITEMS_IN

9、-COMP_QUANT = 3 . L_ORDER_ITEMS_INX-COMP_QUANT = APPEND L_ORDER_ITEMS_IN TO LI_ORDER_ITEMS_IN. L_ORDER_ITEMS_INX-UPDATEFLAG = APPEND L_ORDER_ITEMS_INX TO LI_ORDER_ITEMS_INX.* CALL Bapi CALL FUNCTION BAPI_SALESORDER_CREATEFROMDAT2 EXPORTING ORDER_HEADER_IN = L_ORDER_HEADER_IN ORDER_HEADER_INX = L_ORD

10、ER_HEADER_INX IMPORTING SALESDOCUMENT = L_VBELN TABLES RETURN = LI_RETURN ORDER_ITEMS_IN = LI_ORDER_ITEMS_IN ORDER_ITEMS_INX = LI_ORDER_ITEMS_INX ORDER_PARTNERS = LI_ORDER_PARTNERS.END-OF-SELECTION.* Check and write Return table CLEAR L_ERRFLAG. WRITE: / Sales dcoument: , L_VBELN. LOOP AT LI_RETURN

11、INTO L_RETURN. / L_RETURN-TYPE, L_RETURN-MESSAGE(50). IF L_RETURN-TYPE = E L_ERRFLAG = ENDIF. ENDLOOP.* No errors - CommitCLEAR L_RETURN. IF L_ERRFLAG IS INITIAL.BAPI_TRANSACTION_COMMIT RETURN = L_RETURN . WRITE : / L_RETURN-TYPE , L_RETURN-MESSAGE .2. JCO的使用 JCO简介JCO是Java Connector的简称,它封装了JAVA-enab

12、led RFC,实现了基于RFC的BAPI与JAVA接口。它提供结构化的BAPI调用,目前不支持面向对象的开发。 JCO使用1) 类导入import com.sap.mw.jco.*;2) 建立R3连接,有两种方法:a持久连接/申明连接JCO.Client mConnection;/ 初始化连接mConnection =JCO.createClient(001, / SAP client, / userid*, / passwordEN, / language (null for the default language)hostname, / application server host

13、name00); / system number/建立连接try mConnection.connect();catch (Exception ex) ex.printStackTrace();System.exit(1);/关闭连接mConnection.disconnect();b连接池方式static final String POOL_NAME = Pool;JCO.Pool pool = JCO.getClientPoolManager().getPool(POOL_NAME);if (pool = null) OrderedProperties logonProperties =O

14、rderedProperties.load(/logon.propertiesJCO.addClientPool(POOL_NAME, / pool name5, / maximum number of connectionslogonProperties); / propertiesmConnection = JCO.getClient(POOL_NAME);System.out.println(mConnection.getAttributes();。finally JCO.releaseClient(mConnection);3)获得BAPI方法JCO.Repository mRepos

15、itory;mRepository = new JCO.Repository(ARAsoft, mConnection);IFunctionTemplate ft =trymRepository.getFunctionTemplate(“BAPI_SALESORDER_GETSTATUS”);throw new Exception(Problem retrieving JCO.Function object. / Create a function from the template jcoFunction = new JCO.Function(ft);4)设定输入参数 JCO.Field S

16、alesDocumentField = jcoFunction.getImportParameterList().getField(SALESDOCUMENT SalesDocumentField.setValue(iSalesDocument);5)执行BAPImConnection.execute(jcoFunction);6)处理“return”参数JCO.Structure jcoBapiReturn = jcoFunction.getExportParameterList().getStructure(RETURN if (jcoBapiReturn.getField(TYPE).g

17、etValue().toString().equals(E) throw new Exception();7) 获得返回值JCO.Table jcoStatusInfo = jcoFunction.getTableParameterList().getTable(STATUSINFO8)最后是异常的捕获与处理 JCO开发建议基于JAVA语言的特征,建议以如下的方式开发JCO应用。1) 主要的类:输入参数封装到java bean类中,并统一进行有效性检查。针对所要调用的BAPI建立代理类,将BAPI的业务功能封装起来。建立一个解释类,负责调用业务功能类,并将参数从java beans传递到业务功能类。2) 流程:

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2