LAVA Forums Buy cool LAVA gear Forums RSS Feed

Welcome Guest ( Log In | Register )

> Related links

Check out the related Code Repository Files or visit the LabVIEW Wiki Development Environment Portal


Tags
(This content has not been tagged yet)
2 Pages V   1 2 >  
Reply to this topic Start new topic
> Automatic Error Handling - What do you do?
TobyD
post Aug 27 2008, 11:16 PM
Post #1


Extremely Active
****

Premium Member
Posts: 451
Joined: 19-June 07
From: Everett, WA
Member No.: 8758
Using LabVIEW Since:2007
LV:8.6 ,8.5.1 ,8.2.1
United States Italy Nothing Selected


I'm curious what people think of the Automatic error handling options in LabVIEW. Is this something you leave enabled? Do you disable it? Why?

Attached Image


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
Ad
post Aug 27 2008, 11:16 PM
Post #















Tags
(This content has not been tagged yet)
Go to the top of the page
Quote Post
Val Brown
post Aug 28 2008, 02:15 AM
Post #2


Extremely Active
****

Member
Posts: 378
Joined: 26-March 06
From: Victoria, BC Canada
Member No.: 4568
Using LabVIEW Since:1998
LV:8.6 ,8.5.1 ,8.2.1
Canada United States Nothing Selected


QUOTE (TobyD @ Aug 27 2008, 04:16 PM) *
I'm curious what people think of the Automatic error handling options in LabVIEW. Is this something you leave enabled? Do you disable it? Why?

Attached Image


I disable it and wire through Error in and Error out clusters manually.

--------------------
The power of NeuroCARETM


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
jdunham
post Aug 28 2008, 05:06 AM
Post #3


Very Active
***

Member
Posts: 200
Joined: 6-March 05
From: Mountain View, CA
Member No.: 1764
Using LabVIEW Since:1994
LV:8.5 ,. ,.
United States us_california Nothing Selected


I mostly hate it, but I leave it on. It's annoying when doing initial testing. However, very occasionally it finds an error cluster which I forgot to wire, sometimes in the middle of a crowded diagram, and that makes it worth it.


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
JFM
post Aug 28 2008, 06:30 AM
Post #4


Extremely Active
****

Member
Posts: 369
Joined: 24-August 06
Member No.: 5958
Using LabVIEW Since:1995
LV:8.5 ,8.2.1 ,7.1.1
Sweden Nothing Selected Nothing Selected


QUOTE (Val Brown @ Aug 28 2008, 04:15 AM) *
I disable it and wire through Error in and Error out clusters manually.


I second that. The main reason for this is that I like to manage error dialogs my self.

/J

--------------------
Wired but not weird...


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
neB
post Aug 28 2008, 10:46 AM
Post #5


Certified Kool-Aid Kid
*****

Premium Member
Posts: 1156
Joined: 6-December 02
From: Pittsburgh PA USA
Member No.: 29
Using LabVIEW Since:1998
LV:7.1 ,. ,.
United States Germany Nothing Selected


QUOTE (jdunham @ Aug 28 2008, 01:06 AM) *
I mostly hate it, but I leave it on. It's annoying when doing initial testing. However, very occasionally it finds an error cluster which I forgot to wire, sometimes in the middle of a crowded diagram, and that makes it worth it.


Ditto that.

Ben


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
Aristos Queue
post Aug 28 2008, 01:22 PM
Post #6


LV R&D Envoy
*****

NI
Posts: 1226
Joined: 15-August 06
From: Austin, TX
Member No.: 5877
Using LabVIEW Since:2000
LV:8.5.1 ,. ,.
United States Nothing Selected Nothing Selected My Gallery


I use it heavily during initial design. When code is finished, I turn it off, error cases either wired or consciously ignored.

--------------------
"A VI outside a class is a gun without a safety. Data outside a class is a target."
--- A message from LabVOOP R&D


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
James N
post Aug 28 2008, 01:34 PM
Post #7


Very Active
***

Member
Posts: 57
Joined: 7-August 06
From: Lexington, KY
Member No.: 5791
Using LabVIEW Since:1996
LV:8.5 ,7.1 ,8.20
United States us_kentucky Nothing Selected


QUOTE (JFM @ Aug 28 2008, 01:30 AM) *
I second that. The main reason for this is that I like to manage error dialogs my self.

/J

I will third that.
For example, we have a standard VI that creates a directory. The auto error handler will post an error if the directory already exists... well... OK. That's what I wanted.. a directory there. If it's already there, then good!

As I type this I realize that if I know an error routinely happens, I should avoid it. I should probably check if the directory exists first. So maybe the auto error will point out places that I should correct.. like jdunham does.

Thanks a lot.. now I feel compeled to turn on the automatic error handling...
-James

[edit]
I just check the VI that initializes paths. I do check if the directory already exists. Sometimes I'm good and don't even know it. smile.gif

This post has been edited by James N: Aug 28 2008, 01:40 PM


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
crelf
post Aug 28 2008, 02:46 PM
Post #8


I'm a LAVA, not a fighter.
******

V I Engineering, Inc.
Posts: 3748
Joined: 13-October 03
From: Michigan, USA
Member No.: 181
Using LabVIEW Since:1993
LV:8.5 ,. ,.
Australia United States Nothing Selected My Blog


QUOTE (Aristos Queue @ Aug 28 2008, 09:22 AM) *
I use it heavily during initial design. When code is finished, I turn it off, error cases either wired or consciously ignored.

Ditto.

--------------------


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
ASTDan
post Aug 28 2008, 03:11 PM
Post #9


Very Active
***

Member
Posts: 173
Joined: 29-May 07
From: Lansing, MI
Member No.: 8614
Using LabVIEW Since:1997
LV:8.5 ,. ,.
United States us_michigan Nothing Selected


I personally turn it off all the time. I try to build in my error handeling in the begining and I like to see how my code will perform with my own Error Handeling.

This brings up something I am really interstied to learn. How do other people do their error handeling? This I think would make a great NI week topic. I have been thinking about developing a presentation on the topic but I feel I don't have scope on different methods of error handeling and comparing them to my own hair brained methods.

Dan

--------------------
Certified LabVIEW Developer
NI Alliance Member


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
crelf
post Aug 28 2008, 03:22 PM
Post #10


I'm a LAVA, not a fighter.
******

V I Engineering, Inc.
Posts: 3748
Joined: 13-October 03
From: Michigan, USA
Member No.: 181
Using LabVIEW Since:1993
LV:8.5 ,. ,.
Australia United States Nothing Selected My Blog


QUOTE (ASTDan @ Aug 28 2008, 11:11 AM) *
I personally turn it off all the time. I try to build in my error handeling in the begining and I like to see how my code will perform with my own Error Handeling.

That's fine as long as you are absolutely sure that you get complete error cluster coverage. For example, do you wire up the errors on the "Format into String" primative? I sometimes miss those and am delighted when LabVIEW pops up an error if I've buggered something up.

QUOTE (ASTDan @ Aug 28 2008, 11:11 AM) *
This brings up something I am really interstied to learn. How do other people do their error handeling?

We have a bunch of reuse VIs that do anything from present errors to the user, file-defined filtering, writing errors to a FIFO file, ... What do you mean by "do"?

--------------------


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
TobyD
post Aug 28 2008, 04:05 PM
Post #11


Extremely Active
****

Premium Member
Posts: 451
Joined: 19-June 07
From: Everett, WA
Member No.: 8758
Using LabVIEW Since:2007
LV:8.6 ,8.5.1 ,8.2.1
United States Italy Nothing Selected


QUOTE (Aristos Queue @ Aug 28 2008, 06:22 AM) *
I use it heavily during initial design. When code is finished, I turn it off, error cases either wired or consciously ignored.


Thanks for all the replies. I tend to follow this paradigm myself, but this brings up the follow-up question...Is it OK (from a best practices viewpoint) to consciously ignore errors? I do it when I need to execute a section of code regardless of what is on the error wire, but I want the error to propagate through. I always feel a little a little guilty about leaving those error I/Os unwired though unsure.gif

QUOTE (ASTDan @ Aug 28 2008, 08:11 AM) *
This brings up something I am really interstied to learn. How do other people do their error handeling? This I think would make a great NI week topic.


I would definitely be interested in a presentation on error handling. It seems there are many ways to get it done, but not really any prominent best practices on the subject.


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
Tim_S
post Aug 28 2008, 04:19 PM
Post #12


Very Active
***

Member
Posts: 99
Joined: 23-February 06
From: Detroit, MI USA
Member No.: 4230
Using LabVIEW Since:1994
LV:8.0.1 ,8.5.1 ,7.1
United States Nothing Selected Nothing Selected


QUOTE (TobyD @ Aug 27 2008, 07:16 PM) *
I'm curious what people think of the Automatic error handling options in LabVIEW. Is this something you leave enabled? Do you disable it? Why?

Automatic error handling has been one of the options I turn off once LabVIEW is installed. The why is it would report errors and wait for a user prompt when the systems I work with do not have a user standing in front of them (it's mostly production equipment).

QUOTE
This brings up something I am really interstied to learn. How do other people do their error handeling?

We have a centralized alarms screen that logs to a database.


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
Yair
post Aug 28 2008, 05:04 PM
Post #13


Extwemely Active
*****

Premium Member
Posts: 1632
Joined: 23-January 05
From: Here
Member No.: 1431
Using LabVIEW Since:2003
LV:8.6 ,7.0 ,.
Israel Nothing Selected Nothing Selected


I'm with the leave-it-on-but-handle-errors-camp. This is good for catching places where you missed wiring an error cluster, although if you want, the VI analyzer also has a test for this.

In any case, when you compile an executable, errors won't pop up under any conditions, so leaving it on only applies in the IDE (where it can also be globally disabled).

That said, there are cases where leaving it enabled can give you trouble. I was once asked to debug a VI which had a primitive (open app ref, I think), which returned both a reference (although an unusable one) and an error. The error out wasn't wired and I didn't think to check it because the VI was returning a reference and I had AEH on. What I didn't realize was that the person who wrote the VI didn't have AEH enabled and so the VI didn't have it enabled. Without relying on it, I might have wired the error out terminal sooner and found the source of the problem.

If you want, you can read this discussion for more.

P.S. Regarding your question, yes, there are cases where it's OK not to handle errors (e.g. certain property nodes, disconnected segments), but you have to be very careful about this.

--------------------
More than meets the eye...


Tags
(This content has not been tagged yet)
Go to the top of the page
+Quote Post
ASTDan
post Aug 28 2008, 05:14 PM
Post #14


Very Active
**