Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Need Clarification of the ! or .NOT. operators
Message
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Miscellaneous
Thread ID:
00778163
Message ID:
00778166
Views:
33
Elgin,

It should be
     IF  !("PCB" $ UPPER(fluid)) ;
        AND !("PYRANOL" $ UPPER(fluid)) ;
        AND !("WECOSOL" $ UPPER(fluid))
* OR
     IF  NOT ( ("PCB" $ UPPER(fluid)) ;
        OR ("PYRANOL" $ UPPER(fluid)) ;
        OR ("WECOSOL" $ UPPER(fluid)))
>I am trying to figure out why the second IF statement is not working correctly. In my code the field tmpName.liquid contains "PCB "
>
>If tmpName.liquid contains any of the strings "PCB", "Pyranol", or "Wecosol" I want it to execute the ELSE condition. But no matter what I try it always ends up doing the first DO CASE statement. When I watch the statement !("PCB" $ UPPER(fluid)) in the debugger it shows .F. once I get to the REPLACE statement. Why does it still step to the next line - DO CASE, instead of going to the ELSE condition. I just don't get it.
>
>
>IF !EMPTY(tmpLiquid.h20) && Evaluate only if record has a KF Analysis.
>   lcH20 = ALLTRIM(tmpLiquid.h20)
>   REPLACE fluid WITH ALLTRIM(tmpName.liquid)
>      IF !("PCB" $ UPPER(fluid)) ;
>        OR !("PYRANOL" $ UPPER(fluid)) ;
>        OR !("WECOSOL" $ UPPER(fluid))
>          DO CASE
>	    CASE 1
>               Do something
>            CASE 2
>               Do something
>            OTHERWISE
>               Do something else
>           ENDCASE
>      ELSE
>
>          Do other stuff
>
>      ENDIF
>ENDIF
>
>
>Thank you for your help. I'm at wits end.
--sb--
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform