-
Total de ítens
27.625 -
Registro em
-
Última visita
-
Days Won
767
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que Daniel Simoes postou
-
Obrigado pela contribuição... Revi as demais classes, e implementei nas que tem a informação da Versão.. Commit [r39573]
-
Apliquei uma ampla revisão nos fontes, no método LerInfo de todas as classes... Commit [r39561]
-
O Sitef tem um funcionamento diferente, onde devemos informar quais formas de pagamento não queremos... Isso é feito, nos fontes do ACBr, em TACBrTEFAPIClassCliSiTef.EfetuarPagamento Observe que nesse método, o ACBr tenta traduzir os parâmetros recebidos no método EfetuarPagamento para esses parâmetros de restrição... Restricoes := DadosAdicionais; if (pos('[', fParamAdicFuncao.Text) = 0) then // Não especificou Restrições de Menu ? begin if (Op <> 0) and (OP <> 1) then // Débito Restricoes := Restricoes + CSITEF_RestricoesCueque + ';'; if (Op = 2) then // Débito Restricoes := Restricoes + CSITEF_RestricoesCredito + ';' else if (Op = 3) then // Crédito Restricoes := Restricoes + CSITEF_RestricoesDebito + ';'; if (Financiamento = tefmfAVista) then begin Restricoes := Restricoes + CSITEF_RestricoesParcelado + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaAministradora + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaEstabelecimento + ';'; end else if (Financiamento = tefmfParceladoEmissor) then begin Restricoes := Restricoes + CSITEF_RestricoesAVista + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaEstabelecimento + ';'; end else if (Financiamento = tefmfParceladoEstabelecimento) then begin Restricoes := Restricoes + CSITEF_RestricoesAVista + ';'; Restricoes := Restricoes + CSITEF_RestricoesParcelaAministradora + ';'; end; e no final, ele adiciona os parâmetros que você tenha injetado em ParamAdicConfig e move tudo para ParamAdicFuncao... // Convertendo para formato de parâmetro, conforme esperado if (SL.Count > 0) then begin Restricoes := StringReplace(Trim(SL.Text), sLineBreak, ';', [rfReplaceAll]); if Restricoes <> '' then Restricoes := '['+Restricoes+']'; if fParamAdicConfig.Count > 0 then Restricoes := Restricoes + ';'+ Trim(fParamAdicConfig.Text); if (Restricoes <> '') then fParamAdicFuncao.Add( Restricoes ); end; finally SL.Free; end; Então precisamos ver no Log do ACBr (ou Sitef), como ficaram as restrições e parâmetros finais, enviados para o Sitef Segunda a documentação do SiTEF: https://dev.softwareexpress.com.br/docs/clisitef/clisitef_documento_principal/#início-da-transação-de-pagamento-ou-gerencial 110 Abre o menu de transações Gerenciais Os Cancelamentos, iniciam no comando 200 (que é o comando padrão do ACBr)
-
Show, obrigado @antoniojmsjr já vou analisar...
-
Olá @SIDesenvolvimento Você usa ACBrTEFD ou ACBrTEFAPI ? Seus fontes estão atualizados ? (lembro de ter feito um ajuste, para ele usar a hora atual, se não for informado o Documento da Venda) notei que em algumas situações no Log, está sendo enviado o Indentificador da Transação como zeros No seu Log, parece estar sendo enviado 200... veja Você pode configurar isso, na propriedade OperacaoCancelamento, exemplo: if ACBrTEFAPI1.TEF is TACBrTEFAPIClassCliSiTef then begin with TACBrTEFAPIClassCliSiTef(ACBrTEFAPI1.TEF) do begin OperacaoCancelamento := 110; end; end; Você está informando o parâmetro 'Financiamento' do método 'EfetuarPagamento' ? Ok := ACBrTEFAPI1.EfetuarPagamento( IntToStr(Venda.NumOperacao), AValor, Modalidade, CartoesAceitos, tefmfAVista); // <----- AQUI -----
-
Enviado ao SVN... Commit [r39536] Não consegui baixar esse último anexo...
-
O @Alexandre de Paula pode nos passar um retorno de como está o andamento da tarefa...
-
Obrigado... Analisando...
-
@EliasCesar, favor verificar... essas modificações parecem ser importantes... 53c53 < cAilosURLSandbox = 'https://pixcobranca-h.ailos.coop.br/qa/ailos/pix-cobranca/api/v1'; --- > cAilosURLSandbox = 'https://apiendpointhml.ailos.coop.br/qa/ailos/pix-cobranca/api/v1'; 109,110d108 < qp.Values['key'] := ArquivoChavePrivada; < qp.Values['cert'] := ArquivoCertificado;
-
Pode mover o tópico para nossa área aberta, de Base de Conhecimentos
-
ACBrTCP - ACBrWinINetReqResp - Encerrar sessão.
Daniel Simoes replied to willian_delan's tópico in ACBrTCP
@willian_delan, Muito obrigado... Enviei ajustes ao SVN, baseado em suas sugestões.... Commit [r39395] -
Usar certificado instalado no repositório do Windows
Daniel Simoes replied to marcoprodata's tópico in ACBrLIB
Você pode usar certificados do Windows, através da propriedade NumSerie https://acbr.sourceforge.io/ACBrLib/DFe.html -
Leitura CNPJ PINPAD SITEF
Daniel Simoes replied to valterviniciusveiga's tópico in Dúvidas sobre TEF
Use o ACBrTEFAPI, ele é bem mais atualizado, e não tem vínculo com ECF -
Você pode achar as DLLs da LibXML2, no SVN do ACBr... https://svn.code.sf.net/p/acbr/code/trunk2/DLLs/LibXml2/ Lembrando... use a versão x86, se você compila seu .EXE em 32 bits... (independente do Windows ser 64 bits) Copie todas as DLLs do link acima, na mesma pasta do seu .EXE O quanto a implementação usando a LibXML2 é mais rápida que as antigas Units do PCN ? Confira nesse vídeo:
- 2 replies
-
- 8
-
-
- acbrxmldocument
- xmldocument
- (e 4 mais)
-
Oi @Renan S.. ainda não consegui analisar.. estou terminando uma integração de TEF (PayKit)
-
Não são comuns, operações de Cancelamento, diretamente no Caixa... Até porque isso pode ter o risco de fraude, do Operador... Mas é uma operação possível, se o Cliente estiver disponível, para passar o cartão e confirmar o Cancelamento... Geralmente operações de Cancelamento, são tratadas no BackOffice, diretamente com a Adquirente...
-
-
Olá bom dia... Por favor anexe as Units modificadas, para analise...
-
Talvez esse modelo, não suporte os comandos de Resposta, de leitura de Status, que a Epson usa Você pode ver na aba "Log" quais foram os comandos enviados, e questionar o fabricante
-
Como reproduzir o problema ? Basta pegar o Demo do ACBr, ainda sem o Cache em disco, e tentar uma Busca por UF com "MT" ?