Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Try/Catch
Message
From
07/08/2007 14:42:31
 
 
To
07/08/2007 14:17:35
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Environment versions
Visual FoxPro:
VFP 8 SP1
Miscellaneous
Thread ID:
01246493
Message ID:
01246574
Views:
22
I don't think that's cheating at all. On the contrary, try/catch and the error command is a perfect way to simulate those "should never happen" errors, like loss of network connection. You can unplug the cable, but that can have other consequences which is not related at all to your programming. Personally I listen to web radio at work, I would rather issue a error 1907 than losing the sound. :-)

>I cheat alittle and use TRY/ENDTRY when I want to do something that I am not sure can be done on some systems but don't want it caught in the apps error handler.
>
>
>
>>Try/catch is for ERRORS, not for regular conditions. You -may- use the ERROR command to raise fake errors, but that's not what try/catch is meant for. But it fits your purpose, it's yur choice.
>>
>>>Not sure. I'm going to be testing for a number of conditions, whenever m.MyVariable = .T. then I want to immediately kickout. If this isn't a good application of TRY/CATCH, then what is? I'm just trying to use functionality that's available and this sounded like a good fit.
>>>
>>>
>>>>Why do you need TRY..ENDTRY? It sounds like IF..ENDIF or DO CASE will do.
>>>>
>>>>>In the TRY block I want to test for certain conditions, if those conditions prove false, then I want to go to the CATCH block and do some other stuff. I think I should use THROW, but I can't figure out how to do it. I'm new to using the TRY/CATCH stuff.
>>>>>
>>>>>
>>>>>TRY
>>>>>
>>>>>   Bunches of code...
>>>>>
>>>>>CATCH TO oException (come here if a variable in the TRY block proves false - not sure I even need oException here)
>>>>>
>>>>>   IF oException.ErrorNo = 1
>>>>>      STRTOFILE("Error occurred at: " + TRANSFORM(DATETIME());
>>>>>         + CHR(13),"C:\Errors.log",.T.)
>>>>>   ENDIF
>>>>>
>>>>>FINALLY
>>>>>
>>>>>   RETURN .T.
>>>>>
>>>>>ENDTRY
>>>>>
Previous
Reply
Map
View

Click here to load this message in the networking platform