private void TmInutilizacao_Tick(object sender, EventArgs e) { Model_InutilizacaoNfe mInut = new Model_InutilizacaoNfe(); EnviarInutilizacao nEnvInut = new EnviarInutilizacao(); TmInutilizacao.Enabled = false; var dtInut = mInut.Pesquisar(); for (int i = 0; i < dtInut.Rows.Count; i++) { eInut = new Entidade_Inutilizacao(); eInut.Loja = int.Parse(dtInut.Rows[i]["id_loja"].ToString()); eInut.cUf = Convert.ToInt32(dtInut.Rows[i]["cdUfCidadeIbge_Empresa"].ToString().Substring(0, dtInut.Rows[i]["cdUfCidadeIbge_Empresa"].ToString().Length - 5)); eInut.Cnpj = dtInut.Rows[i]["cnpj"].ToString(); eInut.sSerieNf = dtInut.Rows[i]["serienf"].ToString().Trim(); eInut.NrIni = int.Parse(dtInut.Rows[i]["numero_ini"].ToString()); eInut.NrFim = int.Parse(dtInut.Rows[i]["numero_fim"].ToString()); eInut.ModNfe = int.Parse(dtInut.Rows[i]["ModNfe"].ToString()); eInut.TpAmbiente = FuncoesGerais.TipoAmbiente(); nEnvInut.Enviar(eInut, out eInut); } TmInutilizacao.Enabled = true; }
private void TmCancelamento_Tick(object sender, EventArgs e) { EnviarCancelamentoSefaz envCancelamento; mCancelamento = new Model_Cancelamento(); eCancelamento = new Entidade_Cancelamento(); TmCancelamento.Enabled = false; var dtCancelamento = mCancelamento.ConsultarCancelementosSolicitados(); for (int i = 0; i < dtCancelamento.Rows.Count; i++) { envCancelamento = new EnviarCancelamentoSefaz(); eCancelamento.id = Convert.ToInt32(dtCancelamento.Rows[i]["idoperacao"]); eCancelamento.Loja = Convert.ToInt32(dtCancelamento.Rows[i]["id_loja"]); //eCancelamento.CdFornec = dtCancelamento.Rows[i]["CdFornec"] != null ? Convert.ToInt32(dtCancelamento.Rows[i]["CdFornec"]) : 0; eCancelamento.NmSerie = dtCancelamento.Rows[i]["serienf"].ToString(); eCancelamento.NrNf = Convert.ToInt32(dtCancelamento.Rows[i]["NrNF"].ToString()); eCancelamento.CnpjCpf = dtCancelamento.Rows[i]["cnpj"].ToString(); eCancelamento.ChaveAcessoNfe = dtCancelamento.Rows[i]["TxChAcessoNfe"].ToString(); eCancelamento.TpNf = dtCancelamento.Rows[i]["TpNFe"].ToString(); eCancelamento.ProtocoloAutoriz = dtCancelamento.Rows[i]["NrProtocoloAutorizNfe"].ToString().Trim(); eCancelamento.cUf = Convert.ToInt32(dtCancelamento.Rows[i]["cdUfCidadeIbge_Empresa"].ToString().Substring(0, dtCancelamento.Rows[i]["cdUfCidadeIbge_Empresa"].ToString().Length - 5)); eCancelamento.CodigoIbgeEmpresa = dtCancelamento.Rows[i]["cdUfCidadeIbge_Empresa"].ToString(); eCancelamento.DataHora = dtCancelamento.Rows[i]["DtOperacao"].ToString(); eCancelamento.TpAmb = FuncoesGerais.TipoAmbiente();; eCancelamento.Justificatica = "CANCELAMENTO DE NOTA FISCAL POR PROBLEMAS LANCAMENTO"; envCancelamento.Enviar(eCancelamento, out eCancelamento); } TmCancelamento.Enabled = true; }
public Entidade_CCe PesquisarCartaEletronica() { Entidade_CCe ObjEntCarta = new Entidade_CCe(); Entidade_ItemCCe ObjEntItemCCe = new Entidade_ItemCCe(); List <Entidade_ItemCCe> ObjListEntItemCCe = new List <Entidade_ItemCCe>(); mCartaEletronica = new Model_CCe(); int seqItem = 0; var DtCarta = mCartaEletronica.ConsultaCartas(); for (int i = 0; i < DtCarta.Rows.Count; i++) { ObjEntCarta = new Entidade_CCe(); ObjEntCarta.id_loja = Convert.ToInt32(DtCarta.Rows[i]["id_loja"]); ObjEntCarta.Id_CCe_Lote = Convert.ToInt32(DtCarta.Rows[i]["Id_cce_lote"]); ObjEntCarta.TipoAmbiente = FuncoesGerais.TipoAmbiente(); ObjEntCarta.cUF = Convert.ToInt32(DtCarta.Rows[i]["cdUfCidadeIbge_Empresa"].ToString().Substring(0, 2)); CodUfEmpresa = Convert.ToInt32(DtCarta.Rows[i]["cdUfCidadeIbge_Empresa"].ToString().Substring(0, 2)); seqItem = 0; for (int j = 0; j < DtCarta.Rows.Count; j++) { ObjEntItemCCe = new Entidade_ItemCCe(); if (ObjEntCarta.Id_CCe_Lote == Convert.ToInt32(DtCarta.Rows[j]["Id_CCe_Lote"])) { ObjEntItemCCe.id_loja = Convert.ToInt32(DtCarta.Rows[j]["id_loja"]); ObjEntItemCCe.Dt_Prot_Nfe = Convert.ToDateTime(DtCarta.Rows[j]["Dt_Prot_Nfe"]); ObjEntItemCCe.CdUfCidadeIbge_Empresa = Convert.ToInt32(DtCarta.Rows[i]["cdUfCidadeIbge_Empresa"].ToString().Substring(0, 2)); ObjEntItemCCe.TxChAcessoNfe = DtCarta.Rows[j]["TxChAcessoNfe"].ToString(); ObjEntItemCCe.NrNf = Convert.ToInt32(DtCarta.Rows[j]["NrNf"]); ObjEntItemCCe.serienf = DtCarta.Rows[j]["serienf"].ToString(); ObjEntItemCCe.CdCpfCgc = DtCarta.Rows[j]["CdCpfCgc"].ToString(); ObjEntItemCCe.Ambiente = DtCarta.Rows[j]["TipoEmissao"].ToString(); ObjEntItemCCe.Desc_Correcao = DtCarta.Rows[j]["Desc_Correcao"].ToString(); //ObjEntItemCCe.NrSeqEnvio = Convert.ToInt32(DtCarta.Rows[j]["NrSeqEnvio"]); ObjEntItemCCe.NrSeqEnvio = seqItem += 1; ObjListEntItemCCe.Add(ObjEntItemCCe); } else { break; } } ObjEntCarta.ItemCCe = ObjListEntItemCCe; break; } return(ObjEntCarta); }
public TDownloadNFe(Entidade_DownloadNFe ObjEntDownload) { var DtLoja = FuncoesGerais.Loja(ObjEntDownload.id_loja); if (FuncoesGerais.TipoAmbiente() == "HOM") { this.tpAmb = TAmb.Item2; } else { this.tpAmb = TAmb.Item1; } this.chNFe = ObjEntDownload.ChaveNFe.ToArray(); this.CNPJ = DtLoja.Rows[0]["cnpj"].ToString(); this.versao = TVerDownloadNFe.Item100; this.xServ = TDownloadNFeXServ.DOWNLOADNFE; }
public TEventoInfEvento(int loja, DateTime DtEvento, Entidade_ItemManifestacao objitem) { var DtEmpresa = FuncoesGerais.Loja(loja); this.Id = "ID" + objitem.codmanifestacao + objitem.chaveacesso + objitem.idseq.ToString().PadLeft(2, '0'); this.chNFe = objitem.chaveacesso; this.dhEvento = string.Format("{0:s}", Convert.ToDateTime(DtEvento)) + "-03:00"; this.cOrgao = TCOrgaoIBGE.Item91; //(TCOrgaoIBGE)NegocioFuncoesGerais.RetornoCodigoIbge(Convert.ToInt32(FuncoesGerais.UfIbgeEmpresa(loja))); if (FuncoesGerais.TipoAmbiente() == "PROD") { this.tpAmb = TAmb.Item1; // 1- Produção | 2 - Homologação } else { this.tpAmb = TAmb.Item2; } this.ItemElementName = ItemChoiceType.CNPJ; // DA EMPRESA EMITENTE this.Item = DtEmpresa.Rows[0]["cnpj"].ToString(); switch (objitem.codmanifestacao) { case 210200: this.tpEvento = TEventoInfEventoTpEvento.Item210200; break; case 210210: this.tpEvento = TEventoInfEventoTpEvento.Item210210; break; case 210220: this.tpEvento = TEventoInfEventoTpEvento.Item210220; break; case 210240: this.tpEvento = TEventoInfEventoTpEvento.Item210240; break; } this.nSeqEvento = objitem.idseq.ToString(); this.verEvento = "1.00"; this.detEvento = new TEventoInfEventoDetEvento(objitem); }
public TConsNFeDest(int loja) { var DtLoja = FuncoesGerais.Loja(loja); this.versao = TVeConsNFeDest.Item101; if (FuncoesGerais.TipoAmbiente() == "HOM") { this.tpAmb = TAmb.Item2; } else { this.tpAmb = TAmb.Item1; } this.xServ = TConsNFeDestXServ.CONSULTARNFEDEST; this.CNPJ = DtLoja.Rows[0]["cnpj"].ToString(); this.indNFe = TConsNFeDestIndNFe.Item0; this.indEmi = TConsNFeDestIndEmi.Item1; this.ultNSU = "0"; }
private void TmStatus_Tick(object sender, EventArgs e) { EnviarStatus status = new EnviarStatus(); TmStatus.Enabled = false; try { var dtRet = FuncoesGerais.LojasEmitentes(); for (int i = 0; i < dtRet.Rows.Count; i++) { eRet = new Entidade_Status(); eRet.Loja = int.Parse(dtRet.Rows[i]["idloja"].ToString()); eRet.tpAmbiente = FuncoesGerais.TipoAmbiente(); eRet.cUf = FuncoesGerais.UfIbgeEmpresa(int.Parse(dtRet.Rows[i]["idloja"].ToString())); eRet.Uf = dtRet.Rows[i]["uf"].ToString(); eRet.versao = dtRet.Rows[i]["VersaoNfe"].ToString(); status.Enviar(eRet, out eRet); if (eRet != null) { txtStatus.Text = eRet.cStatus; txtAmb.Text = eRet.AmbienteFormatado; txtMsg.Text = eRet.sMotivo; TxtVersao.Text = eRet.versao; txtUltConsulta.Text = eRet.dhRet; } } TmStatus.Enabled = true; } catch (XmlException exm) { TmStatus.Enabled = true; throw new Exception(exm.Message.ToString()); } catch (Exception ex) { TmStatus.Enabled = true; throw new Exception(ex.Message.ToString()); } }
private void TmConsultaLote_Tick(object sender, EventArgs e) { TmConsultaLote.Enabled = false; ConRecibo nRec = new ConRecibo(); Model_Lote mLote = new Model_Lote(); eRec = new Entidade_Recibo(); var retDt = mLote.LotesNaoProcessados(); for (int i = 0; i < retDt.Rows.Count; i++) { eRec.TpNf = retDt.Rows[i]["TpNFe"].ToString(); eRec.Recibo = retDt.Rows[i]["NrRecibo"].ToString(); eRec.Loja = int.Parse(retDt.Rows[i]["id"].ToString()); eRec.cUf = int.Parse(FuncoesGerais.UfIbgeEmpresa(int.Parse(retDt.Rows[i]["id"].ToString()))); eRec.TpAmb = FuncoesGerais.TipoAmbiente(); nRec.Enviar(eRec, out eRec); } TmConsultaLote.Enabled = true; }
private void TmSemRetorno_Tick(object sender, EventArgs e) { EnviarConsultaNfe ConsultaNfe = new EnviarConsultaNfe(); Model_NotaFiscal mNotaFisca = new Model_NotaFiscal(); NFuncoes = new NegocioFuncoesGerais(); mLog = new Model_LogNfe(); try { TmSemRetorno.Enabled = false; var DtRet = mNotaFisca.ConsultarNotasFiscalSemRetornoOuDuplicadas(); for (int i = 0; i < DtRet.Rows.Count; i++) { eNf = new Entidade_NotaFiscal(); eNf.Loja = int.Parse(DtRet.Rows[i]["id_loja"].ToString()); eNf.TpNfe = DtRet.Rows[i]["TpNfe"].ToString(); eNf.NotaFiscal = int.Parse(DtRet.Rows[i]["NrNf"].ToString()); eNf.sSerieNf = DtRet.Rows[i]["serienf"].ToString(); eNf.CdFornecedor = Convert.ToInt32(DtRet.Rows[i]["CdFornec"].ToString()); eNf.ChaveAcessoNfe = DtRet.Rows[i]["TxChAcessoNfe"].ToString(); eNf.TpNfe = DtRet.Rows[i]["TpNFe"].ToString(); eNf.cUf = int.Parse(FuncoesGerais.UfIbgeEmpresa(int.Parse(DtRet.Rows[i]["id_loja"].ToString()))); eNf.TpAmbiente = FuncoesGerais.TipoAmbiente(); ConsultaNfe.Enviar(eNf, out eNf); } TmSemRetorno.Enabled = true; } catch (Exception Ex) { TmSemRetorno.Enabled = true; mLog.InsertErroLog("Erro em consulta de nota fiscal. \nErro encontrado:" + NFuncoes.TiraCampos(Ex.Message.ToString())); } }
public void EnviarXml(XmlDocument doc, X509Certificate2 cert, ref Entidade_Manifestacao obj) { try { object retObj = new object(); UrlEstados = new UrlNfesEstados(); RecepcaoEvento.RecepcaoEvento RecepEvCanc = new RecepcaoEvento.RecepcaoEvento(); RecepcaoEvento.nfeCabecMsg wCabMsg = new RecepcaoEvento.nfeCabecMsg(); wCabMsg.cUF = "91";//FuncoesGerais.UfIbgeEmpresa(obj.id_loja); wCabMsg.versaoDados = "1.00"; RecepEvCanc.SoapVersion = System.Web.Services.Protocols.SoapProtocolVersion.Soap12; RecepEvCanc.PreAuthenticate = true; RecepEvCanc.ClientCertificates.Add(cert); RecepEvCanc.nfeCabecMsgValue = wCabMsg; nodeList = doc.GetElementsByTagName("envEvento"); nodeStatus = nodeList.Item(0); RecepEvCanc.Url = UrlEstados.SetarUrlEstado(UrlNfesEstados.Estado.AN, FuncoesGerais.TipoAmbiente() == "HOM" ? UrlNfesEstados.tbAmbiente.HOM : UrlNfesEstados.tbAmbiente.PROD, UrlNfesEstados.TipoUrlEnvio.RecepcaoEvento); retObj = RecepEvCanc.nfeRecepcaoEvento(nodeStatus); DeserilizarEvento(retObj, ref obj); } catch (Exception Ex) { Mensagem.MensagemErro(Mensagem.TipoMensagem.Manifestacao, "Saida", Ex.Message.ToString()); } }
public void Enviar(Entidade_NotaFiscal ObjEnt, out Entidade_NotaFiscal objDados) { docTran = new XmlDocument(); ns = new XmlSerializerNamespaces(); xmlStatus = new XmlSerializer(typeof(nfe.TNFe)); Settings = new XmlWriterSettings(); DataTable DtLoteNfe = new DataTable(); mLog = new Model_LogNfe(); ObjLote = new Model_Lote(); ObjModNfe = new Model_NotaFiscal(); ObjNotaFiscal = ObjEnt; NFuncoes = new NegocioFuncoesGerais(); ObjNotaFiscal = new Entidade_NotaFiscal(); var Lojas = FuncoesGerais.LojasEmitentes(); for (int i = 0; i < Lojas.Rows.Count; i++) { int Loja = 0; int Nota = 0; int Fornecedor = 0; string Serie = ""; int TpEmis = 0; var Lote = GerarLoteNfe(Convert.ToInt32(Lojas.Rows[i]["id_loja"].ToString())); docEnviNfe = new XmlDocument(); if (Lote != 0) { docEnviNfe.PreserveWhitespace = false; docEnviNfe.LoadXml(CabecalhoEnvieNfe(Lote)); nodeListNfe = docEnviNfe.GetElementsByTagName("enviNFe"); DtLoteNfe = PesquisaNotasFiscaisLoteNfe(Convert.ToInt32(Lojas.Rows[i]["id_loja"].ToString()), Lote); foreach (DataRow RowNFDt in DtLoteNfe.Rows) { try { docTran = new XmlDocument(); var RetEnt = CarregarDados(Convert.ToInt32(RowNFDt["id_loja"]), Convert.ToInt32(RowNFDt["NrNf"]), RowNFDt["serienf"].ToString(), Convert.ToInt32(RowNFDt["CdFornec"]), RowNFDt["TpNFe"].ToString()); if (RetEnt != null) { ObjNotaFiscal.cUf = RetEnt.cUf; // Uf do Emitente ObjNotaFiscal.Loja = RetEnt.Loja; Loja = RetEnt.Loja; Nota = RetEnt.NotaFiscal; Fornecedor = RetEnt.CdFornecedor; Serie = RetEnt.sSerieNf; TpEmis = RetEnt.TpEmis; ObjNotaFiscal.Lote = Lote; Nfe = new nfe.TNFe(RetEnt); } // E DEFINIDO O TIPO DE LEITURA DO XML Settings.Encoding = UTF8Encoding.UTF8; Settings.NewLineHandling = NewLineHandling.None; Settings.Indent = true; Settings.IndentChars = ""; ns.Add(string.Empty, "http://www.portalfiscal.inf.br/nfe"); Sw = new UTF8StringWriter(); Wx = XmlWriter.Create(Sw, Settings); xmlStatus.Serialize(Sw, Nfe, ns); string xmlGer = Sw.ToString(); docTran.LoadXml(xmlGer); docTran.PreserveWhitespace = false; CertEmpresa = AssinaturaDigital.FindCertOnStore(Convert.ToInt32(RowNFDt["id_loja"])); docTran = AssinaturaDigital.SignXml(docTran, CertEmpresa, "infNFe"); if (NFuncoes.ValidarEstruturaXml(docTran.OuterXml, "nfe_v3.10")) { Mensagem.MensagemErro(Mensagem.TipoMensagem.XmlLoteGerados, "Entrada", Lote.ToString() + "|" + "Nota :" + RetEnt.sSerieNf + "-" + RetEnt.NotaFiscal.ToString() + "|" + docTran.OuterXml); nodeListCarregarNfe = docTran.GetElementsByTagName("NFe", "http://www.portalfiscal.inf.br/nfe"); nodeListNfe.Item(0).AppendChild(docEnviNfe.ImportNode(nodeListCarregarNfe.Item(0), true)); ObjLote.UpdateXmlTpSaida(RetEnt.Loja, RetEnt.NotaFiscal, RetEnt.sSerieNf, Lote, RetEnt.TpEmis.ToString(), docTran.OuterXml, RetEnt.CdFornecedor); ObjModNfe.UpdateNfTpEmisVersaoNFe(RetEnt.TpEmis.ToString(), null, "3.10", Lote.ToString(), RetEnt.NotaFiscal.ToString(), RetEnt.Loja.ToString(), RetEnt.sSerieNf, RetEnt.CdFornecedor, Model_NotaFiscal.NotaFiscal.Entrada); } } catch (Exception Ex) { Mensagem.MensagemErro(Mensagem.TipoMensagem.Nfe, "Entrada", Ex.Message.ToString()); ObjLote.UpdateXmlTpSaida(Loja, Nota, Serie, Lote, TpEmis.ToString(), docTran.OuterXml, Fornecedor); ObjModNfe.UpdateNfErro(225, Loja, Serie, Nota, Fornecedor, Model_NotaFiscal.NotaFiscal.Entrada); ObjLote.UpdateLoteErro(225, Loja, Serie, Nota, Fornecedor); mLog.InsertErroLog("Erro Lote:" + Lote + ", Nota Fiscal Entrada:" + Serie + "-" + Nota + ". " + NFuncoes.TiraCampos(Ex.Message.ToString())); } } if (CertEmpresa != null) { ObjNotaFiscal.TpAmbiente = FuncoesGerais.TipoAmbiente(); EnviarXml(docEnviNfe, CertEmpresa, ref ObjNotaFiscal); } objDados = null; } else { objDados = null; } } objDados = null; }
public Entidade_NotaFiscal CarregarDados(int Loja, int NotaFiscal, string SerieNf, int Fornec, string tipoNf) { List <Entidade_Duplicatas> ListDuplicatas = new List <Entidade_Duplicatas>(); List <Entidade_ItemNotaFiscal> ListItemNotaFiscal = new List <Entidade_ItemNotaFiscal>(); ListObjNotaFiscalReferida = new List <Entidade_NotaFiscalReferida>(); ObjTotais = new Entidade_Totais(); ObjEntEmit = new Entidade_Emitente(); ObjEntDest = new Entidade_Destinatario(); ObjNotaFiscal = new Entidade_NotaFiscal(); ObjModNfe = new Model_NotaFiscal(); ObjItemNotaFiscal = new Entidade_ItemNotaFiscal(); NFuncoes = new NegocioFuncoesGerais(); ObjNotaFiscalReferida = new Entidade_NotaFiscalReferida(); string TipoAmbiente = FuncoesGerais.TipoAmbiente(); string TipoEmissao = FuncoesGerais.TipoEmissao(); var DtNotaFiscal = ObjModNfe.ConsultarNotasFiscais(Loja, NotaFiscal, SerieNf, Fornec, Model_NotaFiscal.NotaFiscal.Entrada); var DtNotaFiscalItens = ObjModNfe.ConsultarNotasFiscalItens(Loja, NotaFiscal, SerieNf, Fornec, Model_NotaFiscal.NotaFiscal.Entrada); var DtNotaFiscalReferida = ObjModNfe.ConsultarNotasFiscalReferidaEntrada(Loja, NotaFiscal, SerieNf, Fornec); if (DtNotaFiscal.Rows.Count > 0) { #region Dados da NotaFiscal //Dados da Nota Fiscal ObjNotaFiscal.cUf = int.Parse(DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Emitente"].ToString().Substring(0, 2)); ObjNotaFiscal.CdFornecedor = int.Parse(DtNotaFiscal.Rows[0]["CdFornec"].ToString()); ObjNotaFiscal.Loja = int.Parse(DtNotaFiscal.Rows[0]["id_loja"].ToString()); ObjNotaFiscal.NaturezaOperacao = DtNotaFiscal.Rows[0]["NmCfo"].ToString().Trim(); ObjNotaFiscal.ModNfe = int.Parse(DtNotaFiscal.Rows[0]["ModNfe"].ToString()); ObjNotaFiscal.sSerieNf = DtNotaFiscal.Rows[0]["serienf"].ToString().Trim(); ObjNotaFiscal.NotaFiscal = int.Parse(DtNotaFiscal.Rows[0]["NrNf"].ToString()); ObjNotaFiscal.DtEmissao = Convert.ToDateTime(DtNotaFiscal.Rows[0]["DtEmissao"].ToString()); ObjNotaFiscal.DtEntrada = Convert.ToDateTime(DtNotaFiscal.Rows[0]["DtEntrada"].ToString()); ObjNotaFiscal.Observacao = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["Observacao"].ToString().Trim()); ObjNotaFiscal.ChaveAcessoNfe = DtNotaFiscal.Rows[0]["TxChAcessoNFe"].ToString().Trim(); ObjNotaFiscal.CdNfe = string.IsNullOrEmpty(DtNotaFiscal.Rows[0]["cdNFe"].ToString()) ? 0 : int.Parse(DtNotaFiscal.Rows[0]["cdNFe"].ToString()); if (tipoNf == "E") { ObjNotaFiscal.TpNfe = "E"; } else { ObjNotaFiscal.TpNfe = "S"; } if (DtNotaFiscal.Rows[0]["CdUf_Remetente"].ToString() == DtNotaFiscal.Rows[0]["CdUf_Emitente"].ToString()) { ObjNotaFiscal.TipoOperacao = 1; } else { ObjNotaFiscal.TipoOperacao = 2; } if (TipoEmissao.Trim() == "1") { ObjNotaFiscal.TpEmis = 1; } else { ObjNotaFiscal.TpEmis = 2; } ObjNotaFiscal.TpAmbiente = TipoAmbiente; if (Convert.ToBoolean(DtNotaFiscal.Rows[0]["FlNfComplementar"].ToString()) == true) { ObjNotaFiscal.TipoFInalidadeNfe = 2; } else if (Convert.ToBoolean(DtNotaFiscal.Rows[0]["FlNfAjuste"].ToString()) == true) { ObjNotaFiscal.TipoFInalidadeNfe = 3; } else if (DtNotaFiscal.Rows[0]["CdTipoNf"].ToString() == "D") { ObjNotaFiscal.TipoFInalidadeNfe = 4; } else { ObjNotaFiscal.TipoFInalidadeNfe = 1; } #endregion #region Dados do Emitente //Emitente ObjEntEmit.Nome = DtNotaFiscal.Rows[0]["NmRazaoSocial_Emitente"].ToString().Trim().Trim(); ObjEntEmit.RazaoSocial = DtNotaFiscal.Rows[0]["NmRazaoSocial_Emitente"].ToString().Trim(); ObjEntEmit.CpfCnpj = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgc_Emitente"].ToString().Trim()); ObjEntEmit.IE = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["NrCgf_Emitente"].ToString().Trim()); ObjEntEmit.Lagradouro = DtNotaFiscal.Rows[0]["NmEnder_Emitente"].ToString().Trim(); ObjEntEmit.Numero = DtNotaFiscal.Rows[0]["NrEnder_Emitente"].ToString().Trim(); ObjEntEmit.Bairro = DtNotaFiscal.Rows[0]["NmBairro_Emitente"].ToString().Trim().Trim(); ObjEntEmit.sCep = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCep_Emitente"].ToString()); ObjEntEmit.sUf = DtNotaFiscal.Rows[0]["CdUf_Emitente"].ToString(); ObjEntEmit.cMunicipio = int.Parse(DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Emitente"].ToString()); ObjEntEmit.sMunicipio = DtNotaFiscal.Rows[0]["NmCidadeIbge_Emitente"].ToString(); #endregion #region Dados do Destinatario //Destinatario ObjEntDest.Nome = DtNotaFiscal.Rows[0]["NmFornec_Remetente"].ToString().Trim(); ObjEntDest.CpfCnpj = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgc_Remetente"].ToString()).Trim(); ObjEntDest.IE = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["NrCgf_Remetente"].ToString()).Trim(); ObjEntDest.Lagradouro = DtNotaFiscal.Rows[0]["NmEnder_Remetente"].ToString().Trim(); ObjEntDest.Numero = DtNotaFiscal.Rows[0]["NrEnder_Remetente"].ToString().Trim(); ObjEntDest.FlIsento = Convert.ToBoolean(DtNotaFiscal.Rows[0]["FlIsento_Remetente"]); ObjEntDest.Bairro = DtNotaFiscal.Rows[0]["NmBairro_Remetente"].ToString().Trim(); ObjEntDest.sCep = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCep_Remetente"].ToString()); ObjEntDest.sUf = DtNotaFiscal.Rows[0]["CdUf_Remetente"].ToString().Trim(); ObjEntDest.cMunicipio = int.Parse(DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Remetente"].ToString()); ObjEntDest.sMunicipio = DtNotaFiscal.Rows[0]["NmCidade_Remetente"].ToString().Trim(); #endregion #region Totais //Totais ObjTotais.ValorBaseIcms = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlBaseIcms"]); ObjTotais.ValorIcms = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlIcms"]); ObjTotais.ValorIcmsBaseSub = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlBaseIcmsSub"]); ObjTotais.ValorIcmsSub = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlIcmsSub"]); ObjTotais.ValorFrete = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlFrete"]); ObjTotais.ValorSeguro = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlSeguro"]); ObjTotais.ValorOutrasDesp = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlOutrasDesp"]); ObjTotais.ValorIpi = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlIpi"]); ObjTotais.ValorTotalProdutos = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlProdutos"]); ObjTotais.ValorTotal = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlNf"]); ObjTotais.ValorPis = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlPis"]); ObjTotais.ValorCofins = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlCofins"]); #endregion #region Local de Entrega //if (Convert.ToBoolean(DtNotaFiscal.Rows[0]["NrSeq"]) && DtNotaFiscal.Rows[0]["LocalEntrega_NmEnder"].ToString() != string.Empty && DtNotaFiscal.Rows[0]["LocalEntrega_CdUfCidadeIbge"].ToString() != string.Empty && NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgc_Destinatario"].ToString()).Trim().Length == 14) //{ // ObjLocalEntrega = new Entidade_LocalEntrega(); // ObjLocalEntrega.sMunicipio = DtNotaFiscal.Rows[0]["LocalEntrega_NmCidade"].ToString(); // ObjLocalEntrega.Bairro = DtNotaFiscal.Rows[0]["LocalEntrega_NmBairro"].ToString(); // ObjLocalEntrega.sUf = DtNotaFiscal.Rows[0]["LocalEntrega_CdUf"].ToString(); // ObjLocalEntrega.cMunicipio = DtNotaFiscal.Rows[0]["LocalEntrega_cdUfCidadeIbge"].ToString() == string.Empty ? 0 : int.Parse(DtNotaFiscal.Rows[0]["LocalEntrega_cdUfCidadeIbge"].ToString()); // ObjLocalEntrega.Lagradouro = DtNotaFiscal.Rows[0]["LocalEntrega_NmEnder"].ToString(); // ObjLocalEntrega.Numero = DtNotaFiscal.Rows[0]["LocalEntrega_NrEnder"].ToString(); // ObjLocalEntrega.Complemento = DtNotaFiscal.Rows[0]["LocalEntrega_NmComplEnder"].ToString(); //} //else ObjLocalEntrega = null; #endregion #region Item das Notas Fiscais for (int i = 0; i < DtNotaFiscalItens.Rows.Count; i++) { ObjItemNotaFiscal = new Entidade_ItemNotaFiscal(); ObjItemNotaFiscal.CodigoProduto = DtNotaFiscalItens.Rows[i]["CodigoDoProduto"].ToString().Trim(); ObjItemNotaFiscal.NrSeqItem = int.Parse(DtNotaFiscalItens.Rows[i]["NrSeqItem"].ToString()); ObjItemNotaFiscal.CFOP = DtNotaFiscalItens.Rows[i]["CFOP"].ToString().Trim(); ObjItemNotaFiscal.DescricaoProdutos = DtNotaFiscalItens.Rows[i]["DescricaoDoProduto"].ToString().Trim(); ObjItemNotaFiscal.Unidade = DtNotaFiscalItens.Rows[i]["UND"].ToString().Trim(); ObjItemNotaFiscal.Qtd = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["Quantidade"].ToString()); ObjItemNotaFiscal.ValorUnitario = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorUnitario"].ToString()); ObjItemNotaFiscal.ValorTotal = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlTotal"].ToString()); ObjItemNotaFiscal.ValorTotalIcms = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorTotalIcms"].ToString()); ObjItemNotaFiscal.ValorIcms = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorIcms"].ToString()); ObjItemNotaFiscal.AliqIcms = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ICMS"].ToString()); ObjItemNotaFiscal.AliqIpi = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["IPI"].ToString()); ObjItemNotaFiscal.ValorIpi = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorIPI"].ToString()); ObjItemNotaFiscal.ValorBaseIpi = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlTotal"].ToString()); // Base do IPI ObjItemNotaFiscal.ValorPis = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlPis"].ToString()); ObjItemNotaFiscal.ValorCofins = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlCofins"].ToString()); ObjItemNotaFiscal.AliqPis = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlAliqPis"].ToString()); ObjItemNotaFiscal.AliqCofins = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlAliqCofins"].ToString()); ObjItemNotaFiscal.NCM = DtNotaFiscalItens.Rows[i]["NCM"].ToString().Trim().Trim(); ObjItemNotaFiscal.CSTICMS = DtNotaFiscalItens.Rows[i]["CstICMS"].ToString().Trim(); ObjItemNotaFiscal.CSTPI = DtNotaFiscalItens.Rows[i]["CstIPI"].ToString().Trim(); ObjItemNotaFiscal.CSTPIS = DtNotaFiscalItens.Rows[i]["CstPIS"].ToString().Trim(); ObjItemNotaFiscal.CSTCOFINS = DtNotaFiscalItens.Rows[i]["CstCOFINS"].ToString().Trim(); ObjItemNotaFiscal.Desconto = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlDescItem"].ToString()); ObjItemNotaFiscal.Origem = DtNotaFiscalItens.Rows[i]["CdOrigemProduto"].ToString().Trim(); ListItemNotaFiscal.Add(ObjItemNotaFiscal); } #endregion if (DtNotaFiscalReferida.Rows.Count > 0) { for (int i = 0; i < DtNotaFiscalReferida.Rows.Count; i++) { ObjNotaFiscalReferida = new Entidade_NotaFiscalReferida(); ObjNotaFiscalReferida.TxChAcessoNfeReferida = DtNotaFiscalReferida.Rows[0]["TxChAcessoNfe"].ToString(); ObjNotaFiscalReferida.COO = 0; ObjNotaFiscalReferida.SerieNfRef = DtNotaFiscalReferida.Rows[0]["serienfReferida"].ToString(); } ListObjNotaFiscalReferida.Add(ObjNotaFiscalReferida); ObjNotaFiscal.NotaFiscalReferida = ListObjNotaFiscalReferida; } else { ObjNotaFiscal.NotaFiscalReferida = null; } ObjNotaFiscal.EntEmit = ObjEntEmit; ObjNotaFiscal.EntDest = ObjEntDest; ObjNotaFiscal.EntDuplicata = null; ObjNotaFiscal.EntLocalEntrega = ObjLocalEntrega; ObjNotaFiscal.EntTotais = ObjTotais; ObjNotaFiscal.EntItemNotaFiscal = ListItemNotaFiscal; } return(ObjNotaFiscal); }
public Entidade_NotaFiscal CarregarDados(int Loja, int NotaFiscal, string SerieNf, string tipoNf) { List <Entidade_Duplicatas> ListDuplicatas = new List <Entidade_Duplicatas>(); List <Entidade_ItemNotaFiscal> ListItemNotaFiscal = new List <Entidade_ItemNotaFiscal>(); ListObjNotaFiscalReferida = new List <Entidade_NotaFiscalReferida>(); ObjTotais = new Entidade_Totais(); ObjEntEmit = new Entidade_Emitente(); ObjEntDest = new Entidade_Destinatario(); ObjNotaFiscal = new Entidade_NotaFiscal(); ObjModNfe = new Model_NotaFiscal(); ObjItemNotaFiscal = new Entidade_ItemNotaFiscal(); NFuncoes = new NegocioFuncoesGerais(); ObjNotaFiscalReferida = new Entidade_NotaFiscalReferida(); mLog = new Model_LogNfe(); string LocalErro = string.Empty; string TipoAmbiente = FuncoesGerais.TipoAmbiente(); string TipoEmissao = FuncoesGerais.TipoEmissao(); var DtNotaFiscal = ObjModNfe.ConsultarNotasFiscais(Loja, NotaFiscal, SerieNf, 0, Model_NotaFiscal.NotaFiscal.Saida); var DtNotaFiscalItens = ObjModNfe.ConsultarNotasFiscalItens(Loja, NotaFiscal, SerieNf, 0, Model_NotaFiscal.NotaFiscal.Saida); //var DtDuplicatas = ObjModNfe.ConsultarNotasFiscalSaidaDuplicatas(Loja, NotaFiscal, SerieNf); //var DtNotaFiscalReferida = ObjModNfe.ConsultarNotasFiscalReferidaSaida(Loja, NotaFiscal, SerieNf); try { if (DtNotaFiscal.Rows.Count > 0) { #region Dados da NotaFiscal LocalErro = "Nota Fiscal"; //Dados da Nota Fiscal ObjNotaFiscal.cUf = int.Parse(DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Emitente"].ToString().Substring(0, 2)); ObjNotaFiscal.CdFornecedor = 0; ObjNotaFiscal.Loja = int.Parse(DtNotaFiscal.Rows[0]["cdloja"].ToString()); ObjNotaFiscal.NaturezaOperacao = DtNotaFiscal.Rows[0]["naturezaoperacao"].ToString().Trim(); ObjNotaFiscal.ModNfe = int.Parse(DtNotaFiscal.Rows[0]["ModNfe"].ToString()); ObjNotaFiscal.sSerieNf = DtNotaFiscal.Rows[0]["nmserienf"].ToString().Trim(); ObjNotaFiscal.NotaFiscal = int.Parse(DtNotaFiscal.Rows[0]["NrNf"].ToString()); ObjNotaFiscal.DtEmissao = Convert.ToDateTime(DtNotaFiscal.Rows[0]["DtSaida"].ToString()); //ObjNotaFiscal.Observacao = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["Observacao"].ToString().Trim() + ":" + DtNotaFiscal.Rows[0]["MensagemOrcamento"].ToString().Trim() + ":" + DtNotaFiscal.Rows[0]["MensagemComprovanteDeposito"].ToString().Trim() + " | " + DtNotaFiscal.Rows[0]["MensagemLocalEntrega"].ToString().Trim() + ":" + DtNotaFiscal.Rows[0]["MensagemParamVenda"].ToString().Trim() + "|" + DtNotaFiscal.Rows[0]["CdVendedor"].ToString().Trim() + " " + DtNotaFiscal.Rows[0]["NmVendedor"].ToString().Trim() + ". Prazo : " + DtNotaFiscal.Rows[0]["NmPrazo"].ToString().Trim() + ". Rota:" + DtNotaFiscal.Rows[0]["nrRotaGP"].ToString().Trim()); ObjNotaFiscal.Observacao = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["Observacao"].ToString().Trim()); ObjNotaFiscal.ObservacaoFisco = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["mensagemfisco"].ToString().Trim()); ObjNotaFiscal.ObservacaoContribuinte = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["mensagemcontribuinte"].ToString().Trim()); ObjNotaFiscal.ChaveAcessoNfe = DtNotaFiscal.Rows[0]["TxChAcessoNFe"].ToString().Trim(); ObjNotaFiscal.CdNfe = string.IsNullOrEmpty(DtNotaFiscal.Rows[0]["cdNFe"].ToString()) ? 0 : int.Parse(DtNotaFiscal.Rows[0]["cdNFe"].ToString()); if (tipoNf == "E") { ObjNotaFiscal.TpNfe = "E"; } else { ObjNotaFiscal.TpNfe = "S"; } if (DtNotaFiscal.Rows[0]["CdUf_Destinatario"].ToString() == DtNotaFiscal.Rows[0]["CdUf_Emitente"].ToString()) { ObjNotaFiscal.TipoOperacao = 1; } else { ObjNotaFiscal.TipoOperacao = 2; // VALIDAÇÃO DE OPERAÇÃO INTERESTADUAL APENAS EMPRESA PRESUMIDO E REAL PARTICIPAM if (FuncoesGerais.ParamatroTributacaoEmpresa() != "0") { if (NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgc_Destinatario"].ToString()).Trim().Length == 11) { ObjNotaFiscal.OpInterestadual = true; } else { ObjNotaFiscal.OpInterestadual = false; } } } if (TipoEmissao.Trim() == "1") { ObjNotaFiscal.TpEmis = 1; } else { ObjNotaFiscal.TpEmis = 2; } ObjNotaFiscal.TpAmbiente = TipoAmbiente; if (Convert.ToBoolean(DtNotaFiscal.Rows[0]["FlCartao"].ToString()) == true) { ObjNotaFiscal.TipoPagamento = 1; } else if (Convert.ToBoolean(DtNotaFiscal.Rows[0]["FlAvista"]) == true) { ObjNotaFiscal.TipoPagamento = 0; } else { ObjNotaFiscal.TipoPagamento = 0; } if (Convert.ToInt32(DtNotaFiscal.Rows[0]["FlFinalidade"]) == 2) { ObjNotaFiscal.TipoFInalidadeNfe = 2; } else if (Convert.ToInt32(DtNotaFiscal.Rows[0]["FlFinalidade"]) == 3) { ObjNotaFiscal.TipoFInalidadeNfe = 3; } else if (Convert.ToInt32(DtNotaFiscal.Rows[0]["FlFinalidade"]) == 4) { ObjNotaFiscal.TipoFInalidadeNfe = 4; } else { ObjNotaFiscal.TipoFInalidadeNfe = 1; } #endregion #region Dados do Emitente LocalErro = "Dados do Emitente"; //Emitente ObjEntEmit.Nome = DtNotaFiscal.Rows[0]["NmRazaoSocial_Emitente"].ToString().Trim(); ObjEntEmit.RazaoSocial = DtNotaFiscal.Rows[0]["NmRazaoSocial_Emitente"].ToString().Trim(); ObjEntEmit.CpfCnpj = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgc_Emitente"].ToString().Trim()); ObjEntEmit.IE = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["NrCgf_Emitente"].ToString().Trim()); ObjEntEmit.Lagradouro = DtNotaFiscal.Rows[0]["NmEnder_Emitente"].ToString().Trim(); ObjEntEmit.Numero = DtNotaFiscal.Rows[0]["NrEnder_Emitente"].ToString().Trim(); ObjEntEmit.Bairro = DtNotaFiscal.Rows[0]["NmBairro_Emitente"].ToString().Trim().Trim(); ObjEntEmit.sCep = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCep_Emitente"].ToString()); ObjEntEmit.sUf = DtNotaFiscal.Rows[0]["CdUf_Emitente"].ToString(); ObjEntEmit.cMunicipio = DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Emitente"].ToString().Trim() == string.Empty ? 0 : int.Parse(DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Emitente"].ToString()); ObjEntEmit.sMunicipio = DtNotaFiscal.Rows[0]["NmCidadeIbge_Emitente"].ToString(); #endregion #region Dados do Destinatario LocalErro = "Dados do Destinatario"; //Destinatario ObjEntDest.Nome = DtNotaFiscal.Rows[0]["NmCliente_Destinatario"].ToString().Trim(); ObjEntDest.CpfCnpj = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgc_Destinatario"].ToString()).Trim(); ObjEntDest.IE = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["NrCgf_Destinatario"].ToString()).Trim(); ObjEntDest.Lagradouro = DtNotaFiscal.Rows[0]["NmEnder_Destinatario"].ToString().Trim(); ObjEntDest.Numero = DtNotaFiscal.Rows[0]["NrEnder_Destinatario"].ToString().Trim(); ObjEntDest.FlIsento = Convert.ToBoolean(DtNotaFiscal.Rows[0]["Isento_Destinatario"]); ObjEntDest.Bairro = DtNotaFiscal.Rows[0]["NmBairro_Destinatario"].ToString().Trim(); ObjEntDest.sCep = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCep_Destinatario"].ToString()); ObjEntDest.sUf = DtNotaFiscal.Rows[0]["CdUf_Destinatario"].ToString().Trim(); ObjEntDest.cMunicipio = DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Destinatario"].ToString().Trim() == string.Empty ? 0 : int.Parse(DtNotaFiscal.Rows[0]["CdUfCidadeIbge_Destinatario"].ToString()); ObjEntDest.sMunicipio = DtNotaFiscal.Rows[0]["NmCidade_Destinatario"].ToString().Trim(); #endregion #region Totais LocalErro = "Totais"; //Totais ObjTotais.ValorBaseIcms = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlBaseIcms"]); ObjTotais.ValorIcms = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlIcms"]); ObjTotais.ValorIcmsBaseSub = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlBaseIcmsSub"]); ObjTotais.ValorIcmsSub = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlIcmsSub"]); ObjTotais.ValorFrete = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlFrete"]); ObjTotais.ValorSeguro = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlSeguro"]); ObjTotais.ValorDesconto = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlDesconto"]); ObjTotais.ValorOutrasDesp = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlOutrasDesp"]); ObjTotais.ValorIpi = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlIpi"]); ObjTotais.ValorTotalProdutos = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlProdutos"]); ObjTotais.ValorTotal = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlTotal"]); ObjTotais.ValorPis = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlPis"]); ObjTotais.ValorCofins = Convert.ToDecimal(DtNotaFiscal.Rows[0]["VlCofins"]); #endregion #region Local de Entrega if (DtNotaFiscal.Rows[0]["LocalEntrega_NmEnder"].ToString() != string.Empty && DtNotaFiscal.Rows[0]["LocalEntrega_CdUfCidadeIbge"].ToString() != string.Empty && NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgc_Destinatario"].ToString()).Trim().Length == 14) { LocalErro = "Dados do Local de Entrega"; ObjLocalEntrega = new Entidade_LocalEntrega(); ObjLocalEntrega.sMunicipio = DtNotaFiscal.Rows[0]["LocalEntrega_NmCidade"].ToString(); ObjLocalEntrega.Bairro = DtNotaFiscal.Rows[0]["LocalEntrega_NmBairro"].ToString(); ObjLocalEntrega.sUf = DtNotaFiscal.Rows[0]["LocalEntrega_CdUf"].ToString(); ObjLocalEntrega.cMunicipio = DtNotaFiscal.Rows[0]["LocalEntrega_cdUfCidadeIbge"].ToString() == string.Empty ? 0 : int.Parse(DtNotaFiscal.Rows[0]["LocalEntrega_cdUfCidadeIbge"].ToString()); ObjLocalEntrega.Lagradouro = DtNotaFiscal.Rows[0]["LocalEntrega_NmEnder"].ToString(); ObjLocalEntrega.Numero = DtNotaFiscal.Rows[0]["LocalEntrega_NrEnder"].ToString(); ObjLocalEntrega.Complemento = DtNotaFiscal.Rows[0]["LocalEntrega_NmComplEnder"].ToString(); } else { ObjLocalEntrega = null; } if (DtNotaFiscal.Rows[0]["FretePorConta"].ToString().Trim() == "1") { ObjTrans = new Entidade_Transportador(); if (DtNotaFiscal.Rows[0]["CdCpfCgcTrans"].ToString().Trim() != string.Empty) { ObjTrans.CpfCnpj = NFuncoes.TiraCampos(DtNotaFiscal.Rows[0]["CdCpfCgcTrans"].ToString().Trim()); ObjTrans.RazaoSocial = DtNotaFiscal.Rows[0]["NmTransportadora"].ToString().Trim(); ObjTrans.Lagradouro = DtNotaFiscal.Rows[0]["NmEnderTrans"].ToString().Trim(); ObjTrans.sMunicipio = DtNotaFiscal.Rows[0]["NmCidadeTrans"].ToString().Trim(); ObjTrans.IE = DtNotaFiscal.Rows[0]["NrCgfTrans"].ToString().Trim(); ObjTrans.sUf = DtNotaFiscal.Rows[0]["CdUfTrans"].ToString().Trim(); } else { ObjTrans = null; } } #endregion #region Duplicatas //Duplicatas //if (DtDuplicatas.Rows.Count > 0) //{ // LocalErro = "Duplicatas"; // for (int i = 0; i < DtDuplicatas.Rows.Count; i++) // { // ObjDuplicatas = new Entidade_Duplicatas(); // if (SerieNf != "D1") // { // ObjDuplicatas.NumeroDup = DtDuplicatas.Rows[i]["nrDup"].ToString() + DtDuplicatas.Rows[i]["NmParcDup"].ToString().Trim(); // ObjDuplicatas.DataVencimento = Convert.ToDateTime(DtDuplicatas.Rows[i]["dtVencto"].ToString()); // ObjDuplicatas.ValorDup = decimal.Parse(DtDuplicatas.Rows[i]["VlDup"].ToString()); // } // else // { // ObjDuplicatas.TipoPagamento = Convert.ToInt32(DtDuplicatas.Rows[i]["TipoPagto"]); // ObjDuplicatas.ValorDup = decimal.Parse(DtDuplicatas.Rows[i]["Total"].ToString()); // } // ListDuplicatas.Add(ObjDuplicatas); // } //} //else ListDuplicatas = null; #endregion #region Item das Notas Fiscais for (int i = 0; i < DtNotaFiscalItens.Rows.Count; i++) { LocalErro = "Dados dos Itens da Nota"; ObjItemNotaFiscal = new Entidade_ItemNotaFiscal(); ObjItemNotaFiscal.CodigoProduto = DtNotaFiscalItens.Rows[i]["CodigoDoProduto"].ToString().Trim(); //ObjItemNotaFiscal.NrSeqItem = int.Parse(DtNotaFiscalItens.Rows[i]["NrSeqItem"].ToString()); ObjItemNotaFiscal.NrSeqItem = i + 1; ObjItemNotaFiscal.CFOP = DtNotaFiscalItens.Rows[i]["CFOP"].ToString().Trim(); if (CfopDev.Contains(DtNotaFiscalItens.Rows[i]["CFOP"].ToString().Trim()) == true) { ObjNotaFiscal.TipoFInalidadeNfe = 4; } ObjItemNotaFiscal.DescricaoProdutos = DtNotaFiscalItens.Rows[i]["DescricaoDoProduto"].ToString().Trim(); ObjItemNotaFiscal.Unidade = DtNotaFiscalItens.Rows[i]["UND"].ToString().Trim(); ObjItemNotaFiscal.Qtd = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["Quantidade"].ToString()); ObjItemNotaFiscal.ValorUnitario = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorUnitario"].ToString()); ObjItemNotaFiscal.ValorTotal = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlTotal"].ToString()); ObjItemNotaFiscal.ValorTotalIcms = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorTotalIcms"].ToString()); ObjItemNotaFiscal.ValorIcms = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorIcms"].ToString()); ObjItemNotaFiscal.AliqIcms = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ICMS"].ToString()); ObjItemNotaFiscal.AliqIpi = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["IPI"].ToString()); ObjItemNotaFiscal.ValorIpi = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorIPI"].ToString()); ObjItemNotaFiscal.ValorBaseIpi = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorBaseIPI"].ToString()); ObjItemNotaFiscal.ValorPis = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorPis"].ToString()); ObjItemNotaFiscal.ValorCofins = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorCofins"].ToString()); ObjItemNotaFiscal.AliqPis = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlAliqPis"].ToString()); ObjItemNotaFiscal.AliqCofins = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlAliqCofins"].ToString()); ObjItemNotaFiscal.NCM = DtNotaFiscalItens.Rows[i]["NCM"].ToString().Trim().Trim(); ObjItemNotaFiscal.PercMVA = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["PercMVA"]); ObjItemNotaFiscal.PercReducao = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["PercReducao"]); ObjItemNotaFiscal.ValorIcmsBaseSub = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorBaseIcmsSub"]); ObjItemNotaFiscal.ValorIcmsSub = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorBaseIcmsSub"]) * (Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ICMS"].ToString()) / 100) - Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["ValorIcms"].ToString()); ObjItemNotaFiscal.CSTICMS = DtNotaFiscalItens.Rows[i]["CstICMS"].ToString().Trim(); ObjItemNotaFiscal.CSTPI = DtNotaFiscalItens.Rows[i]["CstIPI"].ToString().Trim(); ObjItemNotaFiscal.CSTPIS = DtNotaFiscalItens.Rows[i]["CstPIS"].ToString().Trim(); ObjItemNotaFiscal.CSTCOFINS = DtNotaFiscalItens.Rows[i]["CstCOFINS"].ToString().Trim(); ObjItemNotaFiscal.Desconto = Convert.ToDecimal(DtNotaFiscalItens.Rows[i]["VlDescItem"].ToString()); ObjItemNotaFiscal.Origem = DtNotaFiscalItens.Rows[i]["CdOrigemProduto"].ToString().Trim(); ListItemNotaFiscal.Add(ObjItemNotaFiscal); } #endregion #region Nota Fiscal Referida //if (DtNotaFiscalReferida.Rows.Count > 0) //{ // LocalErro = "Dados do Nota Fiscal Referida"; // for (int i = 0; i < DtNotaFiscalReferida.Rows.Count; i++) // { // ObjNotaFiscalReferida = new Entidade_NotaFiscalReferida(); // ObjNotaFiscalReferida.TxChAcessoNfeReferida = DtNotaFiscalReferida.Rows[0]["TxChAcessoNfe"].ToString(); // ObjNotaFiscalReferida.COO = 0; // ObjNotaFiscalReferida.SerieNfRef = DtNotaFiscalReferida.Rows[0]["serienfReferida"].ToString(); // } // ListObjNotaFiscalReferida.Add(ObjNotaFiscalReferida); // ObjNotaFiscal.NotaFiscalReferida = ListObjNotaFiscalReferida; //} //else ObjNotaFiscal.NotaFiscalReferida = null; #endregion ObjNotaFiscal.EntEmit = ObjEntEmit; ObjNotaFiscal.EntDest = ObjEntDest; ObjNotaFiscal.EntDuplicata = ListDuplicatas; ObjNotaFiscal.EntLocalEntrega = ObjLocalEntrega; ObjNotaFiscal.EntTotais = ObjTotais; ObjNotaFiscal.EntItemNotaFiscal = ListItemNotaFiscal; ObjNotaFiscal.EntTransportador = ObjTrans; } } catch (InvalidCastException Ice) { if (Ice.Source != null) { mLog.InsertErroLog("Erro em consulta de nota fiscal. \nErro encontrado:" + Ice.Source + "." + Ice.Message.ToString() + "." + LocalErro); } else { mLog.InsertErroLog("Erro em consulta de nota fiscal. \nErro encontrado:" + Ice.Message.ToString() + "." + LocalErro); } return(null); } catch (IOException e) { if (e.Source != null) { mLog.InsertErroLog("Erro em consulta de nota fiscal. \nErro encontrado:" + e.Source + "." + e.Message.ToString() + "." + LocalErro); } else { mLog.InsertErroLog("Erro em consulta de nota fiscal. \nErro encontrado:" + e.Message.ToString() + "." + LocalErro); } return(null); } catch (Exception ex) { if (ex.Source != null) { mLog.InsertErroLog("Erro em consulta de nota fiscal. \nErro encontrado:" + ex.Source + "." + ex.Message.ToString() + "." + LocalErro); } else { mLog.InsertErroLog("Erro em consulta de nota fiscal. \nErro encontrado:" + ex.Message.ToString() + "." + LocalErro); } return(null); } return(ObjNotaFiscal); }