Documentation

X12 850 EDI Template

Article author
Admin
  • Updated

X12 850 EDI Template

EDI Tools for .NET uses C# classes to represent the layout of EDI transactions. These classes are nothing more than standard C# .NET classes with some extra markup and are referred to as EDI templates.

 

X12 850 Specification

X12 850 specification is available at:

 

X12 850 Sample File

X12 850 sample file is available at:

 

EDI Tools for .NET C# Examples

The example below is part of the EDI Tools for .NET C# Code Examples.

Download EDI C# Examples

The Parse & Generate X12 850 code is also available on GitHub

 

Additional operations for X12 850

 

EDI template for X12 850


namespace EdiFabric.Templates.X12004010
{
    using System;
    using System.Collections.Generic;
    using System.Runtime.Serialization;
    using EdiFabric.Core.Annotations.Edi;
    using EdiFabric.Core.Annotations.Validation;
    using EdiFabric.Core.Model.Edi;
    using EdiFabric.Core.Model.Edi.X12;
    using System.Xml.Serialization;
    
    
    ///
    /// Loop for Advertising Demographic Information
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(ADV))]
    public class Loop_ADV_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Advertising Demographic Information
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual ADV ADV { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List DTM { get; set; }
        ///
        /// Text
        /// 
        [DataMember]
        [Pos(3)]
        public virtual List MTX { get; set; }
    }
    
    ///
    /// Loop for Monetary Amount
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(AMT))]
    public class Loop_AMT_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Monetary Amount
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual AMT AMT { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List REF { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [Pos(3)]
        public virtual DTM DTM { get; set; }
        ///
        /// Percent Amounts
        /// 
        [DataMember]
        [Pos(4)]
        public virtual List PCT { get; set; }
        ///
        /// Loop for Type of Financial Accounting Data
        /// 
        [DataMember]
        [Pos(5)]
        public virtual List FA1Loop { get; set; }
    }
    
    ///
    /// Loop for Monetary Amount
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(AMT))]
    public class Loop_AMT_850_2
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Monetary Amount
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual AMT AMT { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Pos(2)]
        public virtual REF REF { get; set; }
        ///
        /// Percent Amounts
        /// 
        [DataMember]
        [Pos(3)]
        public virtual List PCT { get; set; }
    }
    
    ///
    /// Loop for Contract and Cost Accounting Standards Data
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(CB1))]
    public class Loop_CB1_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Contract and Cost Accounting Standards Data
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual CB1 CB1 { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(20)]
        [Pos(2)]
        public virtual List REF { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(3)]
        public virtual List DTM { get; set; }
        ///
        /// Lead Time
        /// 
        [DataMember]
        [Pos(4)]
        public virtual LDT LDT { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [ListCount(50)]
        [Pos(5)]
        public virtual List MSG { get; set; }
    }
    
    ///
    /// Loop for Pricing Information
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(CTP))]
    public class Loop_CTP_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Pricing Information
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual CTP CTP { get; set; }
        ///
        /// Currency
        /// 
        [DataMember]
        [Pos(2)]
        public virtual CUR CUR { get; set; }
    }
    
    ///
    /// Loop for Transaction Totals
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(CTT))]
    public class Loop_CTT_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Transaction Totals
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual CTT CTT { get; set; }
        ///
        /// Monetary Amount
        /// 
        [DataMember]
        [Pos(2)]
        public virtual AMT AMT { get; set; }
    }
    
    ///
    /// Loop for Type of Financial Accounting Data
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(FA1))]
    public class Loop_FA1_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Type of Financial Accounting Data
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual FA1 FA1 { get; set; }
        ///
        /// Accounting Data
        /// 
        [DataMember]
        [Required]
        [Pos(2)]
        public virtual List FA2 { get; set; }
    }
    
    ///
    /// Loop for Lead Time
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(LDT))]
    public class Loop_LDT_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Lead Time
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual LDT LDT { get; set; }
        ///
        /// Quantity
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List QTY { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [Pos(3)]
        public virtual MSG MSG { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(3)]
        [Pos(4)]
        public virtual List REF { get; set; }
        ///
        /// Loop for Code Source Information
        /// 
        [DataMember]
        [Pos(5)]
        public virtual List LMLoop { get; set; }
    }
    
    ///
    /// Loop for Lead Time
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(LDT))]
    public class Loop_LDT_850_2
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Lead Time
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual LDT LDT { get; set; }
        ///
        /// Marks and Numbers
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(2)]
        public virtual List MAN { get; set; }
        ///
        /// Quantity
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(3)]
        public virtual List QTY { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [Pos(4)]
        public virtual MSG MSG { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(3)]
        [Pos(5)]
        public virtual List REF { get; set; }
    }
    
    ///
    /// Loop for Code Source Information
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(LM))]
    public class Loop_LM_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Code Source Information
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual LM LM { get; set; }
        ///
        /// Industry Code
        /// 
        [DataMember]
        [Required]
        [Pos(2)]
        public virtual List LQ { get; set; }
    }
    
    ///
    /// Loop for Loop Header
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(LS))]
    public class Loop_LS_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Loop Header
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual LS LS { get; set; }
        ///
        /// Loop for Lead Time
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List LDTLoop { get; set; }
        ///
        /// Loop Trailer
        /// 
        [DataMember]
        [Required]
        [Pos(3)]
        public virtual LE LE { get; set; }
    }
    
    ///
    /// Loop for Name
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(N1))]
    public partial class Loop_N1_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Name
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual N1 N1 { get; set; }
        ///
        /// Additional Name Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(2)]
        public virtual List N2 { get; set; }
        ///
        /// Address Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(3)]
        public virtual List N3 { get; set; }
        ///
        /// Geographic Location
        /// 
        [DataMember]
        [Pos(4)]
        public virtual List N4 { get; set; }
        ///
        /// Location ID Component
        /// 
        [DataMember]
        [Pos(5)]
        public virtual List NX2 { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(6)]
        public virtual List REF { get; set; }
        ///
        /// Administrative Communications Contact
        /// 
        [DataMember]
        [Pos(7)]
        public virtual List PER { get; set; }
        ///
        /// Service Characteristic Identification
        /// 
        [DataMember]
        [Pos(8)]
        public virtual List SI { get; set; }
        ///
        /// F.O.B. Related Instructions
        /// 
        [DataMember]
        [Pos(9)]
        public virtual FOB FOB { get; set; }
        ///
        /// Carrier Details (Quantity and Weight)
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(10)]
        public virtual List TD1 { get; set; }
        ///
        /// Carrier Details (Routing Sequence/Transit Time)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(11)]
        public virtual List TD5 { get; set; }
        ///
        /// Carrier Details (Equipment)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(12)]
        public virtual List TD3 { get; set; }
        ///
        /// Carrier Details (Special Handling, or Hazardous Materials, or Both)
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(13)]
        public virtual List TD4 { get; set; }
        ///
        /// Marking, Packaging, Loading
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(14)]
        public virtual List PKG { get; set; }
    }
    
    ///
    /// Loop for Name
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(N1))]
    public class Loop_N1_850_2
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Name
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual N1 N1 { get; set; }
        ///
        /// Additional Name Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(2)]
        public virtual List N2 { get; set; }
        ///
        /// Address Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(3)]
        public virtual List N3 { get; set; }
        ///
        /// Geographic Location
        /// 
        [DataMember]
        [Pos(4)]
        public virtual N4 N4 { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(20)]
        [Pos(5)]
        public virtual List REF { get; set; }
        ///
        /// Contact
        /// 
        [DataMember]
        [Pos(6)]
        public virtual G61 G61 { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [ListCount(50)]
        [Pos(7)]
        public virtual List MSG { get; set; }
    }
    
    ///
    /// Loop for Name
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(N1))]
    public class Loop_N1_850_3
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Name
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual N1 N1 { get; set; }
        ///
        /// Additional Name Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(2)]
        public virtual List N2 { get; set; }
        ///
        /// Address Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(3)]
        public virtual List N3 { get; set; }
        ///
        /// Geographic Location
        /// 
        [DataMember]
        [Pos(4)]
        public virtual N4 N4 { get; set; }
        ///
        /// Quantity
        /// 
        [DataMember]
        [Pos(5)]
        public virtual List QTY { get; set; }
        ///
        /// Location ID Component
        /// 
        [DataMember]
        [Pos(6)]
        public virtual List NX2 { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(7)]
        public virtual List REF { get; set; }
        ///
        /// Administrative Communications Contact
        /// 
        [DataMember]
        [ListCount(3)]
        [Pos(8)]
        public virtual List PER { get; set; }
        ///
        /// Service Characteristic Identification
        /// 
        [DataMember]
        [Pos(9)]
        public virtual List SI { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [Pos(10)]
        public virtual DTM DTM { get; set; }
        ///
        /// F.O.B. Related Instructions
        /// 
        [DataMember]
        [Pos(11)]
        public virtual FOB FOB { get; set; }
        ///
        /// Line Item Schedule
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(12)]
        public virtual List SCH { get; set; }
        ///
        /// Carrier Details (Quantity and Weight)
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(13)]
        public virtual List TD1 { get; set; }
        ///
        /// Carrier Details (Routing Sequence/Transit Time)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(14)]
        public virtual List TD5 { get; set; }
        ///
        /// Carrier Details (Equipment)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(15)]
        public virtual List TD3 { get; set; }
        ///
        /// Carrier Details (Special Handling, or Hazardous Materials, or Both)
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(16)]
        public virtual List TD4 { get; set; }
        ///
        /// Marking, Packaging, Loading
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(17)]
        public virtual List PKG { get; set; }
        ///
        /// Loop for Lead Time
        /// 
        [DataMember]
        [Pos(18)]
        public virtual List LDTLoop { get; set; }
    }
    
    ///
    /// Loop for Name
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(N1))]
    public class Loop_N1_850_4
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Name
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual N1 N1 { get; set; }
        ///
        /// Additional Name Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(2)]
        public virtual List N2 { get; set; }
        ///
        /// Address Information
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(3)]
        public virtual List N3 { get; set; }
        ///
        /// Geographic Location
        /// 
        [DataMember]
        [Pos(4)]
        public virtual N4 N4 { get; set; }
        ///
        /// Location ID Component
        /// 
        [DataMember]
        [Pos(5)]
        public virtual List NX2 { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(6)]
        public virtual List REF { get; set; }
        ///
        /// Administrative Communications Contact
        /// 
        [DataMember]
        [ListCount(3)]
        [Pos(7)]
        public virtual List PER { get; set; }
        ///
        /// Service Characteristic Identification
        /// 
        [DataMember]
        [Pos(8)]
        public virtual List SI { get; set; }
    }
    
    ///
    /// Loop for Reference Identification
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(N9))]
    public class Loop_N9_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual N9 N9 { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List DTM { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [ListCount(1000)]
        [Pos(3)]
        public virtual List MSG { get; set; }
    }
    
    ///
    /// Loop for Reference Identification
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(N9))]
    public class Loop_N9_850_2
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual N9 N9 { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List DTM { get; set; }
        ///
        /// Measurements
        /// 
        [DataMember]
        [ListCount(40)]
        [Pos(3)]
        public virtual List MEA { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [ListCount(1000)]
        [Pos(4)]
        public virtual List MSG { get; set; }
    }
    
    ///
    /// Loop for Reference Identification
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(N9))]
    public class Loop_N9_850_3
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual N9 N9 { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List DTM { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [Pos(3)]
        public virtual List MSG { get; set; }
    }
    
    ///
    /// Loop for Product/Item Description
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(PID))]
    public class Loop_PID_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Product/Item Description
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual PID PID { get; set; }
        ///
        /// Measurements
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(2)]
        public virtual List MEA { get; set; }
    }
    
    ///
    /// Loop for Marking, Packaging, Loading
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(PKG))]
    public class Loop_PKG_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Marking, Packaging, Loading
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual PKG PKG { get; set; }
        ///
        /// Measurements
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List MEA { get; set; }
    }
    
    ///
    /// Loop for Baseline Item Data
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(PO1))]
    public class Loop_PO1_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Baseline Item Data
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual PO1 PO1 { get; set; }
        ///
        /// Item Identification
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List LIN { get; set; }
        ///
        /// Service Characteristic Identification
        /// 
        [DataMember]
        [Pos(3)]
        public virtual List SI { get; set; }
        ///
        /// Currency
        /// 
        [DataMember]
        [Pos(4)]
        public virtual CUR CUR { get; set; }
        ///
        /// Contract Information
        /// 
        [DataMember]
        [Pos(5)]
        public virtual CN1 CN1 { get; set; }
        ///
        /// Additional Item Detail
        /// 
        [DataMember]
        [ListCount(25)]
        [Pos(6)]
        public virtual List PO3 { get; set; }
        ///
        /// Loop for Pricing Information
        /// 
        [DataMember]
        [Pos(7)]
        public virtual List CTPLoop { get; set; }
        ///
        /// Period Amount
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(8)]
        public virtual List PAM { get; set; }
        ///
        /// Measurements
        /// 
        [DataMember]
        [ListCount(40)]
        [Pos(9)]
        public virtual List MEA { get; set; }
        ///
        /// Loop for Product/Item Description
        /// 
        [DataMember]
        [ListCount(1000)]
        [Pos(10)]
        public virtual List PIDLoop { get; set; }
        ///
        /// Paperwork
        /// 
        [DataMember]
        [ListCount(25)]
        [Pos(11)]
        public virtual List PWK { get; set; }
        ///
        /// Item Physical Details
        /// 
        [DataMember]
        [Pos(12)]
        public virtual List PO4 { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Pos(13)]
        public virtual List REF { get; set; }
        ///
        /// Administrative Communications Contact
        /// 
        [DataMember]
        [ListCount(3)]
        [Pos(14)]
        public virtual List PER { get; set; }
        ///
        /// Loop for Service, Promotion, Allowance, or Charge Information
        /// 
        [DataMember]
        [ListCount(25)]
        [Pos(15)]
        public virtual List SACLoop { get; set; }
        ///
        /// Conditions of Sale
        /// 
        [DataMember]
        [Pos(16)]
        public virtual IT8 IT8 { get; set; }
        ///
        /// Sales Requirements
        /// 
        [DataMember]
        [Pos(17)]
        public virtual List CSH { get; set; }
        ///
        /// Terms of Sale/Deferred Terms of Sale
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(18)]
        public virtual List ITD { get; set; }
        ///
        /// Discount Detail
        /// 
        [DataMember]
        [ListCount(20)]
        [Pos(19)]
        public virtual List DIS { get; set; }
        ///
        /// Installment Information
        /// 
        [DataMember]
        [Pos(20)]
        public virtual INC INC { get; set; }
        ///
        /// Tax Reference
        /// 
        [DataMember]
        [Pos(21)]
        public virtual List TAX { get; set; }
        ///
        /// F.O.B. Related Instructions
        /// 
        [DataMember]
        [Pos(22)]
        public virtual List FOB { get; set; }
        ///
        /// Destination Quantity
        /// 
        [DataMember]
        [ListCount(500)]
        [Pos(23)]
        public virtual List SDQ { get; set; }
        ///
        /// Additional Item Data
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(24)]
        public virtual List IT3 { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(25)]
        public virtual List DTM { get; set; }
        ///
        /// Commodity
        /// 
        [DataMember]
        [Pos(26)]
        public virtual List TC2 { get; set; }
        ///
        /// Carrier Details (Quantity and Weight)
        /// 
        [DataMember]
        [Pos(27)]
        public virtual TD1 TD1 { get; set; }
        ///
        /// Carrier Details (Routing Sequence/Transit Time)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(28)]
        public virtual List TD5 { get; set; }
        ///
        /// Carrier Details (Equipment)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(29)]
        public virtual List TD3 { get; set; }
        ///
        /// Carrier Details (Special Handling, or Hazardous Materials, or Both)
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(30)]
        public virtual List TD4 { get; set; }
        ///
        /// Percent Amounts
        /// 
        [DataMember]
        [Pos(31)]
        public virtual List PCT { get; set; }
        ///
        /// Marks and Numbers
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(32)]
        public virtual List MAN { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [Pos(33)]
        public virtual List MSG { get; set; }
        ///
        /// Specification Identifier
        /// 
        [DataMember]
        [Pos(34)]
        public virtual List SPI { get; set; }
        ///
        /// Tax Information
        /// 
        [DataMember]
        [Pos(35)]
        public virtual List TXI { get; set; }
        ///
        /// Restrictions/Conditions
        /// 
        [DataMember]
        [Pos(36)]
        public virtual List CTB { get; set; }
        ///
        /// Loop for Quantity
        /// 
        [DataMember]
        [Pos(37)]
        public virtual List QTYLoop { get; set; }
        ///
        /// Loop for Line Item Schedule
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(38)]
        public virtual List SCHLoop { get; set; }
        ///
        /// Loop for Marking, Packaging, Loading
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(39)]
        public virtual List PKGLoop { get; set; }
        ///
        /// Loop for Loop Header
        /// 
        [DataMember]
        [Pos(40)]
        public virtual Loop_LS_850 LSLoop { get; set; }
        ///
        /// Loop for Reference Identification
        /// 
        [DataMember]
        [ListCount(1000)]
        [Pos(41)]
        public virtual List N9Loop { get; set; }
        ///
        /// Loop for Name
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(42)]
        public virtual List N1Loop { get; set; }
        ///
        /// Loop for Subline Item Detail
        /// 
        [DataMember]
        [ListCount(1000)]
        [Pos(43)]
        public virtual List SLNLoop { get; set; }
        ///
        /// Loop for Monetary Amount
        /// 
        [DataMember]
        [Pos(44)]
        public virtual List AMTLoop { get; set; }
        ///
        /// Loop for Code Source Information
        /// 
        [DataMember]
        [Pos(45)]
        public virtual List LMLoop { get; set; }
    }
    
    ///
    /// Loop for Quantity
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(QTY))]
    public class Loop_QTY_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Quantity
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual QTY QTY { get; set; }
        ///
        /// Service Characteristic Identification
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List SI { get; set; }
    }
    
    ///
    /// Loop for Service, Promotion, Allowance, or Charge Information
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(SAC))]
    public class Loop_SAC_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Service, Promotion, Allowance, or Charge Information
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual SAC SAC { get; set; }
        ///
        /// Currency
        /// 
        [DataMember]
        [Pos(2)]
        public virtual CUR CUR { get; set; }
    }
    
    ///
    /// Loop for Service, Promotion, Allowance, or Charge Information
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(SAC))]
    public class Loop_SAC_850_2
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Service, Promotion, Allowance, or Charge Information
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual SAC SAC { get; set; }
        ///
        /// Currency
        /// 
        [DataMember]
        [Pos(2)]
        public virtual CUR CUR { get; set; }
        ///
        /// Pricing Information
        /// 
        [DataMember]
        [Pos(3)]
        public virtual CTP CTP { get; set; }
    }
    
    ///
    /// Loop for Line Item Schedule
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(SCH))]
    public class Loop_SCH_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Line Item Schedule
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual SCH SCH { get; set; }
        ///
        /// Carrier Details (Quantity and Weight)
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(2)]
        public virtual List TD1 { get; set; }
        ///
        /// Carrier Details (Routing Sequence/Transit Time)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(3)]
        public virtual List TD5 { get; set; }
        ///
        /// Carrier Details (Equipment)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(4)]
        public virtual List TD3 { get; set; }
        ///
        /// Carrier Details (Special Handling, or Hazardous Materials, or Both)
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(5)]
        public virtual List TD4 { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Pos(6)]
        public virtual List REF { get; set; }
    }
    
    ///
    /// Loop for Subline Item Detail
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(SLN))]
    public class Loop_SLN_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Subline Item Detail
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual SLN SLN { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [Pos(2)]
        public virtual List MSG { get; set; }
        ///
        /// Service Characteristic Identification
        /// 
        [DataMember]
        [Pos(3)]
        public virtual List SI { get; set; }
        ///
        /// Product/Item Description
        /// 
        [DataMember]
        [ListCount(1000)]
        [Pos(4)]
        public virtual List PID { get; set; }
        ///
        /// Additional Item Detail
        /// 
        [DataMember]
        [ListCount(104)]
        [Pos(5)]
        public virtual List PO3 { get; set; }
        ///
        /// Commodity
        /// 
        [DataMember]
        [Pos(6)]
        public virtual List TC2 { get; set; }
        ///
        /// Advertising Demographic Information
        /// 
        [DataMember]
        [Pos(7)]
        public virtual List ADV { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(8)]
        public virtual List DTM { get; set; }
        ///
        /// Pricing Information
        /// 
        [DataMember]
        [ListCount(25)]
        [Pos(9)]
        public virtual List CTP { get; set; }
        ///
        /// Period Amount
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(10)]
        public virtual List PAM { get; set; }
        ///
        /// Item Physical Details
        /// 
        [DataMember]
        [Pos(11)]
        public virtual PO4 PO4 { get; set; }
        ///
        /// Tax Reference
        /// 
        [DataMember]
        [ListCount(3)]
        [Pos(12)]
        public virtual List TAX { get; set; }
        ///
        /// Loop for Reference Identification
        /// 
        [DataMember]
        [Pos(13)]
        public virtual List N9Loop { get; set; }
        ///
        /// Loop for Service, Promotion, Allowance, or Charge Information
        /// 
        [DataMember]
        [ListCount(25)]
        [Pos(14)]
        public virtual List SACLoop { get; set; }
        ///
        /// Loop for Quantity
        /// 
        [DataMember]
        [Pos(15)]
        public virtual List QTYLoop { get; set; }
        ///
        /// Loop for Name
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(16)]
        public virtual List N1Loop { get; set; }
    }
    
    ///
    /// Loop for Specification Identifier
    /// 
    [Serializable()]
    [DataContract()]
    [Group(typeof(SPI))]
    public class Loop_SPI_850
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Specification Identifier
        /// 
        [DataMember]
        [Required]
        [Pos(1)]
        public virtual SPI SPI { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(2)]
        public virtual List REF { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(3)]
        public virtual List DTM { get; set; }
        ///
        /// Message Text
        /// 
        [DataMember]
        [ListCount(50)]
        [Pos(4)]
        public virtual List MSG { get; set; }
        ///
        /// Loop for Name
        /// 
        [DataMember]
        [ListCount(20)]
        [Pos(5)]
        public virtual List N1Loop { get; set; }
        ///
        /// Loop for Contract and Cost Accounting Standards Data
        /// 
        [DataMember]
        [Pos(6)]
        public virtual List CB1Loop { get; set; }
    }
    
    ///
    /// Purchase Order
    /// 
    [Serializable()]
    [DataContract()]
    [Message("X12", "004010", "850")]
    public class TS850 : EdiMessage
    {
        
        [XmlIgnore]
        [IgnoreDataMember]
        public int Id { get; set; }
        ///
        /// Transaction Set Header
        /// 
        [DataMember]
        [Pos(1)]
        public virtual ST ST { get; set; }
        ///
        /// Beginning Segment for Purchase Order
        /// 
        [DataMember]
        [Required]
        [Pos(2)]
        public virtual BEG BEG { get; set; }
        ///
        /// Currency
        /// 
        [DataMember]
        [Pos(3)]
        public virtual CUR CUR { get; set; }
        ///
        /// Reference Identification
        /// 
        [DataMember]
        [Pos(4)]
        public virtual List REF { get; set; }
        ///
        /// Administrative Communications Contact
        /// 
        [DataMember]
        [ListCount(3)]
        [Pos(5)]
        public virtual List PER { get; set; }
        ///
        /// Tax Reference
        /// 
        [DataMember]
        [Pos(6)]
        public virtual List TAX { get; set; }
        ///
        /// F.O.B. Related Instructions
        /// 
        [DataMember]
        [Pos(7)]
        public virtual List FOB { get; set; }
        ///
        /// Pricing Information
        /// 
        [DataMember]
        [Pos(8)]
        public virtual List CTP { get; set; }
        ///
        /// Period Amount
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(9)]
        public virtual List PAM { get; set; }
        ///
        /// Sales Requirements
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(10)]
        public virtual List CSH { get; set; }
        ///
        /// Commodity
        /// 
        [DataMember]
        [Pos(11)]
        public virtual List TC2 { get; set; }
        ///
        /// Loop for Service, Promotion, Allowance, or Charge Information
        /// 
        [DataMember]
        [ListCount(25)]
        [Pos(12)]
        public virtual List SACLoop { get; set; }
        ///
        /// Terms of Sale/Deferred Terms of Sale
        /// 
        [DataMember]
        [Pos(13)]
        public virtual List ITD { get; set; }
        ///
        /// Discount Detail
        /// 
        [DataMember]
        [ListCount(20)]
        [Pos(14)]
        public virtual List DIS { get; set; }
        ///
        /// Installment Information
        /// 
        [DataMember]
        [Pos(15)]
        public virtual INC INC { get; set; }
        ///
        /// Date/Time Reference
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(16)]
        public virtual List DTM { get; set; }
        ///
        /// Lead Time
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(17)]
        public virtual List LDT { get; set; }
        ///
        /// Item Identification
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(18)]
        public virtual List LIN { get; set; }
        ///
        /// Service Characteristic Identification
        /// 
        [DataMember]
        [Pos(19)]
        public virtual List SI { get; set; }
        ///
        /// Product/Item Description
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(20)]
        public virtual List PID { get; set; }
        ///
        /// Measurements
        /// 
        [DataMember]
        [ListCount(40)]
        [Pos(21)]
        public virtual List MEA { get; set; }
        ///
        /// Paperwork
        /// 
        [DataMember]
        [ListCount(25)]
        [Pos(22)]
        public virtual List PWK { get; set; }
        ///
        /// Marking, Packaging, Loading
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(23)]
        public virtual List PKG { get; set; }
        ///
        /// Carrier Details (Quantity and Weight)
        /// 
        [DataMember]
        [ListCount(2)]
        [Pos(24)]
        public virtual List TD1 { get; set; }
        ///
        /// Carrier Details (Routing Sequence/Transit Time)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(25)]
        public virtual List TD5 { get; set; }
        ///
        /// Carrier Details (Equipment)
        /// 
        [DataMember]
        [ListCount(12)]
        [Pos(26)]
        public virtual List TD3 { get; set; }
        ///
        /// Carrier Details (Special Handling, or Hazardous Materials, or Both)
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(27)]
        public virtual List TD4 { get; set; }
        ///
        /// Marks and Numbers
        /// 
        [DataMember]
        [ListCount(10)]
        [Pos(28)]
        public virtual List MAN { get; set; }
        ///
        /// Percent Amounts
        /// 
        [DataMember]
        [Pos(29)]
        public virtual List PCT { get; set; }
        ///
        /// Restrictions/Conditions
        /// 
        [DataMember]
        [ListCount(5)]
        [Pos(30)]
        public virtual List CTB { get; set; }
        ///
        /// Tax Information
        /// 
        [DataMember]
        [Pos(31)]
        public virtual List TXI { get; set; }
        ///
        /// Loop for Monetary Amount
        /// 
        [DataMember]
        [Pos(32)]
        public virtual List AMTLoop { get; set; }
        ///
        /// Loop for Reference Identification
        /// 
        [DataMember]
        [ListCount(1000)]
        [Pos(33)]
        public virtual List N9Loop { get; set; }
        ///
        /// Loop for Name
        /// 
        [DataMember]
        [ListCount(200)]
        [Pos(34)]
        public virtual List N1Loop { get; set; }
        ///
        /// Loop for Code Source Information
        /// 
        [DataMember]
        [Pos(35)]
        public virtual List LMLoop { get; set; }
        ///
        /// Loop for Specification Identifier
        /// 
        [DataMember]
        [Pos(36)]
        public virtual List SPILoop { get; set; }
        ///
        /// Loop for Advertising Demographic Information
        /// 
        [DataMember]
        [Pos(37)]
        public virtual List ADVLoop { get; set; }
        ///
        /// Loop for Baseline Item Data
        /// 
        [DataMember]
        [Required]
        [ListCount(100000)]
        [Pos(38)]
        public virtual List PO1Loop { get; set; }
        ///
        /// Loop for Transaction Totals
        /// 
        [DataMember]
        [Pos(39)]
        public virtual Loop_CTT_850 CTTLoop { get; set; }
        ///
        /// Transaction Set Trailer
        /// 
        [DataMember]
        [Pos(40)]
        public virtual SE SE { get; set; }
    }
}
Share this:

Was this article helpful?

Comments

0 comments

Please sign in to leave a comment.