以下查询连接每行的列结果。我需要用某种分隔符或独特的行[i]结果来分隔列。RFC_READ_TABLE连接行结果中的列
查询
"exec rfc_read_table @query_table='VBAK', @rowcount=50, @FIELDS= '<FIELDS><RFC_DB_FLD xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc/"><FIELDNAME>MANDT</FIELDNAME></RFC_DB_FLD><RFC_DB_FLD xmlns="http://Microsoft.LobServices.Sap/2007/03/Types/Rfc/"><FIELDNAME>VBELN</FIELDNAME></RFC_DB_FLD></FIELDS>,@[email protected] output'"
.NET
using (SAPCommand cmd = conn.CreateCommand())
{
cmd.CommandText = //See query above
SAPDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
Console.Write(" {0} ", rdr[0]);
//Console.Write(" {0} ", rdr[1]);//null...
Console.WriteLine();
}
UPDATE
我能够通过以下
DataTable dtFields = (DataTable)cmd.Parameters["@flds"].Value;
(更新查询)返回的索引中的列分开
该进程非常快速并且抛出异常,因为当查询中的最后一列返回空结果时(也发现长度指示符错误),索引变得不可靠。我大部分时间都在工作,但这很糟糕。用.NET查询SAP有更好的支持方法吗?
我相信这是我们大家下载的版本。 – 2011-03-19 18:57:29