撰寫成公用模組,可以很方便的叫用。
public static DataTable GetDataTableFromRfcTable(IRfcTable rfcTable)
{
DataTable dtRet = new DataTable();
for (int liElement = 0; liElement < rfcTable.ElementCount; liElement++)
{
RfcElementMetadata rfcEMD = rfcTable.GetElementMetadata(liElement);
dtRet.Columns.Add(rfcEMD.Name);
}
foreach (IRfcStructure row in rfcTable)
{
DataRow dr = dtRet.NewRow();
for (int liElement = 0; liElement < rfcTable.ElementCount; liElement++)
{
RfcElementMetadata rfcEMD = rfcTable.GetElementMetadata(liElement);
dr[rfcEMD.Name] = row.GetString(rfcEMD.Name);
}
dtRet.Rows.Add(dr);
}
return dtRet;
}
public static DataTable[] GetDataTablesFromRfcTables(IRfcTable[] rfcTables)
{
DataTable[] dtRetTables = null;
if (rfcTables.Length > 0)
{
dtRetTables = new DataTable[rfcTables.Length];
for (int i = 0; i < rfcTables.Length; i++)
{
dtRetTables[i] = GetDataTableFromRfcTable(rfcTables[i]);
}
}
return dtRetTables;
}
public static DataTable[] GetDataTablesFromDataSet(DataSet ds)
{
DataTable[] dtRetTables = new DataTable[ds.Tables.Count];
for (int i = 0; i < ds.Tables.Count; i++)
dtRetTables[i] = ds.Tables[i];
return dtRetTables;
}
public static DataSet GetDataSetFromDataTables(DataTable[] dtTables)
{
DataSet dsRet = new DataSet();
for (int i = 0; i < dtTables.Length; i++)
{
dsRet.Tables.Add(dtTables[i]);
}
return dsRet;
}
沒有留言:
張貼留言