在 SAPNCo 应用程序中非个性化 SAP 对话用户
Impersonalize SAP dialog user in SAPNCo application
我正在构建一个特殊的应用程序来帮助用户在 SAP 中插入一些数据。目前该应用程序的功能按预期工作。但是当数据保存在数据库中时,日志显示,进行更改的用户是系统用户。我想请求一个所谓的 SAP GUI 对话用户的用户名和密码。然后系统用户将模拟它并进行更改。
我尝试将 RFC 配置的用户和密码参数设置为对话框用户信息,并添加了 RepositoryUser 和 RepositoryPassword 参数。这抛出一个例外:"No RFC authorization for function module RFCPING."
我可以使用 SUSR_CHECK_LOGON_DATA
RFC 进行额外的用户身份验证,但这不能解决记录用户更改的问题。
是否允许 Dialog 用户调用远程函数,或者 System 用户是否可以以他的名义调用远程函数?如何在 SAP.NET 连接器中实现模拟?
我通读了 SAP .NET 连接器 3.0 编程指南,但没有得到正确的信息。
谢谢
很明显您使用的用户ID缺少基本的RFC用户权限。当然,你也可以使用对话框用户。
SAP 在以下注释中详细记录了几种使用场景所需的最低 RFC 用户授权:
我正在构建一个特殊的应用程序来帮助用户在 SAP 中插入一些数据。目前该应用程序的功能按预期工作。但是当数据保存在数据库中时,日志显示,进行更改的用户是系统用户。我想请求一个所谓的 SAP GUI 对话用户的用户名和密码。然后系统用户将模拟它并进行更改。
我尝试将 RFC 配置的用户和密码参数设置为对话框用户信息,并添加了 RepositoryUser 和 RepositoryPassword 参数。这抛出一个例外:"No RFC authorization for function module RFCPING."
我可以使用 SUSR_CHECK_LOGON_DATA
RFC 进行额外的用户身份验证,但这不能解决记录用户更改的问题。
是否允许 Dialog 用户调用远程函数,或者 System 用户是否可以以他的名义调用远程函数?如何在 SAP.NET 连接器中实现模拟? 我通读了 SAP .NET 连接器 3.0 编程指南,但没有得到正确的信息。
谢谢
很明显您使用的用户ID缺少基本的RFC用户权限。当然,你也可以使用对话框用户。
SAP 在以下注释中详细记录了几种使用场景所需的最低 RFC 用户授权: