Jump to content
Fivewin Brasil

Hora no ECF


miragerr

Recommended Posts

Ola amigos

Como faço para verificar a hora da ECF com a do MICRO estão sincronizadas em 15 minutos para MAIS e para MENOS

na impressora sei buscar a HORA

e no micro mais facil ainda

O que quero é ter uma rotina que faça esta checagem de minutos de tolerancia dos 15 minutos

Agradeço toda a ajuda

Jackson Douglas

Boa Vista - RR

FWH 2.8 Ferrari VERMELINHA + WS + XH 0.99.61 + (Ja comprei a SQLLIB, e em breve irei DESISTIR de usa-la :) )

email : miragerr@osite.com.br

MSN : jackson_rl@hotmail.com

SKYPE : jackson_rr

Link to comment
Share on other sites

Ola amigos

Como faço para verificar a hora da ECF com a do MICRO estão sincronizadas em 15 minutos para MAIS e para MENOS

na impressora sei buscar a HORA

e no micro mais facil ainda

O que quero é ter uma rotina que faça esta checagem de minutos de tolerancia dos 15 minutos

Agradeço toda a ajuda

Jackson Douglas

Boa Vista - RR

FWH 2.8 Ferrari VERMELINHA + WS + XH 0.99.61 + (Ja comprei a SQLLIB, e em breve irei DESISTIR de usa-la :) )

email : miragerr@osite.com.br

MSN : jackson_rl@hotmail.com

SKYPE : jackson_rr

Link to comment
Share on other sites

Ola Jackson

Não sei se entendi bem, mas se o que você quer é

calcular a diferença em minutos entre as duas horas

tente a seguinte função:

FUNCTION CalcTime(cTimeInicio, cTimeFim)

RETURN (((VAL(SUBSTR(cTimeFim,1,2))*3600) + ;

(VAL(SUBSTR(cTimeFim,4,2))*60) + ;

(VAL(SUBSTR(cTimeFim,7,2)))) - ;

((VAL(SUBSTR(cTimeInicio,1,2))*3600) + ;

(VAL(SUBSTR(cTimeInicio,4,2))*60) + ;

(VAL(SUBSTR(cTimeInicio,7,2))))) / 60

Obs. não está previsto a situação de as horas serem de datas

diferentes.

[]´s

Flavio

Link to comment
Share on other sites

Se for com a Bematech tem essa função

Bematech_FI_DataHoraImpressora(Data, Hora)

Data: Variável string com 6 posições para receber a data atual da impressora no formato ddmmaa.

Hora: Variável string com 6 posições para receber a hora atual da impressora no formato hhmmss.

Ai é só comparar com o sistema.

PS. A cada Redução Z a Hora da Impressora é sincronizada com do Micro ou seja todos os dias

Marcelo Michels

celo.michels@ibestvip.com.br

celo.michels@hotmail.com

marcelo@lorenzi.com.br

-> Lorenzi Soluções Têxteis <-

Criciuma - SC

xHarbour build 0.99.2 + WS

Editado por - kbelo on 15/03/2007 11:31:44

Link to comment
Share on other sites

Ola amigos

Pegar os retornos da HORA do ECF é facil, e do PC mais fácil ainda, o meu dilema e tratar essa HORA para que o PC não fique 15 minutos a MAIS ou a MENOS do ECF.


hHora_ECF := IBR_HORA() <-- Função para pegar a HORA do ECF

hHora_PC := Time()

nTempo := Elaptime( hHora_ECF, hHora_PC )

nMinu := int(mod(Secs( nTempo ),3600)/60)

nHora := int(Secs( nTempo )/3600)

IF nHora > 0 .OR. nMinu > 15

MsgStop("A HORA do computador esta com mais de 15 minutos de diferença"+CRLF+;

"Da impressora FISCAL"+CRLF+CRLF+"HORA Impressora "+IBR_HORA()+CRLF+;

"Hora do Computador "+Time()+CRLF+CRLF+"Tempo de diferença "+StrZero(nHora,2)+":"+StrZero(nMinu,2),"Atenção")

PostQuitMessage(0)

__Quit()

ENDIF

id=code>id=code>

Só que quando o PC esta com 2 minutos a menos, o mesmo me mostra que esta com uma diferença de 23:00 horas, e não 2 dois minutos a menos

é isso que quero TRATAR uma pequena diferença para MAIS tá facil agora pra MENOS icon_smile_sad.gif

Gratos pela a atenção

Jackson Douglas

Boa Vista - RR

FWH 2.8 Ferrari VERMELINHA + WS + XH 0.99.61 + (Ja comprei a SQLLIB, e em breve irei DESISTIR de usa-la :) )

email : miragerr@osite.com.br

MSN : jackson_rl@hotmail.com

SKYPE : jackson_rr

Link to comment
Share on other sites

Bom dia!

Posto aqui a forma como verifico a tolerancia entre a hora do micro e da impressora, acho que pode te ajudar.


*** Hora 15 minutos de tolerancia

if dif_hora(substr(hora_mic,1,4),substr(hora_imp,1,4),15)

erro('Hora do computador está muito diferente da impressora'+CRLF+;

'Computador: '+Trans(hora_mic,"@R 99:99:99")+CRLF+;

'Impressora: '+Trans(hora_imp,"@R 99:99:99")+CRLF+;

'Altere a Hora do computador para continuar!')

return .f.

endif

Função que verifica a diferença

Function dif_hora(hora_a,hora_b,difminutos) // Hora sem as barras

********************************************

local minutos_a, minutos_b, horas_a, horas_b, retorno := .f.

horas_a = val(substr(hora_a,1,2))

horas_b = val(substr(hora_b,1,2))

minutos_a = val(substr(hora_a,3,2))

minutos_b = val(substr(hora_b,3,2))

if horas_a > horas_b

minutos_a = minutos_a + ((horas_a - horas_B) * 60)

elseif horas_b > horas_a

minutos_b = minutos_b + ((horas_b - horas_a) * 60)

endif

if (minutos_a + difminutos) < minutos_b .or. (minutos_a - difminutos) > minutos_b

retorno = .t.

endif

return retorno

id=code>id=code>

FW 2.5/CLIPPER 5.3b, BLINKER 7

Belzonte - Minas Gerais

Link to comment
Share on other sites

Bom a sua verificação de minutos deve estar igual a minha.

O que acontece é que a ECF esta com 17:15 e o computador 17:13 se comparar vai dar uma diferença de 23:58

pois ele vai considerar o 17:13 do proximo dia.

Faça uma verificação para sempre calcular do maior para o menor que nao tera erro ou vice versa.

é só fazer


if horaECF + minutoECF > horaPC + minutoPC

resultado=horaECF + minutoECF - horaPC + minutoPC

else

resultado=horaPC + minutoPC - horaECF + minutoECF

endif

id=code>id=code>

Acho que é mais ou menos isso.

Se ainda tiver duvidas mostre como esta a sua verificação que tento faço a alteração pra considerar isto

Marcelo Michels

celo.michels@ibestvip.com.br

celo.michels@hotmail.com

marcelo@lorenzi.com.br

-> Lorenzi Soluções Têxteis <-

Criciuma - SC

xHarbour build 0.99.2 + WS

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...