public IRfcTable ToSapObject(string name) { Type type = typeof(T); RfcStructureMetadata sMeta = SapConnections.Get(name).Repository.GetStructureMetadata(typeof(T).Name); RfcTableMetadata tMeta = new RfcTableMetadata("", sMeta); IRfcTable t = tMeta.CreateTable(); for (int i = 0; i < this.Count; i++) { t.Insert(((ISapStructure)this[i]).ToSapObject(name)); } return(t); }
public IRfcTable CreateTable(RfcTableMetadata metadata, object parameterObject) { IRfcTable table = metadata.CreateTable(); RfcStructureMetadata structureMetadata = metadata.LineType; IEnumerable enumerable = parameterObject as IEnumerable; if (enumerable == null) { IRfcStructure row = CreateStructure(structureMetadata, parameterObject); table.Append(row); } else { var enumerator = enumerable.GetEnumerator(); while (enumerator.MoveNext()) { object current = enumerator.Current; IRfcStructure row = CreateStructure(structureMetadata, current); table.Append(row); } } return(table); }