问题标签 [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 投票
2 回答
710 浏览

python - 在 PyRFC 中对大数据集进行分块。可能的?

有没有办法使用 SAP-RFC 将大结果“分块”成几个较小的部分?

根据这些链接,您似乎需要自己实现分块:-(

我想避免这种情况,我希望有一种方法可以让 SAP-RFC 库进行分块。

用例:

结果是 100k 行。我想获取 1k 行,直到收到所有行。

我想这无关紧要,但我将在我的代码中使用PyRFC

0 投票
1 回答
2640 浏览

python - 在 Windows 中使用 PyRFC 安装 NWRFC

我正在尝试使用 NWRFC SAP 库安装 PyRFC ...经过大量工作和问题,我安装了所有东西,但是现在当我启动 python

我明白了

在这个链接中,我发现我应该尝试启动rfcexec.exe

在 Windows 系统上安装 SAP NW RFC Library 并将 lib 子文件夹添加到路径后,您可以从 bin 子文件夹启动 rfcexec.exe 测试程序,以验证 SAP NW RFC Lib 安装。

但是当我签入此文件夹时,我可以看到rfcexec文件但看不到rfcexec.exe (是的,我检查是否显示了扩展名)

我还发现这个错误可能是由于路径中没有这个

如果您的路径不是 C:\Python27\nwrfcsdk\lib 则显然放入另一个路径 如果您忘记设置路径,那么您的 Python 代码将无法使用 C 连接器,您将收到一条错误消息: “ImportError: DLL 加载失败”</p>

所以:

我有 mwrfcsdk 文件夹:

我安装 pyrfc :

我想念什么?

编辑:


我找到了这个页面:我可以看到的链接,当 unsar 从 .sar 文件中时,我在 cmd 中没有得到相同的打印......有谁知道为什么

0 投票
1 回答
1024 浏览

python - 创建独立的轮子

我尝试为 pyRFC 创建一个独立的轮子:http: //sap.github.io/PyRFC/install.html

我有所需的(封闭源代码)库和头文件。

如果我将库和头文件复制到 $VIRTUAL_ENV/lib 和 $VIRTUAL_ENV/include,安装 pyRFC 就可以了。

现在我尝试创建一个包含封闭源库文件的轮子。

但我失败了。

如果我解压缩轮子,它只包含以下内容:

缺少 extra_objects(见下文)。

如何修改 pyRFC 的 setup.py 以使轮子包含来自 $VIRTUAL_ENV/lib 的库?

这是setup.py:https://github.com/SAP/PyRFC/blob/master/setup.py

我为 setup.py 尝试了这个补丁

如果我安装并运行库而没有libsapnwrfc.so收到此错误:

如果我跟踪打开的调用,我发现它只查看库的根级别。该库无法在 virtualenv(即 /home/other)中进行搜索:

我想通过 wheel 将“libsapnwrfc.so”安装到 virtualenv 中,因为这使我能够拥有多个独立的环境。我可以通过 RPM 或配置管理安装它,但我想避免它。

0 投票
4 回答
1794 浏览

abap - 通过 RFC 提供 SAP 报告

一位客户想要通过 RFC 访问 SAP 报告。

脚步:

  1. 第三方应用程序通过 RFC 连接到 SAP
  2. RFC 调用被传输
  3. SAP 运行报告
  4. SAP 返回报告。

这如何实现 SAP 内部的部分?

我使用 PyRFC 作为客户端库。但是AFAIK这对于这个问题根本不重要。这个问题只是关于 SAP 内部的服务器部分。

在这种情况下,报告 RM07MLBS 应该通过 RFC 提供。

0 投票
2 回答
3810 浏览

saprfc - 进行 RFC 调用时分配期间超时

我正在尝试创建与新系统的 SAP RFC 连接。

AFAIK 防火墙(在本例中为端口 3321)已打开。

我在客户端收到此消息:

SAP 服务器上的这条消息

sap 系统日志截图

任何线索需要做什么才能让 RFC 正常工作?

0 投票
1 回答
189 浏览

sap - 通过 RFC 连接时列出允许的方法?

我可以通过 SAP-RFC 以用户“foo”的身份使用密码“bar”从我的机器连接到 SAP 服务器。是否可以通过 SAP-RFC 进行自省?n我想知道允许用户“foo”执行哪些方法。我正在使用 PyRFC,但 AFAIK 这对于这个问题应该无关紧要。

根据用户 Suncatcher 的说法,它不是开箱即用的。

到目前为止,我的 SAP 知识有限。但是不能像这个伪代码那样循环吗?(此代码应在 SAP 内部运行(作为 ABAP),并且可以通过 RFC 公开)

0 投票
1 回答
477 浏览

python - Python - pyrfc 1.9.5 - 从 IIS 托管的 .NET Core API 调用时导入错误

从托管在 Windows Server IIS 中的 .NET Core api 运行 python 脚本时,我遇到了以下问题。我在此脚本中使用 pyrfc 1.9.5 SAP 连接器。这是下面的代码

这是我得到的错误 -

它在命令提示符、python IDLE、Powershell 等下工作正常。以前我在未安装 Visual c++ 可再发行包时收到此错误。但现在它已正确安装,因为相同的脚本在 IDLE 和 Powershell 中运行。

以下是已安装的软件和服务器详细信息 -

  • Windows 服务器 2016 64 位
  • Visual C++ 2013 可再发行 64 位
  • Python 3.5 64 位,
  • 用于 python 3.5 64 位 (amd64) 的 pyrfc 1.9.5
  • SAP NW RFC SDK 7.5.0 64 位

Python 可执行文件和libSDK 文件夹的路径已添加到环境变量中。我还尝试从bin工作正常的目录中执行示例 rfcexec.exe 程序。我只在从 IIS 运行应用程序时收到错误消息。应用程序池身份对 python 脚本具有完全权限。

如果我评论 pyrfc 导入部分,该脚本在 IIS 中运行良好。请帮忙 。

0 投票
2 回答
968 浏览

dictionary - 启用 RFC 的功能模块中键值列表的数据结构?

我正在 ABAP 中编写一个新的 RFC 可调用函数,它应该能够导入键值映射列表。

RFC 调用应用程序将 Python 与PyRFC库一起使用。

我不确定是否应该创建一个新的自定义数据结构,是否可以重用现有的数据结构。

导入参数应该能够包含以下列表:

如果可能的话,我想重用现有的数据结构。

一个丑陋的 hack 是这样设计 API:使用字符串并解析为 json。但这是我想避免的解决方法。

我找到了数据结构WDY_KEY_VALUE,但那里的值是一个字符串。我需要一个值是字符串列表的结构。

0 投票
1 回答
2357 浏览

abap - SAPSQL_PARSE_ERROR 异常的有意义的错误消息

我在 ABAP 中编写了一个通过 SAP pyrfc 调用的函数。

如果存在 SAPSQL_PARSE_ERROR,RFC 调用者(用 Python 编写的客户端)会收到一条无意义的错误消息:

ABAPRuntimeError: RFC_ABAP_RUNTIME_FAILURE (rc=3): key=SAPSQL_PARSE_ERROR, message=Beim Parsen einer dynamischen Angabe trat ein Fehler auf。[味精:class=, type=, number=, v1-4:=;;;]

通过 tcodest22我可以查看详细信息。为了使往返速度更快,我想改进在 python 客户端上可见的错误消息。

我想,但不知道,abap 函数需要更改。如何获取可见的有价值的文本st22

我知道 st22 的输出很长。有价值的文本在德语 sap gui 中名为“Fehleranalysis”的框,大致意思是“疑难解答”或更字面的“错误分析”

0 投票
3 回答
727 浏览

abap - 即使在导入 TR 之后,旧的 ABAP 代码仍然对 PyRFC 有效。为什么?

我在 SAP 系统 X 中更改了一个 ABAP RFC 模块,并将更改传输到 Y。现在,当我调用 RFC 时,SAP 仍然执行旧代码。

我用差异工具比较了 X 和 Y 的两个版本,没有发现任何差异,所以它看起来像是传输的变化。激活我的 ABAP RFC 代码是否需要特殊步骤?

我使用PyRFC作为客户端库。