Пример #1
0
        public void PopulaTagInfAdic(dsDanfe dsdanfe, XmlDocument xml, string CodinfNfeId)
        {

            XmlNodeList xndInfAdic = xml.GetElementsByTagName("infAdic");
            XmlNodeList xndObsCont = xml.GetElementsByTagName("obsCont");
            XmlNodeList xndObsFisco = xml.GetElementsByTagName("obsFisco");
            XmlNodeList xndprocRef = xml.GetElementsByTagName("procRef");

            drInfAdic = dsdanfe.infAdic.NewinfAdicRow();
            drObsCont = dsdanfe.obsCont.NewobsContRow();
            drFat = dsdanfe.fat.NewfatRow();
            drDup = dsdanfe.dup.NewdupRow();

            if (xndInfAdic.Count > 0)
            {
                for (int i = 0; i < xndInfAdic.Count; i++)
                {
                    int infNFe = dsdanfe.infAdic.Count;
                    int infAdicID = 0;
                    if (dsdanfe.infAdic.Count > 0)
                    {
                        infAdicID = dsdanfe.infAdic.Count + 1;
                    }
                    else
                    {
                        infAdicID = i + 1;
                    }

                    // qtde de nodes 
                    for (int j = 0; j < xndInfAdic[i].ChildNodes.Count; j++)
                    {
                        populaDadosInfAdic(xndInfAdic[i].ChildNodes[j].LocalName, xndInfAdic[i].ChildNodes[j].InnerText, infAdicID.ToString(), CodinfNfeId);
                    }
                    if (xndInfAdic[i].ChildNodes.Count > 0)
                    {
                        dsdanfe.infAdic.AddinfAdicRow(drInfAdic);
                        drInfAdic = dsdanfe.infAdic.NewinfAdicRow();
                    }

                }
            }

            if (xndObsCont.Count > 0)
            {
                for (int i = 0; i < xndObsCont.Count; i++)
                {
                    int infAdicID = i + 1;
                    // qtde de nodes 
                    for (int j = 0; j < xndObsCont[i].ChildNodes.Count; j++)
                    {
                        populaDadosObsCont(xndObsCont[i].ChildNodes[j].LocalName, xndObsCont[i].ChildNodes[j].InnerText, infAdicID.ToString());
                    }
                    dsdanfe.obsCont.AddobsContRow(drObsCont);
                    drObsCont = dsdanfe.obsCont.NewobsContRow();
                }
            }

            if (xndObsFisco.Count > 0)
            {
                for (int i = 0; i < xndObsFisco.Count; i++)
                {
                    int infAdicID = i + 1;
                    // qtde de nodes 
                    for (int j = 0; j < xndObsFisco[i].ChildNodes.Count; j++)
                    {
                        populaDadosObsFisco(xndObsFisco[i].ChildNodes[j].LocalName, xndObsFisco[i].ChildNodes[j].InnerText, infAdicID.ToString());
                    }
                    dsdanfe.obsFisco.AddobsFiscoRow(drObsFisco);
                    drObsFisco = dsdanfe.obsFisco.NewobsFiscoRow();
                }
            }

            if (xndprocRef.Count > 0)
            {
                for (int i = 0; i < xndprocRef.Count; i++)
                {
                    int infAdicID = i + 1;
                    // qtde de nodes 
                    for (int j = 0; j < xndprocRef[i].ChildNodes.Count; j++)
                    {
                        populaDadosProcRef(xndprocRef[i].ChildNodes[j].LocalName, xndprocRef[i].ChildNodes[j].InnerText, infAdicID.ToString());
                    }
                    dsdanfe.procRef.AddprocRefRow(drProcRef);
                    drProcRef = dsdanfe.procRef.NewprocRefRow();
                }
            }
        }
Пример #2
0
        public void PopulaTagCobr(dsDanfe dsdanfe, XmlDocument xml, string CodinfNfeId)
        {

            XmlNodeList xndCobr = xml.GetElementsByTagName("cobr");
            XmlNodeList xndFat = xml.GetElementsByTagName("fat");
            XmlNodeList xndDup = xml.GetElementsByTagName("dup");

            drCobr = dsdanfe.cobr.NewcobrRow();
            drFat = dsdanfe.fat.NewfatRow();
            drDup = dsdanfe.dup.NewdupRow();

            if (xndCobr.Count > 0) // POPULA TABLE COBR
            {
                int i = 0;
                int cobr = 0;
                while (i < xndCobr.Count)
                {
                    if (dsdanfe.cobr.Count > 0)
                    {
                        cobr = dsdanfe.cobr.Count + 1;
                    }
                    else
                    {
                        cobr = i + 1;
                    }
                    drCobr = dsdanfe.cobr.NewcobrRow();
                    populaDadosCobr(cobr.ToString(), CodinfNfeId);
                    dsdanfe.cobr.AddcobrRow(drCobr);

                    i++;
                }
            }

            if (xndFat.Count > 0)
            {
                for (int i = 0; i < xndFat.Count; i++)
                {
                    int cobrID = dsdanfe.cobr.Count;
                    // qtde de nodes 
                    for (int j = 0; j < xndFat[i].ChildNodes.Count; j++)
                    {
                        populaDadosFat(xndFat[i].ChildNodes[j].LocalName, xndFat[i].ChildNodes[j].InnerText, cobrID.ToString());
                    }
                    dsdanfe.fat.AddfatRow(drFat);
                    drFat = dsdanfe.fat.NewfatRow();
                }
            }

            if (xndDup.Count > 0)
            {
                for (int i = 0; i < xndDup.Count; i++)
                {
                    int cobrID = dsdanfe.cobr.Count;
                    // qtde de nodes 
                    for (int j = 0; j < xndDup[i].ChildNodes.Count; j++)
                    {
                        populaDadosDup(xndDup[i].ChildNodes[j].LocalName, xndDup[i].ChildNodes[j].InnerText, cobrID.ToString());
                    }
                    dsdanfe.dup.AdddupRow(drDup);
                    drDup = dsdanfe.dup.NewdupRow();
                }
            }
        }