Ir para conteúdo
  • Cadastre-se

datilas

Membros
  • Total de ítens

    566
  • Registro em

  • Última visita

  • Days Won

    2

Tudo que datilas postou

  1. segue a unit alterada caso o @Daniel Simoes queira adicionar ao acbr ACBrTEFAPI.pas
  2. na assinatura do metodo esta como smallint que vai até 32.767 então faça a alteração na unit ACBrTEFAPI passando para o tipo inteiro: antes: function ObterDadoPinPad(TipoDado: TACBrTEFAPIDadoPinPad; TimeOut: SmallInt = 30000; MinLen: SmallInt = 0; MaxLen: SmallInt = 0): String; depois: function ObterDadoPinPad(TipoDado: TACBrTEFAPIDadoPinPad; TimeOut: Integer = 30000; MinLen: SmallInt = 0; MaxLen: SmallInt = 0): String; não posso subir a unit alterada mas vc pode alterar e adicionar aqui (se vc estiver com o acbr atualizado) para ver se alguém adiciona no projeto
  3. tenta assim: dtmTEF.ACBrTEFAPI1.ObterDadoPinPad(dpCPF, 90000, 11, 11);
  4. datilas

    Ean13 e Ean8

    dentro do ACBrValidador existe a funcao ValidarPrefixoGTIN vc pode fazaer a verificação antes de usar: If ACBrValidador.ValidarPrefixoGTIN('7898341430036') = '' Then ShowMessage('Pode usar') Else ShowMessage('Não pode usar'); vc pode adaptar para sua necessidade
  5. se for uma transação com cartão "visa" e chamar a função 130 ela será cancelada automaticamente (não temos controle sobre isso "foi a informação que recebi durante a minha homologação") tente chamar a função 131. eu fiz assim e a homologação foi aprovada: dtmTEF.ACBrTEFAPI1.EfetuarAdministrativa('131'); If dtmTEF.ACBrTEFAPI1.UltimaRespostaTEF.LeInformacao(210, 0).AsInteger > 0 Then Begin TACBrTEFAPIClassCliSiTef(dtmTEF.ACBrTEFAPI1.TEF).TEFCliSiTefAPI.FinalizaFuncaoSiTefInterativo( 1{1=true,0=false}, pansichar(dtmTEF.ACBrTEFAPI1.UltimaRespostaTEF.LeInformacao(160, 0).AsString),//pCupomFiscal: pansichar(dtmTEF.ACBrTEFAPI1.UltimaRespostaTEF.LeInformacao(163, 0).AsString),//pDataFiscal: pansichar(dtmTEF.ACBrTEFAPI1.UltimaRespostaTEF.LeInformacao(164, 0).AsString),//pHoraFiscal: '' ); TfrmAlert.Alert( 'Última transação TEF foi efetuada' + sLineBreak + 'Favor reimprimir o cupom.', tmAviso); End;
  6. Entendi. Mas seria interessante ter essa opção no AcbrBoleto
  7. existe alguma forma para eu saber se algum banco possui ou não emissão de boleto por webservice? pois são muitos bancos dentro do Type TACBrTipoCobranca por exemplo existe cobBancoDoBrasil,cobBancoDoBrasilWS,cobBancoDoBrasilAPI,cobPenseBankAPI mas eu gostaria de saber quais possuem WS para eu mostrar ou não as configurações de WS
  8. sim, eu uso lazarus 3.2.4, não tenho delphi instalado, só tenho uma pasta acbr, não tem outras units, meu ambiente esta completamente limpo, vc pode testar com o demo do boleto como citei no primeiro post, mas ja enviei as correções no post anterior se quiser testar.
  9. lazarus para revolver o problema precisei alterar 3 unit's ACBrBoleto.pas ACBrBancoSicredi.pas ACBrBancoABCBrasil.pas na unit ACBrBoleto.pas linha 5504 estava: Result := Format(ACBrStr(CInstrucaoPagamento), [fpNome]); alterei para: Result := ACBrStr(Format(CInstrucaoPagamento, [fpNome])); na unit ACBrBancoSicredi.pas linha 638 estava: Result := Format(ACBrStr(CInstrucaoPagamentoCooperativa), [fpNome]); alterei para: Result := ACBrStr(Format(CInstrucaoPagamentoCooperativa, [fpNome])); na unit ACBrBancoABCBrasil.pas linha 963 estava: Result := CInstrucaoPagamentoTodaRede; alterei para: Result := ACBrStr(CInstrucaoPagamentoTodaRede); segue as units alteradas svn rev-34114 ACBrBoleto.pasACBrBancoSicredi.pasACBrBancoABCBrasil.pas
  10. para reproduzir o problema no ...\Exemplos\ACBrBoleto\Lazarus\uDemoBoleto.pas no OnChange do componente cbxBanco (TComboBox) adicionar o seguinte código: Var b: TACBrBanco; Begin b := TACBrBanco.Create(FACBrBoleto); Try b.TipoCobranca := TACBrTipoCobranca(cbxBanco.ItemIndex); edtLocalPag.Text := b.LocalPagamento; Finally b.Free; End; End; voce vera o resulta da imagem 1-1,2-1: então para resolver o problema de charset eu adicionei "CP1252ToUTF8" como o codigo abaixo: Var b: TACBrBanco; Begin b := TACBrBanco.Create(FACBrBoleto); Try b.TipoCobranca := TACBrTipoCobranca(cbxBanco.ItemIndex); edtLocalPag.Text := CP1252ToUTF8(b.LocalPagamento); Finally b.Free; End; End; então o problema de charset inverteu com nas imagens 1-2,2-2: a pergunta é como faço para resolver definitivamente esse problema? ja tentei com ACBrStr(b.LocalPagamento) e não resolveu. só para deixar claro essa situação acontece em varias ocasiões até no AcbrTEFApi usando sitef ja aconteceu.(eu sei que é outro componente) mas o problema é o mesmo
  11. na unit pcnConversao existe uma function que precisa adicionar o crtMEI para validação antes: function CRTTocRegTrib(const t: TpcnCRT): TpcnRegTrib; begin if T = crtSimplesNacional then Result := RTSimplesNacional else Result := RTRegimeNormal; end; agora: function CRTTocRegTrib(const t: TpcnCRT): TpcnRegTrib; begin if (T in [crtSimplesNacional, crtMEI]) then Result := RTSimplesNacional else Result := RTRegimeNormal; end; segue a unit alterada: ..\Fontes\PCNComum\pcnConversao.pas pcnConversao.pas versão da pcnConversao: svn rev-34108
  12. tente alterar "bkmk: TBookmarkStr;" para "bkmk: TBookmark;"
  13. isso é um erro de validação nos schema, e esta dizendo falta informar o bairro, e no nome da rua,(xBairro,xLogra). no xBairro vc esta enviando "0", no xLogra vc esta enviando "B" e o tamanho mínimo é 2 caracteres
  14. então na porta tente usar /dev/usb/pl1 mas vc vai ter que rodar sua aplicação como super usuario eu uso /dev/ubs/lpx (onde x é o numero da porta) para dispositivos usb. /dev/ttySx (onde x é o numero da porta) para dispositivos serial. se vc olhar na imagem abaixo ao lado do botão "testar balança" tem o valor "0,628" que eu acabei de testar no linux
  15. tente usar o comando ls /dev/usb para ver as portas. eu uso isso para impressoras, mas para acessar essas portas precisa de permissão:
  16. eu consegui usando esse video, funcionou sem problema.
  17. https://discord.com/channels/798697718800318484/806113038976548894/1233137128020644035 Emissão Assincrona de DFes, porque vc deve considerar mudar a forma de emissão em o quanto antes https://open.spotify.com/episode/2q28LuD3eaq1Eig3zwmkk2?si=e0288c458d4e4230
  18. pode ser porque os servidores da sefaz RS estão desligados. por causa das enchentes
  19. lembrando que tambem tem que preencher o xJust eo dhCont
  20. eu uso assim e funciona perfeitamente: ACBrNFe1.Configuracoes.Geral.FormaEmissao := teOffLine; ACBrNFe1.NotasFiscais.Items[0].NFe.Ide.tpEmis := teOffLine;
  21. dentro de ..\Exemplos\ACBrTCP\ACBrIBPTax\tabela tem as tabelas em csv e sempre são atualizadas pela equipe do acbr, vc poderia usar esses arquivos atualizando de forma off-line ou enviando para seu servidor proprio
  22. na minha opinião e melhor solução é essa: pois não alterou a assinatura do evento e alterou apenas o unit referente ao sitef, na minha aplicação a alteração foi mínima. na procedure ACBrTEFAPI1QuandoPerguntarCampo eu adicionei: If (MR = mrRetry) Then Resposta := '-2'; e funcionou perfeitamente.
  23. atualize o acbr e as dlls do openssl que estão em: ..\DLLs\OpenSSL\3.1.3 adicione a uses: blcksock e faça assim: ACBrHTTP.HTTPSend.Sock.SSL.SSLType := TSSLType.LT_TLSv1_3;
  24. sim
  25. o acbrtefapi tambem atende sitef e ja tem topicos para adicinar tef elgin e tef auttar mas esses não tem previsão lembrando que não tem previsão
×
×
  • 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...