public override List <Error> Validate(List <Error> errors) { RequireString(this, x => x.TaskID, 14, errors, "A"); ValidateString(this, x => x.TaskDesignator, 32, errors, "B"); ValidateString(this, x => x.CustomerIdRef, 14, errors, "C"); ValidateString(this, x => x.FarmIdRef, 14, errors, "D"); ValidateString(this, x => x.PartFieldIdRef, 14, errors, "E"); ValidateString(this, x => x.ResponsibleWorkerIdRef, 14, errors, "F"); ValidateEnumerationValue(typeof(ISOTaskStatus), TaskStatusInt, errors); if (DefaultTreatmentZoneCode.HasValue) { ValidateRange(this, x => x.DefaultTreatmentZoneCode.Value, 0, 254, errors, "H"); } if (PositionLostTreatmentZoneCode.HasValue) { ValidateRange(this, x => x.PositionLostTreatmentZoneCode.Value, 0, 254, errors, "I"); } if (OutOfFieldTreatmentZoneCode.HasValue) { ValidateRange(this, x => x.OutOfFieldTreatmentZoneCode.Value, 0, 254, errors, "J"); } TreatmentZones.ForEach(i => i.Validate(errors)); Times.ForEach(i => i.Validate(errors)); if (OperationTechPractice != null) { OperationTechPractice.Validate(errors); } WorkerAllocations.ForEach(i => i.Validate(errors)); DeviceAllocations.ForEach(i => i.Validate(errors)); Connections.ForEach(i => i.Validate(errors)); ProductAllocations.ForEach(i => i.Validate(errors)); DataLogTriggers.ForEach(i => i.Validate(errors)); CommentAllocations.ForEach(i => i.Validate(errors)); TimeLogs.ForEach(i => i.Validate(errors)); if (Grid != null) { Grid.Validate(errors); } GuidanceAllocations.ForEach(i => i.Validate(errors)); return(errors); }
public override XmlWriter WriteXML(XmlWriter xmlBuilder) { xmlBuilder.WriteStartElement("TSK"); xmlBuilder.WriteXmlAttribute("A", TaskID); xmlBuilder.WriteXmlAttribute("B", TaskDesignator); xmlBuilder.WriteXmlAttribute("C", CustomerIdRef); xmlBuilder.WriteXmlAttribute("D", FarmIdRef); xmlBuilder.WriteXmlAttribute("E", PartFieldIdRef); xmlBuilder.WriteXmlAttribute("F", ResponsibleWorkerIdRef); xmlBuilder.WriteXmlAttribute("G", ((int)TaskStatus).ToString()); xmlBuilder.WriteXmlAttribute <int>("H", DefaultTreatmentZoneCode); xmlBuilder.WriteXmlAttribute <int>("I", PositionLostTreatmentZoneCode); xmlBuilder.WriteXmlAttribute <int>("J", OutOfFieldTreatmentZoneCode); if (Grid != null) { Grid.WriteXML(xmlBuilder); } if (OperationTechPractice != null) { OperationTechPractice.WriteXML(xmlBuilder); } foreach (ISOTreatmentZone item in TreatmentZones) { item.WriteXML(xmlBuilder); } foreach (ISOTime item in Times) { item.WriteXML(xmlBuilder); } foreach (ISOWorkerAllocation item in WorkerAllocations) { item.WriteXML(xmlBuilder); } foreach (ISODeviceAllocation item in DeviceAllocations) { item.WriteXML(xmlBuilder); } foreach (ISOConnection item in Connections) { item.WriteXML(xmlBuilder); } foreach (ISOProductAllocation item in ProductAllocations) { item.WriteXML(xmlBuilder); } foreach (ISODataLogTrigger item in DataLogTriggers) { item.WriteXML(xmlBuilder); } foreach (ISOCommentAllocation item in CommentAllocations) { item.WriteXML(xmlBuilder); } foreach (ISOTimeLog item in TimeLogs) { item.WriteXML(xmlBuilder); } foreach (ISOGuidanceAllocation item in GuidanceAllocations) { item.WriteXML(xmlBuilder); } xmlBuilder.WriteEndElement(); return(xmlBuilder); }