abraao895
Membros-
Total de ítens
73 -
Registro em
-
Última visita
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que abraao895 postou
-
Ah sim, o sistema de TEF já está implementado e está funcionando normal. Inclusive repasso a vocês que recebemos elogios em relação a aceitação de múltiplas formas de pagamento do componente da ACBr. Agradeço pela implementação. A dificuldade aconteceu por essa situação: Foi realizado um teste em um Supermercado da nossa região e a equipe que estava efetuando o processo me passou que em um determinado momento receberam a mensagem de "Serviço Indisponível" e o nosso PDV simplesmente congelou. Tiveram então de "matar o processo" manualmente. Entramos em contato com a Software Express e eles nos informaram que para "Serviço Indisponível"(1) não seria possível efetuar uma simulação aqui em nosso laboratório para tratar o problema. No caso do "Cheque não aprovado"(2) eu coloquei junto com esse post pois acreditei que o retorno das informações do SiTEF seja possivelmente tratado na mesma procedure/function/evento que o "Serviço Indisponível"(1). A idéia do pessoal seria que ao invés de aparecer "Cheque não aprovado" a gente trocasse a mensagem "Cheque não aprovado" por algo como "Consumidor Ligar na Telecheque". Evitando algum possível constrangimento com o cliente. Nos passaram alguns documentos referentes a manipulação da DLL do SiTEF(em anexo) para ajudar a sanar essas questões. Eu trabalho mais com a parte do ACBrECF, então estou tendo um pouco de dificuldade nessa parte do ACBrTEF. Garantia Cheque Telecheque.doc Obtem Parametros Telecheque.doc
-
Juliomar, fiz o seguinte: >> Source: maxLBuffer := ecf.AcbrEcf.MaxLinhasBuffer; ecf.AcbrEcf.MaxLinhasBuffer := 0; >> Log do ACBr: -- 10:56:37:630 TX -> [STX]5[NUL][FS][20]------------------------------------------------[LF][170][BS] 10:56:37:807 RX <- @[NUL][NUL][NUL] -- 10:56:37:807 PulaLinhas( 2 ) TX -> [STX][ACK][NUL][FS][20][LF][LF]D[NUL] 10:56:37:934 RX <- @[NUL][NUL][NUL] -- 10:56:37:934 LinhaRelatorioGerencial( "</linha_simples>", 0 ) TX -> [STX]5[NUL][FS][20]------------------------------------------------[LF][170][BS] 10:56:38:111 RX <- @[NUL][NUL][NUL] -- 10:56:38:111 CortaPapel TX -> [STX][ENQ][NUL][FS]#[WAK]P[NUL] 10:56:38:235 RX <- [4]@[NUL][NUL][NUL] O problema persiste.
-
Ah sim, o ecf.AguardarRespostaEcf seria: function TEcf.AguardarRespostaEcf : Boolean ; var i : Integer; begin Result := False; try for i := 1 to 5 do begin if ((ecf.ACBrECF.AguardandoResposta) and (ecf.ACBrECF.AguardaImpressao)) then begin if Assigned(FormPDV) then FormPdv.eStatusEcf.Text := 'Aguardando resposta do ECF..'; Sleep(100); end else begin Result := True; exit; end; end; finally if Assigned(FormPDV) then FormPdv.eStatusEcf.Text := ''; end; end;
-
No caso de uma atualização do software básico do ECF eu teria que enviar a mesma para intervenção?
-
Obrigado Daniel, valeu pela informação. Implementei aqui.
-
Por favor, poderia me dizer, em qual evento retornaria os eventos acima, ou seja, em caso de algum erro existe um evento específico que captura o problema?
-
Bom dia pessoal, estou com uma situação estranha aqui. Estou utilizando o seguinte source para fazer impressão de várias vias de um determinado relatório gerencial implementado em nosso PDV. Segue: //Obtêm o índice do relatório gerencial indiceRG := ecf.BuscarIndiceRG(10); //Abre o relatório gerencial ecf.AcbrEcf.AbreRelatorioGerencial(indiceRG); (...) if max_vias = 1 then begin imprimirREAux; end else begin for j := 1 to userVias do begin if ecf.AguardarRespostaEcf then begin imprimirREAux; end; //Se não for a última via corta o papel if (j <> userVias) then begin if ecf.AguardarRespostaEcf then begin ecf.AcbrEcf.CortaPapel(true); Sleep(150); //Fórum da ACBr aconselhou um pequeno time para a guilhotina end; end; end; end; (...) //---- procedure imprimirREAux; begin //Imprime as linhas no relatório gerencial ecf.AcbrEcf.LinhaRelatorioGerencial(rel.Text); //Adiciona o espaço em branco no final if ((ckAdicionarEspacoFinal.Visible)and(ckAdicionarEspacoFinal.Checked)) then begin ecf.AcbrEcf.PulaLinhas(max_linhas); if ecf.AguardarRespostaEcf then begin ecf.AcbrEcf.LinhaRelatorioGerencial('</linha_simples>'); end; end; Inc(aux); end; //---- No arquivo de log do ECF eu tenho: -- 18:11:46:993 TX -> [STX][4][NUL][FS][20]0[NUL] 18:11:48:188 RX <- @[NUL][NUL][NUL] -- 18:11:48:196 LinhaRelatorioGerencial( "[CR][LF]</linha_dupla>[CR][LF] (...)", 0 ) TX -> [STX]B[STX][FS][20][LF]================================================[LF] [ESC][14]ENDERE[128]O DE ENTREGA[20][LF] REF. AO CUPOM: 014080 - VIA: 01/02 [LF]================================================[LF] (...)[213]y 18:11:49:581 RX <- @[NUL][NUL][NUL] -- 18:11:49:581 TX -> [STX]5[NUL][FS][20]------------------------------------------------[LF][170][BS] 18:11:49:758 RX <- @[NUL][NUL][NUL] -- 18:11:49:758 PulaLinhas( 2 ) TX -> [STX][ACK][NUL][FS][20][LF][LF]D[NUL] 18:11:49:911 RX <- @[NUL][NUL][NUL] -- 18:11:49:911 LinhaRelatorioGerencial( "</linha_simples>", 0 ) TX -> [STX]5[NUL][FS][20]------------------------------------------------[LF][170][BS] 18:11:50:088 RX <- @[NUL][NUL][NUL] -- 18:11:54:088 CortaPapel TX -> [STX][ENQ][NUL][FS]#[WAK]P[NUL] 18:11:54:211 RX <- [4]@[NUL][NUL][NUL] -- 18:11:54:211 TX -> [STX][ENQ][NUL][FS]#A[128][NUL] 18:11:54:334 RX <- [4]@[NUL][NUL][NUL] A princípio não detectei nenhum problema, mas a Bematech está cortando o papel ANTES de pular as linhas em branco. Já tentei de tudo, aumentar valor de Sleep() entre os comandos, tentando fazer com que a sequência fosse respeitada mas não obtive sucesso. O mais estranho é que quando foi implementado funcionava normalmente. Gostaria da opinião de vocês. Desde já agradeço.
-
if Pos('DARUMA', AnsiUpperCase(dm.cdsEcfMARCA.AsString))>0 then begin st.Text := StringReplace(st.Text, '<e>', '', [rfReplaceAll, rfIgnoreCase]); st.Text := StringReplace(st.Text, '</e>', '', [rfReplaceAll, rfIgnoreCase]); end; A princípio coloquei esse source para resolver o problema e está imprimindo.
-
Coloquei Maxlinhasbuffer := 3 e retirei a formatação <e></e>. Com isso consegui imprimir, sendo que a string "st.Text" ficou com 551 caracteres. A Daruma pelo ECFTeste.exe imprimiu normal a formatação extendida. Então acredito que o problema esteja na quantidade de dígitos na string citada acima, uma vez que com a formatação o tamanho dela vai para 649 caracteres. Teria como contornar essa situação?
-
Bom dia pessoal, Estou com um problema estranho aqui. Estou utilizando o seguinte comando: if not ecf.RelatorioGerencial(st.Text, 1, Indice) then begin repeat Reimpressao := IW_MessageDlg('Problemas na reimpressão do relatório gerencial!' + sLineBreak + 'Deseja reimprimir?', mtConfirmation, [mbYes, mbNo], 0) = ID_YES; if Reimpressao then (...) Só que a Daruma FS700 ela abre o cupom e fecha sem imprimir o conteúdo central do cupom gerencial. Em "st.Text" estou passando: '</linha_dupla>'#$D#$A' <e>ENDEREÇO DE ENTREGA</e>'#$D#$A'<ce>REF. AO CUPOM: 000190 - VIA: 01/01</ce>'#$D#$A'</linha_dupla>'#$D#$A'CLIENTE: <e>JOAO DA SILVA RIBEIRO</e>'#$D#$A'DATA: 18/07/2013 HORA: 15:26:35 OPR: ADMIN'#$D#$A'</linha_simples>'#$D#$A'QUANTIDADE DE CAIXA(S): <e>002</e>'#$D#$A'</linha_simples>'#$D#$A'END.: <e>RUA JOAQUIM DA SILVA</e>'#$D#$A'<e>101</e>,<e>A</e>,<e>VILA RITA</e>'#$D#$A'<e>ITAJUBÁ</e>,<e>MG</e>,<e>37.501-413</e>'#$D#$A'REF.: <e>PERTO DA IGREJA PRESBITERIANA</e>'#$D#$A'TEL.: <e>(35)36231801(ENTREGA)</e>'#$D#$A'EMP.: <e>LUCAS</e>'#$D#$A'OBS.: <e>PEGAR FRIOS NA GELADEIRA</e>'#$D#$A'</linha_simples>'#$D#$A Na Bematech e na Sweda imprime normal. Debuguei até a procedure TACBrECF.RelatorioGerencial: fsECF.RelatorioGerencial( Relatorio, Vias, Indice ) ; E em "Relatorio" está constando o conteúdo de "st.Text" mas a Daruma não imprime o conteúdo todo. Segue log em anexo. Por favor, gostaria da opinião de vocês. ACBrECF-20130719.txt
-
Boa tarde pessoal, Utilizando o ACBrTEF teria como tratar o retorno dos erros do SITEF, mais especificamente desses: 1) Cheque não aprovado 2) Serviço indisponível Ou até mesmo pegar um BOOLEAN que se refere a ambos os casos? Gostaria da opinião de vocês.
-
Boa tarde, Estou efetuando uma venda em cartão de débito utilizando o SITEF. O número do GNF do CCD está saindo igual ao número do GNF do relatório gerencial referente a segunda via do cupom fiscal. E isso, a princípio, está acontecendo somente com a Sweda ST120, pois efetuamos os testes com a Bematech MP-4000 e a Daruma FS700 e os números do GNF são impressos incrementados normalmente. Estou enviando o log do ACBrECF relativo a venda em questão. Gostaria da opinião de vocês. TefLog-20130718.txt
-
Repetição Da Identificação Do Consumidor Na Sweda
abraao895 replied to abraao895's tópico in ACBrSerial
Testado na Sweda ST100 e ST120. Funcionando corretamente. Impimindo uma única vez a identificação do consumidor. Agradeço. -
Repetição Da Identificação Do Consumidor Na Sweda
abraao895 replied to abraao895's tópico in ACBrSerial
Obrigado Daniel. Amanhã estaremos testando e posto os resultados aqui. -
Repetição Da Identificação Do Consumidor Na Sweda
abraao895 replied to abraao895's tópico in ACBrSerial
Debuguei aqui e verifiquei o seguinte. No caso o source: AcbrEcf.FechaCupom(Obs); Está enviando: 'Agradecemos a preferência!'#$D#$A'Volte sempre!' Na procedure: procedure TACBrECF.FechaCupom(Observacao: AnsiString; IndiceBMP : Integer); //ACBrECF.pas Essa condição é verdadeira: if not Consumidor.Enviado then begin .... end; E assim é adicionado na string 'Observacao' os dados do cliente que são utilizados no " fsECF.FechaCupom( DecodificarTagsFormatacao( Observacao ), IndiceBMP )", ficando assim: 'Agradecemos a preferência!'#$D#$A'Volte sempre!|CPF/CNPJ consumidor: XXXXXXXXXXX|Nome: XXXXXXXXXXXXXXXXXXXXXXXX|Endereco: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX - ITAJUBÁ - MG' Teria outra função que também poderia estar enviando essas informações novamente além do FechaCupom? -
Boa tarde, estamos testando a identificação do consumidor na Sweda ST100 e ST120. Ambos os ECF estão imprimindo o CNPJ/CPF, Nome e Endereço do consumidor duas vezes no rodapé do cupom. No caso ficou assim: <Minas Legal> Agradecemos a preferência! Volte sempre! <CNPJ/CPF consumidor> <Nome> <Endereço> <MD5> <Nome do Aplicativo> <CNPJ/CPF consumidor> <-- Repetido <Nome> <-- Repetido <Endereço> <-- Repetido Estou enviando o log do ACBrECF em anexo da Sweda ST120. No meu caso, o aplicativo foi homologado para o PAF 1.13, minha última atualização foi 05/07/2013. Gostaria da opinião de vocês. Log-ACBrECF-20130717.txt
-
Boa tarde, fizemos o teste na Sweda ST100 e agora finaliza normal.
-
Boa tarde pessoal, Na Daruma FS700 executo o seguinte procedimento: 1) Deixo um cupom aberto no ECF 2) Saio do PDV e tento entrar novamente Na OnShow do meu form do PDV eu tenho: if (dm.GetCfgValue(3106) = '1') then ecf.AcbrEcf.IdentificaOperador(dm.cdsTurnoAbertoLOGIN.AsString); Eu recebo o seguinte erro: (Objeto FormPdv, Exceção EACBrECFSemResposta) Erro retornado pela Impressora: Daruma Documento sendo emitido Erro estendido (078 -> CF aberto) Com o mesmo source na Bematech MP-4000 e na Sweda ST120 eu não obtenho erro algum e o PDV abre normalmente com os dados do cupom em aberto no grid. Gostaria da opinião de vocês. Fico no aguardo.
-
Bom dia pessoal, Na finalização do cupom estou obtendo o seguinte erro na Daruma FS700: -- 11:39:21:030 TX -> [FS]R[200]057[180] 11:39:21:179 RX <- :[200]0573[CR][254] -- 11:39:21:183 TotalPago TX -> [FS]R[200]048[186] 11:39:21:342 RX <- :[200]0480000000000318[CR][249] -- 11:39:21:342 FechaCupom( ) TX -> [FS]F[210]0[255]G Daruma: Falha no Envio do CMD. Tentativa: 1 - Erro: 39 - Estendido: 120 -> Meio de pagamento já programado Cod.Aviso: 0 11:39:21:537 RX <- :3912000[210]000000000000000000[CR] ----------------- ERRO ----------------- Erro retornado pela Impressora: Daruma Erro na sequência de fechamento do cupom fiscal Erro estendido (120 -> Não em fase de finalização de documento) ---------------------------------------- -- 11:39:33:118 Estado TX -> [FS]R[200]056[181] 11:39:33:281 RX <- :[200]0561[CR][253] -- 11:39:33:281 TX -> [FS]R[200]057[180] 11:39:33:430 RX <- :[200]0573[CR][254] Log adicional completo do componente ACBrECF em anexo. Essa impressora é zerada, acabou de chegar. Estou utilizando uma placa de conversão PCI Express -> Serial da Comtac também nova. ECF.txt
-
Entendi.
-
Blz Daniel. Já atualizei aqui e estamos gerando uma nova versão para testar com a Sweda ST100. Qualquer novidade eu posto aqui.
-
Entendi. Resolvemos utilizar o identificaPAF para: 1) Não utilizar o espaço nas observações de rodapé, devido as regiões diferentes das informações complementares e as suplementares. Conforme o EMBarbosa comentou. 2) Aparecer automaticamente o nome do aplicativo no cupom Mais tarde vou pegar a Sweda e fazer um teste para tentar identificar o que pode estar acontecendo.
-
Entendi. Em relação ao identificaPAF, se o ECF for desligado, as informações referentes ao MD5 e ao nome do aplicativo são perdidas? O pessoal está fazendo testes de falta de energia com a Sweda.