Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }