Ir para conteúdo
  • Cadastre-se

Leandro Miler Santana

Membros
  • Total de ítens

    274
  • Registro em

  • Última visita

Tudo que Leandro Miler Santana postou

  1. Bom dia pessoal!! Estou tentando encerrar manifestos e está dando mensagem de erro que o webservice esta inoperante. CTE está normal, somente MDFE Alguem está passando por isso no momento?
  2. no site do Sefaz.
  3. Bom dia. Sefaz SP fora do ar. Só que desta vez assumiram a instabilidade. Vamos aguardar !!! Abraços.
  4. Obrigado BigWings, verifiquei aqui e deu certo. Na realidade é que estava faltando o CEP do Carregamento por isso não gerou. Apesar que o erro pede o CEP e a Latitude, basta digitar o CEP. Ufa!! Pessoal, muito obrigado !!! Podem encerrar este "POST"
  5. Bom dia. Todos bem ? Espero que sim !!! Pessoal hoje um cliente está dando o seguinte erro, será que entrou em vigor a exigência da latitude e longitude ? Vejam a imagem
  6. Pessoal um amigo me ajudou e acabei descobrindo o problema, escrevi o nome do campo errado. Grupo - "infCarga" Campo - "proPred" (e não prodPred) Abraços !!!
  7. Olá amigo Devs, bom dia. Estou com um problema em um cliente, que precisa alterar o produto Predominante de um CTE através de uma carta de correção, mas sempre me retorna um erro quando envio o evento de carta de correção. Já tentei inverter as ordens do Grupo e Campo, já atualizei o schemas, mas mesmo assim o erro persiste. Alguém que já passou por isso consegue me ajudar por favor ? Vejam abaixo a mensagem de erro retornada. exception message : Rejeição: Carta de correção inválida (campo/grupo [infCarga/prodPred/infCTeNorm] informado não existe no schema do CT-e ou não existe no grupo informado). Desde já agradeço o apoio deste grupo !!!
  8. Entendi caro Juliomar, mas vou tentar aqui, quem sabe da certo. Você poderia me dizer o nome do componente e a propriedade que eu "seto" por favor !? Grato.
  9. Caros amigos, boa noite !! Depois que comecei a usar a impressão do DACTE no Fast Reports, percebi que o tamanho dos arquivos em PDF ficaram muito grandes. O maior problema disto são os envios de emails de CTES que ficam mais lentos ou de "Faturas" enviadas por emails com vários XML e CTEs, pois cada fatura tem vários CTES. Verifiquei em um post muito antigo que na NFE tinha uma propriedade de incorporarBackgroundFont, que desabilitando, os PDFs no Fast ficavam muito menores. Existe alguma propriedade parecida no ACBR DACTE? Se existisse iria ajudar muito !!!
  10. Queridos boa tarde. Pelo que sei o ambiente do qual usamos para colher estas informações é conhecido como Ambiente Nacional (me corrijam se eu tiver errado). e realmente eles não retornam 100% das NFEs emitidas, como deveria ser. Também há um atraso na atualização neste servidor. Cheguei a desenvolver um aplicativo para colher estas informações para meus clientes em apoio ao meu software de gestão. Mas não funcionou devido a estes problemas. Infelizmente. Se alguém tiver alguma solução, por favor postem aqui. Abraço a todos
  11. Ola queridos bom dia. Veja a regra de acordo com a Nota Tecnica 2019.003 Veja se ajuda Complementando a resposta anterior, veja exemplo para adicionar contratante. with rodo.infANTT.infContratante.New do // contratante begin CNPJCPF := dm1.CadFil.FieldByName('CGC').AsString; idEstrangeiro := ''; xNome := dm1.CadFil.FieldByName('NOME').AsString; // 09-04-2020 end;
  12. Olá boa tarde, tudo bom ? if dm1.BancoTIPBANCO.AsString = '4' then // SICOB BANCOB begin ACBrBoleto1.Banco.TipoCobranca := cobBancoob; sLocalPagamento := 'Pagar preferêncialmente nas agências do Sicob'; end; Faço assim. Creio que vai dar certo, o meu está homologado.
  13. Olá pessoal. Hoje logo cedo, me deparei com este problema. Não consegui resolver No meu caso podíamos cancelar o CTE e gerar um correto, foi o que fizemos. Com certeza problema no SEFAZ e como sempre, o gráfico de compatibilidade no SEFAZ não consta nenhum problema. abraços.
  14. Pessoal importante lembrar que quando emitimos em contingência desta forma também teremos que modificar a propriedade na tag Ide.tpEmis de cada CTE Emitido. // se for emitir em contingencia faça assim Ide.tpEmis := teSVCRS // contingencia RS // se for emitir normal, faça como codigo abaixo Ide.tpEmis := teNormal; Realmente ainda está com problemas, e o pior que no site de Disponibilidade do Sefaz SP está tudo verdinho bonitinho. Terrível né !!! Att
  15. Maravilha !!!
  16. Conseguiu emitir Calmeida79 ?
  17. Show de Bola !!! Contingência "CTE.Configuracoes.Geral.FormaEmissao := teSVCRS" rodou !!! Obrigado pessoal !!!
  18. Maravilha, vou testar em contingência !!!
  19. Será que é o caso de usarmos o Sefaz de RS igual fizemos recentemente ? CTE.Configuracoes.Geral.FormaEmissao := teSVCRS; Alguém sabe responder ?
  20. Pessoal bom dia. Hoje todos os clientes estão com problema na emissão dos CTEs. Está dando a mensagem uso Indevido. Provavelmente problema no Sefaz apesar de não estarem avisando. Todos usam Sefaz São Paulo. Alguém está passando por isso também ?
  21. Se ajudar segue exemplo de código: procedure TfrmCTE_Importacao.btXMLClick(Sender: TObject); var sfilter, sFileName, mCONHEC,mCOD_CTRC : String; ArquivoXML : TStringList; TipoDFE : Integer; begin OpenDialog1.Title := 'Selecione o CTe'; OpenDialog1.DefaultExt := '*-cte.xml'; OpenDialog1.Filter := 'Arquivos CTe (*-cte.xml)|*-cte.xml|Arquivos XML (*.xml)|*.xml|Todos os Arquivos (*.*)|*.*'; OpenDialog1.InitialDir := ACBrCTE1.Configuracoes.Arquivos.PathSalvar; if OpenDialog1.Execute then begin sFileName := OpenDialog1.FileName; ArquivoXML := TStringList.Create; ArquivoXML.LoadFromFile(sFileName); TipoDFE := 0; if pos('<infNFe', ArquivoXML.Text) > 0 then TipoDFE := 1; if pos('<infCte', ArquivoXML.Text) > 0 then TipoDFE := 2; if pos('InfNfse', ArquivoXML.Text) > 0 then TipoDFE := 3; if pos('infMDFe', ArquivoXML.Text) > 0 then TipoDFE := 4; if pos('procEventoNFe', ArquivoXML.Text) > 0 then TipoDFE := 5; if pos('procEventoCTe', ArquivoXML.Text) > 0 then TipoDFE := 6; if pos('procEventoMDFe', ArquivoXML.Text) > 0 then TipoDFE := 7; ArquivoXML.Free; mCONHEC := LeftStr(RightStr(sFileName,25),7); mCOD_CTRC := mCONHEC+IntToStr(spFCODIGO.Value); sFilter:='COD_CTRC = '+ QuotedStr(mCOD_CTRC)+''; dm1.Nota.Query(sFilter); dm1.Nota.First; if (TipoDFE<>2) then begin messagedlg('Este XML não é de CTe, favor baixar direto do site do SEFAZ !',mterror,[mbok],0); exit; end; if dm1.Nota.Eof then begin importaCteDoXML( sFileName); messagedlg('CTE '+mCONHEC+' foi importado com sucesso !!!',mtInformation,[mbok],0); end else messagedlg('Este CTE já existe no sistema !',mtError,[mbok],0); end; end; procedure TfrmCTE_Importacao.importaCteDoXML(sFile: String); var sRandom, sNatureza,sChaveCTE, mConhec : String; mIBGE_ENT,mCENTREGA,mENT_UF, mIBGE_COL,mCCOLETA,mCOL_UF: String; mCESPECIE, mCNATU, mCNATUC, mCUBAGEM: String; mTARIFA, mCVALOR, mFRTPESO, mXFRETE, mPEDAGIO, mCOUTROS, mCTOTAL, mCBASECALC,mCALIQUOTA, mCICMS : double; mCDATA :TDate; iSerie,iConhec : Integer; mCCLIENTE1, mCCLIENTE2, mCCLIENTE3, mCCLIENTE4 : String; mAPAGAR4, mPAGO4, mAPAGAR3, mPAGO3, mCALCULADO, mCOBS, mCOBS3:String; mFCODIGO, mCOD_CTRC, mTOMADOR : String; iVarreComps, iQtdComps, mQTD : Integer; xQTD_Converte, mCPESO, mTSECCAT, mTDESPACHO, mFRTVALOR : Double; mRecibo, sChaveNFE, mNomeArq, mChaveCTE, mProtoc : String; begin ACBrCTe1.Conhecimentos.Clear; if not FileExists(sFile) then exit; ACBrCTe1.Conhecimentos.LoadFromFile(sFile); // showmessage(IntToStr(ACBrCTe1.Conhecimentos.Items[0].cStat)); if ACBrCTe1.Conhecimentos.Count>0 then begin sNatureza := ACBrCTe1.Conhecimentos.Items[0].CTE.ide.natOp; sRandom := IntToStr(ACBrCTe1.Conhecimentos.Items[0].CTE.ide.cCT); mCDATA := ACBrCTe1.Conhecimentos.Items[0].CTE.ide.dhEmi; mConhec := IntToStr(ACBrCTe1.Conhecimentos.Items[0].CTE.ide.nCT); mCONHEC := tbStrZero(StrToInt(Mconhec),7); mCNATU := IntToStr(ACBrCTe1.Conhecimentos.Items[0].CTE.ide.CFOP); mIBGE_COL := IntToStr(ACBrCTe1.Conhecimentos.Items[0].CTE.ide.cMunIni); mCCOLETA := ACBrCTe1.Conhecimentos.Items[0].CTE.ide.xMunIni; mCOL_UF := ACBrCTe1.Conhecimentos.Items[0].CTE.ide.UFIni; mIBGE_ENT := IntToStr(ACBrCTe1.Conhecimentos.Items[0].CTE.ide.cMunFim); mCENTREGA := ACBrCTe1.Conhecimentos.Items[0].CTE.ide.xMunFim; mENT_UF := ACBrCTe1.Conhecimentos.Items[0].CTE.ide.UFFim; mCCLIENTE1 := ACBrCTe1.Conhecimentos.Items[0].CTE.rem.CNPJCPF; mCCLIENTE2 := ACBrCTe1.Conhecimentos.Items[0].CTE.dest.CNPJCPF; mCCLIENTE3 := ACBrCTe1.Conhecimentos.Items[0].CTE.exped.CNPJCPF; mCCLIENTE4 := ACBrCTe1.Conhecimentos.Items[0].CTE.receb.CNPJCPF; if ACBrCTe1.Conhecimentos.Items[0].CTE.ide.toma03.Toma = tmRemetente then mTOMADOR := mCCLIENTE1; if ACBrCTe1.Conhecimentos.Items[0].CTE.ide.toma03.Toma = tmDestinatario then mTOMADOR := mCCLIENTE2; if ACBrCTe1.Conhecimentos.Items[0].CTE.ide.toma03.Toma = tmExpedidor then mTOMADOR := mCCLIENTE3; if ACBrCTe1.Conhecimentos.Items[0].CTE.ide.toma03.Toma = tmRecebedor then mTOMADOR := mCCLIENTE4; if copy(Mccliente1,1,1)<>'' then mCCLIENTE1:=FUNCOES1.FormataCNPJ(mCCLIENTE1); if copy(Mccliente2,1,1)<>'' then mCCLIENTE2:=FUNCOES1.FormataCNPJ(mCCLIENTE2); if copy(Mccliente3,1,1)<>'' then mCCLIENTE3:=FUNCOES1.FormataCNPJ(mCCLIENTE3); if copy(Mccliente4,1,1)<>'' then mCCLIENTE4:=FUNCOES1.FormataCNPJ(mCCLIENTE4); if copy(mTOMADOR,1,1)<>'' then mTOMADOR:=FUNCOES1.FormataCNPJ(mTOMADOR); if mCCLIENTE1=mTOMADOR then mPAGO3 := 'X'; if mCCLIENTE2=mTOMADOR then mAPAGAR3 := 'X'; if mCCLIENTE3=mTOMADOR then mPAGO4:= 'X'; if mCCLIENTE4=mTOMADOR then mAPAGAR4:= 'X'; mCALCULADO := ACBrCTe1.Conhecimentos.Items[0].CTE.ide.xMunFim; iQtdComps := ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.infQ.Count; iVarreComps:=0; while iVarreComps<iQtdComps do begin IF ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.infQ[iVarreComps].tpMed <> 'Kg' then xQTD_Converte := ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.infQ[iVarreComps].qCarga; IF ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.infQ[iVarreComps].tpMed = 'Kg' then mCPESO := ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.infQ[iVarreComps].qCarga; inc(iVarreComps); end; mQTD := Round(xQTD_Converte); mCVALOR := ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.vCarga; mCNATUC := ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.proPred; mCESPECIE := ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infCarga.xOutCat; mCTOTAL := ACBrCTe1.Conhecimentos.Items[0].CTE.vPrest.vTPrest; mProtoc := ACBrCTe1.Conhecimentos.Items[0].CTE.procCTe.nProt; mNomeArq := ACBrCTe1.Conhecimentos.Items[0].NomeArq; mChaveCTE := ACBrCTe1.Conhecimentos.Items[0].CTE.procCTe.chCTe; mRECIBO := ACBrCTe1.Conhecimentos.Items[0].CTE.procCTe.XML_prot; // será que é o recibo? // mChaveCTE := RightStr(LeftSTR(mNomeArq,52),44); // componentes do frete iQtdComps := ACBrCTe1.Conhecimentos.Items[0].CTE.vPrest.Comp.Count; iVarreComps:=0; while iVarreComps<iQtdComps do begin with ACBrCTe1.Conhecimentos.Items[0].CTE.vPrest do begin if Comp.Items[iVarreComps].xNome='Frete Valor' then mFRTValor := Comp.Items[iVarreComps].vComp; if Comp.Items[iVarreComps].xNome='Frete Peso' then mFRTPeso := Comp.Items[iVarreComps].vComp; if Comp.Items[iVarreComps].xNome='Coleta' then mTARIFA := Comp.Items[iVarreComps].vComp; if Comp.Items[iVarreComps].xNome='Sec-Cat' then mTSECCAT := Comp.Items[iVarreComps].vComp; if Comp.Items[iVarreComps].xNome='Pedagio' then mPEDAGIO := Comp.Items[iVarreComps].vComp; if Comp.Items[iVarreComps].xNome='Despacho' then mTDESPACHO := Comp.Items[iVarreComps].vComp; if Comp.Items[iVarreComps].xNome='Outros Valores' then mCOUTROS := Comp.Items[iVarreComps].vComp; // incrementa inc(iVarreComps); end; end; // nota2 // with infCTeNorm.infDoc.InfNFe.Add do iQtdComps := ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infDoc.infNFe.Count; iVarreComps:=0; while iVarreComps<iQtdComps do begin with ACBrCTe1.Conhecimentos.Items[0].CTE.infCTeNorm.infDoc do begin sChaveNFE := infNFe.Items[iVarreComps].chave; // vai lancando no nota2 dm1.Nota2.Append; dm1.Nota2.FieldByName('CONHEC').AsString := mConhec; dm1.Nota2.FieldByName('FCODIGO').AsString:= IntToStr(spFCODIGO.Value); // verificar dm1.Nota2.FieldByName('COD_CTRC').AsString := mCONHEC+'51'; // verificar dm1.Nota2.FieldByName('NFE').AsString := sChaveNFE; dm1.Nota2.FieldByName('NOTA2').AsString := copy(sChaveNfe,26,9); dm1.Nota2.FieldByName('SERIE').AsString := copy(sChaveNfe,23,3); dm1.Nota2.FieldByName('DATA2').AsDateTime := mCDATA; dm1.Nota2.Commit; // incrementa inc(iVarreComps); end; end; dm1.Nota.Append; with dm1 do begin Nota.FieldByName('CONHEC').AsString := mCONHEC; Nota.FieldByName('FCODIGO').AsString := IntToStr(spFCODIGO.Value); // verificar Nota.FieldByName('COD_CTRC').AsString := mConhec+IntToStr(spFCODIGO.Value); Nota.FieldByName('CDATA').AsDateTime := mCDATA; Nota.FieldByName('CNATU').AsString := mCNATU; Nota.FieldByName('CCLIENTE1').AsString := mCCLIENTE1; Nota.FieldByName('CCLIENTE2').AsString := mCCLIENTE2; Nota.FieldByName('CCLIENTE3').AsString := mCCLIENTE3; Nota.FieldByName('CCLIENTE4').AsString := mCCLIENTE4; Nota.FieldByName('PAGO3').AsString := mPAGO3; Nota.FieldByName('APAGAR3').AsString := mAPAGAR3; Nota.FieldByName('PAGO4').AsString := mPAGO4; Nota.FieldByName('APAGAR4').AsString := mAPAGAR4; Nota.FieldByName('CALCULADO').AsString := mCALCULADO; Nota.FieldByName('CCOLETA').AsString := mCCOLETA; Nota.FieldByName('COL_UF').AsString := mCOL_UF; Nota.FieldByName('IBGE_COL').AsString := mIBGE_COL; Nota.FieldByName('CENTREGA').AsString := mCENTREGA; Nota.FieldByName('ENT_UF').AsString := mENT_UF; Nota.FieldByName('IBGE_ENT').AsString := mIBGE_ENT; // Nota.FieldByName('TSECCAT').AsFloat := mTSECCAT; Nota.FieldByName('COUTROS').AsFloat := mCOUTROS; // Nota.FieldByName('TDESPACHO').AsFloat := mTDESPACHO; Nota.FieldByName('TARIFA').AsFloat := mTARIFA; // Nota.FieldByName('FRTVALOR').AsFloat := mFRTVALOR; Nota.FieldByName('QTD').AsFloat := mQTD; // Nota.FieldByName('CPESO').AsFloat := mCPESO; Nota.FieldByName('CTOTAL').AsFloat := mCTOTAL; Nota.FieldByName('FRTPESO').AsFloat := mFRTPESO; Nota.FieldByName('PROTOC').AsString := mProtoc; Nota.FieldByName('ARQUIVO').AsString := mNomeArq; Nota.FieldByName('CHAVECTE').AsString := mChaveCTE; Nota.FieldByName('PEDAGIO').AsFloat := mPEDAGIO; Nota.FieldByName('GLOBAL').AsString := 'N'; // modificar este campo qdo for usar para outros clientes Nota.FieldByName('CVALOR').AsFloat := mCVALOR; Nota.FieldByName('CNATUC').AsString := mCNATUC; Nota.FieldByName('CESPECIE').AsString := mCESPECIE; end; dm1.Nota.Commit; end; end;
  22. O Fórum é pra isso né !! Aprendermos o que não sabemos e compartilhar experiências que descobrimos. Seguindo o velho ditado e muito correto que "Ninguém sabe tanto que não possa aprender, e nem tão pouco que não possa ensinar !!!" Valew pessoal.
  23. Pessoal, importante saber que neste repositório por algum motivo não estarão 100% das notas recebidas contra o CNPJ. Outra coisa. As vezes demora dias pra determinada NF-e constar no repositório. Att.
  24. Percebam no código fonte que postei acima faço um CTE de Substituição ao invés de fazer um CTE de Anulação, necessário em casos que o CTE foi emitido com "Tomador Errado - Inversão de Frete". Nesta situação o CTE substituto tem que ser preenchido com os mesmos valores do CTE a ser substituído mas desta vez com o tomador correto. Percebam que junto ao evento acima a opção a tag "infCteNorm.infCteSub.indAlteraToma" é modificada para SIM, e não precisa "CTE de Anulação" basta "CTE de Substituição" mas a NFE de Anulação e o evento de desacordo ainda serão obrigatórios. Esta situação torna-se necessária, quando o CTE errado já está contido dentro de um MDFe e este já consultado por alguma barreira policial ou Radar automático (Existem radares que pela placa, consultam o MDFe do Veículo automaticamente). Se não for o caso, a melhor opção mesmo, sempre vai ser "Cancelar o CTE" e fazer outro.
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.