一个 RFC 调用正在返回数据,但另一个没有

One RFC call is returning data, but another is not

我使用两个不同的 BAPI 从 SAP 获取数据。当我使用 BAPI_SALESORDER_GETLIST 时,它工作得很好。但是当我使用 BAPI_BILLINGDOC_GETLIST 时,我没有得到任何数据。这就是我尝试调用 BAPI 的方式:

DataTable table = null;

SapConfig cfg = new SapConfig();

if (RfcDestinationManager.TryGetDestination("SAP") == null)
    RfcDestinationManager.RegisterDestinationConfiguration(cfg);

RfcDestination dest = RfcDestinationManager.GetDestination("SAP");
RfcRepository repo = dest.Repository;

IRfcFunction fnc = repo.CreateFunction("BAPI_BILLINGDOC_GETLIST");
IRfcStructure param = fnc.GetStructure("REFDOCRANGE");
param.SetValue("SIGN", "I");
param.SetValue("OPTION", "EQ");
param.SetValue("REF_DOC_LOW", salesOrderNumber);
param.SetValue("REF_DOC_HIGH", "");

fnc.Invoke(dest);

table = fnc.GetTable("BILLINGDOCUMENTDETAIL").ToDataTable();

return table;

据我所知,一切看起来都不错。我与 SAP 团队取得了联系,他们确保我使用的帐户可以访问所有内容,并且我们 运行 SAP 中的 BAPI 运行良好。

所以 SAP 看起来不错。关于我在这里做错了什么有什么想法吗?

请检查参数值是否正确。有时 SAP 功能模块希望提交的文档编号带有前导零。您可以在交易 SE37 中测试功能模块以检查您的参数。