
herculanojs
Membros-
Total de ítens
72 -
Registro em
-
Última visita
herculanojs's Achievements
-
Carta de Correção - Fortes Report Saindo em branco
herculanojs replied to herculanojs's tópico in ACBrNFe
Sim, já verifiquei todas as dll, estão com mesma versão e arquivos aqui do meu pc desenvolvimento. No servidor, os arquivos estão sendo gerados certinhos na mesma pasta. O arquivo xml do evento também esta correto. Vejam como estão sendo gerados: 51250700053641094100559210000003451000451180-Evento.pdf 51250700053641094100559210000003451000451180-Evento.xml -
Olá, estou necessitando de uma ajuda. Recentemente após alguns atualizações do componente, comecei a enfrentar uma problemática com a carta de correção que não estou conseguindo identificar. No meu PC de desenvolvimento, funciona perfeitamente. Contudo quando coloco no servidor, dá o problema. O que ocorre é que o documento PDF gerado no servidor esta saindo em branco, como se não localizasse os dados do evento. Como disse no meu PC de desenvolvimento, fica tudo certo. O que é que pode estar ocasionando o problema? Abaixo segue o código que estou utilizando: O Tipo do danfe é definido em outro local: mm.ACBrNFe.DANFE := mm.ACBrNFeDANFeRL; Parte do código da geração do PDF da Carta. if not FieldByName('arqXML').IsNull then begin nome := FieldByName('chave').AsString+'-ProcEventoNFe.xml'; TBlobField(FieldByName('arqXML')).SaveToFile(mm.ACBrNFe.DANFE.PathPDF+nome); end else exit; if not FieldByName('arqXML_nota').IsNull then begin nome2 := FieldByName('chave').AsString+'-nfe.xml'; TBlobField(FieldByName('arqXML_nota')).SaveToFile(mm.ACBrNFe.DANFE.PathPDF+nome2); end else exit; nome := mm.ACBrNFe.DANFE.PathPDF+nome; nome2 := mm.ACBrNFe.DANFE.PathPDF+nome2; if FileExists(nome2) then begin mm.ACBrNFe.NotasFiscais.Clear; mm.ACBrNFe.NotasFiscais.LoadFromFile(nome2); end else exit; if FileExists(nome) then begin mm.ACBrNFe.DANFE := mm.ACBrNFeDANFeRL; mm.ACBrNFe.DANFE.TipoDANFE := tiRetrato; mm.ACBrNFe.EventoNFe.Evento.Clear; mm.ACBrNFe.EventoNFe.LerXML(nome); mm.ACBrNFe.DANFE.NomeDocumento := mm.ACBrNFe.DANFE.PathPDF+FieldByName('chave').AsString+'.pdf'; mm.ACBrNFe.ImprimirEventoPDF; if FileExists(mm.ACBrNFe.DANFE.ArquivoPDF) then result := ExtractFileName(mm.ACBrNFe.DANFE.ArquivoPDF) ; end; No servidor: No PC desenvolvimento:
-
Usando Múltiplo Cartão em ACBrTEFAPI
herculanojs replied to herculanojs's tópico in Dúvidas sobre TEF
Estou usando sitef. Há uma propriedade LimparRespostasQuandoNovoIdentificador estava sendo marcada como verdadeira. Coloquei para false e funcionou perfeitamente. -
Boa noite Primeiramente não consegui criar o tópico diretamente em TEF. Não dá opção para selecionar ou criar novo tópico ali. Estou enfrentando uma problemática na implementação de pagamento com múltiplos cartões no tef. Faço a venda passando uma parte em um cartão, e outra parte em outro cartão. O processo faço usando a função ACBrTEFAPI.EfetuarPagamento. Quando vou concluir a transação finalizando a venda usando a função ACBrTEFAPI.FinalizarTransacoesPendentes apenas o último cartão esta sendo confirmando, ficando pendente o primeiro. Debugando, pude observar que na função o loop efetuado em RespostasTEF retorna apenas um, sendo a última transação. Alguém poderia me auxiliar. procedure TACBrTEFAPIComum.FinalizarTransacoesPendentes(Status: TACBrTEFStatusTransacao); var i: Integer; ATEFResp: TACBrTEFResp; begin GravarLog('FinalizarTransacoes( '+ GetEnumName(TypeInfo(TACBrTEFStatusTransacao), integer(Status) )+' )'); for i := 0 to RespostasTEF.Count-1 do begin ATEFResp := RespostasTEF[i]; if ATEFResp.Confirmar and // Transação requer Confirmação ? (not ATEFResp.CNFEnviado) then // Ainda não enviou Terceira Perna ? begin FinalizarTransacao( ATEFResp.Rede, ATEFResp.NSU, ATEFResp.Finalizacao, Status ); end; end; end;
-
Usando Múltiplo Cartão em ACBrTEFAPI
um tópico no fórum postou herculanojs Dúvidas Gerais sobre o ACBr
Boa noite Primeiramente não consegui criar o tópico diretamente em TEF. Não dá opção para selecionar ou criar novo tópico ali. Estou enfrentando uma problemática na implementação de pagamento com múltiplos cartões no tef. Faço a venda passando uma parte em um cartão, e outra parte em outro cartão. O processo faço usando a função ACBrTEFAPI.EfetuarPagamento. Quando vou concluir a transação finalizando a venda usando a função ACBrTEFAPI.FinalizarTransacoesPendentes apenas o último cartão esta sendo confirmando, ficando pendente o primeiro. Debugando, pude observar que na função o loop efetuado em RespostasTEF retorna apenas um, sendo a última transação. Alguém poderia me auxiliar. procedure TACBrTEFAPIComum.FinalizarTransacoesPendentes(Status: TACBrTEFStatusTransacao); var i: Integer; ATEFResp: TACBrTEFResp; begin GravarLog('FinalizarTransacoes( '+ GetEnumName(TypeInfo(TACBrTEFStatusTransacao), integer(Status) )+' )'); for i := 0 to RespostasTEF.Count-1 do begin ATEFResp := RespostasTEF[i]; if ATEFResp.Confirmar and // Transação requer Confirmação ? (not ATEFResp.CNFEnviado) then // Ainda não enviou Terceira Perna ? begin FinalizarTransacao( ATEFResp.Rede, ATEFResp.NSU, ATEFResp.Finalizacao, Status ); end; end; end; -
Homologação SiTEF Usando TEFAPI - passar valor da venda
um tópico no fórum postou herculanojs Dúvidas sobre TEF
Bom dia, estou iniciando a implantação do TEF e estou estudando o exemplo TEFAPI. No requisito 5 do roteiro de homologação diz: - Realizar uma transação com cartão de Crédito magnético - Selecionar a opção: Financ. Adm ou loja/estabelecimento - Dividir em 2 parcelas Vi que no exemplo de pagamento quando informa já a forma de pagamento, o TEF não retorna a opção de escolha de parcelamento, só Á Vista. Usando a opção ACBrTEFAPI1.EfetuarAdministrativa('0') mostra o menu para escolha das formas de pagamentos e quando eu escolho por ela ai sim aparece a opção de parcelamento. Minha dúvida é como eu passo o valor da venda usando a opção de pagamento escolhendo diretamente pelo menu conforme citado acima. Verifiquei se pediria o valor mas não pede, a função de pagamento encerra informando: valor inválido pois não recebeu o valor da venda. -
ACBrDANFCeFortesFr Impressão sem setup
um tópico no fórum postou herculanojs NFC-e - Nota Fiscal do Consumidor Eletrônica
No ACBrDANFCeFortesFr linha 1396 há a instrução RLLayout.PrintDialog := (not MostraPreview) and EstaVazio(Impressora); Tal instrução impossibilita que possamos imprimir de forma automática, pois fica abrindo o setup de impressão mesmo estando marcado como false. Isso tem impossibilitado impressões diretas utilizando a impressora padrão no windows. Se já existe a propriedade MostrarSetup o correto entendo deveria ser RLLayout.PrintDialog := MostraSetup; (não ?) Para que cada um determine como queira se mostra ou não o setup de impressão. Estou informando em impressora um valor = 'X'. Hoje esta sendo tratado pelo windows e enviando para a impressora padrão, mas e amanhã, será que vai - ou vai dar algum erro. Qual a maneira que podemos fazer para que não exibe o setup de escolha na impressão? -
Na verdade estou me baseando no que esta escrito no comentário da propriedade: " {@prop NomeDocumento - Define/retorna o nome do documento para exportação PDF." E faria todo o sentido, quando por exemplo eu quisesse exportar um arquivo utilizando uma nomenclatura própria que não fosse a utilizada pelo padrão do componente que é o número da chave;
-
Não sei como postar uma correção no acbr, então segue: Na classe ACBrDFeReport há uma propriedade NomeDocumento que deveria estar sendo utilizada para poder definir o nome do documento no ato da exportação do PDF. Contudo na exportação do pdf não esta levando em conta isso. Class: ACBrDFeReport {@prop NomeDocumento - Define/retorna o nome do documento para exportação PDF. @links TACBrDFeReport.NomeDocumento :/} property NomeDocumento: String read FNomeDocumento write FNomeDocumento; class: ACBrNFeDANFEFRDM procedure TACBrNFeFRClass.ImprimirDANFEPDF(ANFE: TNFe) ... frxPDFExport.FileName := PathWithDelim(DANFEClassOwner.PathPDF) + OnlyNumber(NFe.infNFe.ID) + '-nfe.pdf' else Sugestão: if DANFEClassOwner.NomeDocumento='' then //jhs frxPDFExport.FileName := PathWithDelim(DANFEClassOwner.PathPDF) + OnlyNumber(NFe.infNFe.ID) + '-nfe.pdf' else frxPDFExport.FileName := DANFEClassOwner.NomeDocumento; Assim podemos definir local e nome do arquivo desejado.
-
Access violation ntdll.dll
herculanojs replied to herculanojs's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Estranho hem, o erro do acess violation ocorre em Windows 7, windows 2008 r2, windows 8 (em diversos clientes). E todos os sistemas operacionais estão devidamente atualizados -
Access violation ntdll.dll
herculanojs replied to herculanojs's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Bom dia Felipe, recebo mensagem de que as atualizações não podem ser executadas no pc. -
Access violation ntdll.dll
herculanojs replied to herculanojs's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Bom dia Felipe, estou efetuando testes em equipamento de desenvolvimento. Windows 8.1 (todas atualizações em dia). As dll estou utilizando as AcBR\DLLs\OpenSSL\1.0.2.13\x86, contudo já tentei com a x64 também. -
Access violation ntdll.dll
herculanojs replied to herculanojs's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
Certificado A1, sim as dll estão atualizadas. -
Access violation ntdll.dll
herculanojs replied to herculanojs's tópico in NFC-e - Nota Fiscal do Consumidor Eletrônica
O problema em utilizar o libwincrypt é a dependencia de configurações do sistema operacional, e windows 7, windows 2008 r2 mesmo atualizando estou recebendo a mesnsagem de "Um ou mais erros foram encontrados no certificado Secure Sockets Layer (SSL) enviado pelo servidor". Já tentei de tudo que vi aqui no forum e não consigo solucionar isso. Então alternativa como disse o Daniel em outro post seria optar por utilizar o openssl. Agora basta setar openssl no componente e estoura access violation por todo canto, mesmo em debug no delphi. -
Amarildo de Matos started following herculanojs
-
Access violation ntdll.dll
um tópico no fórum postou herculanojs NFC-e - Nota Fiscal do Consumidor Eletrônica
Pessoal, já pesquisei no forum mas o tópico sobre o assunto encontra-se fechado e não há uma solução no mesmo. Não estou conseguindo utilizar openssl de forma alguma. Componente atualizado, e se mudo para utilização com OPENSSL ocorre erro na dll ntdll de Access violation Sistema operacional windows 7 64, windows server 2008 r2. Contudo se deixo o componente para utilização libWinCrypt não ocorre o erro, contudo esbarro nos problemas de segurança do protocolo TSL e não conseguimos resolver de jeito nenhum. Queremos utilizar o opensll porque conforme em outros posts este problema de TSL não vai ter no mesmo. Alguém tem alguma idéia da causa deste erro da ntdll ?