问题标签 [pyrfc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
132 浏览

python - SAP UnicodeDecodeError:“utf-8”编解码器无法解码位置 2-3 中的字节:调用 RFC_READ_TABLE 时数据意外结束

我已遵循 ( https://blogs.sap.com/2020/06/09/connecting-python-with-sap-step-by-step-guide/ ) 的所有过程,并能够成功建立与 SAP 的连接服务器,但在线路conn.call方法我得到这个:

回溯(最近一次调用最后):
文件“C:\Users\Administrator\AppData\Local\Programs\Python\Python38\sap.py”,第 22 行,在
result = conn.call('RFC_READ_TABLE', QUERY_TABLE = 'TCURR', OPTIONS = options, ROWSKIPS = rowskips, ROWCOUNT = ROWS_AT_A_TIME)
文件“src\pyrfc_pyrfc.pyx”中,第 423 行,在 pyrfc ._pyrfc.Connection.call
文件“src\pyrfc_pyrfc.pyx”,第 2021 行,在 pyrfc._pyrfc.wrapResult
文件“src\pyrfc_pyrfc.pyx”,第 2100 行,在 pyrfc._pyrfc.wrapVariable
文件“src\pyrfc_pyrfc.pyx”中,第 2070 行,在 pyrfc._pyrfc.wrapTable
文件中 "src\pyrfc_pyrfc.pyx",第 2039 行,在 pyrfc._pyrfc.wrapStructure
文件中 "src\pyrfc_pyrfc.pyx",第 2285 行,在 pyrfc._pyrfc.wrapString
UnicodeDecodeError: 'utf -8' 编解码器无法解码位置 2-3 中的字节:数据意外结束

版本:

  • 操作系统-Windows 10
  • 蟒蛇版本 - 3.8.6
  • 树液 SDK - PL 7
  • pyrfc 发布 - pyrfc-2.0.0-cp38-cp38-win_amd64

代码:

0 投票
1 回答
707 浏览

python - 无法安装 PyRFC-2.0.4

我正在尝试在 PyRFC 的帮助下将 SAP 与 python 连接起来。我指的是本指南https://blogs.sap.com/2020/06/09/connecting-python-with-sap-step-by-step-guide/进行连接。但是,我无法在我的系统中安装 PyRFC。我已经维护了文章中定义的系统变量,在尝试安装 PyRFC.tar.gz 文件后,它显示

请帮我解决一下这个。

0 投票
0 回答
106 浏览

python - PyRFC 如何根据值列表从 SAP 下载数据

我能够成功连接到 SAP 并从表中下载数据。但是我需要根据值列表下载数据。

为 OBJNR 定义一个值是可以的。

但是当我尝试定义的不是一个值,而是一个值列表时,我遇到了错误。

如何根据值列表选择数据。IE。我有 200 多个不同的值 od OBJNR,我只想从 SAP 下载分配给此 OBJNR 的数据。

0 投票
1 回答
989 浏览

abap - 使用哪个 BAPI 来更新 ADRC 表?

ADRC有没有办法使用 SAP 外部的 BAPI将数据写入或插入表中?

0 投票
1 回答
375 浏览

python - 无法在 Windows 中的 Python 中导入 pyrfc

我正在尝试通过调用函数模块 RFC_READ_TABLE 将 python 连接到 SAP。我遵循了此链接中的每个步骤,包括设置环境变量。

在此处输入图像描述

但是,当我尝试导入 Pyrfc 时,出现错误: ImportError: DLL load failed while importing _pyrfc: The specified procedure could not be found。

在此处输入图像描述

如果我在 CMD Consule 中手动设置 PATH=C:\nwrfcsdk\lib;C:\nwrfcsdk\bin;%PATH% ,它工作正常,

在此处输入图像描述

在此处输入图像描述

我已经多次重新启动我的电脑。还是同样的问题。有人可以帮我吗?谢谢你。

0 投票
1 回答
166 浏览

pyrfc - 使用 Python 时的多个选项通过 RFC_READ_TABLE 连接 SAP

当我尝试从 python 获取数据到 SAP 表时,我试图有多个选项。如下所示,唯一的选择是LGNUM = '376'. 我怎样才能在这里有更多选择?谢谢!

0 投票
1 回答
227 浏览

python - 调用 RFC_READ_TABLE 时如何检查 NOT NULL?

我正在尝试使用 python connect SAP 系统获取数据。在这里,我对如何过滤一个特定字段不为空有疑问?

例如下面,如何过滤字段 QNAME 不为空。在 SAP 中,我们可以轻松设置。非常感谢!

0 投票
1 回答
85 浏览

abap - 如何收集功能模块执行的详细堆栈跟踪?

有没有一种方法/工具来收集 SAP 功能模块执行的详细 Stacktrace?

我们在应用程序中看到间歇性的性能问题。它正在调用 SAP FM(使用 PyRFC)。这个 FM 本身执行许多事情——逻辑、进一步的调用等。它还应用了多线程处理。它用于获取多个项目的价格。对于每次调用,它按项目拆分调用,并为每个项目在并行线程中执行,等待所有线程完成,合并所有获取的价格并返回结果。

这些呼叫中非常少的百分比比平时花费的时间要长得多(99% 的呼叫不到 2 秒,而慢速呼叫超过 10 秒)

在不同层启用跟踪后,我们看到调用按预期在多个 SAP 应用程序服务器之间拆分。对于突然的缓慢调用,其中一个应用服务器最终会占用大量时间,从而使整体执行速度变慢。

我们仔细验证了这不是特定应用服务器的问题。它是在许多应用服务器上随机发生的。我们无法确定是什么情况导致了这种情况。从可用的应用服务器指标(CPU、内存、I/O 等)来看,在同一时间跨度内都处于非常健康的范围内。

我有两个问题是 -

  1. 有没有办法在 SAP 应用服务器级别启用详细信息跟踪;揭示在这些缓慢执行过程中特定应用服务器上到底发生了什么的详细跟踪?例如,其中一个慢速调用耗时 7.8 秒。但是我们没有更多关于这 7.8 秒究竟是如何度过的。什么都进去了。
    我正在寻找可以用 JVM 应用程序完成的类似于堆栈跟踪和分析的东西。如果没有这 7.8 秒的下一级破解,就像在黑暗中扔石头,希望它会撞到某个地方。

  2. 有没有人遇到过类似的问题?如果是,那么在这种情况下,根本原因是什么?
    为避免混淆,不要寻找神奇的解决方案。对于此类问题和可用的高级详细信息,无法提供解决方案。因此,如果您过去曾看到过类似的问题以及当时的原因,我正在寻找见解,以便我们可以检查相同的内容以确保确定。或者,如果您可以提出任何其他想法来探索根本原因分析,那也很有帮助。

问候。S.达斯

0 投票
1 回答
38 浏览

python - PyRFC函数模块调用中如何指定表参数?

我正在使用 PyRFC 对客户的 SAP 功能模块进行 RFC 调用。我已经验证了连接已经建立,并且我可以调用大多数具有正确输出的函数,但是有一个带有导入参数的函数模块和一个也需要输入的表条目。

我尝试将导入和表参数组合到一个字典中,并尝试将它们分别包含在调用中,但我不断收到 RFC_INVALID_PARAMETER 错误,声称在系统上找不到表参数键。我怀疑我的程序认为表参数值是导入参数的一部分。如何在函数调用中正确包含导入参数和表参数?下面是 SAP 上功能模块的截图和我的代码结构片段。

功能模块

表格条目需要输入