repeat....End

myilmaz

New Member
This Repeat .. End. only one time working.
I need Working when wstate value True.

Thank you for all.

DEF VAR data AS CHAR NO-UNDO.
REPEAT:
PROCESS EVENTS.
IF wstate THEN LEAVE.
IF SEARCH('C:\DATA.TXT') <> ? THEN
DO:
INPUT FROM 'C:\DATA.TXT'.
DO WHILE TRUE:
IMPORT UNFORMATTED data .
MESSAGE data VIEW-AS ALERT-BOX.
END.
INPUT CLOSE.
DOS SILENT 'DEL C:\DATA.TXT /S'.
END.
END.


 

Dirky

New Member
I'm not sure if i understood correctly, but my guess is you wanted the repeat....end to keep working, even when wstate has a value 'True'?

The why do keep a line in the repeat....end block that says 'IF wstate THEN LEAVE.'?
 

myilmaz

New Member
I mean this program must continuous messaging 'HELLO'.
but ending when after "input close" command


DEF VAR data AS CHAR NO-UNDO.
REPEAT:

IF SEARCH('C:\DATA.TXT') <> ? THEN
DO:
INPUT FROM 'C:\DATA.TXT'.
DO WHILE TRUE:
IMPORT UNFORMATTED data .
MESSAGE data VIEW-AS ALERT-BOX.
END.
INPUT CLOSE.
MESSAGE 'HELLO'.

END.
END.


 

AndySmith

New Member
You need to change the DO WHILE TRUE to a second REPEAT loop. Progress applies an error event at the end of the file import, but without any explicit block behaviour will apply the event to the REPEAT block. Try this -

DEF VAR data AS CHAR NO-UNDO.

REPEAT:
IF SEARCH('C:\DATA.TXT') <> ? THEN
DO:
INPUT FROM 'C:\DATA.TXT'.
REPEAT:
IMPORT UNFORMATTED data .
MESSAGE data VIEW-AS ALERT-BOX.
END.
INPUT CLOSE.
MESSAGE 'HELLO'.
END.
END.
 
How about this?
Code:
[size=1][font=Arial]DEF VAR data AS CHAR NO-UNDO.
[/font][/size][size=1][font=Arial]REPEAT:
	IF SEARCH('C:\DATA.TXT') <> ? THEN[/font]
[font=Arial]	DO: [/font]
[font=Arial]		INPUT FROM 'C:\DATA.TXT'.[/font]
[font=Arial]		DO WHILE TRUE:[/font]
[font=Arial]			IMPORT UNFORMATTED data .[/font]
[font=Arial]			MESSAGE data VIEW-AS ALERT-BOX.[/font]
[font=Arial]		END.[/font]
[font=Arial]		INPUT CLOSE.[/font]
[/size][size=1][font=Arial]		LEAVE.[/font]
[font=Arial]	END.[/font]
[font=Arial]	MESSAGE 'HELLO'.[/font][/size]
[size=1][font=Arial]END.[/font][/size]
 

Dirky

New Member
I mean this program must continuous messaging 'HELLO'.
but ending when after "input close" command
Code:
[size=1][font=Arial]DEFINE VARIABLE data AS CHARACTER NO-UNDO.[/font][/size]
[size=1][font=Arial]IF SEARCH('C:\DATA.TXT') <> ? THEN[/font][font=Arial]	DO:[/font]
[font=Arial]	 INPUT FROM 'C:\DATA.TXT'.[/font]
[font=Arial]	 REPEAT:[/font][/size]
[size=1][font=Arial]			 IMPORT UNFORMATTED data.[/font]
[font=Arial]			 MESSAGE 'HELLO'.
[/font][/size][size=1][font=Arial]	 END.[/font]
[font=Arial]	 INPUT CLOSE.[/font]
[font=Arial]END.[/font][/size]
 
Top