【问题标题】:Where in the filesystem does the SAP NW RFC cache its metadata?SAP NW RFC 在文件系统中的什么位置缓存其元数据?
【发布时间】:2019-07-25 16:24:30
【问题描述】:

我遇到了一个问题,当我尝试获取客户编写的自定义功能模块的元数据时,调用RfcGetStringLength 时出现以下错误:

Return code: RFC_ILLEGAL_STATE

RFC error group: EXTERNAL_RUNTIME_FAILURE

Error Key: RFC_ILLEGAL_STATE

Error message: Trying to access row values in a table which does not have any rows yet

在客户更改其中一个(结构)参数之前,我的代码正在针对客户的功能模块工作。更改后我们看到此错误。

我越来越确信 SAP NW RFC 元数据缓存在结构更改之前保存了陈旧的元数据,我想删除缓存的元数据以确认我的假设。但是,我不确定元数据在文件系统中的缓存位置。我的客户端程序在 Windows Server 2016 上运行。

【问题讨论】:

    标签: saprfc


    【解决方案1】:

    元数据仅缓存在内存中 - 但在应用程序进程的运行期间永久缓存。在运行时,您可以通过 API 调用清除元数据缓存,例如通过RfcClearRepository

    无论如何,您的错误消息显示您正在访问的表是空的。 在访问当前表行中的字段之前,请始终确保表不为空,以便隐式行游标有效,即使用 API RfcGetRowCount 检查。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-17
      • 1970-01-01
      • 2018-02-23
      相关资源
      最近更新 更多