插入、更新和删除 SAP 表



有人会给我发布一个示例 C# 代码来使用 BAPI 更新 SAP 子系统中的表记录吗?我能够使用以下链接中解释的示例从SAP表中选择记录 使用SAP的分步教程。带VS 2008的网络连接器。

我为此检查了论坛中的几个线程,但无法获得有关此内容的可理解注释。

您的问题包含多个部分,让我尝试解释每个部分。

首先,您需要定义需要调用哪个 BAPI 来更新 SAP 表。找到它后,请确保它已启用 RFC。如果不是,则需要创建一个支持 RFC 的包装器函数模块,该模块仅调用此 BAPI。

找到 BAPI 后,实际上使用 .net 连接器调用它非常简单。这里有一个非常完整的例子:https://www.codeproject.com/Articles/824928/SAP-Net-Connector-NCo-Example

但总的来说,您需要使用 RfcDestinationManager 设置与 SAP 的连接("目的地"(。设置目标后,您可以检索存储库,然后检索功能模块,如下所示:

rfcDestination = RfcDestinationManager.GetDestination(destinationName);
RfcRepository rfcRepository = rfcDestination.Repository;
IRfcFunction rfcFunction = rfcRespository.CreateFunction("BAPI_WHATEVER");

然后,您可以使用 SetValue 函数填充函数模块的参数:

rfcFunction.SetValue("fieldName", value);

完成参数后,调用 Invoke 函数以实际执行调用。

rfcFunction.Invoke(rfcDestination);

调用后,可以使用 GetValue 函数或 Tables 属性来检索返回值:

var value = rfcFunction.GetValue("fieldName");

有了这个,您应该拥有调用更新 SAP 表的 BAPI 所需的一切。

最新更新