SAP JCo 3 RFC RSAQ_REMOTE_QUERY_CALL - 意外结果

时间:2013-07-03 20:12:46

标签: sap jco

我们使用JCo 3.0连接到RFC并从SAP R / 3读取数据。我们经常使用一个RFC RFC_READ_TABLE,并使用第二个自定义RFC来读取员工信息。我的问题围绕第三个RFC RSAQ_REMOTE_QUERY_CALL。我正在调用我使用此RFC在SAP中构建的即席查询,但我没有得到预期的结果。主要问题是SAP似乎忽略了我的一个选择标准,并使用了我最初构建它时保存在SAP中的内容。存储在我的ad-hoc中的日期标准是2013年6月23日。如果我从JCo通过2013年6月28日,我得到的结果与我从JCo通过2013年6月23日相同。

我们已经构建了几个即席查询,其唯一标准是人员编号,并使用RFC RSAQ_REMOTE_QUERY_CALL成功调用它们。

我的临时查询背景:今天的报告期间,将员工信息的四个方面结合在一起:他们的最新行动(雇用,重雇等),组织(例如公司),薪酬(例如薪酬等级)和沟通(例如电子邮件)。查询将在每个工作日运行。

以下是我的问题:

  1. 我的ad-hoc有三个选择标准。前两个是简单的字符串。第三个是约会。每次查询运行时,日期都会有所不同。我们使用SP $ 00001引用第一个标准,第二个使用SP $ 00002,第三个使用SP $ 00003。标准的顺序从ad-hoc变为SQ01(ad-hoc中的SP $ 00001现在是SP $ 00003)。我们不应该按照ad-hoc中定义的顺序引用它们(例如SP $ 00001)吗?

  2. 两个简单的字符串选择是使用OPTION“EQ”。日期标准使用OPTION GT(大于)。 “GT”是否正确?

  3. 我们对SAP的访问权限有限。有没有办法看哪些SP $参数映射到哪个标准?

  4. 如果我的ad-hoc保存了五个条件,但是当我从JCo调用ad-hoc时它们中的四个永远不会改变,我是否只需要设置一个或者我需要设置的值其他四个也是?

  5. 我是否必须使用变量(function.getImportParameterList()。setValue(“VARIANT”,“VARIANT_NAME”))来调用此特定内容?

  6. 报告期是否会对日期标准产生影响?我已尝试将报告期更改为PNPBEGDA =今天和PNPENDDA =今天,并注意到没有变化。

  7. SAP是否有办法获得您的临时(名称,输入,输出,标准)的“声明”?我查看了JCoFunction.toXml()和JCoFunctionTemplate。如果你想在运行之前在运行时看到一些东西,这些很好,但我正在寻找一些我可以在JCo端使用的东西,以帮助我编写与ad-hoc相匹配的Java代码。

  8. 我已经在网上查看了我的问题的答案,并没有找到任何有用的东西。如果有什么可以帮助我,请告诉我。

    谢谢,

    LM

2 个答案:

答案 0 :(得分:0)

由于我对SQnn了解不多,我将无法回答您的所有问题......

  1. 我不知道,抱歉。
  2. 应该是,至少它是大于的常用运算符。
  3. 是 - 在功能模块内部设置一个外部断点,并在执行RFC调用时跟踪其执行情况。警告:至少需要基本的ABAP知识。
  4. 我不知道,抱歉。
  5. 我也不知道,抱歉。
  6. 这取决于查询,我怀疑......
  7. JCo将无法帮助您 - 它不了解查询,它只知道功能模块。可能还有其他RSAQ_*个功能模块来获取该信息。

答案 1 :(得分:0)

我在SQ01中为我的查询设置了一个变体。我在变体中添加了一些解决了我的问题的设置,并在我的帖子中回答了我的几个问题。我做的主要是添加一个动态计算的日期作为我的标准的一部分。以下是这样的:
1.在SQ01中,访问菜单"转到" - > "维护变体"。 2.选择您的变体并在子对象中,选择"属性"然后单击"更改"。
3.在显示的列表中,找到您的日期标准 4.选择" D"在选择变量中,选择一个比较选项(我的GT是大于),以及一个"变量的名称" (实际上,这是您需要的动态日期计算类型。) 5.返回Subobjects面板,选择" Values"然后单击"更改"。
6.在"程序选择"中输入您需要的任何其他条件。节。
7.保存变体。
通过这样做,我不需要将任何内容传递给JCo的查询。此外,SAP将自动更新您在上面步骤#4中输入的日期标准 所以从原来的帖子回答我的问题:
它并不重要,因为我不再从JCo传递任何东西 2." GT"大于。
3和7.如果有人知道,我真的很想知道 5.使用您在SAP中的名称(上面的步骤2) 6.我还是不知道,但它没有阻止我 如果有人需要这种类型的信息,我发布此信息。感谢Esti和vwegert帮助我。