IBM i:SRVPGM LIBSAPNRFC的激活将创建丢失的QINLINE Joblog

2020-08-25 22:57发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)在IBM i上,当我在绑定了服务...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


在IBM i上,当我在绑定了服务程序LIBSAPNRFC(SAP NetWeaver RFC SDK 7.50)的交互式作业中调用ILE CL程序时,它将显示消息"按ENTER结束终端会话"。 回收ILE程序的激活组之后。

当我在批处理作业(SBMJOB)中调用此ILE程序时,作业日志中将包含消息CPF4101:

到模块。 。 。 。 。 。 。 。 。 :QC2SMOPN
转至步骤。 。 。 。 。 。 。 :_C DM打开文件
Statement。 。 。 。 。 。 。 。 。 :10
Message。 。 。 。 :库* LIBL中找不到文件QINLINE或缺少内联数据
文件。
原因。 。 。 。 。 :文件未打开。 原因代码为03。
原因代码及其含义如下:01-库不存在。 02-该文件不存在。 该库确实存在。 03-文件
不存在。 指定为* LIBL的库。 04-文件已保存

我可以避免这些消息吗?

我知道我可以对虚拟文件执行OVRDBF STDIN。 但是如果没有OVRDBF,我可以避免这种情况吗?

我正在使用SAP NetWeaver RFC SDK 7.50补丁程序级别3,IBM i 7.3。

ILE CL程序示例:

/* CRTCLMOD模块(QGPL/CALLSAP)SRCFILE(QGPL/QCLSRC)*/
/* CRTPGM PGM(QGPL/CALLSAP)BNDSRVPGM((QGPL/LIBSAPNRFC))*/
/* ACTGRP(X )*/
PGM

IF COND(1 * EQ 2)THEN(CALLPRC PRC('RfcInit'))

ENDPGM

3条回答
huskylover
2020-08-25 23:18

描述IBM i上SAP NW RFC SDK用法的两个SAP注释是SAP Note 2573953和SAP Note1097997。在为NW RFC SDK的Unicode版本进行编译时,仅需要库QADRT。 对于使用ILE EBCDIC版本进行编译或执行程序(在两种情况下),都不需要QADRT库。

关于QINLINE的错误消息CPF4101很可能并不表示问题。 如果在ILE C/C ++程序中使用STDIN,则可以将文件QINLINE覆盖为您选择的输入文件。 如果不覆盖QINLINE,则C/C ++程序会尝试打开QINLINE以便从STDIN读取,但是系统中不存在具有该名称的文件。 这不是错误,只是"噪音"。

不幸的是,我们只有一些示例将SDK与C/C ++一起使用。 由于参数的动态结构,用COBOL或RPG进行编码可能要困难得多。

亲切的问候,

Christian Bartels。

一周热门 更多>