private string GeraChaveDadosNFe(NFe_HLP objNFe)
        {
            string scUF     = "";
            string stpEmis  = "";
            string sCNPJ    = "";
            string svNF     = "";
            string sICMSp   = "0";
            string sICMSs   = "0";
            string sDD      = "";
            string sDV      = "";
            belUF  objbelUF = new belUF();

            scUF    = objbelUF.RetornaCUF(objNFe.enderDest_UF);
            stpEmis = objNFe.tpEmis;
            sCNPJ   = objNFe.dest_CPF_CNPJ;
            svNF    = objNFe.ICMSTot_vNF.Replace(",", "").PadLeft(14, '0');
            sDD     = Convert.ToDateTime(objNFe.ide_dEmi).Day.ToString();


            if (objNFe.ICMSTot_vST != "0,00")
            {
                sICMSs = "1";
            }
            else
            {
                sICMSs = "2";
            }


            if (objNFe.ICMSTot_vICMS != "0,00")
            {
                sICMSs = "1";
            }
            else
            {
                sICMSs = "2";
            }

            string sDadosNfe = scUF + stpEmis + sCNPJ + svNF + sICMSp + sICMSs + sDD;
            string sDig      = CalculaDig11(sDadosNfe).ToString();

            return((sDadosNfe + sDig).Trim());
        }
        public DadosRetorno ConsultaCadastro()
        {
            try
            {
                foreach (DataRow item in BuscaInformacoesCliente(objPesquisa.sCD_NFSEQ).Rows)
                {
                    sUF = item["sUF"].ToString();
                    sIE = item["sIE"].ToString();
                    sCNPJ = item["sCNPJ"].ToString();
                    sCPF = item["sCPF"].ToString();
                    break;
                }

                if (sUF == "EX")
                {
                    return new DadosRetorno { cStat = "200" };
                }
                if (sIE == "")
                {
                    return new DadosRetorno { cStat = "200" };
                }

                StringBuilder sMsgRetorno = new StringBuilder();
                XmlDocument xRetorno = new XmlDocument();

                switch (sUF)
                {
                    case "SP":
                        {
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "MG":
                        {
                            HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "RS":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "RJ":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "BA":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "CE":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "GO":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.cadConsultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "MT":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "PE":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    case "PR":
                        {

                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.CadConsultaCadastro2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.CadConsultaCadastro2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.nfeCabecMsg();
                            belUF objbelUF = new belUF();
                            cabec.cUF = objbelUF.RetornaCUF(sUF);
                            cabec.versaoDados = "2.00";
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            XmlNode xDados = MontaMsg();
                            string sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                            xRetorno.LoadXml(sretorno);
                        }
                        break;
                    default:
                        { return new DadosRetorno { cStat = "200" }; }
                }
                return MontaMsgRetorno(xRetorno);
            }
            catch (Exception)
            {
                return new DadosRetorno { cStat = "200" };
            }
        }
Example #3
0
        public DadosRetorno buscaRetorno()
        {
            string      sDados      = consultaNFe();
            XmlDocument xmlConsulta = new XmlDocument();
            XmlDocument xret        = new XmlDocument();

            try
            {
                if (Acesso.TP_EMIS == 1)
                {
                    switch (Acesso.xUFtoWS)
                    {
                    case "SP":
                    {
                        if (Acesso.TP_AMB == 2)
                        {
                            HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                        else
                        {
                            HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                    }
                    break;

                    case "RS":
                    {
                        if (Acesso.TP_AMB == 2)
                        {
                            HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                        else
                        {
                            HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                    }
                    break;

                    case "MS":
                    {
                        if (Acesso.TP_AMB == 2)
                        {
                            HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                        else
                        {
                            HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                    }
                    break;

                    case "SVRS":
                    {
                        if (Acesso.TP_AMB == 2)
                        {
                            HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.NfeConsulta2();
                            HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                        else
                        {
                            HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.NfeConsulta2();
                            HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                    }
                    break;

                    case "MG":
                    {
                        if (Acesso.TP_AMB == 2)
                        {
                            HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                        else
                        {
                            HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.NfeConsulta2();
                            HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.nfeCabecMsg();
                            cabec.versaoDados = sversaoLayoutCons;
                            belUF objUf = new belUF();
                            cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                            ws2.nfeCabecMsgValue = cabec;
                            ws2.ClientCertificates.Add(Acesso.cert_NFe);
                            xmlConsulta.LoadXml(sDados);
                            XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                            xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                        }
                    }
                    break;
                    }
                }
                else if (Acesso.TP_EMIS == 3)
                {
                    if (Acesso.TP_AMB == 2)
                    {
                        HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                    }
                    else
                    {
                        HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                    }
                }
                else if (Acesso.TP_EMIS == 6)
                {
                    if (Acesso.TP_AMB == 2)
                    {
                        HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                    }
                    else
                    {
                        HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.NfeConsulta2 ws2   = new HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.nfeCabecMsg  cabec = new HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF            = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                    }
                }
                string sPathCons = Pastas.PROTOCOLOS + "\\ConsultaNFe_" + objPesquisa.sCD_NFSEQ + ".xml";
                xmlConsulta.Save(sPathCons);
                retConsSitNFe objConsulta = SerializeClassToXml.DeserializeClasse <retConsSitNFe>(sPathCons);
                return(CarregaDadosRetorno(objConsulta));
            }
            catch (Exception)
            {
                throw;
            }
        }
Example #4
0
        public DadosRetorno ConsultaCadastro()
        {
            try
            {
                foreach (DataRow item in BuscaInformacoesCliente(objPesquisa.sCD_NFSEQ).Rows)
                {
                    sUF   = item["sUF"].ToString();
                    sIE   = item["sIE"].ToString();
                    sCNPJ = item["sCNPJ"].ToString();
                    sCPF  = item["sCPF"].ToString();
                    break;
                }

                if (sUF == "EX")
                {
                    return(new DadosRetorno {
                        cStat = "200"
                    });
                }
                if (sIE == "")
                {
                    return(new DadosRetorno {
                        cStat = "200"
                    });
                }

                StringBuilder sMsgRetorno = new StringBuilder();
                XmlDocument   xRetorno    = new XmlDocument();

                switch (sUF)
                {
                case "SP":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_SP.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "MG":
                {
                    HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaCadastro_MG.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "RS":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "RJ":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_RS1.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "BA":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_BA.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "CE":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_CE.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "GO":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_GO.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.cadConsultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "MT":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_MT.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "PE":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PE.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                case "PR":
                {
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.CadConsultaCadastro2 ws2   = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.CadConsultaCadastro2();
                    HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.nfeCabecMsg          cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsultaCadastro_PR.nfeCabecMsg();
                    belUF objbelUF = new belUF();
                    cabec.cUF            = objbelUF.RetornaCUF(sUF);
                    cabec.versaoDados    = "2.00";
                    ws2.nfeCabecMsgValue = cabec;
                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                    XmlNode xDados   = MontaMsg();
                    string  sretorno = ws2.consultaCadastro2(xDados).OuterXml;
                    xRetorno.LoadXml(sretorno);
                }
                break;

                default:
                { return(new DadosRetorno {
                            cStat = "200"
                        }); }
                }
                return(MontaMsgRetorno(xRetorno));
            }
            catch (Exception)
            {
                return(new DadosRetorno {
                    cStat = "200"
                });
            }
        }
        public DadosRetorno buscaRetorno()
        {
            string sDados = consultaNFe();
            XmlDocument xmlConsulta = new XmlDocument();
            XmlDocument xret = new XmlDocument();
            try
            {
                if (Acesso.TP_EMIS == 1)
                {
                    switch (Acesso.xUFtoWS)
                    {
                        case "SP":
                            {
                                if (Acesso.TP_AMB == 2)
                                {
                                    HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_SP.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);

                                }
                                else
                                {
                                    HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_SP.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                                }
                            }
                            break;
                        case "RS":
                            {
                                if (Acesso.TP_AMB == 2)
                                {
                                    HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_RS.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);

                                }
                                else
                                {
                                    HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_RS.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                                }
                            }
                            break;
                        case "MS":
                            {
                                if (Acesso.TP_AMB == 2)
                                {
                                    HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Homologacao_NFeConsulta_MS.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);

                                }
                                else
                                {
                                    HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NFeConsulta_MS.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                                }
                            }
                            break;
                        case "SVRS":
                            {
                                if (Acesso.TP_AMB == 2)
                                {
                                    HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.NfeConsulta2();
                                    HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.nfeCabecMsg cabec = new HLP.GeraXml.WebService.V2_Homologacao_Consulta_SVRS.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);

                                }
                                else
                                {
                                    HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.NfeConsulta2();
                                    HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.nfeCabecMsg cabec = new HLP.GeraXml.WebService.V2_Producao_Consulta_SVRS.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                                }
                            }
                            break;
                        case "MG":
                            {
                                if (Acesso.TP_AMB == 2)
                                {
                                    HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Homologacao_NfeConsultaProtocolo_MG.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);

                                }
                                else
                                {
                                    HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.NfeConsulta2();
                                    HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_Producao_NfeConsultaProtocolo_MG.nfeCabecMsg();
                                    cabec.versaoDados = sversaoLayoutCons;
                                    belUF objUf = new belUF();
                                    cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                                    ws2.nfeCabecMsgValue = cabec;
                                    ws2.ClientCertificates.Add(Acesso.cert_NFe);
                                    xmlConsulta.LoadXml(sDados);
                                    XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                                    xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                                }
                            }
                            break;

                    }
                }
                else if (Acesso.TP_EMIS == 3)
                {
                    if (Acesso.TP_AMB == 2)
                    {
                        HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_SCAN_Homologacao_NFeConsulta.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);

                    }
                    else
                    {
                        HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_SCAN_Producao_NFeConsulta.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                    }

                }
                else if (Acesso.TP_EMIS == 6)
                {
                    if (Acesso.TP_AMB == 2)
                    {
                        HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_SVC_Homologacao_NfeConsultaProtocolo.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                    }
                    else
                    {
                        HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.NfeConsulta2 ws2 = new HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.NfeConsulta2();
                        HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.nfeCabecMsg cabec = new HLP.GeraXml.WebService.v2_SVC_Producao_NfeConsultaProtocolo.nfeCabecMsg();
                        cabec.versaoDados = sversaoLayoutCons;
                        belUF objUf = new belUF();
                        cabec.cUF = objUf.RetornaCUF(Acesso.xUF);
                        ws2.nfeCabecMsgValue = cabec;
                        ws2.ClientCertificates.Add(Acesso.cert_NFe);
                        xmlConsulta.LoadXml(sDados);
                        XmlNode xNodeConsulta = xmlConsulta.DocumentElement;
                        xmlConsulta.LoadXml(ws2.nfeConsultaNF2(xNodeConsulta).OuterXml);
                    }

                }
                string sPathCons = Pastas.PROTOCOLOS + "\\ConsultaNFe_" + objPesquisa.sCD_NFSEQ + ".xml";
                xmlConsulta.Save(sPathCons);
                retConsSitNFe objConsulta = SerializeClassToXml.DeserializeClasse<retConsSitNFe>(sPathCons);
                return CarregaDadosRetorno(objConsulta);
            }
            catch (Exception)
            {

                throw;
            }

        }