Ir para conteúdo
  • Cadastre-se

luciano_f

Membros
  • Total de ítens

    253
  • Registro em

  • Última visita

Tudo que luciano_f postou

  1. Boa Tarde O código comentado na unit ACBrBoleto não pode ser alterado, pois não validaria os demais bancos. Para este caso você pode setar a propriedade "LeCedenteRetorno" como (true) e não terá mais este problema, pois vai atualizar o Código do Cedente conforme o arquivo de Retorno. Não resolveu aqui já estava setado como True a propriedade LeCedenteRetorno se eu colocar como False ai dispare esse raise raise Exception.Create( ACBrStr( 'Arquivo de retorno de banco diferente do Cedente')); O correto então é alterar o codigo para que fique sem esse " Else raise Exception.Create( ACBrStr( 'Arquivo de retorno de banco diferente do Cedente'));" Ficando assim :: if ( IntToStrZero(Banco.Numero, 3) <> BancoRetorno ) then if LeCedenteRetorno then Banco.TipoCobranca := GetTipoCobranca( StrToInt(BancoRetorno)); Pois de outra forma não será mais possível ler arquivos retorno do BradescoSiccob.
  2. Essa procedure foi alterada e dá problema com a unit "ACBrBancoBradescoSICOOB.pas" pois o codigo :: if ( IntToStrZero(Banco.Numero, 3) <> BancoRetorno ) then if LeCedenteRetorno then Banco.TipoCobranca := GetTipoCobranca( StrToInt(BancoRetorno)) else raise Exception.Create( ACBrStr( 'Arquivo de retorno de banco diferente do Cedente')); Altera o tipo de Cobrança de acordo com a leitura do arquivo retorno isso não pode ser, o correto de a gente setar o tipo de cobrança manualmente o componente não pode fazer isso automático de acordo com o conteúdo do arquivo remessa pois no caso do BradescoSicoob vai estar 756 porém é um boleto do Bradesco assim ele vai alterar para carteira do tipo ACBrBancoBancoob onde deveria ser ACBrBancoBradescoSICOOB Assim esse código acima deve ser retirado pois antes de chamar a procedure LerRetorno a gente seta o componente e depois dentro da LerRetorno não pode mais setar o tipo de cobrança Outra coisa que está errado é o retorno do NossoNumero := Copy(Linha,76,6); de acordo com o manual tem que ser NossoNumero := Copy(Linha, 71, 11); Está na pagina 3 do Manual Coloquei as duas units alteradas em anexo para os administradores subirem para o SVN ACBrBancoBradescoSICOOB.pas ACBrBoleto.pas
  3. usando o método "ACBrNFe1.DistribuicaoDFePorChaveNFe(uf,cnpj,chave)" Eu só consigo baixar um resumo da NFe como faço para baixar ela completa ?? o que está retornando é isso <?xml version="1.0" encoding="UTF-8"?> -<resNFe xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.01" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <chNFe>41170561186888013333550050008753171089401420</chNFe> <CNPJ>61186888013333</CNPJ> <xNome>Spal Ind. Bras.Bebidas SA</xNome> <IE>9064621090</IE> <dhEmi>2017-05-04T22:58:15-03:00</dhEmi> <tpNF>1</tpNF> <vNF>101.86</vNF> <digVal>n4oRnzgatMEqBmaMmqawPb8A1ko=</digVal> <dhRecbto>2017-05-05T00:28:04-03:00</dhRecbto> <nProt>141170071011340</nProt> <cSitNFe>1</cSitNFe> </resNFe> Pessoal eu não tinha feito o evento de confirmação da NFE agora deu certo peguei o XML completo da nota
  4. olá amigos, utilizem ACBrNFe1.DistribuicaoDFePorChaveNFe(uf,cnpj,chave); que após a sua nota manifestada, você conseguirá obter o xml quando fizer essa consulta. Já testei isso porque não consigo obter o XML o colega poderia postar o seu codigo e quais propriedades tem que ativar no acbrnfe para isso funcionar
  5. Boa tarde, comecei a utilizar o ACBr pela primeira vez ontem, com intuito de criar uma aplicação onde monitore os documentos fiscais emitidos contra o meu CNPJ (fazendo manifesto antes para poder baixar todas), porém o grande numero de tópicos existentes me deixou um pouco confuso, gostaria de tirar algumas duvidas. O método DistribuicaoDFePorUltNSU() busca os documentos pelo NSU, automaticamente baixa os XML que já contém o evento de manifesto ? Existe como fazer o manifesto do destinatário usando o ultimo NSU? Como eu consigo as ler as chaves pelo NSU? Qual é o processo correto? Existe algum manual ou um código fonte para que eu consiga me basear, pois os exemplos fornecidos eu consigo fazer somente já tento a chave Muito pertinente sua duvida pois estou na mesma situação, existe muitos topicos aqui no forum já estou pesquisando a 3 horas e até agora nada. Gostaria de saber como fazer o Download do XML estou tentando o Demo do ACBRNfe porque não consigo baixar o XML. Já li todo esse tópico aqui Porém não consegui. Se algum colega poder mostrar o código e como foi configurador o ACBr para baixar o xml ficaremos muito agradecidos.
  6. Pessoal achei a solução para o meu problema descrito acima se algum colega precisar no evento OnExibeMsg coloque uma chamada nessa function abaixo. Function Func_RetornaDadosTransacaoTEF(vValorParcela : Real = 0) : String; Var aDebitoCredito : String; Procedure CaptaDados(DadosResp : TACBrTEFDResp); Begin With Controle_Financeiro, DadosResp do Begin if Credito Then aDebitoCredito := 'Credito' Else aDebitoCredito := 'Debito'; Result := 'Rede : ' + Rede + #13 + 'NSU : ' + NSU + #13 + 'Documento Vinculado : ' + DocumentoVinculado + #13 + 'Codigo Autorização : ' + CodigoAutorizacaoTransacao + #13 + 'D/C : ' + aDebitoCredito + #13 + 'BIN do cartão : ' + LeInformacao(136, 0).AsString + #13 + 'Header : ' + Header + ' ID : ' + IntToStr(ID) + #13 + 'Valor Total Recebido : ' + MaskFloatDinheiro(ValorTotal) + #13 + 'Saque : ' + MaskFloatDinheiro(Saque) + #13 + 'Saldo Restante : ' + MaskFloatDinheiro(CartaoTEF.RespostasPendentes.SaldoRestante); End; End; Begin Result := EmptyStr; With Controle_Financeiro Do Begin if CartaoTEF.RespostasPendentes.Count > 0 Then CaptaDados(CartaoTEF.RespostasPendentes[Pred(CartaoTEF.RespostasPendentes.Count)]) Else CaptaDados(CartaoTEF.Resp); if vValorParcela <> 0 Then Result := Result + #13 + 'Valor Parcela : ' + MaskFloatDinheiro(vValorParcela); End; End;
  7. Será que existe alguma forma de eu mostrar os arquivos respostas da ultima transação antes da mesma ser cancelada ? Na minha aplicação eu tenho feito da seguinte forma : Apos a emissão da NFCe eu executo o comando "AcbrTefD.ConfirmarTransacoesPendentes(False);" Então caso haja uma queda de energia apôs ligar a maquina e subir a aplicação ao ativar a aplicação e Iniciar o ACBrTefD EstadoSimuladoEcf := tpsPagamento; AcbrTefD.Inicializar(gpCliSiTef); EstadoSimuladoEcf := tpsLivre; será cancelado as transações pendentes nesse momento eu gostaria de capturar os dados da transação que está sendo cancelada e mostrar para o usuário porém não consigo pois no evento OnExibeMsg sempre em retorna vazio AcbrTefD.RespostasPendentes.Count = 0 Testei em varios eventos como "OnDepoisCancelarTransacoes" porém sem sucesso A grande questão é que eu não confirmo as transações logo apôs a emissão do TEF eu deixo tudo na memoria para ser confirmado só depois da emissão da NFCe e dessa forma percebo que o evento "OnDepoisCancelarTransacoes" nem é disparado. Eu gostaria de mostrar informações como : Function RetornaDadosTransacaoTEF(vValorParcela : Real = 0) : String; Var aDebitoCredito : String; Begin Result := EmptyStr; With Controle_Financeiro Do Begin if AcbrTefD.RespostasPendentes.Count > 0 Then With AcbrTefD.RespostasPendentes[Pred(CartaoTEF.RespostasPendentes.Count)] do Begin if Credito Then aDebitoCredito := 'Credito' Else aDebitoCredito := 'Debito'; Result := 'Rede : ' + Rede + #13 + 'NSU : ' + NSU + #13 + 'Documento Vinculado : ' + DocumentoVinculado + #13 + 'Codigo Autorização : ' + CodigoAutorizacaoTransacao + #13 + 'D/C : ' + aDebitoCredito + #13 + 'BIN do cartão : ' + LeInformacao(136, 0).AsString + #13 + 'Header : ' + Header + ' ID : ' + IntToStr(ID) + #13 + 'Valor Total Recebido : ' + MaskFloatDinheiro(ValorTotal) + #13 + 'Saque : ' + MaskFloatDinheiro(Saque) + #13 + 'Saldo Restante : ' + MaskFloatDinheiro(CartaoTEF.RespostasPendentes.SaldoRestante); if vValorParcela <> 0 Then Result := Result + #13 + 'Valor Parcela : ' + MaskFloatDinheiro(vValorParcela); End; End; End; Obs estou usando "gpCliSiTef" Grato.
  8. Pessoal peguei a ultima versão do AcbrTefD e percebi um problema que não tinha na verão anterior. Estou usando o ACBrTefD com NFCe. Antes de pegar essa ultima versão que tem a propriedade "ConfirmarAntesDosComprovantes" o qual estou colocando como True. Se eu efetuasse uma venda e antes da geração da NFCe eu desligasse a maquina quando eu ligava novamente e abrisse o sistema eu conseguia capturar as respostas pendentes dentro do evento "OnExibeMsg" ou seja ao ativar o sistema novamente depois de ter desligado sem ter confirmado a transação TEF eu sempre conseguia ler os arquivos repostas dentro do Evento "OnExibeMsg" e mostrar para o usuário informações como NSU, Valor Etc.. Agora não consigo mais ler as repostas sempre me retorna "AcbrTEF1.RespostasPendentes.Count = 0" Não é problema em minha aplicação pois voltei a versão anterior do ACBr e consigo capturar normalmente as MSG Obs Versão antiga 10/10/2016 versão nova 16/04/2017 O que pode ser ?
  9. Pessoal estou consultando uma NFCe porém não consigo capturar o XML completo da NFCe. Eu alimento o componente usando o metodo : "AcbrNfe1.NotasFiscais.LoadFromStream" Ai faço a consulta : ACBrNFe1.Consultar; Porém não consigo por exemplo pegar a data que foi feito essa NFCe. sempre é me retornado a data e hora que eu passei para o Acbr, porém caso uma NFCe tenha ficado em processamento e a hora tenha sido diferente da que eu informei eu não consigo pegar essa hora como resolver isso ? Eu pensei que o XML fosse atualizado automático mais isso não está acontecendo até tentei usar o código :: ACBrNFe1.WebServices.Consulta.protNFe.GerarXML; // porém esse código não altera em nada o XML. Apôs executar a consulta da NFCe eu tento capturar a Data e Hora da seguinte forma "ACBrNFe.NotasFiscais.items[0].nfe.Ide.dEmi" porém o retorno é a data que eu passei do meu banco de dados para o ACBr e não a data e Hora que está no XML da Receita Percebi que se eu usar "ACBrNFe1.WebServices.Consulta.protNFe.dhRecbto" ai consigo a data e hora correta do envio da receita porém e se o site da receita estiver muito lento e eu não conseguir salvar o XML no momento da Emissão e quiser capturar esse XML depois alimentando o componente para que ele me retorne todos os dados da NFCe como Produtos, Destinatário, impostos etc... teria como ? Grato a todos.
  10. Me corrija se Eu estiver errado ::: "ConfirmarAntesDosComprovantes" vai confirmar as transações pendentes de depois dessa propriedade Eu vou poder fazer algumas checagens em meu Código e por ultimo imprimo os comprovantes do TEF através da propriedade "ImprimirTransacoesPendentes" Porque se eu chamar a propriedade "ConfirmarTransacoesPendentes" e depois chamar "ImprimirTransacoesPendentes" não imprime nada. Como estou usando TEF com NFCe essa propriedade é de grande ajuda. Grato.
  11. Onde está essa propriedade "ConfirmarAntesDosComprovantes" pois não achei ela Grato
  12. Pessoal estou com uma dificuldade em fazer o seguinte codigo. Begin ACBrTEFD.ConfirmarTransacoesPendentes; if Then Begin Executo Alguns blocos de Codigos...... End; ACBrTEFD.ImprimirTransacoesPendentes; porém não imprimi nada como deve configurar o componente para imprimir depois de confirmar transações pendentes ??? pelo que percebi só consigo imprimir se executar o codigo assim Begin ACBrTEFD.ImprimirTransacoesPendentes; ACBrTEFD.ConfirmarTransacoesPendentes; End; Porém não posso dessa forma eu preciso confirmar as transações pendentes e depois de alguns outro codigos ai sim imprimir os comprovantes. Grato a todos.
  13. Revivendo esse tópico achei muito interessante a ideia do Roberto.Godinho será que ele ou outro usuário poderia postar algum demo de como efetuar essa tradução ? Grato.
  14. So revivendo o tópico a ultima questão que postei desse tópico algum colega experiente pode me dar uma posição Muito grato a todos.
  15. Sim entendo que existe estados com ECF e não tenho intenção de colocar meu sistema nesses estados. Porém meu receio é de no futuro o ACBrECF sofrer uma evolução para atender alguma norma nova e estados com uso do NFC-e trocar para uma nova tecnologia. Eu não sei o grau de satisfação com essa tecnologia NFC-e por parte dos UFs. Sei que é difícil prever algo (Futuro) por isso disse que é uma "Duvida Cruel"
  16. Pessoal estou com uma duvida, pois sou paraná e aqui em meu estado usamos NFC-e meu sistema tem o ECF eu nunca criei o PAF-ECF apenas ECF simples, porém estava pensando em retirar todo o código referente a ECF, só que ai paira a duvida será que no futuro essa danadinha da ECF pode voltar como uma nova impressora algo como em São Paulo, assim acabo ficando com medo de retirar o codigo da ECF e no futuro ter que programar tudo novamente. Para mim seria muito bom dar uma limpeza e otimizar o meu código fonte. Eu não tenho intensão e colocar meu Software fora do Paraná em estado que usem a ECF até porque não tenho o PAF-ECF. Assim faz alguns dias que estou pensando e com um pouco de receio em remover todo o código da ECF que atualmente e baseado no ACBrECF. Eu não sei quais o planos futuros do ACBr para com esse componente, pois derrepente vocês incorporem o SAT junto ao Componente ECF.
  17. Eu acho que não colega pois essa informação corresponde ao SAT de São Paulo e Eu não vou usar o SAT sou do Paraná. Eu acredito que tenha resolvido porém gostaria que o colegas me dissessem se está correto, se tem algum problema que eu não tenha percebido na captura dos retornos. DepoisConfirmarTransacoes(RespostasPendentes: TACBrTEFDRespostasPendentes); Begin For I := 0 to RespostasPendentes.Count - 1 do begin with RespostasPendentes[I] do begin M_consultas2.MemCondPagto.Edit; if Credito Then M_consultas2.MemCondPagto.FieldByName('DEBITOCREDITO_TEF').Asstring := 'C' Else M_consultas2.MemCondPagto.FieldByName('DEBITOCREDITO_TEF').Asstring := 'D'; M_consultas2.MemCondPagto.FieldByName('COD_AUTORIZACAO_TEF').Asstring := NSU; M_consultas2.MemCondPagto.FieldByName('BANDEIRA_TEF').Asstring := Trim(Copy(LeInformacao(132, 0).AsString, 4, 255)); if M_consultas.Qy_OperaCartao.Locate('ID_OPERADORA', Instituicao, []) Then M_consultas2.MemCondPagto.FieldByName('CNPJ_TEF').Asstring := M_consultas.Qy_OperaCartao.FieldByName('CNPJ').Asstring; M_consultas2.MemCondPagto.Post; End; End; Observação a bandeira achei melhor buscar pelo codigo e percebi que a variavel "CodigoRedeAutorizada" sempre retorna vazio então preferi usar o comando Trim(Copy(LeInformacao(132, 0).AsString, 4, 255)); Gostaria apenas de uma avaliação dos Colegas.
  18. vc deve criar uma tela e buscar estas duas informações no seu BD Estranho pois já fiz compras em mercados onde o caixa não faz essa escolha já parte direto para o tipo se Credito ou Debito. Será que não estão fazendo o mencionei acima ??? Pelo que estou testando queria uma confirmação dos colegas porém percebo que como já aludi acima a variável Rede = Retorna a bandeira Instituicao = Me Retorna a Administradora Dessa forma acredito que com essas duas variáveis eu consigo resolver efetuando um busca em minha tabela de Administradoras pelo ID que seria o código da "Instituicao" que o AcbrTef está retornando para pegar o CNPJ está correto essa ideia minha ? Se essa ideia minha estiver certo para o SoftExpress não precisaria dessas duas telas
  19. Pessoal será que eu não estou sabendo explicar direito minha dificuldade. Fico muito grato a atenção dos colegas porém ainda estou apanhando feio. O Colega "carlosinfoteen" explicou tabela para armazenar as parcelas, aqui na tela onde o usuario seleciona a operadora e em seguida a bandeira, vai salvar junto as parcelas o id de cada uma para futura consulta no banco de dados Porém a tela onde o usuario seleciona a Operadora em seguida a bandeira eu não achei essa tela aqui. pelos testes que fiz com o Demo do ACBRTef não existe essas duas telas Vejas em anexo todas as telas que são me apresentadas. Pelo que estou testando queria uma confirmação dos colegas porém percebo que como já aludi acima a variável Rede = Retorna a bandeira Instituicao = Me Retorna a Administradora Dessa forma acredito que com essas duas variáveis eu consigo resolver efetuando um busca em minha tabela de Administradoras pelo ID que seria o código da "Instituicao" que o AcbrTef está retornando para pegar o CNPJ está correto essa ideia minha ?
  20. Percebi que pelo evento :: DepoisConfirmarTransacoes(RespostasPendentes: TACBrTEFDRespostasPendentes); a bandeira eu consigo com a variável "Rede" que em alguns teste meu retornou "Visa Credito" está correto isso ? o pessoal tem usado a "Rede" para identificar a bandeira ? Agora o CNPJ eu acredito que seja a variavel "Instituicao" que aqui tem retornado "00125" ou está errado isso ? a Lista dos CNPJ eu tenho aqui http://www.newssystems.eti.br/blog/2014/12/como-informar-o-cnpj-da-credenciadora-de-cartao-de-credito-na-nfc-e/ Agora não consegui achar uma tabela que me referencia o "00125" a um CNPJ dessa listagem acima.
  21. Essas informações não vem do Gerenciador TEF, você precisaria ter uma tabela no seu sistema, e fazer uma referência cruzada Sim entendo porém deve ter algum meio de eu localizar que aquele recebimento via cartão corresponde a tal CNPJ e com determinada bandeira eu não estou sabendo como fazer essa referencia cruzada com parametro localizar dentro do evento DepoisConfirmarTransacoes(RespostasPendentes: TACBrTEFDRespostasPendentes); Eu já criei um tabela porém como localizar ? Grato.
  22. Pessoal estou imprementando o "TEFCliSiTef" para NFC-e e estou vendo as regras para emissão de TEF com NFC-e Minha duvida é a seguinte na NFC-e terei que informar as Tags abaixo :: With FNFe.Pag.Add do Begin tPag := fpCartaoCredito; cAut := NSU; tBand := ?? CNPJ := ?? tpIntegra := tiPagIntegrado; End; Eu não achei a bandeira e o CNPJ como retorno nesse evento do Tef abaixo. DepoisConfirmarTransacoes(RespostasPendentes: TACBrTEFDRespostasPendentes); Minhas duvidas são ::: 1º o "cAut" é o "NSU" que me retorna do Evento acima ? 2º - Como o pessoal que já fez a homologação para o "TEFCliSiTef" resolveu essa questão como capturar a Bandeira ? 3º Como saber o CNPJ eu até poderia criar um cadastro de Administradoras de Cartão de Credito mais como eu saberia qual Administradora do Cartão que está efetuando a transação e associar com o CNPJ ? Grato a todos.
  23. TEF com ECF eu usava assim CartaoTEF.CRT(vValor, IndiceCartao, CupomECF.NumCOO); Ou seja usava o NumCOO como Documento Vinculado Agora com NFCe eu pensei no numero da NFCe porém isso dá muito trabalho então pensei em colocar "0" Grato.
  24. Pessoal para eu passar a informação de DocumentoVinculado na minha aplicação não será fácil pois estou pensando no numero da NFCe porém para capturar esse numero vai dar um baita trabalho se Eu colocar "0" terei problema com o "TEFCliSiTef" Ficaria algo assim : StatusTransacao := ACBrTEFD1.CRT( StringToFloatDef(edValorPagamento.Text, 0) , '02', '0'); Terei problema com a homologação ? Grato a todos.
×
×
  • 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.

The popup will be closed in 10 segundos...