EDI edifabric x12 813 формат последовательности / проблема расположения

Невозможно переключить "Налоговая информация и сумма" и "Форма группы". "Форма группы" должна стоять на первом месте:

Ниже приведены мои функции для группы форм и TIA, для группы форм EDI Guide сначала до TIA, но после поколения TIA всегда стоит первым.

     public void FGS_FormGroupSummary(G_TFS g_tfs, string assignedId)
     {
         if (g_tfs.G_FGS == null)
         {
             g_tfs.G_FGS = new List<G_FGS>();
         }
         G_FGS formGroup = new G_FGS();
         formGroup.S_FGS = new S_FGS();
         formGroup.S_FGS.D_350_1 = assignedId;
         g_tfs.G_FGS.Add(formGroup);
     }
     public void TIA_TaxInformationAndAmount2(G_TFS g_tfs, string taxInfoCode, string monetaryAmount, string quantity)
     {
         //Tax Information and Amount Segment
         G_TIA tia = new G_TIA();
         g_tfs.G_TIA = new List<G_TIA>();
         tia.S_TIA_2 = new S_TIA_2();

         tia.S_TIA_2.C_C037_2 = new C_C037_2();
         tia.S_TIA_2.C_C001_2 = new C_C001_2();

         tia.S_TIA_2.C_C037_2.D_817_1 = taxInfoCode;                //"5003" = Total Due In Dollars
         tia.S_TIA_2.D_782_2 = monetaryAmount;
         tia.S_TIA_2.D_380_4 = quantity;                            //Quantity
         tia.S_TIA_2.C_C001_2.D_355_1 = X12_ID_355.GA;              //"GA" = Gallons
         g_tfs.G_TIA.Add(tia);
     }

Изображение, прикрепленное ниже, представляет собой код, который вызывает функции выше, вы можете видеть, что я сначала вызываю группу форм перед TIA

Код размещен как изображение. Извините, пользователи программы чтения с экрана, человек, который задал этот вопрос, не заботится о вас

2 ответа

В определении класса для 813 измените это:

    [Serializable]
    [XmlType(AnonymousType=true, Namespace="www.edifabric.com/x12")]
    [XmlRoot(Namespace="www.edifabric.com/x12", IsNullable=false)]
    public class G_TFS {
    [XmlElement(Order=0)]
    public S_TFS S_TFS {get; set;}
    [XmlElement("S_REF_2",Order=1)]
    public List<S_REF_2> S_REF_2 {get; set;}
    [XmlElement("S_DTM_2",Order=2)]
    public List<S_DTM_2> S_DTM_2 {get; set;}
    [XmlElement("S_MSG",Order=3)]
    public List<S_MSG> S_MSG {get; set;}
    [XmlElement("G_N1_2",Order=4)]
    public List<G_N1_2> G_N1_2 {get; set;}
    [XmlElement("G_TIA",Order=5)]
    public List<G_TIA> G_TIA {get; set;}
    [XmlElement("G_FGS",Order=6)]
    public List<G_FGS> G_FGS {get; set;}
    }

к этому:

    [Serializable]
    [XmlType(AnonymousType=true, Namespace="www.edifabric.com/x12")]
    [XmlRoot(Namespace="www.edifabric.com/x12", IsNullable=false)]
    public class G_TFS {
    [XmlElement(Order=0)]
    public S_TFS S_TFS {get; set;}
    [XmlElement("S_REF_2",Order=1)]
    public List<S_REF_2> S_REF_2 {get; set;}
    [XmlElement("S_DTM_2",Order=2)]
    public List<S_DTM_2> S_DTM_2 {get; set;}
    [XmlElement("S_MSG",Order=3)]
    public List<S_MSG> S_MSG {get; set;}
    [XmlElement("G_N1_2",Order=4)]
    public List<G_N1_2> G_N1_2 {get; set;}        
    [XmlElement("G_FGS",Order=5)]
    public List<G_FGS> G_FGS {get; set;}
    [XmlElement("G_TIA",Order=6)]
    public List<G_TIA> G_TIA {get; set;}
    }

Генерация следует последовательности определения класса. Какой набор транзакций и версия это? Если вам нужно поменять местами эти два, то вам нужно поменять их местами в определении класса.

Другие вопросы по тегам