I have a SP that does less than a second timer, but you have to set your
time format to .SSS to make it work. You can hard code it if your delay is
fixed. I just made it a SP so I could pass in ms values....
She Goes Lika Dis:
Procedure : sp_pause
Description :
ID : 45
Last Modified: 12/19/2001 13:42:44.638
Version : 1
Parameter Name Parameter Attributes
-------------------- -----------------------------------------------------
----
vaddtime Type : INTEGER
Procedure has 1 parameters.
Return Value: Type : INTEGER
*(sppause Auth 011401 mbyerley)
*(Stored Procedure While Loop To Pause in partial second intervals)
clear var MICRORIM_RETURUN, STP_RETURN
SET VAR vaddtime INTEGER
SET VAR vendtime TIME = (ADDFRC(.#TIME,.vaddtime))
WHILE #TIME < .vendtime THEN
ENDWHILE
clear var vaddtime, vendtime
RETURN 0
called like:
-- pause for 100 milliseconds
set var vtrue = (call sp_pause(100))
----- Original Message -----
From: "Jim Limburg" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, June 14, 2002 1:34 PM
Subject: Re: PAUSE 4 and Screen Flicker
> David
>
> Try this snippet and watch the results. Since we only have two
> options of getting this to work time wise. Checking the result
> once a second, or on a continous effort like the code you first
> presented, but most if not all systems would never be able to
> refresh the screen fast enough for the way you were doing it.
>
> MAYBE we could get Razzak to provide us with some kind of LESS
> than a SECOND timer or a another glorious way to do this.
>
> CLS
> --PAUSE 2 USING 'Counting from 1 to 50000; now on 10000' AT 5 10
> SET VAR vm_starttime TIME
> SET VAR vm_starttime = (.#TIME)
>
> SET VAR vm_timeplussec TIME
> SET VAR vm_timeplussec = (.vm_starttime + 1)
>
> PAUSE 3 USING 'Counting from 1 to 500000; now on 0 ' AT 5 10
>
> SET VAR von = 0
> WHILE von < 500000 THEN
> SET VAR von = (.von + 1)
> SET VAR vm_starttime = (.#TIME)
> IF vm_starttime = .vm_timeplussec THEN
> --WRITE .vmessage AT 20 2
> SET VAR vmessage = ('Counting from 1 to 500000; now on'&(CTXT(.von)) )
> PAUSE 4 USING .vmessage
> SET VAR vm_timeplussec = (.vm_starttime + 1)
> ENDIF
> ENDWHILE
> CLS
> RETURN
>
> Jim Limburg
>
>
> --- "David M. Blocker" <[EMAIL PROTECTED]> wrote:
> > Razzak
> >
> > Help! What am I missing?
> >
> > I was so excited about the PAUSE 3 and PAUSE 4 that I tried to apply it
to
> > program I'm writing that needed a counter. Here is a small demo file:
> >
> > cls
> > pause 2 using 'Counting from 1 to 10000; now on 10000' at 5 10
> >
> > pause 3 using 'Counting from 1 to 10000; now on 0' at 5 10
> >
> > set var von = 0
> > while von < 10000 then
> > set var von = (.von + 1)
> > set var vmessage = ('Counting from 1 to 10000; now on'&(ctxt(.von)) )
> > write .vmessage at 20 2
> > pause 4 using .vmessage
> > endwhile
> >
> > I include the PAUSE 2 at the top for contrast. When I run this in R:Base
> > (tried it on build 1.850 and the beta, 1.854, both on a Dell Windows 98
> > portable and Dell Windows XP desktop), I get two problems:
> >
> > 1. The screen does a big time flicker with the PAUSE 4
> > 2. The counter doesn't show on the right! All I get is
> > "Counting from 1 to 10000; now on" in the box
> >
> > I include the WRITE command to show that there's nothing wrong with the
> > variable vMessage - WRITE shows the progression just fine.
> >
> > David Blocker
> >
> > ----- Original Message -----
> > From: "A. Razzak Memon" <[EMAIL PROTECTED]>
> > To: <[EMAIL PROTECTED]>
> > Sent: Thursday, June 13, 2002 12:14 PM
> > Subject: Re: Another novice form question - Razzak's Reply
> >
> >
> > >
> > > Bob,
> > >
> > > A new option of PAUSE 4 has been added in The Glorious R:BASE
> > > 2000 (ver 6.5++) for Windows.
> > >
> > > There are cases when you would like to display any message using
> > > PAUSE 3 command and continue processing things behind the scene.
> > > If you also have to display any progress notes, etc., without flicker,
> > > now you can use the option of PAUSE 4.
> > >
> > > The new PAUSE 4 works just like PAUSE 3 except than instead of
> > > painting a new dialog box with the message it will use the existing
> > > displayed PAUSE 3 box and just redo the message inside the box.
> > > This can be used to eliminate flicker for those times when you are
> > > using PAUSE 3 to display progress in an application.
> > >
> > > Example:
> > >
> > > -- LoopD.RMD To Demonstrate the Use of PAUSE 3 and PAUSE 4
> > >
> > > CLEAR ALL VAR
> > > SET CAPTION ' '
> > > SET VAR v1 TIME
> > > SET VAR v1 = (.#Time)
> > > SET VAR v2 TIME
> > > SET VAR v2 = (.v1 + 5)
> > > SET VAR v3 TIME
> > > SET VAR v3 = (.v1 + 1)
> > > SET VAR MsgNum INTEGER = 1
> > >
> > > CLS
> > > PAUSE 3 USING 'Wait for this to quit...' CAPTION 'Demo of New PAUSE 4
> > > Option ...'
> > >
> > > WHILE v1 < .v2 THEN
> > > SET VAR v1 = (.#time)
> > > IF v1 = .v3 THEN
> > > SWITCH (.MsgNum)
> > > CASE 1
> > > PAUSE 4 USING 'Hello'
> > > BREAK
> > > CASE 2
> > > PAUSE 4 USING 'Developers ...'
> > > BREAK
> > > CASE 3
> > > PAUSE 4 USING 'Check'
> > > BREAK
> > > CASE 4
> > > PAUSE 4 USING 'This'
> > > BREAK
> > > CASE 5
> > > PAUSE 4 USING 'Out ...'
> > > BREAK
> > > ENDSW
> > > SET VAR MsgNum = (.MsgNum + 1)
> > > SET VAR v3 = (.v1 + 1)
> > > ENDIF
> > > ENDWHILE
> > > CLEAR ALL VAR
> > > RETURN
> > >
> > > For more details and examples: http://www.RSyntax.com
> > >
> > > Enjoy and make sure to have fun!
> > >
> > > Very Best Regards,
> > >
> > > Razzak.
> > >
> > > At 11:59 AM 6/13/2002 -0500, Bob Thompson wrote:
> > >
> > > >I want to display a "count down" counter
> > > >on a form while the app is processing a
> > > >somewhat large data set. I have a push button
> > > >on the form that executes the program and
> > > >I want the form to display something like :
> > > > "Processing record# 20 of 10000"
> > > >
> > > >This app may take 1-2 minutes to completely
> > > >execute and this is feed back to the user.
> > > >
> > > >I have tried the SCREEN RESTORE, WRITE
> > > >and RECALC commands, but cannot get the
> > > >form to show updated variables until the procedure
> > > >has finished. (It is then a moot point of course!)
> > > > I do not want to use the FEEDBACK option as
> > > > I would like more control over what and
> > > >how the counter is displayed.
> > > >
> > > >You all have been very helpful and I appreciate
> > > >the assistance. Again, simply how do you
> > > >get a variable to redisplay at will on a form
> > > >while you are performing a WHILE LOOP or
> > > >DECLARE CURSOR ?
> > >
> > >
> > > ================================================
> > > TO SEE MESSAGE POSTING GUIDELINES:
> > > Send a plain text email to [EMAIL PROTECTED]
> > > In the message body, put just two words: INTRO rbase-l
> > > ================================================
> > > TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
> > > In the message body, put just two words: UNSUBSCRIBE rbase-l
> > > ================================================
> > > TO SEARCH ARCHIVES:
> > > http://www.mail-archive.com/rbase-l%40sonetmail.com/
> > >
> >
> >
> > ================================================
> > TO SEE MESSAGE POSTING GUIDELINES:
> > Send a plain text email to [EMAIL PROTECTED]
> > In the message body, put just two words: INTRO rbase-l
> > ================================================
> > TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
> > In the message body, put just two words: UNSUBSCRIBE rbase-l
> > ================================================
> > TO SEARCH ARCHIVES:
> > http://www.mail-archive.com/rbase-l%40sonetmail.com/
>
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! - Official partner of 2002 FIFA World Cup
> http://fifaworldcup.yahoo.com
> ================================================
> TO SEE MESSAGE POSTING GUIDELINES:
> Send a plain text email to [EMAIL PROTECTED]
> In the message body, put just two words: INTRO rbase-l
> ================================================
> TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
> In the message body, put just two words: UNSUBSCRIBE rbase-l
> ================================================
> TO SEARCH ARCHIVES:
> http://www.mail-archive.com/rbase-l%40sonetmail.com/
>
================================================
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: INTRO rbase-l
================================================
TO UNSUBSCRIBE: send a plain text email to [EMAIL PROTECTED]
In the message body, put just two words: UNSUBSCRIBE rbase-l
================================================
TO SEARCH ARCHIVES:
http://www.mail-archive.com/rbase-l%40sonetmail.com/