-
Total de ítens
62 -
Registro em
-
Última visita
-
Days Won
1
Tipo de Conteúdo
Blocks
Notes ACBrLibNFe
Fóruns
Downloads
Calendário
Tudo que Luiz Fernando postou
-
Boa tarde. Nesse método caso tenha um intervalo nos índices das formas de pagamento, esse código não funciona, pois ele para o while. Original: if (pos('090C',E.Message) > 0) then Break else raise ; Alteração proposta: if pos('090C',E.Message) = 0 then raise ; Segue em anexo arquivo alterado com essa correção. ACBrECFEpson.pas
-
Se o seu sat é de desenvolvimento não há necessidade. E quanto a vinculação, a assinatura é feita utilizando o CNPJ e certificado da software house, então caso você adquira um cliente que já possua um sat ativado, você tera que vincular uma nova assinatura utilizando o teu CNPJ e certificado.
-
CONTINUA ERRO DESCONHECIDO AO ATIVAR SAT TANCA
Luiz Fernando replied to geanjesus's tópico in ACBrSAT
A maioria dos equipamentos que eu testei, funcionam dessa forma, para configurar a rede usa o código de ativação 00000000. As demais funcionalidades somente após ativar. -
Eu que agradeço.
-
Boa tarde. Na minha impressora Daruma FS700, quando vendo uma quantia grandes de itens, acima de 70 e cancelo o cupom, a leitura do status falha. Simulei com o ECFTeste, segue acbrlog.txt em anexo e a unit ACBrECFDaruma.pas, com a modificação proposta. Somente adicionei um AguardaImpressao := True, antes de enviar o comando de cancelamento. Desde já agradeço.
-
Perfeito
-
Funcionou também
-
Efetuei o teste na Elgin X5 e funcionou perfeitamente.
-
Bom dia. Infelizmente só possua a Elgin X5 e essa Dataregis 3202. Nessas consigo efetuar os testes sem problemas, porém ficam muitos ECF's que não conseguiria testar. Por esse motivo que havia feito a alteração daquela forma. Vou efetuar os testes na X5 e te reporto o que ocorreu.
-
Imagina. Só para ressaltar o valor é calculado pelo SAT, porém a base é de responsabilidade do desenvolvedor. Nessa imagem, se observar a primeira coluna, diz de quem é a responsabilidade da geração de cada campo.
-
Quem calcula os impostos é o próprio equipamento SAT.
-
Bom dia. Estou emitindo um cupom na impressora Dataregis 3202DT, com o estado DF, que é necessário sair em negrito o texto "NOTA LEGAL", porém, se mandar o texto com o comando EncerraDocumento, acontece o que esta na imagem em anexo. Fiz alguns testes, mandando o mesmo texto no comando ImprimeTexto, não ocorre, então fiz uma alteração na unit, somente para esta ecf, para mandar sempre dessa forma. Até pensei em alterar o bloco do envio do consumidor, e mandar sempre dessa forma, porém como não tenho todos os modelos que usam esse protocolo na empresa, para não ter imapctos desnecessários dupliquei o código. ACBrECFFiscNET.pas
-
Esqueci de comentar, consegui essa base, utilizando o programa de teste da daruma com a dll, ativando o modo Auditoria no DarumaFrameWork.xml, no bloco referente a ECF.
-
Na verdade, até consegui fazer imprimir o ean13, porém não tive tempo de testar corretamente, pois a impressora era do meu cliente e tive que devolver. Se tiver a ECF e quiser dar sequência nos testes, segue string que funcionou. ESC+'b'+#01+Chr(StrToInt(Largura))+chr(StrToInt(Altura))+STX+LeftStr(ACodigo, 12)+cBarraFim+ACodigo Como falei, não consegui efetuar os testes dos outros códigos, pode ser que algo esteja errado.
-
Boa tarde. No comando FechaCupom na ecfEspon, tem a seguinte linha "Obs := AjustaLinhas(Obs, 50) ;", porém seria ideal que estive "Obs := AjustaLinhas(Obs, fpColunas) ;". Segue em anexo unit alterada. ACBrECFEpson.pas
- 1 reply
-
- 2
-
Imagina, estamos ai para nos ajudarmos.
-
Bom dia, emitindo a primeira redução Z do mês, a impressora me retornou o erro "54 - Consulte manual", consultando o mesmo tem a seguinte mensagem. "Mensagem: Emitindo Leitura de Memória Fiscal, aguarde.... Mensagem eventualmente enviada ao aplicativo, na abertura do movimento, durante a emissão automática da Leitura da Memória Fiscal, conforme exigência do convênio 85, referênte ao período mensal de operação. (ao receber esta mensagem, recomendase estender o tempo de espera pela resposta do comando)". Na procedure VerificaFimLeitura, adicionei o código 54 como não sendo um erro. E na procedure DescreveErro adicionei a mensagem "Emitindo Leitura de Memória Fiscal, aguarde...", quando o código de erro for o mesmo 54. Com essas alterações, fiz os devidos testes e funcionou perfeitamente. Segue em anexo o log após a alteração e a unit alterada para avaliação. ACBrECFSwedaSTX.pas log_pdv.txt
-
Erro na geração de Arquivo na Daruma FS800i
Luiz Fernando replied to jefferson01's tópico in ACBrSerial
O meu caso funciona perfeitamente, seguindo as configurações que o pessoal da Daruma me passou. -
Erro na geração de Arquivo na Daruma FS800i
Luiz Fernando replied to jefferson01's tópico in ACBrSerial
Segue em anexo units alteradas. ACBrECFDaruma.pas ACBrECFEscECF.pas -
Erro na geração de Arquivo na Daruma FS800i
Luiz Fernando replied to jefferson01's tópico in ACBrSerial
Bom dia. Também tive essa dificuldade e entrei em contato com o pessoal do suporte da Daruma, eles me passaram as seguintes correções. Também é ncessário atualizar as dlls. No método "ConfigurarDLL" da classe TACBrECFDaruma. // Estava assim Resp := xregAlterarValor_Daruma( 'START\Produto', 'FISCAL' ); if Resp <> 1 then raise EACBrECFERRO.Create( ACBrStr('Erro: '+IntToStr(Resp)+' '+GetDescricaoErroDLL(Resp)+sLineBreak+ 'ao chamar: '+sLineBreak+ 'xregAlterarValor_Daruma( "START\Produto", "ECF" ) ') ); Porém o correto é como esta na mensagem de erro xregAlterarValor_Daruma( 'START\Produto', 'ECF' ); Existe também, uma tag no DarumaFrameWork.xml denominada ECF\SCU\Habilitar, que serve para quando utilizarmos o protocolo EscECF. Resp := xregAlterarValor_Daruma( 'ECF\SCU\Habilitar', '1' ); if Resp <> 1 then raise EACBrECFERRO.Create( ACBrStr('Erro: '+IntToStr(Resp)+' '+GetDescricaoErroDLL(Resp)+sLineBreak+ 'ao chamar: '+sLineBreak+ 'xregAlterarValor_Daruma( "ECF\SCU\Habilitar", "1" ) ') ); Outra coisa, o pessoal me passou que a velocidade precisa ser sempre 115200, então teríamos que alterar o método CriarECFClassPorMarca da classe ACBrECFEscECF, para quando criar a ECFDaruma, colocar sempre a velocidade 115200. if IsBematech then Result := TACBrECFBematech.create(fpOwner) else if IsDaruma then begin Result := TACBrECFDaruma.create(fpOwner); Result.Device.Baud := 115200; end else if IsEpson then begin Result := TACBrECFEpson.create(fpOwner); Result.Device.Desativar; fsDeviceParams := fpDevice.Porta+':'+fpDevice.ParamsString; Result.Device.Porta := 'USB'; // Força DLL em USB Result.Device.Baud := 115200; end; Caso precisem de mais informações, fico a disposição. -
Ok, muito obrigado, vou continuar efetuando meus testes.
-
Bom dia. Não estou conseguindo gerar o código de barra na ECF Daruma FS 800i, o comando é aceito, não gera erro, porém não imprime o código de barra. Gostaria de saber se alguém conseguiu gerar o código de barra nesse modelo de ECF? Segue log do processo. -- 20/11 10:52:56:497 AbreRelatorioGerencial -- 20/11 10:52:56:498 TX -> [SOH][7][FF][NUL][STX][NUL]1|[194] -- 20/11 10:52:56:507 RX <- [ACK] -- 20/11 10:52:56:508 Status TX -> [ENQ][NUL] -- 20/11 10:52:56:513 RX <- [WAK][16][SOH][NUL][NUL][NUL] (1) -- 20/11 10:52:56:564 Status TX -> [ENQ][NUL] -- 20/11 10:52:56:569 RX <- [WAK][16][SOH][NUL][NUL][NUL] (2) -- 20/11 10:52:56:620 Status TX -> [ENQ][NUL] -- 20/11 10:52:56:626 Resposta: SEQ:7 CMD:12 EXT:0 CAT:0 RET:[SOH][NUL][NUL]@ TBR:41 BRS:"196|20112015095345||DR101500000000000300|" CHK:211 -- 20/11 10:52:56:727 RX <- [SOH][7][FF][NUL][NUL][SOH][NUL][NUL]@)[NUL]196|20112015095345||DR101500000000000300|[211] -- 20/11 10:52:59:368 LinhaRelatorioGerencial( "<ean13>7898007821826</ean13>", 0 ) -- 20/11 10:52:59:378 TX -> [SOH][BS][TAB][NUL][23][NUL][ESC]b0138001789800782182[NUL]|[250] -- 20/11 10:52:59:383 RX <- [ACK] -- 20/11 10:52:59:383 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:389 RX <- [WAK][16][SOH][NUL][NUL][NUL] (1) -- 20/11 10:52:59:439 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:445 RX <- [WAK][16][SOH][NUL][NUL][NUL] (2) -- 20/11 10:52:59:496 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:501 Resposta: SEQ:8 CMD:9 EXT:0 CAT:0 RET:[SOH][NUL][NUL]@ TBR:0 BRS:"" CHK:82 -- 20/11 10:52:59:602 RX <- [SOH][BS][TAB][NUL][NUL][SOH][NUL][NUL]@[NUL][NUL]R -- 20/11 10:52:59:602 FechaRelatorio -- 20/11 10:52:59:604 TX -> [SOH][TAB][LF][NUL][STX][NUL]1|[194] -- 20/11 10:52:59:609 RX <- [ACK] -- 20/11 10:52:59:610 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:616 RX <- [WAK][16][SOH][NUL][NUL][NUL] (1) -- 20/11 10:52:59:666 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:671 RX <- [WAK][16][SOH][NUL][NUL][NUL] (2) -- 20/11 10:52:59:722 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:728 RX <- [WAK][16][SOH][NUL][NUL][NUL] (3) -- 20/11 10:52:59:778 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:783 RX <- [WAK][16][SOH][NUL][NUL][NUL] (4) -- 20/11 10:52:59:833 Status TX -> [ENQ][NUL] -- 20/11 10:52:59:839 Resposta: SEQ:9 CMD:10 EXT:0 CAT:0 RET:[SOH][NUL][NUL]@ TBR:20 BRS:"196|20112015095348||" CHK:69 -- 20/11 10:52:59:940 RX <- [SOH][TAB][LF][NUL][NUL][SOH][NUL][NUL]@[20][NUL]196|20112015095348||E
-
Na verdade no meu código fiz esse ajuste, testei se estava em linha, se não estiver mudo o Handshake para hsNenhum. Segue método alterado para analise. procedure TACBrECFEscECFProtocolo.Ativar; begin with fpECFEscECF do begin if not Device.IsSerialPort then raise EACBrECFERRO.Create(ACBrStr('A impressora: '+ModeloStr+' requer'+sLineBreak+ 'Porta Serial: (COM1, COM2, COM3, ...)')); AtivarDevice ; if not EmLinha( TimeOut ) then begin if Device.HandShake <> hsDTR_DSR then Device.HandShake := hsDTR_DSR if not EmLinha( TimeOut ) then if Device.HandShake <> hsNenhum then Device.HandShake := hsNenhum end; fsSincronizou := False; fsTentouSincronizar := False; fsTimeOutStatus := 0; RespostasComando.Clear; { Ajusta a sequencia } Sincronizar; end; end;
- 16 replies
-
- 1
-
- fs800i sem comunicação com acbr
- fs800
- (e 1 mais)
-
Com o "HANDSHAKE= ", funcionou a comunicação e dessa forma "HANDSHAKE=DTR/DSR" não. Se observar o log a partir da linha 15, quando a configuração esta dessa forma "HANDSHAKE= ", as leituras foram efetuadas com sucesso.
- 16 replies
-
- fs800i sem comunicação com acbr
- fs800
- (e 1 mais)
-
Bom dia. Também estou com esse problema, no log anexado, observei que com o "HANDSHAKE=DTR/DSR" dessa forma, a impressora retorna que não esta em linha, porém, mudando o mesmo para "HANDSHAKE= " a comunicação acontece normalmente. Tentei alterar a configuração de controle de fluxo da porta serial virtual, para as três opções que existem, porém não obtive sucesso em nenhuma delas, já refiz o processo de remover e reinstalar o driver várias vezes. log_pdv.txt
- 16 replies
-
- fs800i sem comunicação com acbr
- fs800
- (e 1 mais)