Stuart -

 

I see two possibilities:

 

1.        "IF variable = NULL  THEN" should be    "IF variable IS NULL THEN"

2.       Within a SWITCH block, you should issue "BREAK" instead of using
"GOTO TheEnd".. The break will drop the programming call down to the next
line after the ENDSW line.

Sami

 

____________________________

Sami Aaron

Software Management Specialists

913-915-1971

[EMAIL PROTECTED]

 

 

 

From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Stuart Cohen
Sent: Friday, January 18, 2008 2:02 PM
To: RBASE-L Mailing List
Subject: [RBASE-L] - Two eyes are not good enough

 

Below is some code from an EEP in my application.  The IF statement in line
39 does not seem to be evaluating correctly.  When I TRACE the code, the
following happens.

In line 27, vFCC_Choice is SET to NULL.  The TRACE window demonstrates this.
The vUserSecurityLevel is SET to 15 and the IF statement in line 31 is
evaluated properly.  In line 33 two variables are set using a form,
Hospital_Choice2.  The first variable,vHosp_Choice2, is set by this form to
the TEXT values of '1', '2' or '3'.  If the user fails to set this variable,
the variable value remains NULL.  The TRACE demonstrates this and the SWITCH
Block starting in line 34 evaluates properly. Should the value of
vHosp_Choice2 be assigned the value of '2', a variable lookup combobox
appears in the form, Hospital_Choice2, allowing the user to give a value to
vFCC_Choice.  If the user fails to assign a value to vFCC_Choice and presses
the OK button in form, Hospital_Choice2, the value of the variable,
vFCC_Choice, should remain NULL as assigned in line 27.  The TRACE
demonstrates that vFCC_Choice has no value (is still assigned the NULL
value) coming out of the form, Hospital_Choice2, and continues to have no
value up to line 39.  At this point the IF statement is not evaluated
correctly and the TRACE jumps to the ELSE block in line 43.  Even at this
point the value of vFCC_Choice is still NULL.

Does anybody see what I am doing wrong?


Thank you,

Stuart J. Cohen, Ph.D.
Major, Medical Service Corps
Research Specialist
Walter Reed Army Medical Center
National Disaster Medical System Federal Coordinating Center
Phone: 202-782-3636
Cell: 301-514-3975
Fax: 202-782-4360
E-mail: [EMAIL PROTECTED]






-------------------Code---------------------------------------------

01     PROPERTY RBASE_FORM WINDOW_STATE 'MINIMIZED'
02     CLEAR VAR vCaption, vHospital, vHospital_Code_POC,vMode,
vHosp_POC_LastName, vHosp_POC_FN, vHosp_POC_MI, vEndKey
03     SET ERROR MESSAGE 2038 OFF
04     DROP TABLE tSelectedValues
05     SET ERROR MESSAGE 2038 ON
06     CREATE TEMPORARY TABLE `tSelectedValues` +
07        (`HOSP_POC_ID ` INTEGER, +
08        `Hosp_POC_LastName ` TEXT (30), +
09        `Hosp_POC_FirstName ` TEXT (30), +
10        `Hosp_POC_MI ` TEXT (2), +
11        `Hosp_POC_email` TEXT  (80),+
12        `Hosp_POC_Group` TEXT  (35),+
13        `Hospital_Code ` TEXT  (15), +
14        `Hospital ` TEXT (50), +
15        `Hosp_City` TEXT (20), +
16        `Hosp_State` TEXT (8), +
17       `FCC_Code` TEXT (8), +
18      `Service` TEXT (10))
19     SET VAR vHOSP_POC_ID INTEGER = NULL
20     SET VAR vSelectedPOCID INTEGER = NULL
21     SET VAR vHospital TEXT = NULL
22     SET VAR vHospital_code_POC Text = NULL
23     SET VAR vMode TEXT = NULL
24     SET VAR vEndKey TEXT = NULL
25     SET VAR vWhere TEXT = NULL
26     SET VAR vWhere_Choice TEXT = NULL
27     SET VAR vFCC_Choice TEXT = NULL
28     SET VAR vState_Init TEXT = NULL
29     SET VAR vHosp_Choice2 TEXT = NULL
30     SET VAR vMode = 'ViewAll'
31     IF vUserSecurityLevel >= 13 THEN
32          SET VAR vWhere_Choice = NULL
33          EDIT USING Hospital_Choice2
34          SWITCH (.vHosp_Choice2)
35               CASE '1'
36                    SET VAR vWhere = 'WHERE Hosp_POC_ID NOT IN (SEL
Hosp_POC_ID FROM tSelectedValues) AND Hosp_POC_email EXISTS'
37               BREAK
38               CASE '2'
39                    IF vFCC_Choice = NULL THEN
40                         PAUSE 2 USING 'You Did Not Enter An FCC' CAPTION
'Input Error' ICON APP BUTTON 'OK'
41                         GOTO TheEnd
42                    ELSE
43                         SET VAR vWhere = 'WHERE Hosp_POC_ID NOT IN (SEL
Hosp_POC_ID FROM tSelectedValues) AND Hosp_POC_email EXISTS AND  FCC_Code  =
.vFCC_Choice'
44                    ENDIF
45               BREAK
46               CASE '3'
47                    IF vState_Init = NULL THEN
48                         PAUSE 2 USING 'You Did Not Enter A State' CAPTION
'Input Error' ICON APP BUTTON 'OK'
49                         GOTO TheEnd
50                    ELSE
51                         SET VAR vWhere = 'WHERE Hosp_POC_ID NOT IN (SEL
Hosp_POC_ID FROM tSelectedValues) AND Hosp_POC_email EXISTS AND  Hosp_State
= .vState_Init'
52                    ENDIF
53               BREAK
54               DEFAULT
55                    PAUSE 2 USING 'You Did Not Enter A Choice For
All/FCC/State' CAPTION 'Input Error' ICON APP BUTTON 'OK'
56                    GOTO TheEND
57               BREAK
58          ENDSW
59     ENDIF

Reply via email to