Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 尝试使用RFCDestination.Repository.GetTableMetadata(字符串tablename)时出现2个错误_C#_.net_Sap Dotnet Connector - Fatal编程技术网

C# 尝试使用RFCDestination.Repository.GetTableMetadata(字符串tablename)时出现2个错误

C# 尝试使用RFCDestination.Repository.GetTableMetadata(字符串tablename)时出现2个错误,c#,.net,sap-dotnet-connector,C#,.net,Sap Dotnet Connector,我知道您可以使用函数rfcdestinition.Repository.GetTableMetadata(string tablename)在SAP服务器中获取表的数据。不幸的是,我在尝试执行命令时出错。奇怪的是,当我给出一个现有的表时,当我尝试将一些随机的东西作为表名时,我会得到一个不同的错误 现有表格: var x = dest.Repository.GetTableMetadata("TFTIT"); 错误: SAP.Middleware.Connector.RfcInvalidStat

我知道您可以使用函数
rfcdestinition.Repository.GetTableMetadata(string tablename)
在SAP服务器中获取表的数据。不幸的是,我在尝试执行命令时出错。奇怪的是,当我给出一个现有的表时,当我尝试将一些随机的东西作为表名时,我会得到一个不同的错误

现有表格:

var x = dest.Repository.GetTableMetadata("TFTIT");
错误:

SAP.Middleware.Connector.RfcInvalidStateException:“找不到TFIT指定的表”

随机表名:

var x = dest.Repository.GetTableMetadata("Test123");
错误:

SAP.Middleware.Connector.RfcInvalidStateException:“仅表TEST123的元数据不可用:未找到:TEST123不存在活动名称选项卡”


我知道有一种方法可以借助函数模块获取表的数据,但我需要使用GetTableMetadata函数。

调用
RfcRepository.GetTableMetadata(string)
时不能犯这么多错误。您使用的用户ID是否具有SAP说明(场景3)中列出的存储库查询所需的RFC授权?如果是,这可能是NCo3库中的错误,甚至是ABAP后端中的错误。您是否使用NCo的最新补丁级别?这是目前的NCo 3.0.20。 如果没有,请先尝试更新库。 否则,我建议为第一条错误消息创建SAP支持票证。当指定的表名不存在时,第二个错误是正常的

或者,您也可以尝试在为此表调用
RfcRepository.getStructureMatadata(string)
时发生的情况。表和结构的元数据非常相似,相同的远程功能模块用于DDIC查询。也许这样行得通。但是,我认为首先,
RfcRepository.GetTableMetadata(string)
应该在这里工作

我希望这有帮助