[Stackoverflow] [Progress OpenEdge ABL] Progress (sometimes) does not continue processing after switching windows

Status
Not open for further replies.
R

Raphael Frei

Guest
My program do the following steps:

  1. Program asks user to read a label (by using a 2D scanner).
  2. The program finds some informations about the label and opens a second window.
  3. In the second window, the user needs to read 4 more labels to compare against informations saved on database.
  4. The second window closes and returns an status saying if all the informations are good or not.
  5. If information is OK, continue processing. If not OK, returns to step 1.

My issue is the following: sometimes after returning from Step 5, the main program won't continue processing the information. Requiring user to press ESC on the keyboard.
(and this shouldn't be happening, since they don't have access to a physical keyboard)

This is the Main Program (Calling the 2nd):

(Attempt 1)

Code:
PROCEDURE Processa_Scan:

    // More code here

    RUN validate_data.w(INPUT txtscan:SCREEN-VALUE, OUTPUT lSeatOK).
    IF NOT lSeatOK THEN DO:
        // Not valid
        RETURN.
    END.

    // More code here

END.

(Attempt 2)

Code:
PROCEDURE Processa_Scan:

    // More code here

      IF NOT l-hasvalidseat THEN DO:

            RUN validate_data.w(INPUT txtscan:SCREEN-VALUE, OUTPUT lSeatOK).
            IF NOT lSeatOK THEN DO:
                // Not valid
                RETURN.
            END.
            L-hasvalidseat = TRUE.
            RUN Processa_Scan.
            RETURN.

      END.

    // More code here

END.

In the Validate_Data.w, this is what I do when closing the program:

Code:
DO:
    // lStatus is the OUTPUT parameter
    lStatus = TRUE.
    APPLY "CLOSE" TO THIS-PROCEDURE.
END.

Continue reading...
 
Status
Not open for further replies.
Top