Java 调频参数在JCo中的反射

Java 调频参数在JCo中的反射,java,sap,jco,sapjco3,Java,Sap,Jco,Sapjco3,在SAP中调用函数模块(目标参数为SAP JCO SERVER)然后使用Java(在SAP JCO SERVER中)处理时,动态接收参数列表及其值有问题 关键是,我需要一种动态方式在JCO Server(使用Java)中获取有关SAP中调用了什么SAP函数以及使用了什么参数(导入、导出、更改和表)的信息(因为我的JCO Server服务器“侦听”SAP RFC调用,并且我必须存储来自SAP的这些调用的信息) 我知道(例如导入参数)使用命令: JCoParameterList ParameterL

在SAP中调用函数模块(目标参数为SAP JCO SERVER)然后使用Java(在SAP JCO SERVER中)处理时,动态接收参数列表及其值有问题

关键是,我需要一种动态方式在JCO Server(使用Java)中获取有关SAP中调用了什么SAP函数以及使用了什么参数(导入、导出、更改和表)的信息(因为我的JCO Server服务器“侦听”SAP RFC调用,并且我必须存储来自SAP的这些调用的信息)

我知道(例如导入参数)使用命令:

JCoParameterList ParameterList = function.getImportParameterList(); 
在Java中,我可以接收这些数据,但是如何处理JCoParameterList类型的变量呢?即,如何从变量“ParameterList”中获取参数名称、类型和在SAP中调用参数时使用的值的信息

对于如何在Java中从类型为
JCoParameterList
的对象检索此数据的任何建议,我将不胜感激

亲切问候,,
Andrew

jcopareterlist
包含
jcopareterfield
实例的列表
JCoParameterField
依次继承自
JCoField
,它为您提供了设置或获取参数值的方法
jcopareterlist
允许您遍历参数列表,检查它们是什么类型的参数,获取它们的值等

JCoParameterList parameters = function.getImportParameterList();
JCoParameterFieldIterator it = parameters.getParameterFieldIterator();
while (it.hasNextField()) {
    JCoParameterField field = it.nextParameterField();
    // field.getName() gives you the name
    // field.getString() gives you the parameter value as string
    // field.getExtendedFieldMetaData() gives you the field metadata

}