Example #1
0
 private void AlteraDuplicataNumNFse(tcIdentificacaoRps objIdentRps, string sNotaFis)
 {
     try
     {
         objdaoBuscaDados.AlteraDuplicata(sNotaFis, objIdentRps.Nfseq);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
        public tcIdentificacaoRps BuscatcIdentificacaoRps(string sNfseq)
        {
            try
            {
                tcIdentificacaoRps objtcIdentificacaoRps = new tcIdentificacaoRps();
                DataTable dt = BuscaDadosRps(sNfseq);

                foreach (DataRow dr in dt.Rows)
                {
                    objtcIdentificacaoRps.Nfseq = sNfseq;
                    objtcIdentificacaoRps.Numero = dr["cd_notafis"].ToString();
                    objtcIdentificacaoRps.Serie = dr["cd_serie"].ToString();
                    objtcIdentificacaoRps.Tipo = 1;
                }
                return objtcIdentificacaoRps;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #3
0
        public tcIdentificacaoRps BuscatcIdentificacaoRps(string sNotaFis)
        {
            try
            {
                DataTable          dt = objdaoBuscaDados.BuscaRps(sNotaFis);
                tcIdentificacaoRps objtcIdentificacaoRps = new tcIdentificacaoRps();

                foreach (DataRow dr in dt.Rows)
                {
                    objtcIdentificacaoRps.Nfseq  = dr["cd_nfseq"].ToString();
                    objtcIdentificacaoRps.Numero = dr["cd_notafis"].ToString();
                    objtcIdentificacaoRps.Serie  = dr["cd_serie"].ToString();
                }

                return(objtcIdentificacaoRps);
            }
            catch (Exception)
            {
                throw new Exception("O Grupo de faturamento da nota " + sNotaFis + " deve ser igual ao Grupo de faturamento parametrizado no Config.");
            }
        }
Example #4
0
        public tcIdentificacaoRps BuscatcIdentificacaoRps(string sNfseq)
        {
            try
            {
                tcIdentificacaoRps objtcIdentificacaoRps = new tcIdentificacaoRps();
                DataTable          dt = BuscaDadosRps(sNfseq);

                foreach (DataRow dr in dt.Rows)
                {
                    objtcIdentificacaoRps.Nfseq  = sNfseq;
                    objtcIdentificacaoRps.Numero = dr["cd_notafis"].ToString();
                    objtcIdentificacaoRps.Serie  = dr["cd_serie"].ToString();
                    objtcIdentificacaoRps.Tipo   = 1;
                }
                return(objtcIdentificacaoRps);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #5
0
        public string BuscaRetorno(tcIdentificacaoPrestador Prestador, KryptonLabel lblStatus, ProgressBar ProgresStatus)
        {
            bool   parar          = false;
            string sMensagemErro  = "";
            int    iCountBuscaRet = 1;

            ProgresStatus.Step    = 1;
            ProgresStatus.Minimum = 0;
            ProgresStatus.Maximum = 20;
            ProgresStatus.MarqueeAnimationSpeed = 20;
            ProgresStatus.Value = 0;

            try
            {
                for (; ;)
                {
                    ProgresStatus.PerformStep();
                    ProgresStatus.Refresh();
                    lblStatus.Text = "O Sistema está tentando buscar Retorno..." + Environment.NewLine + "Tentativa " + iCountBuscaRet.ToString() + " de 21";
                    lblStatus.Refresh();
                    string      sRetConsulta = BuscaRetornoWebService(Prestador);
                    XmlDocument xmlRet       = new XmlDocument();
                    xmlRet.LoadXml(sRetConsulta);

                    XmlNodeList xNodeList = xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "MensagemRetorno");

                    if (xNodeList.Count > 0)
                    {
                        sMensagemErro = "{3}Lote: " + NumeroLote + "{3}{3}Código: {0}{3}{3}Mensagem: {1}{3}{3}Correção: {2}{3}{3}Protocolo: " + Protocolo;

                        foreach (XmlNode node in xNodeList)
                        {
                            sCodigoRetorno = node[(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Codigo"].InnerText;

                            if (sCodigoRetorno.Equals("E4") && iCountBuscaRet <= 20)
                            {
                                iCountBuscaRet++;
                            }
                            else
                            {
                                sMensagemErro = string.Format(sMensagemErro, node[(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Codigo"].InnerText,
                                                              "Esse RPS ainda não se encontra em nossa base de dados.",
                                                              node[(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Correcao"].InnerText, Environment.NewLine);
                                parar = true;
                            }
                        }
                    }
                    else if (xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns3:" : "") + "CompNfse").Count > 0)
                    {
                        this.sCodigoRetorno = "";
                        sMensagemErro       = "";
                        bool bAlteraDupl = Convert.ToBoolean(Acesso.GRAVA_NUM_NF_DUPL);


                        for (int i = 0; i < xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns3:" : "") + "CompNfse").Count; i++)
                        {
                            #region Salva Arquivo por arquivo
                            string sPasta = Convert.ToDateTime(xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "InfNfse")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "DataEmissao"].InnerText).ToString("MM/yy").Replace("/", "");
                            //Numero da nota no sefaz + numero da sequencia no sistema
                            string sNomeArquivo = sPasta + (xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "InfNfse")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Numero"].InnerText.PadLeft(6, '0'))
                                                  + (xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "IdentificacaoRps")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Numero"].InnerText.PadLeft(6, '0'));

                            XmlDocument xmlSaveNfes = new XmlDocument();
                            xmlSaveNfes.LoadXml(xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Nfse")[i].InnerXml);
                            DirectoryInfo dPastaData = new DirectoryInfo(Pastas.ENVIADOS + "\\Servicos\\" + sPasta);
                            if (!dPastaData.Exists)
                            {
                                dPastaData.Create();
                            }
                            xmlSaveNfes.Save(Pastas.ENVIADOS + "\\Servicos\\" + sPasta + "\\" + sNomeArquivo + "-nfes.xml");
                            #endregion

                            objNfseRetorno                   = new TcInfNfse();
                            objNfseRetorno.Numero            = xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "InfNfse")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Numero"].InnerText;
                            objNfseRetorno.CodigoVerificacao = xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "InfNfse")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "CodigoVerificacao"].InnerText;

                            tcIdentificacaoRps objIdentRps = BuscatcIdentificacaoRps(xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "IdentificacaoRps")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Numero"].InnerText.PadLeft(6, '0'));

                            string sNotaFis = xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "InfNfse")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "Numero"].InnerText;
                            if (Acesso.NM_EMPRESA.Equals("LORENZON"))
                            {
                                AlteraDuplicataNumNFse(objIdentRps, sNotaFis);
                            }

                            if (Acesso.NM_EMPRESA.Equals("FORMINGP"))
                            {
                                daoDuplicata objdaodup = new daoDuplicata();
                                objdaodup.BuscaVencto(objIdentRps.Nfseq, sNotaFis, objIdentRps.Numero);
                            }

                            if (xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "SubstituicaoNfse")[i] != null)
                            {
                                objNfseRetorno.NfseSubstituida = xmlRet.GetElementsByTagName((Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "SubstituicaoNfse")[i][(Acesso.tipoWsNfse == Acesso.TP_WS_NFSE.GINFES ? "ns4:" : "") + "NfseSubstituidora"].InnerText;
                            }
                            objNfseRetorno.IdentificacaoRps = objIdentRps;
                            objListaNfseRetorno.Add(objNfseRetorno);
                        }
                        parar = true;
                    }

                    if (parar)
                    {
                        break;
                    }
                }
                return(sMensagemErro);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Example #6
0
        public tcIdentificacaoRps BuscatcIdentificacaoRps(string sNotaFis)
        {

            try
            {
                DataTable dt = objdaoBuscaDados.BuscaRps(sNotaFis);
                tcIdentificacaoRps objtcIdentificacaoRps = new tcIdentificacaoRps();

                foreach (DataRow dr in dt.Rows)
                {
                    objtcIdentificacaoRps.Nfseq = dr["cd_nfseq"].ToString();
                    objtcIdentificacaoRps.Numero = dr["cd_notafis"].ToString();
                    objtcIdentificacaoRps.Serie = dr["cd_serie"].ToString();
                }

                return objtcIdentificacaoRps;

            }
            catch (Exception)
            {
                throw new Exception("O Grupo de faturamento da nota " + sNotaFis + " deve ser igual ao Grupo de faturamento parametrizado no Config.");
            }

        }
Example #7
0
 private void AlteraDuplicataNumNFse(tcIdentificacaoRps objIdentRps, string sNotaFis)
 {
     try
     {
         objdaoBuscaDados.AlteraDuplicata(sNotaFis, objIdentRps.Nfseq);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }