Página 1 de 1

Verificar ociosidade

Enviado: 29 Set 2016 09:32
por Jonatas Luz
Bom dia

Tenho um sistema e preciso verificar a ociosidade do teclado. Entretanto este sistema tenho versão para Windows e Linux.
Caso alguém já tenha passado por isso e puder ajudar eu agradeço.

Verificar ociosidade

Enviado: 29 Set 2016 09:38
por Kapiaba
Na versão for windows, você usa qual ferramenta visual?

Tem o comando Timer()?

Verificar ociosidade

Enviado: 29 Set 2016 09:40
por Jonatas Luz
Na verdade utilizo o modo texto mesmo tanto pra windows quanto pra linux. E sim tenho o Timer().

Verificar ociosidade

Enviado: 29 Set 2016 09:42
por Kapiaba
Sorry, modo texto não sei fazer. Abs.

Verificar ociosidade

Enviado: 29 Set 2016 10:31
por asimoes
Seu sistema é clipper ou harbour?

Verificar ociosidade

Enviado: 29 Set 2016 11:43
por Jonatas Luz
Em harbour

Verificar ociosidade

Enviado: 29 Set 2016 11:49
por janio
Ola,

viewtopic.php?f=45&t=15002&p=88222&hilit=ociosidade#p88222

Janio

Verificar ociosidade

Enviado: 29 Set 2016 11:51
por Jonatas Luz
Olá Janio,

Então eu li esse tópico, entretanto ele usa recursos do windows, e o que eu mais preciso é para linux

Verificar ociosidade

Enviado: 29 Set 2016 13:35
por Daniel
Teste este exemplo

Código: Selecionar todos

Function Main()
	SetMode(25, 80)
	Cls
	HB_IDLEADD({||FClock()})
	xtime:= Seconds() + 30
	xtime1:= 0
	vdt_mov:= vmotivo:= space(30)
	vlanca:= 100
	@ 11, 5 Say 'Movimento'
	@ 12, 5 get vdt_mov
	@ 13, 5 Say 'Motivo'
   @ 14, 5 get vmotivo
   @ 15, 5 Say 'Valor'
   @ 16, 5 get vlanca pict "@ez 999,999.99"
   Read
 Return Nil

********************************
Function FCLOCK()

   xtime1:= Seconds()
   If NextKey() != 0
     xTime:= Seconds() + 30
   EndIf
   If xtime1 >= xtime
     Alert("Vencido o tempo de Desmotracao")
     Cls
     KeyBoard chr(13)
     Quit
   EndIf
   Return Nil

Verificar ociosidade

Enviado: 30 Set 2016 08:59
por Jonatas Luz
Olá Daniel,

Sim esse exemplo deu certo, muito obrigado. Entretanto queria saber se você passou pela situação em que estou, quando está processando um relatório por exemplo ele começa contar esse tempo de ociosidade, afinal estamos testando o teclado, tem alguma ideia de como posso fazer? Desde já obrigado

Jônatas Luz

Verificar ociosidade

Enviado: 30 Set 2016 09:15
por asimoes
nIDle:=HB_IDLEADD({||FClock()})

Na saída da rotina:

hb_IdleDel( nIDle )

Verificar ociosidade

Enviado: 30 Set 2016 13:19
por Daniel
Ola Jônatas

Você pode usar o comando que o asimoes passou para desligar no inicio do relatório e depois
ligar de novo
Obs. Cuidado com as variáveis que você usa, pois elas pode alterar outras em outra parte do sistema com o mesmo nome

Código: Selecionar todos

    nIDle:=HB_IDLEADD({||FClock()})    
    xtime:= Seconds() + 30
    hb_IdleDel( nIDle )
    Seu relatorio
    xtime:= Seconds() + 30
    nIDle:=HB_IDLEADD({||FClock()})


Verificar ociosidade

Enviado: 30 Set 2016 14:20
por alxsts
Olá!

Seja bem-vindo ao Fórum Jonatas!

Verificar ociosidade

Enviado: 30 Set 2016 14:25
por Jonatas Luz
Deu certo

muito obrigado Daniel e ASimoes