See here for the proper LabVIEW bug reporting procedure.
Tags |
(This content has not been tagged yet)
|
![]() |
Aug 13 2007, 06:16 PM
Post
#1
|
|||
![]() Extremely Active Premium Member ![]() Posts: 323 Joined: 8-January 07 From: Geneva Member No.: 7452 Using LabVIEW Since:1999 LV:8.5.1 ,7.1.1 ,5.1
My Gallery
|
Hi,
Take a few seconds to do this : - create a cluster with a few control in it - save it as a type def (or strict type def) - place it in a VI, and create a property node on one the control inside the type def - save the VI - open the type def and modify the order of element of the cluster >> The property node is no longer linked the same object but to the object that now has the same index as before, idem for an event in an Event Structure. This behaviour is surprising and not consistant because if the cluster is not a type def (or strict type def) the property node and the event remains linked to the same object, no matter its new order. Noticed in LabVIEW 8.20 Anyone thinks this should be repported to NI as a bug ? -------------------- ____________________________________________________________________________________
It's better to stay out of the rat race because if you win, you're still a rat _____________________________________________________________________________________
|
||
|
|
|||
| Ad |
Aug 13 2007, 06:16 PM
Post
#
|
||
|
|
|
||
|
|
|||
Aug 13 2007, 08:38 PM
Post
#2
|
|||
![]() 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 ,. ,.
My Gallery
|
This is not a bug for typedefs. Typedefs are dumb. They have no memory. Other tools that index into typedefs store indicies or store names (which ever seemed most logical for that particular tool), but neither is satisfactory when the typedef gets edited. The typedef does not remember "This was 1, this was 2, and this didn't exist at all before" to allow other tools to correct themselves. The behavior you get is the behavior you get.
If you want a datatype that does know where its elements go from version to version, that's LabVIEW classes. That's, obviously, no help to you who is probably trying to do some amount of UI work. But when you encounter similar problems with the default value of your block diagram constants, know that classes can help you in that case. -------------------- "A VI outside a class is a gun without a safety. Data outside a class is a target."
--- A message from LabVOOP R&D
|
||
|
|
|||
Aug 14 2007, 08:47 AM
Post
#3
|
|||
![]() Extremely Active Premium Member ![]() Posts: 323 Joined: 8-January 07 From: Geneva Member No.: 7452 Using LabVIEW Since:1999 LV:8.5.1 ,7.1.1 ,5.1
My Gallery
|
[...] Typedefs are dumb. They have no memory. Other tools that index into typedefs store indicies or store names (which ever seemed most logical for that particular tool), but neither is satisfactory when the typedef gets edited. The typedef does not remember "This was 1, this was 2, and this didn't exist at all before" to allow other tools to correct themselves. The behavior you get is the behavior you get. [...] Hi AQ, I do understand what you mean and don't expect the type def to be a magic tool, but I just wanted to point out that the behaviour is different wether the cluster is a type def or not. You say "The behavior you get is the behavior you get" well... Regardless of what classes can do, to me, the behaviour I get is a non-consistant behaviour ; this is what bugs me. Now, this said, I guess you're right and I should free some time to learn to use LabVIEW classes ; that's on my roadmap. -------------------- ____________________________________________________________________________________
It's better to stay out of the rat race because if you win, you're still a rat _____________________________________________________________________________________
|
||
|
|
|||
Aug 14 2007, 01:38 PM
Post
#4
|
|||
|
One hit wonder! Member Posts: 1 Joined: 14-August 07 Member No.: 9153 Using LabVIEW Since:1989 LV:8.2.1 ,5.1 ,1.0
|
This is not a bug for typedefs. Typedefs are dumb. They are not so dumb: When using unbundle by name on a such typedef, I can change controls order without problem. With LabVIEW 6.1, the behaviour is the same for a property node (properties nodes are mixed). But for an event, it give an error: event no more defined. I think it's a little less worst. I prefer to know when I do something wrong.
|
||
|
|
|||
Aug 14 2007, 06:03 PM
Post
#5
|
|||
![]() Very Active Premium Member ![]() Posts: 171 Joined: 13-June 05 From: Hillsborough, NJ Member No.: 2402 Using LabVIEW Since:1992 LV:8.2.1 ,7.1.1 ,.
|
They are not so dumb: When using unbundle by name on a such typedef, I can change controls order without problem. With LabVIEW 6.1, the behaviour is the same for a property node (properties nodes are mixed). But for an event, it give an error: event no more defined. I think it's a little less worst. I prefer to know when I do something wrong. I think it should be a bug. Its also there in 8.2.1 I personally spent a lot of time tracking down logical errors when I tried to use property nodes in Typedefs. Reason: I did not know any better. -------------------- NJG88_TG (Il2 1946)
|
||
|
|
|||
Aug 14 2007, 06:36 PM
Post
#6
|
|||
|
Certified Kool-Aid Kid Premium Member ![]() Posts: 1155 Joined: 6-December 02 From: Pittsburgh PA USA Member No.: 29 Using LabVIEW Since:1998 LV:7.1 ,. ,.
|
I think it should be a bug. ... I think I would like LabVIEW to make all of the explicit ref's invalid to get me to look at what I may have missed. So I guess I am disapointed that it does not do so already. I guess the only thing we can do is submit it as product suggestion and hope. Ben
|
||
|
|
|||
![]() ![]() |
| Time is now: 22nd November 2008 - 03:44 AM |