我正在尝试使用SAP.Net Connector 3.0从SAP DMS获取文档。我需要获取文档并在ASP.Net中显示。
我正在使用“BAPI_DOCUMENT_CHECKOUTVIEW2”来调用该函数。但是当调用invoke方法时,会抛出“RFC callback server not available”错误。
我使用的代码如下。
...
sap.RfcRepository repo = prd.Repository;
sap.IRfcFunction testBapi = repo.CreateFunction("BAPI_DOCUMENT_CHECKOUTVIEW2");
testBapi.SetValue("DOCUMENTNUMBER", docNumber);
testBapi.SetValue("DOCUMENTPART", docPart);
testBapi.SetValue("DOCUMENTVERSION", docVersion);
testBapi.SetValue("DOCUMENTTYPE", docType);
...
the document file is created here using BAPI_DOCUMENT_GETDETAIL2
...
testBapi.SetValue("DOCUMENTFILE", struFile);
testBapi.SetValue("GETSTRUCTURE", "1");
testBapi.SetValue("GETHEADER", "X");
testBapi.SetValue("ORIGINALPATH", @"D:\");
testBapi.SetValue("PF_FTP_DEST", "SAPFTPA");
long result = RfcAllowStartProgram("sapftp; saphttp");
testBapi.Invoke(prd);
提前致谢
答案 0 :(得分:1)
我不知道这个BAPI并且我没有手头的系统来检查它,但是我假设在执行期间的某个地方,BAPI试图“回”到GUI应该是在会议的另一端。当它找不到GUI时,就会死掉。如果你有GUI访问和调试权限(和知识:-)),你可以尝试在途中找到一个CALL FUNCTION ... DESTINATION BACK语句。
答案 1 :(得分:1)
尝试添加一个配置参数:
RfcConfigParameters.UseSAPGui
,其值为1