SAP Java Connector(JCo)

SAP Java Connector(JCo) SERVER是由java程序实现的一个远程RFC SERVER。要使用它,首先得在SAP 系统里为其注册(SM59)。JCO SERVER能够实现与SAP 系统的双向通信。

 

1、JCo的安装

      从 http://www.cnblogs.com/Files/byfhd/jco.rar 下载JCo,解压后将librfc32.dll和sapjcorfc.dll拷贝到WINNT"SYSTEM32下,将sapjco.jar加入项目的classpath中。

2、获取连接

 // 定义连接

    JCO.Client mConnection;

    // 建立连接对象

    mConnection = JCO.createClient("211", // SAP client

            "*", // userid

            "*", // password

            "EN", // language (null for the default language)

            "*", // application server host name

            "00"); // system number

    try {

        // 打开连接,调用功能模块,关闭连接

        mConnection.connect();

        System.out.println(mConnection.getAttributes());

        mConnection.disconnect();

    } catch (Exception e) {

        System.err.println("打开或关闭连接失败");

    }

2、操作

JCO.Repository jcoRep = new JCO.Repository("可任意字字符",mConnection);

    try{

IFunctionTemplate jcoFuncTemp = jcoRep.getFunctionTemplate("SAP中RFC名称");

        JCO.Function jcoFunc = jcoFuncTemp.getFunction();

        JCO.ParameterList jcoPara = jcoFunc.getImportParameterList();

        jcoPara.setValue(" ", "I_NAME");   //SAP RFC中的输入参数

        mConnection.execute(jcoFunc);

        JCO.Table table = jcoFunc.getTableParameterList().getTable("T_TABLE"); //SAP RFC中的TABLE

        String eReturn = jcoFunc.getExportParameterList().getValue("E_RETURN").toString();//SAP RFC中的输出参数

        JCO.Table etchanl = jcoFunc.getExportParameterList().getTable("ET_CHANL"); //SAP RFC输出参数

 

        for(int i = 0; i< table.getNumRows();i++){

            table.setRow(i);

            for(int j=0;j<table.getNumColumns();j++){

                String pr = table.getString(j);

                System.out.print(pr);

            }

            System.out.println();

        }

        System.out.println(etchanl.getNumRows());

    }catch(Exception e){

        e.printStackTrace();

    }  

4、释放连接


   JCO.releaseClient(mConnection);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值