David,
 
Good idea.
 
Revised code.
 
* Don Robinson
* Testing the INPUTIF statement.
*
PROMPT ''
*
ZZ = ''
FOR X = 1 TO 100  ;* Loop for 10 seconds.
   INPUTIF ZZ THEN EXIT
   NAP 100
NEXT X
*
IF ZZ = '' THEN
   CRT 'The user is sleeping....'
   STOP  ;* Do whatever you want here.
END ELSE
*
* User entered something, proceed as usual.
*
   CRT
   CRT 'User entered: ': ZZ
END
*
STOP
END

Thanks,
Don Robinson

From: David A. Green <dgr...@dagconsulting.com>
To: 'Don Robinson' <donr_w...@yahoo.com>; 'U2 Users List' 
<u2-users@listserver.u2ug.org> 
Sent: Tuesday, March 27, 2012 2:31 PM
Subject: RE: [U2] Detecting idle time in INPUT statement.

Don,

You should at least optimize the code by just checking a counter and not
messing with TIME().  Your NAP command automatically takes care of the
amount of time spent in each loop.  You just need to count how many NAPs it
takes to equal the amount of wait time you wish to have.

David A. Green
(480) 813-1725
DAG Consulting

-----Original Message-----
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Don Robinson
Sent: Tuesday, March 27, 2012 11:07 AM
To: U2 Users List
Subject: Re: [U2] Detecting idle time in INPUT statement.

Thanks to all who responded.
 
At the point in the programs where this is a problem for us, we know the
user has a lock, we just want to release the lock. This will be done where
they already have the option of aborting so no problem with partial updates,
etc.
 
The only gotcha on this is if they type one character, the INPUTIF will wait
forever on the Enter key but this isn't too likely.
 
The following code does this pretty well.
 
* Don Robinson
* Testing the INPUTIF statement.
*
PROMPT ''
*
ZZ = ''
TIME.OUT.TIME = INT(TIME()) + 10  ;* Wait 10 seconds.
LOOP
   INPUTIF ZZ THEN EXIT
   NAP 100
   IF INT(TIME()) > TIME.OUT.TIME THEN
      CRT 'The user is sleeping....'
      STOP  ;* Do whatever you want here.
   END
REPEAT
*
* User entered something, proceed as usual.
*
CRT
CRT 'User entered: ': ZZ
*
STOP
END

Regards, 
Don Robinson

From: Wjhonson <wjhon...@aol.com>
To: u2-users@listserver.u2ug.org 
Sent: Tuesday, March 27, 2012 1:53 PM
Subject: Re: [U2] Detecting idle time in INPUT statement.


Right, you don't care if they are at input exactly.
You care if they are squatting on a lock.

So your periodic lock checker thingie, has to be combined with a nasty
email-o-gram campaign
Until the users are well edumacated.




-----Original Message-----
From: George Gallen <ggal...@wyanokegroup.com>
To: U2 Users List <u2-users@listserver.u2ug.org>
Sent: Tue, Mar 27, 2012 10:44 am
Subject: Re: [U2] Detecting idle time in INPUT statement.


I guess you would need to merge this with the routine to detect who has
locks 
pen (except running every two mins, not five)
  To determine who is sitting at an input prompt at a menu (which might be
ok), 
s someone who is sitting at an input
  Prompt and hogging the locks!
George
-----Original Message-----
rom: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] 
n Behalf Of Wjhonson
ent: Tuesday, March 27, 2012 12:18 PM
o: donr_w...@yahoo.com; u2-users@listserver.u2ug.org
ubject: Re: [U2] Detecting idle time in INPUT statement.

Timed* activity on a *line* is controlled by the O/S not within Universe per

e.  Or at least you shouldn't expect Universe to keep you informed when
lines 
re idle, natively.
So (being on AIX a type of Unix) you are going to need to write a 
onstantly-running background task which queries the last modified timestamp
on 
he lines and reports on idle lines.  This is something controlled in AIX you

now.  Not just the timestamps but the timeout conditions.
But *acting* on these in an automatic fashion would be quite dangerous to
the 
ntegrity of your database, I'm sure you know.
his should be used for informational purposes only.  You get your reports, 
itch at the users involved, and gradually they learn to stop doing it.
That's the best approach, IMHO, having lived through this exact scenario in
many 
ompanies.


----Original Message-----
rom: Don Robinson <donr_w...@yahoo.com>
o: U2 listserver <u2-users@listserver.u2ug.org>
ent: Tue, Mar 27, 2012 6:26 am
ubject: [U2] Detecting idle time in INPUT statement.

ello all,
e are running Universe 10.1 on AIX with about 500 users. We have a problem
with 
ers opening up a record which puts a lock on it and just letting it sit at
the 
PUT statement for a long time.
ost of the locking within the application does not use the LOCKED clause so 
en a second person needs the locked record, their session waits.
hat is the best way to detect the user hasn't typed anything for a period of

me, say 2 minutes? This needs to be simple as we have no desire to rewrite
the 
plication!
IRC, some other MV systems have a timeout on the INPUT but I can't find 
ything about this in the UV manual.
hanks,
on Robinson
_____________________________________________
-Users mailing list
-us...@listserver.u2ug.org
tp://listserver.u2ug.org/mailman/listinfo/u2-users
_______________________________________________
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://listserver.u2ug.org/mailman/listinfo/u2-users
______________________________________________
2-Users mailing list
2-us...@listserver.u2ug.org
ttp://listserver.u2ug.org/mailman/listinfo/u2-users

_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users
_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to