private void ReadFromIni(ACBrIniFile iniData) { iniData.ReadFromIni(ProcNFe, "procNFe"); iniData.ReadFromIni(InfNFe, "infNFe"); iniData.ReadFromIni(Identificacao, "Identificacao"); var i = 0; NFRef nfRef; do { i++; nfRef = iniData.ReadFromIni <NFRef>($"NFRef{i:000}"); if (nfRef == null) { continue; } Identificacao.NFref.Add(nfRef); } while (nfRef != null); iniData.ReadFromIni(Emitente, "Emitente"); iniData.ReadFromIni(Avulsa, "Avulsa"); iniData.ReadFromIni(Destinatario, "Destinatario"); iniData.ReadFromIni(Retirada, "Retirada"); iniData.ReadFromIni(Entrega, "Entrega"); i = 0; AutXML autXml; do { i++; autXml = iniData.ReadFromIni <AutXML>($"autXML{i:00}"); if (autXml == null) { continue; } AutXml.Add(autXml); } while (autXml != null); i = 0; ProdutoNFe produto; do { i++; produto = iniData.ReadFromIni <ProdutoNFe>($"Produto{i:000}"); if (produto == null) { continue; } var k = 0; NVENFe nveItem; do { k++; nveItem = iniData.ReadFromIni <NVENFe>($"NVE{i:000}{k:000}"); if (nveItem == null) { continue; } produto.NVE.Add(nveItem); } while (nveItem != null); k = 0; DINFe diItem; do { k++; diItem = iniData.ReadFromIni <DINFe>($"DI{i:000}{k:000}"); if (diItem == null) { continue; } var j = 0; LADINFe ladiItem; do { j++; ladiItem = iniData.ReadFromIni <LADINFe>($"DI{i:000}{k:000}{j:000}"); if (ladiItem != null) { diItem.LADI.Add(ladiItem); } } while (ladiItem != null); produto.DI.Add(diItem); } while (diItem != null); k = 0; RastroNFe rastroItem; do { k++; rastroItem = iniData.ReadFromIni <RastroNFe>($"rastro{i:000}{k:000}"); if (rastroItem == null) { continue; } produto.Rastro.Add(rastroItem); } while (rastroItem != null); k = 0; MedicamentoNFe medItem; do { k++; medItem = iniData.ReadFromIni <MedicamentoNFe>($"Medicamento{i:000}{k:000}"); if (medItem == null) { continue; } produto.Medicamento.Add(medItem); } while (medItem != null); k = 0; ArmaNFe armaItem; do { k++; armaItem = iniData.ReadFromIni <ArmaNFe>($"Arma{i:000}{k:000}"); if (armaItem == null) { continue; } produto.Arma.Add(armaItem); } while (armaItem != null); iniData.ReadFromIni(produto.ImpostoDevol, $"impostoDevol{i:000}"); iniData.ReadFromIni(produto.Veiculo, $"Veiculo{i:000}"); iniData.ReadFromIni(produto.Combustivel, $"Combustivel{i:000}"); iniData.ReadFromIni(produto.Combustivel.CIDE, $"CIDE{i:000}"); iniData.ReadFromIni(produto.Combustivel.Encerrante, $"encerrante{i:000}"); iniData.ReadFromIni(produto.ICMS, $"ICMS{i:000}"); iniData.ReadFromIni(produto.IPI, $"IPI{i:000}"); iniData.ReadFromIni(produto.II, $"II{i:000}"); iniData.ReadFromIni(produto.PIS, $"PIS{i:000}"); iniData.ReadFromIni(produto.PISST, $"PISST{i:000}"); iniData.ReadFromIni(produto.COFINS, $"COFINS{i:000}"); iniData.ReadFromIni(produto.COFINSST, $"COFINSST{i:000}"); iniData.ReadFromIni(produto.ISSQN, $"ISSQN{i:000}"); Produtos.Add(produto); } while (produto != null); iniData.ReadFromIni(Total, "Total"); iniData.ReadFromIni(ISSQNtot, "ISSQNtot"); iniData.ReadFromIni(RetTrib, "retTrib"); iniData.ReadFromIni(Transportador, "Transportador"); i = 0; ReboqueNFe reboque; do { i++; reboque = iniData.ReadFromIni <ReboqueNFe>($"Reboque{i:000}"); if (reboque == null) { continue; } Transportador.Reboque.Add(reboque); } while (reboque != null); i = 0; VolumeNFe volume; do { i++; volume = iniData.ReadFromIni <VolumeNFe>($"Volume{i:000}"); if (volume == null) { continue; } var k = 0; LacresNFe lacre; do { k++; lacre = iniData.ReadFromIni <LacresNFe>($"Lacre{i:000}{k:000}"); if (lacre == null) { continue; } volume.Lacres.Add(lacre); } while (lacre != null); Volumes.Add(volume); } while (volume != null); iniData.ReadFromIni(Fatura, "Fatura"); i = 0; DuplicataNFe duplicata; do { i++; duplicata = iniData.ReadFromIni <DuplicataNFe>($"Duplicata{i:000}"); if (duplicata == null) { continue; } Duplicatas.Add(duplicata); } while (duplicata != null); i = 0; PagamentoNFe pag; do { i++; pag = iniData.ReadFromIni <PagamentoNFe>($"pag{i:000}"); if (pag == null) { continue; } Pagamentos.Add(pag); } while (pag != null); iniData.ReadFromIni(DadosAdicionais, "DadosAdicionais"); i = 0; InfoAdicionalNfe info; do { i++; info = iniData.ReadFromIni <InfoAdicionalNfe>($"obsCont{i:000}"); if (info == null) { continue; } DadosAdicionais.ObsCont.Add(info); } while (info != null); i = 0; do { i++; info = iniData.ReadFromIni <InfoAdicionalNfe>($"obsFisco{i:000}"); if (info == null) { continue; } DadosAdicionais.ObsFisco.Add(info); } while (info != null); i = 0; ProcRefNFe procRef; do { i++; procRef = iniData.ReadFromIni <ProcRefNFe>($"procRef{i:000}"); if (procRef == null) { continue; } DadosAdicionais.ProcRef.Add(procRef); } while (procRef != null); iniData.ReadFromIni(Exporta, "Exporta"); iniData.ReadFromIni(Compra, "compra"); iniData.ReadFromIni(Cana, "cana"); i = 0; ForDiaNFe forDia; do { i++; forDia = iniData.ReadFromIni <ForDiaNFe>($"forDia{i:000}"); if (forDia == null) { continue; } Cana.forDia.Add(forDia); } while (forDia != null); i = 0; DeducNFe deduc; do { i++; deduc = iniData.ReadFromIni <DeducNFe>($"deduc{i:000}"); if (deduc == null) { continue; } Cana.deduc.Add(deduc); } while (deduc != null); iniData.ReadFromIni(InfRespTec, "infRespTec"); }
private void ReadFromIni(ACBrIniFile iniData) { iniData.ReadFromIni(ProcMDFe, "procMDFe"); iniData.ReadFromIni(InfMDFe, "infMDFe"); iniData.ReadFromIni(Identificacao, "ide"); var i = 0; InfMunCarregaMDFe munCarrega; do { i++; munCarrega = iniData.ReadFromIni <InfMunCarregaMDFe>($"CARR{i:000}"); if (munCarrega == null) { continue; } InfMunCarrega.Add(munCarrega); } while (munCarrega != null); i = 0; InfPercurso infPercurso; do { i++; infPercurso = iniData.ReadFromIni <InfPercurso>($"PERC{i:000}"); if (infPercurso == null) { continue; } InfPercurso.Add(infPercurso); } while (infPercurso != null); iniData.ReadFromIni(Emitente, "emit"); if (iniData.Contains("Rodo") || iniData.Read("infANTT", "RNTRC", "") != "" || iniData.Contains("infCIOT001") || iniData.Contains("valePed001") || iniData.Contains("infContratante001") || iniData.Contains("valePed")) { var rodo = iniData.Contains("Rodo") ? iniData.ReadFromIni <ModalRodoMDFe>("Rodo") : new ModalRodoMDFe(); iniData.ReadFromIni(rodo.InfANTT, "infANTT"); i = 0; InfCIOTMDFe CIOT; do { i++; CIOT = iniData.ReadFromIni <InfCIOTMDFe>($"infCIOT{i:000}"); if (CIOT == null) { continue; } rodo.InfANTT.InfCIOT.Add(CIOT); } while (CIOT != null); iniData.ReadFromIni(rodo.InfANTT.valePed, "valePed"); i = 0; DispMDFe disp; do { i++; disp = iniData.ReadFromIni <DispMDFe>($"disp{i:000}"); if (disp == null) { continue; } rodo.InfANTT.valePed.disp.Add(disp); } while (disp != null); i = 0; InfContratanteMDFe contratante; do { i++; contratante = iniData.ReadFromIni <InfContratanteMDFe>($"infContratante{i:000}"); if (contratante == null) { continue; } rodo.InfANTT.InfContratante.Add(contratante); } while (contratante != null); i = 0; InfPagMDFe infPag; do { i++; infPag = iniData.ReadFromIni <InfPagMDFe>($"infPag{i:000}"); if (infPag == null) { continue; } iniData.ReadFromIni(infPag.InfBanco, $"infBanc{i + 1:000}"); var j = 0; CompMDFe comp; do { i++; comp = iniData.ReadFromIni <CompMDFe>($"Comp{i + 1:000}{j + 1:000}"); if (comp == null) { continue; } infPag.Comp.Add(comp); } while (comp != null); InfPrazoMDFe prazo; do { i++; prazo = iniData.ReadFromIni <InfPrazoMDFe>($"infPrazo{i + 1:000}{j + 1:000}"); if (prazo == null) { continue; } infPag.InfPrazo.Add(prazo); } while (prazo != null); rodo.InfANTT.InfPag.Add(infPag); } while (infPag != null); iniData.ReadFromIni(rodo.VeicTracao, "veicTracao"); iniData.ReadFromIni(rodo.VeicTracao.Proprietario, "veicTracao"); i = 0; CondutorMDFe condutor; do { i++; condutor = iniData.ReadFromIni <CondutorMDFe>($"moto{i:000}"); if (condutor == null) { continue; } rodo.VeicTracao.Condutor.Add(condutor); } while (condutor != null); i = 0; ReboqueMDFe reboque; do { i++; reboque = iniData.ReadFromIni <ReboqueMDFe>($"reboque{i:000}"); if (reboque == null) { continue; } iniData.WriteToIni(reboque.Proprietario, $"reboque{i:000}"); rodo.Reboque.Add(reboque); } while (reboque != null); i = 0; LacreMDFe lacre; do { i++; lacre = iniData.ReadFromIni <LacreMDFe>($"lacRodo{i:000}"); if (lacre == null) { continue; } rodo.Lacres.Add(lacre); } while (lacre != null); Modal = rodo; } if (iniData.Read("aereo", "nac", "") != "") { Modal = iniData.ReadFromIni <ModalAereoMDFe>("aereo"); } if (iniData.Read("aquav", "CNPJAgeNav", "") != "" || iniData.Read("aquav", "irin", "") != "") { var modal = iniData.ReadFromIni <ModalAquaviarioMDFe>("aquav"); i = 0; InfTerminalCarregMDFe infCarrega; do { i++; infCarrega = iniData.ReadFromIni <InfTerminalCarregMDFe>($"infTermCarreg{i}"); if (infCarrega == null) { continue; } modal.InfTermCarreg.Add(infCarrega); } while (infCarrega != null); i = 0; InfTerminalDescarregMDFe infDescarrega; do { i++; infDescarrega = iniData.ReadFromIni <InfTerminalDescarregMDFe>($"infTermDescarreg{i}"); if (infDescarrega == null) { continue; } modal.InfTermDescarreg.Add(infDescarrega); } while (infDescarrega != null); i = 0; InfEmbCombMDFe infEmb; do { i++; infEmb = iniData.ReadFromIni <InfEmbCombMDFe>($"infEmbComb{i:00}"); if (infEmb == null) { continue; } modal.InfEmbComb.Add(infEmb); } while (infEmb != null); i = 0; InfUnidCargaVaziaMDFe infUnid; do { i++; infUnid = iniData.ReadFromIni <InfUnidCargaVaziaMDFe>($"infUnidCargaVazia{i:000}"); if (infUnid == null) { continue; } modal.InfUnidCargaVazia.Add(infUnid); } while (infUnid != null); i = 0; InfUnidTranspVaziaMDFe infCarga; do { i++; infCarga = iniData.ReadFromIni <InfUnidTranspVaziaMDFe>($"infUnidTranspVazia{i:000}"); if (infCarga == null) { continue; } modal.InfUnidTranspVazia.Add(infCarga); } while (infCarga != null); Modal = modal; } i = 0; InfMunDescargaMDFe municipio; do { i++; municipio = iniData.ReadFromIni <InfMunDescargaMDFe>($"DESC{i:000}"); if (municipio == null) { continue; } var j = 0; InfCTeMDFe cte; do { j++; cte = iniData.ReadFromIni <InfCTeMDFe>($"infCTe{i:000}{j:000}"); if (cte == null) { continue; } var k = 0; PeriMDFe peri; do { k++; peri = iniData.ReadFromIni <PeriMDFe>($"peri{i:000}{j:000}{k:000}"); if (peri == null) { continue; } cte.Peri.Add(peri); } while (peri != null); k = 0; InfEntregaParcialMDFe entregaParcial; do { k++; entregaParcial = iniData.ReadFromIni <InfEntregaParcialMDFe>($"infEntregaParcial{i:000}{j:000}{k:000}"); if (entregaParcial == null) { continue; } cte.InfEntregaParcial.Add(entregaParcial); } while (entregaParcial != null); k = 0; InfUnidTranspMDFe unidTransp; do { k++; unidTransp = iniData.ReadFromIni <InfUnidTranspMDFe>($"infUnidTransp{i:000}{j:000}{k:000}"); if (unidTransp == null) { continue; } var l = 0; LacreMDFe lacre; do { l++; lacre = iniData.ReadFromIni <LacreMDFe>($"lacUnidTransp{i:000}{j:000}{k:000}{l:000}"); if (lacre == null) { continue; } unidTransp.lacUnidTransp.Add(lacre); } while (lacre != null); l = 0; InfUnidCargaMDFe unidCarga; do { l++; unidCarga = iniData.ReadFromIni <InfUnidCargaMDFe>($"infUnidCarga{i:000}{j:000}{k:000}{l:000}"); if (unidCarga == null) { continue; } var m = 0; LacreMDFe lacreCarga; do { m++; lacreCarga = iniData.ReadFromIni <LacreMDFe>($"lacUnidCarga{i:000}{j:000}{k:000}{l:000}{m:000}"); if (lacreCarga == null) { continue; } unidCarga.lacUnidCarga.Add(lacreCarga); } while (lacreCarga != null); unidTransp.infUnidCarga.Add(unidCarga); } while (unidCarga != null); cte.InfUnidTransp.Add(unidTransp); } while (unidTransp != null); municipio.InfCTe.Add(cte); } while (cte != null); j = 0; InfNFeMDFe nfe; do { j++; nfe = iniData.ReadFromIni <InfNFeMDFe>($"infNFe{i:000}{j:000}"); if (nfe == null) { continue; } var k = 0; PeriMDFe peri; do { k++; peri = iniData.ReadFromIni <PeriMDFe>($"peri{i:000}{j:000}{k:000}"); if (peri == null) { continue; } nfe.Peri.Add(peri); } while (peri != null); k = 0; InfEntregaParcialMDFe entregaParcial; do { k++; entregaParcial = iniData.ReadFromIni <InfEntregaParcialMDFe>($"infEntregaParcial{i:000}{j:000}{k:000}"); if (entregaParcial == null) { continue; } nfe.InfEntregaParcial.Add(entregaParcial); } while (entregaParcial != null); k = 0; InfUnidTranspMDFe unidTransp; do { k++; unidTransp = iniData.ReadFromIni <InfUnidTranspMDFe>($"infUnidTransp{i:000}{j:000}{k:000}"); if (unidTransp == null) { continue; } var l = 0; LacreMDFe lacre; do { l++; lacre = iniData.ReadFromIni <LacreMDFe>($"lacUnidTransp{i:000}{j:000}{k:000}{l:000}"); if (lacre == null) { continue; } unidTransp.lacUnidTransp.Add(lacre); } while (lacre != null); l = 0; InfUnidCargaMDFe unidCarga; do { l++; unidCarga = iniData.ReadFromIni <InfUnidCargaMDFe>($"infUnidCarga{i:000}{j:000}{k:000}{l:000}"); if (unidCarga == null) { continue; } var m = 0; LacreMDFe lacreCarga; do { m++; lacreCarga = iniData.ReadFromIni <LacreMDFe>($"lacUnidCarga{i:000}{j:000}{k:000}{l:000}{m:000}"); if (lacreCarga == null) { continue; } unidCarga.lacUnidCarga.Add(lacreCarga); } while (lacreCarga != null); unidTransp.infUnidCarga.Add(unidCarga); } while (unidCarga != null); nfe.InfUnidTransp.Add(unidTransp); } while (unidTransp != null); municipio.InfNFe.Add(nfe); } while (nfe != null); j = 0; InfMDFeTransp mdfe; do { j++; mdfe = iniData.ReadFromIni <InfMDFeTransp>($"infMDFeTransp{i:000}{j:000}"); if (mdfe == null) { continue; } var k = 0; PeriMDFe peri; do { k++; peri = iniData.ReadFromIni <PeriMDFe>($"peri{i:000}{j:000}{k:000}"); if (peri == null) { continue; } mdfe.Peri.Add(peri); } while (peri != null); k = 0; InfEntregaParcialMDFe entregaParcial; do { k++; entregaParcial = iniData.ReadFromIni <InfEntregaParcialMDFe>($"infEntregaParcial{i:000}{j:000}{k:000}"); if (entregaParcial == null) { continue; } mdfe.InfEntregaParcial.Add(entregaParcial); } while (entregaParcial != null); k = 0; InfUnidTranspMDFe unidTransp; do { k++; unidTransp = iniData.ReadFromIni <InfUnidTranspMDFe>($"infUnidTransp{i:000}{j:000}{k:000}"); if (unidTransp == null) { continue; } var l = 0; LacreMDFe lacre; do { l++; lacre = iniData.ReadFromIni <LacreMDFe>($"lacUnidTransp{i:000}{j:000}{k:000}{l:000}"); if (lacre == null) { continue; } unidTransp.lacUnidTransp.Add(lacre); } while (lacre != null); l = 0; InfUnidCargaMDFe unidCarga; do { l++; unidCarga = iniData.ReadFromIni <InfUnidCargaMDFe>($"infUnidCarga{i:000}{j:000}{k:000}{l:000}"); if (unidCarga == null) { continue; } var m = 0; LacreMDFe lacreCarga; do { m++; lacreCarga = iniData.ReadFromIni <LacreMDFe>($"lacUnidCarga{i:000}{j:000}{k:000}{l:000}{m:000}"); if (lacreCarga == null) { continue; } unidCarga.lacUnidCarga.Add(lacreCarga); } while (lacreCarga != null); unidTransp.infUnidCarga.Add(unidCarga); } while (unidCarga != null); mdfe.InfUnidTransp.Add(unidTransp); } while (unidTransp != null); municipio.InfMDFeTransp.Add(mdfe); } while (mdfe != null); InfDoc.infMunDescarga.Add(municipio); } while (municipio != null); i = 0; SeguroMDFe seg; do { i++; seg = iniData.ReadFromIni <SeguroMDFe>($"seg{i}"); if (seg == null) { continue; } var j = 0; AverbacaoMDFe averb; do { j++; averb = iniData.ReadFromIni <AverbacaoMDFe>($"aver{i:000}{j:000}"); if (averb == null) { continue; } seg.Averb.Add(averb); } while (averb != null); Seg.Add(seg); } while (seg != null); iniData.ReadFromIni(ProdPred, "prodPred"); iniData.ReadFromIni(ProdPred.InfLocalCarrega, "infLocalCarrega"); iniData.ReadFromIni(ProdPred.InfLocalDescarrega, "infLocalDescarrega"); iniData.ReadFromIni(Tot, "tot"); i = 0; LacreMDFe lacreMDFe; do { i++; lacreMDFe = iniData.ReadFromIni <LacreMDFe>($"lacres{i:000}"); if (lacreMDFe == null) { continue; } Lacres.Add(lacreMDFe); } while (lacreMDFe != null); i = 0; AutXML autXml; do { i++; autXml = iniData.ReadFromIni <AutXML>($"autXML{i:000}"); if (autXml == null) { continue; } AutXml.Add(autXml); } while (autXml != null); iniData.ReadFromIni(DadosAdicionais, "infAdic"); iniData.ReadFromIni(InfRespTec, "infRespTec"); }