Hey Mr:>

I took your idea and twised it a little... That's what
twisted minds are for.. check this out.

CLEAR ALL VAR
*( The next two variables are all that are need to be set to run
   and or abort the following procedure.
   Set the variable vm_seccount to the amount of seconds you
   want to run the pause 4 for, and if your processing get's
   completed before your seconds are up the just set the
   variable vm_abort to a value of 1 and it will drop out
   of this loop )
SET VAR vm_seccount INTEGER = 20
SET VAR vm_abort INTEGER = 0

SET CAPTION ' '
SET VAR vm_starttime TIME
SET VAR vm_starttime = (.#TIME)
SET VAR vm_endtime TIME
SET VAR vm_endtime = (.vm_starttime + .vm_seccount)
SET VAR vm_timeplussec TIME
SET VAR vm_timeplussec = (.vm_starttime + 1)
SET VAR vm_msgnum INTEGER = 1
SET VAR vm_caption TEXT = 'J. Limburg PAUSE 4 Demo ...'
CLS
SET VAR vm_msg = 'Processing. Please wait ...       '
PAUSE 3 USING .vm_msg CAPTION .vm_caption
SET VAR vm_adddots = '...'
SET VAR vm_dotcount INTEGER = 1
SET VAR vm_msg1 TEXT = NULL
SET VAR vm_cyclewatch INTEGER = 1

WHILE vm_starttime < .vm_endtime  THEN
  SET VAR vm_starttime = (.#TIME)
  IF vm_starttime = .vm_timeplussec AND vm_abort <> 1 THEN
    IF vm_cyclewatch > 5 THEN
      SET VAR vm_msgnum = 1
      PAUSE 4 USING 'Processing. Please wait ...' CAPTION .vm_caption
      SET VAR vm_cyclewatch = 1
      SET VAR vm_dotcount = 1
      SET VAR vm_msg1 = NULL
    ENDIF
    WHILE vm_dotcount < .vm_msgnum THEN
      SET VAR vm_msg1 = (.vm_msg1 + .vm_adddots)
      SET VAR vm_dotcount = (.vm_dotcount + 1)
    ENDWHILE
    SET VAR vm_msg2user = (.vm_msg + .vm_msg1)
    PAUSE 4 USING .vm_msg2user
    SET VAR vm_cyclewatch = (.vm_cyclewatch + 1)
    SET VAR vm_msgnum = (.vm_msgnum + 1)
    SET VAR vm_timeplussec = (.vm_starttime + 1)
  ENDIF
ENDWHILE
CLEAR ALL VAR
CLS -- Will clear the Pause 4 box from the screen.
RETURN


Hope some one finds it handy
Jim Limburg


--- "A. Razzak Memon" <[EMAIL PROTECTED]> wrote:
> 
> 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/


__________________________________________________
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/

Reply via email to