java sap rfc
来源:互联网 发布:纹身遮盖膏 防水 知乎 编辑:程序博客网 时间:2024/04/27 06:55
java 的设置:
从 http://www.cnblogs.com/Files/byfhd/jco.rar 下载JCo,解压后将librfc32.dll和sapjcorfc.dll拷贝到WINNT"SYSTEM32下,将sapjco.jar加入项目的classpath中。
package JOC;
import com.sap.mw.jco.*;
import com.sap.mw.jco.JCO;
import com.sap.mw.jco.IFunctionTemplate;
public class JOC {
public void getTest()
{
JCO.Client mConnection;
JCO.Client client ;
try {
mConnection = JCO.createClient("811", // SAP client
"***", // userid
"***", // password
"***", // language
"***", // server host name
"***"); //system ber
mConnection.connect();
JCO.Repository mRepository;
mRepository = new JCO.Repository("ARAsoft", mConnection);
IFunctionTemplate ft = mRepository.getFunctionTemplate("Function name");
JCO.Function function = ft.getFunction();
JCO.ParameterList input = function.getImportParameterList();
//设置参数,参数名为第二个参数,参数值为第一个参数,
// input.setValue("SAP", "EXTCOMPANY");
// input.setValue("TEST", "EXTPRODUCT");
// input.setValue("XBP","INTERFACE");
// input.setValue("1.0","IVERSION");
// input.setValue("Z_QQ_TEST", "JOBNAME");
// input.setValue("TEST", "EXTERNAL_USER_NAME");
// client.execute(function);
mConnection.execute(function);
JCO.ParameterList export = function.getExportParameterList();
//得到传出参数
mConnection.disconnect();
} catch (Exception ex) {
System.out.print(ex);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
JOC t = new JOC();
t.getTest(); }
}
sap 端: 建FUNCTION MODULE
FUNCTION ZQQ_RFC.
*"----------------------------------------------------------------------
*"*"Local interface:
*" TABLES
*" RELOG STRUCTURE TBTC5 OPTIONAL
*"----------------------------------------------------------------------
*??????
DATA:jobname TYPE bapixmjob-jobname,
jobcount TYPE bapixmjob-jobcount,
sessionid TYPE bapixmlogr-sessionid,
return TYPE bapiret2,
stepcount TYPE bapixmjob-stepcount,
jobhead TYPE bapixmjob,
steptable TYPE bapixmstep OCCURS 0.
DATA:g_stamp TYPE timestampl.
*????????Job???
GET TIME STAMP FIELD g_stamp.
jobname = 'TEST1'.
login xMI,
CALL FUNCTION 'BAPI_XMI_LOGON' DESTINATION 'NONE'
EXPORTING
extcompany = 'SAP'
extproduct = 'TEST' "extProduct
interface = 'XBP' "Interface
version = '1.0' "IVersion
IMPORTING
sessionid = sessionid
return = return
EXCEPTIONS
system_failure = 1
communication_failure = 2
OTHERS = 99.
IF sy-subrc NE 0.
MESSAGE a002(sy) WITH 'BAPI_XMI_LOGON is failure'.
ENDIF.
create jOB
CALL FUNCTION 'BAPI_XBP_JOB_OPEN' DESTINATION 'NONE'
EXPORTING
jobname = jobname
external_user_name = 'TEST'
IMPORTING
jobcount = jobcount
return = return.
IF sy-subrc NE 0.
MESSAGE a002(sy) WITH 'BAPI_XBP_JOB_OPEN is failure'.
ENDIF.
(add ABAP PROGRAM to JOB)
CALL FUNCTION 'BAPI_XBP_JOB_ADD_ABAP_STEP' DESTINATION 'NONE'
EXPORTING
jobname = jobname
jobcount = jobcount
external_user_name = 'TEST'
abap_program_name = 'ZTEST_2'
* abap_variant_name = 'V1'
* SAP_USER_NAME = SY-UNAME
* LANGUAGE = SY-LANGU
* PRINT_PARAMETERS =
* ARCHIVE_PARAMETERS = ' '
* IMPORTING
step_number = stepcount
return = return
.
IF sy-subrc NE 0.
MESSAGE a002(sy) WITH 'BAPI_XBP_JOB_ADD_ABAP_STEP is failure'.
ENDIF.
CREATE JOB OVER
CALL FUNCTION 'BAPI_XBP_JOB_CLOSE' DESTINATION 'NONE'
EXPORTING
jobname = jobname
jobcount = jobcount
external_user_name = 'TEST'
* TARGET_SERVER =
IMPORTING
return = return
.
IF sy-subrc NE 0.
MESSAGE a002(sy) WITH 'BAPI_XBP_JOB_CLOSE is failure'.
ENDIF.
EXECUTE JOB
CALL FUNCTION 'BAPI_XBP_JOB_START_IMMEDIATELY' DESTINATION 'NONE'
EXPORTING
jobname = jobname
jobcount = jobcount
external_user_name = 'TEST'
* TARGET_SERVER = ''
IMPORTING
return = return
.
IF sy-subrc NE 0.
MESSAGE a002(sy) WITH 'BAPI_XBP_JOB_START_IMMEDIATELY is failure'.
ENDIF.
GET JOB INFORMATION
CALL FUNCTION 'BAPI_XBP_JOB_DEFINITION_GET' DESTINATION 'NONE'
EXPORTING
jobname = jobname
jobcount = jobcount
external_user_name = 'TEST'
IMPORTING
job_head = jobhead
return = return
TABLES
step_tbl = steptable.
*
LOGOUT XMI.
call function 'BAPI_XMI_LOGOFF'
exporting
interface = 'XBP'
importing
return = return.
if sy-subrc ne 0.
message a002(sy) with 'BAPI_XMI_LOGOFF is failure'.
endif.
**** GET JOB LOG 要和这个FUNCTION MODULE 分开写
CALL FUNCTION 'BP_JOBLOG_READ'
EXPORTING
CLIENT = SY-MANDT
JOBCOUNT = jobcount
JOBLOG = ' '
JOBNAME = jobname
TABLES
joblogtbl = RELOG
EXCEPTIONS
CANT_READ_JOBLOG = 1
JOBCOUNT_MISSING = 2
JOBLOG_DOES_NOT_EXIST = 3
JOBLOG_IS_EMPTY = 4
JOBLOG_NAME_MISSING = 5
JOBNAME_MISSING = 6
JOB_DOES_NOT_EXIST = 7
OTHERS = 8
.
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFUNCTION.
- java sap rfc
- SAP Java Connector(JCo) RFC
- JAVA 与SAP RFC连接
- java调用SAP RFC函数
- Java 调用SAP RFC函数
- java调用SAP RFC函数
- java调SAP RFC接口
- SAP RFC-RFC概述
- SAP RFC
- SAP RFC
- SAP RFC
- SAP RFC
- SAP RFC
- JAVA+FLEX与SAP RFC连接
- java 调用SAP RFC函数错误信息集锦
- java调用SAP RFC函数 2
- Java中连接SAP进行RFC调用
- JAVA调用SAP端RFC接口
- IBM DB2 Content Manager 安全模型要点
- ASP.NET程序中常用的三十三种代码
- IBM AIX V5.3 系统管理(Test 222)认证指南系列,第 5 部分:问题的确定和解决(上)
- 构建 SOA 组合业务服务专题
- JavaScript的Base对象与Body对象
- java sap rfc
- 什么是八心八箭
- 新型 SQL 截断攻击和防御方法
- RH EL5 内置apache+tomcat5整合测试笔记(VM测试)
- 清除sql密码及获得asp连接SQL默认的用户名和密码的方法
- 文件上传(引CSDN)
- 常用log4j配置
- ul具有最小高度和自动延伸高度的css设置
- 需求调研中有效沟通系列--如何聆听?