Ir para conteúdo
  • Cadastre-se

dev botao

Problema com Data do movimento


rossine
  • Este tópico foi criado há 3019 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Rossini, a data da impressora é diferente da data de movimento...

Quando foi o ultimo dia de trabalho dessa impressora?

Se eu tiro uma redução Z hoje para abrir o dia, a data de movimento é de hoje(14/04).

Se eu abrir o ecf amanhã e não fechei o dia 14/04, então a data de movimento é dia 14/04.

Se passar um mês e eu não abrir o dia(fechando o ultimo), então a data de movimento vai ser 14/04.

Agora a data e hora da impressora tem que ser a do dia.

Vc não está confundindo não?

Quantas reuniões foram mesmo esta semana? Reúna os amigos!

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia Fernando,

Ontem a noite eu emiti a redução Z, e nela consta "Movimento do dia: 13/04/2010".

Entrei hoje no acbr / ecfteste.exe e testei a data do movimento com a swedaSTX, e o retorno foi 13/04/11, veja abaixo:

Ativar

[sTX]/56+0000AA[134][128][130][128][128][ETX][148]

- + - + - + - + - + - + - + - + - + - + - + -

Data Movimento: (13/04/11)

[sTX]134A000213/04/2011[0]20:37:54[0][0]13/04/2011[0]18:31:43[0][0]09/09/2010[0]08:18:00[0][0]13/04/2011[0]20:38:18[0][0][ETX][241][sTX]134+0000AA[134][128][130][128][128]A2[ETX][5]

- + - + - + - + - + - + - + - + - + - + - + -

Desativar

...e agora mudei para a SWEDA normal e veja o retorno da data do movimento abaixo:

- + - + - + - + - + - + - + - + - + - + - + -

Ativar

.+0001000CREDUCAO 14S000000000000000000000000!1404110947N 001NN000000000000000000000000SNNN0 }

- + - + - + - + - + - + - + - + - + - + - + -

Data/Hora: 14/04/2011 09:47:00

.+0001000CREDUCAO 14S000000000000000000000000!1404110947N 001NN000000000000000000000000SNNN0 }

- + - + - + - + - + - + - + - + - + - + - + -

Estado: Livre

.+0001000CREDUCAO 14S000000000000000000000000!1404110947N 001NN000000000000000000000000SNNN0 }

- + - + - + - + - + - + - + - + - + - + - + -

Data Movimento: (14/04/11)

.+C00111404114713CN000000002313901730000030700000000000000000000000000000000000000000000000000000000000000000000000003322171H }

- + - + - + - + - + - + - + - + - + - + - + -

Aí é que está a minha dúvida pois usando a SwedaSTX, quando eu emito a redução em seguida eu mando gravar os dados dela só que a data do movimento consta a do dia anterior.

A minha confusão está no comando "DadosReducaoZ". Veja:

[ SWEDA - NORMAL ]

Dados da Redução Z 60M

[ECF]

DataMovimento = 14/04/11

NumSerie = SW010500000000001085

NumSerieMFD =

NumECF = 0001

NumLoja = 001

NumCOOInicial = 000332

NumCOO = 004713

[ SWEDA STX ]

Dados da Redução Z 60M

[ECF]

DataMovimento = 13/04/11

NumSerie = SW010500000000001085

NumSerieMFD =

NumECF = 001

NumLoja = 1

NumCOOInicial = 004714

NumCOO = 004713

Realmente a data que tenho que gravar a redução é 13/04/11. Hoje eu faço assim:

- Pego os dados da ultima redução Z impressa

- Emito a Z

- Gravo os dados da Z

Talvez meu problema esteja nesta lógica acima. Vou testar aqui fazendo assim:

- Emitir a Z

- retornar os dados desta Z atraves do comando "DadosUltimaReducaoZ"

- gravar os dados

Acho que a lógica correta seja esta. pois quando eu usava a "SWEDA COMUM" não tinha este comando "DadosUltimaReducaoZ" aí como eu estou usando a STX agora, terei que fazer assim para ficar correto.

Vou testar aqui e depois comento aqui os resultados.

Obrigado pela força ;)

Rossine.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Olá Fernando,

...O dia 14 ainda não foi aberto...

Acho que o problema deve estar aqui.

Eu não mando nenhum comando de abertura de dia para o acbr. Ontem eu emiti a redução e hoje antes de emitir qualquer cupom a Data do movimento estava 13/04/11. Emiti alguns cupons e a data do movimento ainda continua 13/04/11. Isto está certo ?

eu abro o meu dia assim:

if StatusEcf( "estRequerZ" ) && Redução Z está pendente ?

Emitir_Z()

ABRE_DIA()

else

* Eu nao estava fazendo isto - Talvez aqui esteja o problema

if StatusEcf( "estRequerX" )

ABRE_DIA()

endif

endif

Nesta função ABRE_DIA() eu fiz uma chamada direta a DLL ao comando "nRet := ECF_AberturaDoDia( "0" )" para abrir o dia na Sweda pois no acbr não tem este comando (pelo menos no manual não tem).

Qual a lógica e comandos acbr que você testa aí para abrir o dia ? Talvez eu não precise fazer este comando de ECF_AberturaDoDia acima não, talvez seja somente a impressão de uma leitura X mesmo.

Obrigado,

Rossine.

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Bom dia Fernando,

Eu mudei meu esquema aqui para capturar os dados da redução Z.

Eu estava fazendo assim: (Assim estava ficando errado)

- Pego os dados da Redução Z com a função "DadosReducaoZ"

- Emito a Z

- Gravo os dados

Mudei para fazer assim: (Assim DataMovimento está OK)

- Emito a Z

- Pego os dados da Redução Z com a função "DadosUltimaReducaoZ"

- Gravo os dados

Agora ficou correta a data da movimentação ;)

Fui conferir os dados da redução que gravei e lá está buscando o valor do desconto dobrado e está jogando para o valor cancelamentos. Veja o .ini da redução Z retornada: (Repare os tags TOTALDESCONTOS e TOTALCANCELAMENTOS)

Na minha redução Z impressa eu tenho somente um desconto de R$ 0,44 e veja que está dobrando e ainda jogando para o cancelamento:

[sTART_INI]

[ECF]

DATAMOVIMENTO = 14/04/2011

NUMSERIE = SW0XXX0000000000XXXX

NUMLOJA = 1

NUMECF = 001

NUMCOOINICIAL = 004715

NUMCOO = 004722

NUMCRZ = 0308

NUMCRO = 0028

[ALIQUOTAS]

T0T0700 = 0.00

T0T1200 = 0.00

T0T1800 = 18.28

T0T2500 = 0.00

T0T3000 = 0.00

T0T1700 = 0.00

T0T0700 = 0.00

S0S0200 = 0.00

S0S0500 = 0.00

S0S0250 = 0.00

S0S0300 = 0.00

[OUTRASICMS]

TOTALSUBSTITUICAOTRIBUTARIA = 0.00

TOTALNAOTRIBUTADO = 0.00

TOTALISENCAO = 0.00

[TOTALIZADORES]

TOTALDESCONTOS = 0.88

TOTALCANCELAMENTOS = 0.88

TOTALACRESCIMOS = 0.00

TOTALNAOFISCAL = 0.00

VENDABRUTA = 18.72

GRANDETOTAL = 2313920.45

[END_INI]

Veja em anexo a impressão da redução Z

Obrigado pela atenção e pelo fix, ;)

Rossine.

post-351-13548987375032.png

Link para o comentário
Compartilhar em outros sites

  • Consultores

rossine

As correções são específicas para a Sweda. Mas acho que a Bematech não tem esse problema. Você poderia testar e dar um retorno?

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Boa tarde pessoal,

Acho que meu lazarus aqui está com problema, pois eu gero o acbrmonitor.exe mas não consigo enviar comandos para o acbr. :cry: o comando aparece na barra do acbr "Comandos a processar" e não sai disto.

Poderiam enviar para [email protected] o acbrmonitor.exe e ecfteste.exe de vocês ?

Sobre os testes com a bematech vou ver se amanhã consigo realizar estes mesmos testes.

Obrigado,

Rossine.

Link para o comentário
Compartilhar em outros sites

Saudações pessoal !, ainda continua com um pequeno bug no trecho a seguir que tambem corrigi no meu fonte aqui :

{Descontos ISS}

PosI := Pos('DS',RetCMD); // aqui esta o problema (sempre vai existir)

if PosI > 0 then

begin

PosI := PosI + 5 ; {DS }

V := V + StrToFloatDef(Trim(Copy(RetCMD,PosI,18)),0)/100;

end;

Result := Result +'TotalDescontos = '+FormatFloat('#0.00',V)+ sLineBreak;

... esta posição do 'DS' normalmente sempre vai existir pois na string de retorno o 'DS' aparece no no número de série da MFD , só não deu erro ainda porque por coicidencia normalmente o retorno das posições estão sendo Zero , futuramente ser for um número maior ou caracteres alfa , com certeza daria pau .

Minha solução foi :

PosI := Pos('DS ',RetCMD); // um espaço na frente do S funcionou , e acabei colocando este espaço tambem nas demais opções como cancelamento , acrescimo , etc..

Abraço a todos .

Marcelo.

Link para o comentário
Compartilhar em outros sites

  • 4 anos depois...

Olá, Bom Dia ! 
Acredito que o tópico não foi dado como encerrado, do contrário, desculpem.
O problema relatado anteriormente persiste no protocolo ecfSwedaSTX. Quando chamado o dataMovimento, ele retorna um data diferente da data atual, problema o qual não ocorre no protocolo ecfSweda.
Emiti a redução Z da data da Ontem, os dadosUltimaReducaoZ vem corretamente do ACBrMonitor, mas a dataMovimento, como dito anteriormente, vem com valor divergente da data atual.

 

Teste com o protocolo ecfSwedaSTX-> 04/01/2016
Teste com o protocolo ecfSweda-> 05/01/2016

Em anexo os logs do teste.

Utilizando ACBrMonitor PLUS V 0.1.11.1 em ambiente Windows, mas acredito que em ambiente Linux também deva ocorrer o problema.

É uma ECF Física, modelo Sweda ST200.

Segue link com o vídeo demostrativo do processo executado no ECFTeste.

https://drive.google.com/file/d/0B1jyPaWQhALVVGNfZHZZci1WTlk/view?usp=sharing

 

acbrlog.txt

Link para o comentário
Compartilhar em outros sites

  • Consultores
2 horas atrás, leandrokohlrausch disse:

Olá, Bom Dia ! 
Acredito que o tópico não foi dado como encerrado, do contrário, desculpem.
O problema relatado anteriormente persiste no protocolo ecfSwedaSTX. Quando chamado o dataMovimento, ele retorna um data diferente da data atual, problema o qual não ocorre no protocolo ecfSweda.
Emiti a redução Z da data da Ontem, os dadosUltimaReducaoZ vem corretamente do ACBrMonitor, mas a dataMovimento, como dito anteriormente, vem com valor divergente da data atual.

 

Teste com o protocolo ecfSwedaSTX-> 04/01/2016
Teste com o protocolo ecfSweda-> 05/01/2016

Mas se você emitiu a redução Z ontem, dia 04/01/2016, a data do movimento tem de ser anterior ou igual a data da emissão e portanto não pode ser a data de hoje, dia 05/01/2016.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 3019 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • 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...