/// <summary> /// Sets the file header and footer schema. /// </summary> /// <param name="fields">The fields.</param> protected void SetFileHeaderAndFooterSchema(TextFieldCollection fields) { fields.Clear(); AddCommonFields(fields); fields.Add(new TextField("Date", TypeCode.DateTime, 10)); fields.Add(new TextField("Time", TypeCode.DateTime, 5)); //should be 8 but the test data only has 5! }
/// <summary> /// Sets the product maintenance file header schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetProductMaintenanceFileHeaderSchema(TextFieldCollection fields) { fields.Clear(); AddCommonFields(fields); fields.Add(new TextField("Date", TypeCode.String, 10)); fields.Add(new TextField("Time", TypeCode.String, 8)); }
/// <summary> /// Sets the item schema. /// </summary> /// <param name="fields">The fields.</param> protected override void SetItemSchema(TextFieldCollection fields) { fields.Clear(); AddCommonFields(fields); fields.Add(new TextField("Site", TypeCode.String, 10)); fields.Add(new TextField("ProductCode", TypeCode.String, 20)); fields.Add(new TextField("Quantity", TypeCode.Int32, 19)); fields.Add(new TextField("CustomerReferenceNumber", TypeCode.String, 20)); }
/// <summary> /// Sets the commander sales order file header schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetCommanderSalesOrderFileHeaderSchema(TextFieldCollection fields) { fields.Clear(); fields.Add(new TextField("LineNumber", TypeCode.Int32, 5)); fields.Add(new TextField("RecordType", TypeCode.Int32, 3)); fields.Add(new TextField("RecordSubType", TypeCode.String, 1)); fields.Add(new TextField("Date", TypeCode.String, 10)); fields.Add(new TextField("Time", TypeCode.String, 8)); }
/// <summary> /// Sets the commander product maintenance modify schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetCommanderProductMaintenanceModifySchema(TextFieldCollection fields) { //set-up fields collection, make sure the field names are the same as the //CommanderSalesOrder class properties so that reflection can be used in the parsing subscriber fields.Clear(); AddCommonFields(fields); fields.Add(new TextField("ProductCode", TypeCode.String, 20)); fields.Add(new TextField("Description", TypeCode.String, 40)); fields.Add(new TextField("ShortDescription", TypeCode.String, 30)); fields.Add(new TextField("Account", TypeCode.String, 20)); }
/// <summary> /// Sets the item schema. These fields describe the format of a single line /// </summary> /// <param name="fields">The fields.</param> protected override void SetItemSchema(TextFieldCollection fields) { fields.Clear(); AddCommonFields(fields); fields.Add(new TextField("Site", TypeCode.String, 10)); fields.Add(new TextField("RecieptRef", TypeCode.String, 20)); fields.Add(new TextField("LineNumber", TypeCode.Int32, 5)); fields.Add(new TextField("ProductCode", TypeCode.String, 20)); fields.Add(new TextField("QuantityReceived", TypeCode.Int32, 19)); fields.Add(new TextField("CustomerReferenceNumber", TypeCode.String, 20)); fields.Add(new TextField("IsAdviceNoteRequired", TypeCode.Int32, 2)); fields.Add(new TextField("AdviceNoteNumber", TypeCode.String, 30)); }
/// <summary> /// Sets the expected file schema. /// </summary> /// <param name="fields">The fields.</param> private static void setFileSchema(TextFieldCollection fields) { fields.Add(new TextField("Fund Code", TypeCode.String, 10, true)); fields.Add(new TextField("Description", TypeCode.String, 100, true)); fields.Add(new TextField("Price Type", TypeCode.String, 3)); TextField field = new TextField("Price Date", TypeCode.DateTime, true); field.DateTimeFormat = "yyyyMMddHHmm"; fields.Add(field); fields.Add(new TextField("Bid Price", TypeCode.Double, false)); fields.Add(new TextField("Offer Price", TypeCode.Double, false)); fields.Add(new TextField("Yield", TypeCode.Double, false)); }
/// <summary> /// Sets the drop schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetDropSchema(TextFieldCollection fields) { fields.Add(new TextField("TripNumber", TypeCode.String, 8)); fields.Add(new TextField("OrderSequence", TypeCode.Int32, 3)); fields.Add(new TextField("OriginalCustomerCode", TypeCode.String, 16)); fields.Add(new TextField("ShipmentNumberAndDespatch", TypeCode.String, 22)); fields.Add(new TextField("Weight", TypeCode.Single, 10)); fields.Add(new TextField("Volume", TypeCode.Single, 8)); fields.Add(new TextField("ArriveTime", TypeCode.String, 5)); fields.Add(new TextField("DepartTime", TypeCode.String, 5)); fields.Add(new TextField("LoadingTime", TypeCode.String, 5)); fields.Add(new TextField("WaitingTime", TypeCode.String, 5)); fields.Add(new TextField("TravellingTime", TypeCode.String, 5)); fields.Add(new TextField("Distance", TypeCode.Single, 6)); fields.Add(new TextField("CallType", TypeCode.Int32, 1)); fields.Add(new TextField("DropSequence", TypeCode.Int32, 3)); fields.Add(new TextField("RegionAndRoute", TypeCode.String, 5)); fields.Add(new TextField("OriginalDepot", TypeCode.String, 18)); fields.Add(new TextField("DeliveryDate", TypeCode.DateTime, 10)); ////each field has an extra space between it! //foreach (TextField field in fields) //{ // field.Length += 1; //} ////we don't need an extra space on the last field //fields[fields.Count - 1].Length -= 1; }
/// <summary> /// Adds the common fields. /// </summary> /// <param name="fields">The fields.</param> protected void AddCommonFields(TextFieldCollection fields) { fields.Add(new TextField("LineNumber", TypeCode.Int32, 5)); fields.Add(new TextField("RecordType", TypeCode.Int32, 3)); fields.Add(new TextField("RecordSubType", TypeCode.String, 1)); }
/// <summary> /// Sets the trip schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetTripSchema(TextFieldCollection fields) { fields.Add(new TextField("Depot", TypeCode.String, 18)); fields.Add(new TextField("TripNumber", TypeCode.String, 8)); fields.Add(new TextField("AssignedDriver", TypeCode.String, 16)); fields.Add(new TextField("LeaveTime", TypeCode.String, 5)); fields.Add(new TextField("FinishTime", TypeCode.String, 5)); fields.Add(new TextField("DeliveryCount", TypeCode.Int32, 3)); fields.Add(new TextField("CollectionCount", TypeCode.Int32, 3)); fields.Add(new TextField("DeliveryWeight", TypeCode.Single, 10)); fields.Add(new TextField("DeliveryVolume", TypeCode.Single, 8)); fields.Add(new TextField("CollectionWeight", TypeCode.Single, 10)); fields.Add(new TextField("CollectionVolume", TypeCode.Single, 8)); fields.Add(new TextField("PeakWeight", TypeCode.Single, 10)); fields.Add(new TextField("PeakVolume", TypeCode.Single, 8)); fields.Add(new TextField("Feasible", TypeCode.Int32, 9)); fields.Add(new TextField("ItemCount", TypeCode.Int32, 3)); fields.Add(new TextField("TotalDistance", TypeCode.Single, 6)); fields.Add(new TextField("TravellingTime", TypeCode.String, 5)); fields.Add(new TextField("WaitingTime", TypeCode.String, 5)); fields.Add(new TextField("LoadingTime", TypeCode.String, 5)); fields.Add(new TextField("TotalTime", TypeCode.String, 5)); fields.Add(new TextField("VehicleRegistration", TypeCode.String, 16)); fields.Add(new TextField("MaximumLoadWeight", TypeCode.Single, 10)); fields.Add(new TextField("MaximumLoadVolume", TypeCode.Single, 8)); fields.Add(new TextField("VehicleCost", TypeCode.Single, 6)); fields.Add(new TextField("RegionCode", TypeCode.String, 1)); fields.Add(new TextField("DropsOnTrip", TypeCode.Int32, 3)); fields.Add(new TextField("StartDate", TypeCode.DateTime, 10)); ////each field has an extra space between it! //foreach (TextField field in fields) //{ // field.Length += 1; //} ////we don't need an extra space on the last field //fields[fields.Count - 1].Length -= 1; }
/// <summary> /// Sets the commander sales order header schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetCommanderSalesOrderHeaderSchema(TextFieldCollection fields) { //set-up fields collection, make sure the field names are the same as the //CommanderSalesOrder class properties so that reflection can be used in the parsing subscriber fields.Clear(); fields.Add(new TextField("LineNumber", TypeCode.Int32, 5)); fields.Add(new TextField("RecordType", TypeCode.Int32, 3)); fields.Add(new TextField("RecordSubType", TypeCode.String, 1)); fields.Add(new TextField("Site", TypeCode.String, 10)); fields.Add(new TextField("OrderReference", TypeCode.String, 20)); fields.Add(new TextField("CustomerNumber", TypeCode.String, 10)); fields.Add(new TextField("DespatchRouteCode", TypeCode.String, 10)); fields.Add(new TextField("DropNumber", TypeCode.Int32, 6)); fields.Add(new TextField("TotalWeight", TypeCode.Decimal, 19)); fields.Add(new TextField("DeliveryAddress.Line1", TypeCode.String, 32)); fields.Add(new TextField("DeliveryAddress.Line2", TypeCode.String, 32)); fields.Add(new TextField("DeliveryAddress.Line3", TypeCode.String, 32)); fields.Add(new TextField("DeliveryAddress.Line4", TypeCode.String, 32)); fields.Add(new TextField("DeliveryAddress.Line5", TypeCode.String, 32)); fields.Add(new TextField("CustomerOrderReference", TypeCode.String, 32)); fields.Add(new TextField("Carrier", TypeCode.String, 4)); fields.Add(new TextField("CustomerType", TypeCode.String, 3)); }
/// <summary> /// Sets the parser schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetParserSchema(TextFieldCollection fields) { // Clear fields fields.Clear(); // Add fields for schema fields.Add(new TextField("Type", TypeCode.String, false)); fields.Add(new TextField("OpCoCode", TypeCode.String, false)); fields.Add(new TextField("ShipmentNumber", TypeCode.String, false)); fields.Add(new TextField("DespatchNumber", TypeCode.String, false)); fields.Add(new TextField("LineNumber", TypeCode.Int32, false)); fields.Add(new TextField("ProductCode", TypeCode.String, false)); fields.Add(new TextField("Description1", TypeCode.String, false)); fields.Add(new TextField("Description2", TypeCode.String, false)); fields.Add(new TextField("Quantity", TypeCode.Int32, false)); fields.Add(new TextField("QuantityUnit", TypeCode.String, false)); fields.Add(new TextField("NetWeight", TypeCode.Decimal, false)); fields.Add(new TextField("CustomerReference", TypeCode.String, false)); fields.Add(new TextField("ConversionQuantity", TypeCode.Int32, false)); fields.Add(new TextField("ConversionInstructions", TypeCode.String, false)); fields.Add(new TextField("Volume", TypeCode.Decimal, false)); fields.Add(new TextField("Width", TypeCode.Int32, false)); fields.Add(new TextField("Length", TypeCode.Int32, false)); fields.Add(new TextField("Grammage", TypeCode.Int32, false)); fields.Add(new TextField("Microns", TypeCode.Int32, false)); fields.Add(new TextField("Packing", TypeCode.String, false)); fields.Add(new TextField("IsPanel", TypeCode.Boolean, false)); fields.Add(new TextField("LoadCategoryCode", TypeCode.String, false)); fields.Add(new TextField("ProductGroup", TypeCode.String, false)); fields.Add(new TextField("IsISO9000Approved", TypeCode.Boolean, false)); }
/// <summary> /// Sets the drop schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetDropLineSchema(TextFieldCollection fields) { fields.Add(new TextField("DeliveryDate", TypeCode.DateTime, 10)); fields.Add(new TextField("Depot", TypeCode.String, 18)); fields.Add(new TextField("TripNumber", TypeCode.String, 8)); fields.Add(new TextField("DropSequence", TypeCode.Int32, 3)); fields.Add(new TextField("OrderSequence", TypeCode.Int32, 3)); fields.Add(new TextField("Product", TypeCode.String, 16)); fields.Add(new TextField("OrderCode", TypeCode.String, 22)); fields.Add(new TextField("SiteCode", TypeCode.String, 16)); fields.Add(new TextField("LineCode", TypeCode.Int32, 3)); fields.Add(new TextField("Quantity", TypeCode.Int32, 9)); fields.Add(new TextField("Weight", TypeCode.Single, 10)); fields.Add(new TextField("Volume", TypeCode.Single, 8)); fields.Add(new TextField("Split", TypeCode.Boolean, 1)); ////each field has an extra space between it! //foreach (TextField field in fields) //{ // field.Length += 1; //} ////we don't need an extra space on the last field //fields[fields.Count - 1].Length -= 1; }
/// <summary> /// Sets the parser schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetParserSchema(TextFieldCollection fields) { // Clear fields fields.Clear(); // Add fields for schema fields.Add(new TextField("MessageType", TypeCode.String, false)); // Not used fields.Add(new TextField("OpCoCode", TypeCode.String, false)); fields.Add(new TextField("OpCoSequenceNumber", TypeCode.String, false)); fields.Add(new TextField("ShipmentNumber", TypeCode.String, false)); fields.Add(new TextField("DespatchNumber", TypeCode.String, false)); fields.Add(new TextField("Amendment", TypeCode.Boolean, false)); fields.Add(new TextField("OpCoHeld", TypeCode.Boolean, false)); fields.Add(new TextField("RequiredShipmentDate", TypeCode.DateTime, false)); fields.Add(new TextField("OpCoContact.Name", TypeCode.String, false)); fields.Add(new TextField("TransactionTypeCode", TypeCode.String, false)); fields.Add(new TextField("TransactionSubTypeCode", TypeCode.String, false)); // Not used fields.Add(new TextField("CustomerReference", TypeCode.String, false)); fields.Add(new TextField("Instructions", TypeCode.String, false)); fields.Add(new TextField("RouteCode", TypeCode.String, false)); fields.Add(new TextField("CustomerNumber", TypeCode.String, false)); fields.Add(new TextField("StockWarehouseCode", TypeCode.String, false)); fields.Add(new TextField("SalesBranchCode", TypeCode.String, false)); fields.Add(new TextField("CustomerName", TypeCode.String, false)); fields.Add(new TextField("CustomerAddress.Line1", TypeCode.String, false)); fields.Add(new TextField("CustomerAddress.Line2", TypeCode.String, false)); fields.Add(new TextField("CustomerAddress.Line3", TypeCode.String, false)); fields.Add(new TextField("CustomerAddress.Line4", TypeCode.String, false)); fields.Add(new TextField("CustomerAddress.Line5", TypeCode.String, false)); fields.Add(new TextField("CustomerAddress.PostCode", TypeCode.String, false)); fields.Add(new TextField("ShipmentName", TypeCode.String, false)); fields.Add(new TextField("ShipmentAddress.Line1", TypeCode.String, false)); fields.Add(new TextField("ShipmentAddress.Line2", TypeCode.String, false)); fields.Add(new TextField("ShipmentAddress.Line3", TypeCode.String, false)); fields.Add(new TextField("ShipmentAddress.Line4", TypeCode.String, false)); fields.Add(new TextField("ShipmentAddress.Line5", TypeCode.String, false)); fields.Add(new TextField("ShipmentAddress.PostCode", TypeCode.String, false)); fields.Add(new TextField("ShipmentContact.Name", TypeCode.String, false)); fields.Add(new TextField("ShipmentContact.TelephoneNumber", TypeCode.String, false)); fields.Add(new TextField("ShipmentContact.Email", TypeCode.String, false)); fields.Add(new TextField("AfterTime", TypeCode.String, false)); fields.Add(new TextField("BeforeTime", TypeCode.String, false)); fields.Add(new TextField("TailLiftRequired", TypeCode.Boolean, false)); fields.Add(new TextField("VehicleMaxWeight", TypeCode.Decimal, false)); fields.Add(new TextField("CheckInTimeHHMMSS", TypeCode.String, false)); fields.Add(new TextField("DeliveryWarehouseCode", TypeCode.String, false)); fields.Add(new TextField("OpCoContact.Email", TypeCode.String, false)); fields.Add(new TextField("DivisionCode", TypeCode.String, false)); fields.Add(new TextField("GeneratedDateTime", TypeCode.DateTime, false)); fields.Add(new TextField("GeneratedTimeHHMMSS", TypeCode.String, false)); }
/// <summary> /// Sets the commander sales order lines schema. /// </summary> /// <param name="fields">The fields.</param> public static void SetCommanderSalesOrderLinesSchema(TextFieldCollection fields) { //set-up fields collection, make sure the field names are actually the same as the //CommanderSalesOrderLine class properties so that reflection can be used in the parsing subscriber fields.Clear(); fields.Add(new TextField("LineNumber", TypeCode.Int32, 5)); fields.Add(new TextField("RecordType", TypeCode.Int32, 3)); fields.Add(new TextField("RecordSubType", TypeCode.String, 1)); fields.Add(new TextField("Site", TypeCode.String, 10)); fields.Add(new TextField("OrderReference", TypeCode.String, 20)); fields.Add(new TextField("LineNumber", TypeCode.Int32, 5)); fields.Add(new TextField("ProductCode", TypeCode.String, 20)); fields.Add(new TextField("QuantityOrdered", TypeCode.Int32, 19)); fields.Add(new TextField("CustomerReferenceNumber", TypeCode.String, 20)); fields.Add(new TextField("UOM", TypeCode.String, 10)); fields.Add(new TextField("SpecialInstructions1", TypeCode.String, 33)); fields.Add(new TextField("SpecialInstructions2", TypeCode.String, 33)); fields.Add(new TextField("SpecialInstructions3", TypeCode.String, 33)); fields.Add(new TextField("SpecialInstructions4", TypeCode.String, 33)); fields.Add(new TextField("SpecialInstructions5", TypeCode.String, 33)); }