static public ArrayList Read(IDataReader reader) { ArrayList aCustomerOrderRowList = new ArrayList(); while (reader.Read()) { CustomerOrderRow aCustomerOrderRow = new CustomerOrderRow(); int i = 0; aCustomerOrderRow.ClientIdentity = reader.GetString(i++); aCustomerOrderRow.OrderNumber = reader.GetString(i++); aCustomerOrderRow.OrderSequence = reader.GetInt32(i++); aCustomerOrderRow.SubSequence = reader.GetInt32(i++); aCustomerOrderRow.LinePosition = reader.GetInt32(i++); aCustomerOrderRow.LineSequence = reader.GetInt32(i++); aCustomerOrderRow.LineKitPosition = reader.GetInt32(i++); aCustomerOrderRow.LineStatus = reader.GetString(i++); aCustomerOrderRow.OrderedQuantity = Convert.ToDouble(reader.GetDecimal(i++)); aCustomerOrderRow.PickedQuantity = Convert.ToDouble(reader.GetDecimal(i++)); aCustomerOrderRow.DiscrepancyQuantity = Convert.ToDouble(reader.GetDecimal(i++)); aCustomerOrderRow.DiscrepancyCode = reader.GetString(i++); aCustomerOrderRow.DiscrepancyText = reader.GetString(i++); aCustomerOrderRow.ExternalDiscrepancyCode = reader.GetString(i++); aCustomerOrderRowList.Add(aCustomerOrderRow); } reader.Close(); return(aCustomerOrderRowList); }
public CustomerOrderInfoDoc GetCustomerOrderInfo( string ChannelId, string LanguageId, string ClientIdentity, string OrderNumber, Nullable <int> OrderSequence) { CustomerOrderInfoDoc res = new CustomerOrderInfoDoc(); try { BeginWebmethod(ChannelId); try { WebServicesQuery pkg = new WebServicesQuery(GetDataBase()); IDataReader aCustomerOrderRdr = null; IDataReader aCustomerWorkOrderRdr = null; IDataReader aDepartureRdr = null; IDataReader aOrderQuantitiesRdr = null; IDataReader aCustomerOrderRowRdr = null; pkg.GetCustomerOrderInfo(ClientIdentity, OrderNumber, OrderSequence, LanguageId, out aCustomerOrderRdr, out aCustomerWorkOrderRdr, out aDepartureRdr, out aOrderQuantitiesRdr, out aCustomerOrderRowRdr); ArrayList aCustomerOrderList = CustomerOrder.Read(aCustomerOrderRdr); ArrayList aCustomerWorkOrderList = CustomerWorkOrder.Read(aCustomerWorkOrderRdr); ArrayList aDepartureList = Departure.Read(aDepartureRdr); ArrayList aOrderQuantitiesList = OrderQuantities.Read(aOrderQuantitiesRdr); ArrayList aCustomerOrderRowList = CustomerOrderRow.Read(aCustomerOrderRowRdr); res.aCustomerOrderList = aCustomerOrderList.ToArray(typeof(CustomerOrder)) as CustomerOrder[]; res.aCustomerWorkOrderList = aCustomerWorkOrderList.ToArray(typeof(CustomerWorkOrder)) as CustomerWorkOrder[]; res.aDepartureList = aDepartureList.ToArray(typeof(Departure)) as Departure[]; res.aOrderQuantitiesList = aOrderQuantitiesList.ToArray(typeof(OrderQuantities)) as OrderQuantities[]; res.aCustomerOrderRowList = aCustomerOrderRowList.ToArray(typeof(CustomerOrderRow)) as CustomerOrderRow[]; GetDataBase().Commit(); } catch (Exception e) { try { GetDataBase().Rollback(); } catch (Exception) { } Exception InternalError = new Exception("DataError: Error processing data", e); throw (InternalError); } } finally { EndWebmethod(); } return(res); }