Mario Inacio
-
Total de ítens
317 -
Registro em
-
Última visita
-
Days Won
1
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Posts postados por Mario Inacio
-
-
Também acho sem sentido, respondi a ele.
A numero sequencial informei quando chamei o ADM, a partir dali respondo as perguntas que o Sitef precisa para continuar o cancelamento.- 1
-
-
Sim, o problema estava nas propriedades.
O componente já faz o cancelamento sem precisar chamar o método.- 1
-
Podem fechar o topico por favor
-
Bom dia.
Para solucionar "esse problema" do usuário informar manualmente os dados do cancelamento, mudei a forma de confirmar a transação, fazendo-a apenas depois da NFC-e aprovada.
Fiz uma transação e após aprova-la, fechei o sistema.
Ao reiniciar tentei esses 3 procedures e nenhum delas cancela a transação pendente.
ProcessarTransacaoPendente(''); EstornarTransacoesPendentes; CancelarOuEstornarTransacoesDiretorioTrabalho;
-
Bom dia.
Obrigado
-
Eu pergunto, quando a transação já está confirmada e envio o cancelamento, se pede todos os campos individualmente igual ao Sitef ou aceita o cancelamento direto.
-
PayGo funciona da mesma forma?
-
Não assinei contrato nenhum.
Pode excluir os links do post. -
2 horas atrás, Juliomar Marchetti disse:
No caso se tu chama os métodos do componente e abstrai ele não deveria mesmo solicitar novamente.
verifica se está gravando o NSU que ele deseja e depúra praver o que está enviando
nós não temos o ambiente de testes da sitef pra fazer isso
fRespostasPorTipo.ValueInfo[146] := '0,15';
fRespostasPorTipo.ValueInfo[147] := '0,15';
fRespostasPorTipo.ValueInfo[515] := '12012024'
fRespostasPorTipo.ValueInfo[516] := '999120035' -
Boa tarde.
Estou finalizando a Configuração do Sitef.
Ao enviar o cancelamento de uma transação, está abrindo as perguntas sobre o NSU, valor e data.
Questionando o suporte da Software Express, me informaram que essas informações são necessárias.
Alguem já usa em produção? Porque isso seria inviável num PDV, cabendo ao usuário digitar informações que já temos e já passamos via parâmetro.
Resposta deles:
-
Bom dia.
Na verdade vou ver como se comporta na homologação, pois o Sitef Demo não pára pra pagamento do QrCode, ele mostra e já autoriza.
Pra contornar, e apresentar o QRcode, o suporte da Software Express sugerir colocar um Sleep após apresentar, e é isso que está causando o travamento com certeza.
Vou fazer a homologação e qualquer retorno e abro um novo ticket.
Podem fechar esse.
Obrigado
-
Boa tarde.
Na fase final de configuração, e conforme o manual do Sitef, quando apresentado o QrCode para PIX, deve haver a possibilidade de cancelar o QrCode, por desistência do cliente por exemplo.
No Evento QuandoExibirQRCode já inseri a criação do form que mostrará o QrCode, só não consigo fazer com o que o foco fique nele pra que eu possa clicar num botão de cancelamento da operação.
procedure TfMenu.TEFAPIQuandoExibirQRCode(const DadosQRCode: String); var QRCode: TDelphiZXingQRCode; QRCodeBitmap: TBitmap; Row, Column: Integer; begin if DadosQRCode <> '' then begin if not FormExiste(fTEFExibeQrCode) then Application.CreateForm(TfTEFExibeQrCode, fTEFExibeQrCode); end else begin if FormExiste(fTEFExibeQrCode) then FechaForm(fTEFExibeQrCode); Exit; end; QRCode := TDelphiZXingQRCode.Create; QRCodeBitmap := TBitmap.Create; try QRCode.Encoding := qrUTF8BOM; QRCode.QuietZone := 2; QRCode.Data := widestring(DadosQRCode); QRCodeBitmap.Width := QRCode.Columns; QRCodeBitmap.Height := QRCode.Rows; for Row := 0 to QRCode.Rows - 1 do begin for Column := 0 to QRCode.Columns - 1 do begin if (QRCode.IsBlack[Row, Column]) then QRCodeBitmap.Canvas.Pixels[Column, Row] := clBlack else QRCodeBitmap.Canvas.Pixels[Column, Row] := clWhite; end; end; with fTEFExibeQrCode do begin prog.Max := LConfTerm('TEFPIX_SLEEP',5); if prog.max = 0 then prog.max := 300000; imgQRCode.Picture.Bitmap.Assign(QRCodeBitmap); Timer1.Enabled := True; Show; Refresh; end; //Sleep(LConfTerm('TEFPIX_SLEEP',5)); finally QRCode.Free; QRCodeBitmap.Free; end; end;
Obs: Inseri um timer e um progressBar no form criado pra mostrar o andamento do tempo para efetuar o PIX.
No form criado, inseri um botão Setando uma variavel global para "iCanceladoPeloOperador := TRue;"
procedure TfTEFExibeQrCode.BotaoFecharClick(Sender: TObject); begin fMenu.iCanceladoPeloOperador := TRue; Close; end;
E no evento QuandoEsperarOperacao verifico essa variavel global:
procedure TfMenu.TEFAPIQuandoEsperarOperacao( OperacaoAPI: TACBrTEFAPIOperacaoAPI; var Cancelar: Boolean); begin if iCanceladoPeloOperador then begin iCanceladoPeloOperador := False; Cancelar := True; end; end;
-
Ola.
Descobri o problema.
Como não uso a mesma forma como se faz no Demo, não havia implementado o evento "QuandoEsperarOperacao".
Coloquei apenas um Sleep(1) no evento e já resolveu.
Obrigado.
-
Bom dia.
Hoje deletei tudo, acbr e sitef, limpeza de registro, maquina reiniciada, depois tudo reinstalado.
Mas persiste o erro quando chega no momento de inserir o cartão, a mensagem solicitando chega a aparecer no pinpad
-
Atualizei mas continua a mesma coisa.
Fico debugando e monitorando aqui até a mensagem trazer o tipo cartão, quando trouxe "MasterCard" na Const Mensagem e apareceu no visor do Pinpad.
Nem chegou a apresentar o menu solicitando se é a vista ou parcelado e já caiu aqui com a Resposta como "Negada pelo autorizador (10000)" e depois da mensagem gera um AV.
Se tentar transmitir em seguida, dai aparece as mensagens do inicio desse Post.
-
Escrevi de forma confusa:
Configurei no meu sistema o QrCode, e como ocorreu erro de AV, fiz a correção e agora não consigo mais testar pois ocorre esse erro.E nos utilitários do Sitef não mostra nada pendente.
-
Boa tarde Jairo
Conseguiu contato e evoliu a questão do App pra Vero?
Pergunto porque precisar contratar também e gostaria de um feedback
-
Bom dia.
Estou implementando as rotinas com Sitef.
Os cartões estavam todos funcionando, então fui implementar o PIX, abrindo um form pra apresentar o QrCode.
procedure TfMenu.TEFAPIQuandoExibirQRCode(const DadosQRCode: String); var QRCode: TDelphiZXingQRCode; QRCodeBitmap: TBitmap; Row, Column: Integer; begin if DadosQRCode <> '' then begin if not FormExiste(fTEFExibeQrCode) then Application.CreateForm(TfTEFExibeQrCode, fTEFExibeQrCode); end else begin if FormExiste(fTEFExibeQrCode) then FechaForm(fTEFExibeQrCode); Exit; end; QRCode := TDelphiZXingQRCode.Create; QRCodeBitmap := TBitmap.Create; try QRCode.Encoding := qrUTF8BOM; QRCode.QuietZone := 2; QRCode.Data := widestring(DadosQRCode); QRCodeBitmap.Width := QRCode.Columns; QRCodeBitmap.Height := QRCode.Rows; for Row := 0 to QRCode.Rows - 1 do begin for Column := 0 to QRCode.Columns - 1 do begin if (QRCode.IsBlack[Row, Column]) then QRCodeBitmap.Canvas.Pixels[Column, Row] := clBlack else QRCodeBitmap.Canvas.Pixels[Column, Row] := clWhite; end; end; with fTEFExibeQrCode do begin imgQRCode.Picture.Bitmap.Assign(QRCodeBitmap); Show; Refresh; end; Sleep(5000); finally QRCode.Free; QRCodeBitmap.Free; end; end;
Como é uma rotina nova, apresentou um erro de AV.
Fiz as correções, mas agora não consigo simular mais nada, mesmo com cartão, pois acusa "Erro na Rotina Interativa".
Não achei nos utilitários do sitef como remover alguma pendência que exista.
-
Bom dia.
Não, manterei da forma automática, pois pode existir mais de uma transação na mesma venda, dai o TEF não aceita transmitir uma nova com uma em aberto.
Mas entendi a lógica e vai funcionar corretamente.
Só estou esperando o retorno da Software Express do motivo de não cancelar automaticamente quando chamo a rotina "CancelarTransacao".
- 1
-
No meu caso, a venda terá que ser acessada, passando pela parte de pagamento da mesma e só depois chegar na emissão da "NFC-e / Comprovante do Cartão".
Então cancelo tudo e refaço a operação de cartão também.
-
Entendi.
O componente identifica que há impressão pendente e cancela.
Estou aguardando a Software Express responder do motivo de estar abrindo o menu Administrativo ao chamar a função Cancelar.
-
Eu não estou enviando Cancelamento, ele está sendo disparado sozinho ao Inicializar o Serviço Sitef como consta no Log acima.
-
Ola Daniel.
Já fiz as configurações com base nessas dicas dos videos.
Mas olhe o que ocorre, o relatório de transações aparece O NSU: 040025 como "Efetuada".
Ao iniciar o TEFApi, é enviado um Cancelamento dessa transação, e que está errado, pois ela já esta confirmada.
Sitef - Pré-homologação
em TEF
Postado
Boa tarde.
Descobri o problema.
Seguindo a lógica do Demo, ao chamar a função Administrativa, não informei o segundo parâmetro, sendo esse Número sequencial de operação.
Estava assim no demo:
procedure TFormPrincipal.btAdministrativoClick(Sender: TObject); begin AdicionarLinhaLog('- btAdministrativoClick'); IniciarOperacao; StatusVenda := stsOperacaoTEF; try ACBrTEFAPI1.EfetuarAdministrativa(tefopAdministrativo); finally StatusVenda := stsFinalizada; end; end;
Homologação concluida informando:
ACBrTEFAPI1.EfetuarAdministrativa(tefopAdministrativo,NumeroSequencial);
Obrigado