LabVIEW 8.2 control refnum type descriptor missing

In LabVIEW 7.1, the control refnum had a type descriptor property, I do not see it in LabVIEW 8.2.1?  How do you get the type descriptor from a control refnum in LabVIEW 8.2.1?
Respectfully,
Robert

Matthew Kelton wrote:
The problem I have is that I have a generic control reference, so I don't know the type.  That is why I was using the descriptor to determine the type to properly use variant to data on the Value Property.  As it stands now, 8.5 still supports the Type Descriptor if it exists in VI I upgrade, but how long before it disappears?  I use this in a generic VI that is used in every project I do, saving me hours per project.
The least NI could have done was just name is TypeDescr16 and TypeDescr32 or something.
TypeDescr32 is NOT exposed and on purpose too so there can't be such a property. And yes there is a chance that the old TypeDesc property disappears at some point. However it won't be tomorrow. The 4.x compatibility mode for the Typecast function (necessary for the boolean size change from 4.x to 5.x) is still there but for the Flatten/Unflatten it had to make place for the 7.x compatibility flag. And it might disappear with LabVIEW 9.x since as I have found out today, LabVIEW 8.5 is the first version that refuses to load 4.x VIs directly.
So the TypeDesc property will probably work until around LabVIEW 12.x when it will cease to support loading LabVIEW 7.x VIs. (Note, this prediction is just a very wild guess and should be taken with a big grain of salt).
Rolf Kalbermatter
Rolf Kalbermatter
CIT Engineering Netherlands
a division of Test & Measurement Solutions

Similar Messages

  • Type descriptor & Downcasting a refnum

    Hi,
    This question is a re-opining of this old thread, which ends by an non-answer ... (since the proposed solution is supposed to disapear one day)
    http://forums.ni.com/t5/LabVIEW/LabVIEW-8-2-control-refnum-type-descriptor-missing/m-p/592060/highli...
    So how do we actually downcast a generic refnum ( command in the following VI example ) to it's initial type ?
    What I don't get is that typeDesc property node disapeared , but type descriptor still exists (and will obviously always be , see http://zone.ni.com/reference/en-XX/help/371361H-01/lvconcepts/type_descriptors/ )
    So what ?
    OpenG libraries use the type descriptor for lot of operations but for refnum, it seems to stop downcast to the generic "VI server" class.
    (in case you wonder, I'm basically looking the same things the OpenG_Variant_Configuration_File library does, but instead of using cluster of data, I want to use cluster of references to data)
    I suppose (and hope) there is a very simple replacement of the old deprecated property node, or solution to this problem, but I cannot find it.
    Any help ?
    Solved!
    Go to Solution.
    Attachments:
    DeprecatedTypeDescriptorProperty.zip ‏21 KB

    Ok, been looking for this during hours, but of course I found the obvious answer right after having asked.
    Just need to "unpack" the inner type descriptor by using Value property node... Oo ...
    Posting answer to my own problem just in case some else one day wonders the same.
    Attachments:
    TypeDescriptor by Refnum.zip ‏10 KB

  • List of Type Descriptor Values

    Where can I find a list of the type descriptor values for controls?  I am looking at the output of the Cluster Refnum Type Descriptor property.  Using the debugger I have found that strings are 16, numerics are 22, but I have not been able to figure out arrays yet. 
    I am writing a VI that will write an entire cluster to a text file so it will be important to distinguish between 1D/2D arrays and data types stored in the array. 
    Thanks,
    Dave
    Message Edited by davey31415 on 10-25-2006 03:59 PM

    Thanks for the replies, type descriptors it will be!
    I read that post and Scott said the following:
    A cluster's property node contains an item called "Controls []", which generates an array of refnums which can be used to access the cluster elements with the generic property node "Value" item. This refnum array can be indexed by the For loop for individual access. Be sure to forcefully limit the number of loops, because the size of the refnum array may not exactly match the actual number of items in the cluster (I think it grows in single byte increments, so it is typically a little bigger.)
    Could someone clarify that?  I have not been forcing the for-loop index.  If the Controls[] array is not the same size as the number of controls in the cluster, what is it the size of?  I don't see how the array being incremented in "single byte increments" would cause a problem- if the array WAS the size of the number of controls in the cluster, it would have been incremented in single byte increments as well, right?  (Maybe I'm missing something big here?)
    Having asked that, how could I determine the number of controls in a property?  (My initial thought is to run Array Size on the Controls[] array!)
    The other idea I've come up with is parsing the Type Descriptor property- not something I'm eager to set out to do with LV!
    Thanks,
    Dave

  • Can strictly type refnum control do type coercion?

    Hi all,
    Can strictly type refnum control do type coercion? NI says yes:
    A control refnum terminal that is strictly typed can only accept control references that are strictly typed to a compatible type. For example, if a subVI expects a control refnum of type Slide(Int32), you can wire a control reference of type Slide(Int32), Slide(Int8), or Slide(DBL), but not of type Slide(Cluster of DBLs). Wiring in the Slide(Int8) or Slide(DBL) will result in type coercion (no error) and thus a coercion dot as these representations are being coerced to Int32. Wiring the Slide(Cluster of DBLs) will result in a type conflict (error) and thus a broken wire. This is because the Int8 and DBL are numerics like the Int32 and can thus be coerced to be of Int32 representation. The Cluster of DBLs however, is not a numeric, but a totally different data type. Therefore, a cluster being of different data type than the numeric will result in a type conflict if wired together. Strictly typed references are most beneficial when you know exactly what type of data you will be using.
    http://zone.ni.com/devzone/cda/tut/p/id/3159
    I have seen this help file for long time, and been confused by it for long time. I don't think strictly type refnum control can do type coercion. If I put a U8 Enum refnum control on subvi's front panel, I can't connect it with a U16 Enum refnum control.
    I don't know if I am right. 

    What is an "enum refum control"? Can you attach a small VI containing the various controls?
    steady wrote:
    Besides, I don't know what Slide(Cluster of DBLs) is. I can't generate such data type.
    A slide control with multiple sliders is a cluster datatype. One cluster element per slider.
    Just place a slide, right-click it...add slider. Voila!
    LabVIEW Champion . Do more with less code and in less time .

  • Control data for storage type  is missing Message no. L3006

    Dear Mates
    i am trying to create a transfer order from delivery. the moment i click on save in LT03 its giving me the error message as
    Control data for storage type  is missing
    Message no. L3006
    i have explored every thread regarding the same issue and also implemented some measures like
    -> extending the material to particular warehouse and maintaining stock removal and stock placement strategies in it(i created new one from MM01 itself)
    -> going to spro path SPRO->Logistics Execution->shipping->picking->Lean WM->Define storage type. and assigned storage type.
    but still i am getting the same message in LT03
    can you please help me out on this.

    Please take a look at the following links and see if they will help at all.
    Error on creating a TO - Control data for storage type  is missing
    "control data for storage type is missing"
    Kind Regards,
    Jason

  • "control data for storage type is missing"

    Hi Guys
    I am trying to create a goods receipt for an inbound delivery.
    I created the inbound delivery VL31N - sucessfully
    But when trying to create a putaway LT0F - error
    control data for storage type is missing. msg no. L3006
    Do i maiantain this control data for storage type in the Material master?
    is there anything Im doing wrong?
    Can someone help please.
    Thanks in advance for the help.
    Ahmad Yahya

    Hi,
    Check in SPRO > Logistics Execution > Warehouse Management > Master Data > Define storage type, here for your warehouse and storage type check stock placement and stcok removal control is configured.
    Regards,
    Prabu

  • Creating a type defined control refnum cluster?

    Hello -
    Is it possible to create control refnums for front panel objects and make a type defined cluster out of them?  I don't seem to be having any luck, but I could swear I've seen it done before.
    I am trying to pass a cluster of control references into sub-vis that will be called dynamically (using call by reference).  I want to create a standard cluster for use in all of the sub-vi's without having to go back and edit the cluster in every VI if anything is changed or added.
    If not, is there a better way?
    Thanks,
    Mike
    Solved!
    Go to Solution.

    Once I created that type def (look at my Mini Nugget to see how I did that) the type def was used as shown below to update control from a sub-VI.
    I had an app with hundereds of controls and indicators that needed updated.
    So I bundled refes for all of the control into logical groups.
    Then passed these refs to the sub-VI
    And the sub-VI used those named refs to do the updates.
    I hope that help,
    Ben
    Message Edited by Ben on 03-25-2009 10:41 AM
    Message Edited by Ben on 03-25-2009 10:43 AM
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction
    Attachments:
    FP.PNG ‏88 KB
    Bundle_refs.PNG ‏92 KB
    Pass_to_SubVI.PNG ‏82 KB

  • How do I apply properties to a control refnum from another VI and whose type I know?

    Hi,
    I have programmatically retrieved the Control refnum of a Table running on a separate VI. I search for its name and when match ocurrs I would like to use its control refnum to change som cell values in it by either the Invoke node or Property node. Nevertheless even though I know it is a Table I am not allowed to wire the control refnum to a property node with "Active cell", "BG color" et.c. I am not either allowed to wire it to an Invoke node with the method "Set Cell Value".
    Is there a work around for this?
    Solved!
    Go to Solution.

    Well, i assume that Santhosh solution works too (i hope he tested it before ). So no mistake here. Still, if you like, you can take the "solution" flag back from a post and redistribute it....
    Norbert 
    CEO: What exactly is stopping us from doing this?
    Expert: Geometry
    Marketing Manager: Just ignore it.

  • Difference control refnum and control reference

    Hi guys.
    I am new on labview reference, can you explain difference between control refnum and control reference. 
    Gary Wang

    Are you sure you don't mean "refnum control"? That is a front panel control that can be selected as a reference to any one of several data types such as application, VI (including strictly typed), control or indicator. Whereas the "control reference" is a block diagram object that points to a specific control on your front panel (it can also be "linked" to other objects so it is similar to a "refnum control" in that respect).
    “A child of five could understand this. Send someone to fetch a child of five.”
    ― Groucho Marx

  • Using control refnums in srtict typedef cluster

    I'm having a small problem using control refnums. I've not used them much so this could just be me doing something wrong!
    I'm building an application with a GUI which will need updating with data from within various subVIs and a couple of parallel loops. So, what I wanted to do was "build" a strict typedef cluster of references to the front panel objects I want to update, then I can pass this cluster to any subvi or structure which may need to update a FP object. So far so good...
    The problem:
    On my main GUI I have a strict typedef'd tab control, which I want to be able to reference. When I build my cluster of refnum's I duly create one for this typedef'd tab control. The problem is, if I modify the tab control in anyway, the cluster of refnum's breaks.
    Anyone tell me why this is happening?
    I've attached an example VI I created which shows the problem. Basically, open the typedef to the tab control and change anything, you'll see the cluster of refnums break... you can see a video of it here:  Video
    Any thoughts would be gratefully appreciated!
    Thanks
    Paul
    Attachments:
    refnums.zip ‏15 KB

    Hai,
    Just went through the post
    The strict typd controls automatically gets updated when the parent control changes.  But the refnums that are created out of the strictly typed controls needs manual updation coz there is no linkage between refnum that was created and the strict type control.
    You just create a strict type refnum that carries the properties of a strict type control and in no way a linkage exists between these two.  Hopefully if there is an option to link the refnum and control with "Update from typedef" will solve the problems
    With regards,
    JK
    (Certified LabVIEW Developer)
    Give Kudos for Good Answers, and Mark it a solution if your problem is solved.

  • Condition type is missing in Pricing Procedure determination

    Hi experts,
    We have a problem with Pricing Condition type in CRM.
    We have created a Transction in CRM as a follow up for the Transaction which is replicated from ECC to CRM the pricing procedure has been determined. But the net value is "0".
    when I checked in the conditions tab page "the condition type is missing" I checked Pricing Procedure the condition type is very much there. Then I checked for access sequence for that Condition type "Access sequence is also maintained.
    Then I checked copy controls for the Source and Target Item categories, for copy conditions the indicator is set up as "copy conditions,Redetermine taxes" then I changed it to "Copy all conditions".
    But still it is not happening.
    Can any please help me in this regard? Did I miss any configuration?
    Any help will be rewarded with points.
    Regards,
    Frederick.

    Hi Fredrick,
    This requirement must be assigned in your Pricing Procedure for condition type VKPO.
    The system first checks whether the requirement is fulfilled and than only execute that condition type.
    Requirements are nothing but Java Routines, which check for some condition before executing a condition type.
    For this Go to path
    IMG: CRM-> Basic Functions-> Pricing-> Define settings for Pricing-> Create Pricing Procedure.
    Choose your pricing procedure here. Here for the condition type VKPO requirement 41 must be assigned in column REQ. The requirements are coded in JAVA in SAP CRM.
    If this Pricing Procedure has been downloaded from SAP R/3, u can check in R/3 itself (Tcode: V/08) what the requirement is meant for, but choosing F1 and than the path for customizing.
    Regards,
    Shalini Chauhan
    Edited by: Shalini Chauhan on Apr 29, 2008 2:43 PM

  • Is there a way to save data accessed through Control Refnum?

    Hi,
    I am controlling 4 instruments, each from its own VI. (LabVIEW 7.1)  I have built a seperate VI which calls all the instrument VIs as subVIs and displays all the readings.  I would like to save the data I am displaying in the main VI.  In the subVIs, I use loops to continuously read data, so I use Control Refnums in the main program to access and display the changing readings.  Is there a way for me to save the data from the Control Refnums in my main VI, preferably all in the same file?
    Thanks!
    Jessica

    Mike,
    Thanks for replying so quickly.  I've attached a screenshot of my block diagram. 
    I've worked on it a little more since my post, and now the data is being saved, but it doesn't make sense.  I am saving it as a .lvm file and opening it in Excel.  I'm new to LabVIEW, so I may simply be struggling with the syntax and logic.  From my experience coding, it makes sense to have the data stored inside the while loop.  However, in this program, it seems that the data doesn't start saving until after I've stopped the subVIs. 
    Attachments:
    screenshot of Control.doc ‏72 KB

  • The DataSourceID of 'TopNavigationMenu' must be the ID of a control of type IHierarchicalDataSource.

    I'm getting this error and I haven't a clue as to what I did....
    Server Error in '/' Application.
    The DataSourceID of 'TopNavigationMenu' must be the ID of a control of type IHierarchicalDataSource.  A control with ID 'topSiteMap' could not be found.
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
    Exception Details: System.Web.HttpException: The DataSourceID of 'TopNavigationMenu' must be the ID of a control of type IHierarchicalDataSource.  A control with ID 'topSiteMap' could not be found.
    Source Error:
    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
    Stack Trace:
    [HttpException (0x80004005): The DataSourceID of 'TopNavigationMenu' must be the ID of a control of type IHierarchicalDataSource. A control with ID 'topSiteMap' could not be found.]
    System.Web.UI.WebControls.HierarchicalDataBoundControl.GetDataSource() +1415249
    System.Web.UI.WebControls.HierarchicalDataBoundControl.ConnectToHierarchicalDataSource() +158
    System.Web.UI.WebControls.HierarchicalDataBoundControl.OnLoad(EventArgs e) +16
    System.Web.UI.Control.LoadRecursive() +47
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061
    Version Information: Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42

    i see this today, the lesson learned is that i should reivew the uls log first
    http://archive.msdn.microsoft.com/ULSViewer/Release/ProjectReleases.aspx?ReleaseId=3308 .
    http://blogs.msdn.com/b/opal/archive/2009/12/22/uls-viewer-for-sharepoint-2010-troubleshooting.aspx .
    first, i found the same entry in uls log view, then going upwards, i can find something like follows:
    DelegateControl: Exception thrown while building custom control 'Microsoft.SharePoint.SPControlElement': Microsoft.SharePoint.WebPartPages.WebPartPageUserException: This page has encountered a critical error. Contact your system administrator if this problem
    persists.   
     at Microsoft.SharePoint.ApplicationRuntime.SafeControls.IsSafeControl(Boolean isAppWeb, Type type, String& unsafeErrorMessage)   
     at Microsoft.SharePoint.Utilities.SPUtility.CreateServerControlFromAssembly(String sControlAssembly, String sControlClass)   
     at Microsoft.SharePoint.SPControlElement.BuildCustomControl(TemplateControl tctlPage, String sControlAssembly, String sControlClass, String sControlSrc, XmlNode xnElementDefinition, SPFeatureDefinition featdefElement, String sElementId)   
     at Microsoft.SharePoint.WebControls.DelegateControl.BuildCustomControlResilient(SPControlElement ctlelemDefinition)
    The top of callstack suggest me there is something wrong with safe control setting. By comparing the web.config with backup, it seems two safe control entries was added by a custom solution. While the page opens after removing the safe control entry,
    i really cannot believe this can be the root cause, because i only know that missing safe control entry can cause error, i had never fixed error by removing safe control entry before.
          <SafeControl Assembly="SharePointProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c221e46652bbe5bb" Namespace="SharePointProject.VisualWebPart" TypeName="*" Safe="True" />
          <SafeControl Assembly="SharePointProject, Version=1.0.0.0, Culture=neutral, PublicKeyToken=c221e46652bbe5bb" Namespace="SharePointProject.ListVisualWebPart" TypeName="*" Safe="True" />

  • Can labview globals or controls be modified directly from a dll

    Is it possible to obtain a pointer or handle to LabVIEW global variables - specifically clusters of scalars, not including strings or arrays, which presumably would occupy a fixed memory area.
    If this is not possible, can the value of data held in LabVIEW controls be modified from a dll by passing control references to the dll and if so how can this be done?
    Using LabVIEW 6i, Windows NT SP6, MS-VisualC++ 6.0

    I created a dll with LabVIEW 6.0 which had as its only input parameter a control refnum for a string control. I used this refnum to modify the value of the string control. I built the dll and then from a new VI called the dll using a call library function, passed it a refnum to a string control in the calling VI and ran it. The value of the string control in the main VI was change by the dll by only passing it a refnum.
    To do this you must have LabVIEW 6.0 Pro or App builder. (I did all this with LabVIEW 6.0.2 update installed)
    Attachments:
    caller.vi ‏8 KB
    chngstring.dll ‏17 KB

  • Data Log File Refnum Type Def Bug??

    Hello,
    I just found some quirky behaviour (LV 7.1.1):
    1. In the attached LLB, open "RefnumVI.vi"
    2. Select the Data Log File Refnum control and open it for editing (Edit - Customize Control ... from the menu)
    3. Close "RefnumVI.vi" but leave "Refnum.ctl" open
    4. Select the enum inside the refnum container, and open it
    5. Select File - Save As ... and save the enum as "RefnumEnum2.ctl"
    6. Close the enum
    7. Save "Refnum.ctl", and close it
    8. Reopen "RefnumVI.vi" and display its hierarchy (Browse - Show VI Hierarchy from the menu)
    Notice that "RefnumVI.vi" still has a link to "RefnumEnum.ctl", even though we saved this as "RefnumEnum2.ctl" earlier.
    If you go back to the VI, right click on the refnum, and replace it with itself (i.e. select "Refnum.ctl"), the link disappears.
    This behaviour does not happen if I use a Cluster instead of a Data Log File Refnum.  I imagine the difference is that the calling VI needs to know about the structure of the data log file in ways it doesn't need to know about the structure of a cluster, but this still is very counter-intuitive behaviour.  Is this really expected?  Or is it a bug?  Is there any other way to remove the link?
    Cheers,
    Jaegen
    Attachments:
    RefnumEnumBug.llb ‏22 KB

    Nathan,
    Thanks for your response - I have 8.2 and am in the process of evaluating how/when to upgrade.
    Does this mean that the compiler/linker is behaving differently depending on where you open a type def from?  The reason I'm asking is that I've seen similar behavior when editing a hierarchy of type defs; depending on how I open the low-level type def I'm actually editing, changes will or won't get propagated to other instances properly.
    Regarding this actual problem, the issue I had is that the data log file refnum type def exists on many VIs, and thus the incorrect link now exists on many VIs, and I don't see any way of correcting the problem without manually replacing the type def with itself in every location (given there's no "Replace All" feature in LV 7.1.1 ).  However, the hierarchy I'm dealing with was only created for testing, so I don't actually need to fix it .  I'll just know to avoid causing this problem in the first place in the future.
    Jaegen

Maybe you are looking for

  • Error with butwise xor in update statement

    Hi What is the corresponding of ^(xor) in oracle .The below is the mysql scripte UPDATE fvmaptsqnug SET FTQQZNUGFVMPRSG = FTQQZNUGFVMPRSG ^ 1 WHERE EIJTQQVWPRSKHF = 1 AND EWJUSGFTTKVF = 1; So can anyone help me in converting the above script to oracl

  • Aironet 1310 Transmitter Power??

    I have approx 20 Cisco Aironet 1300 AP's that I use as Bridges to connect Various wide-spread, non-adjoining offices together. I do not have any problems as such, but obviously, some of the connections are stronger/faster than others due to various f

  • Enquiry(SAP SCRIPTS)

    hi experts ! can any one tell me the wat is form name, driver program & t.code for ENQUIRY ? (sap scripts ) or list of form names and their respective driver programs , Tcodes ? Regards, Rajsh Edited by: rajesh  k on Mar 4, 2008 10:59 AM

  • Join Paths

    Let me select multiple paths, and where the endpoints occupy the same position (or within a user-definable distance), choose Object > Join Paths. I work with DWG site plans within Illustrator frequently. When these files are imported, complex paths a

  • Generic hierarchies

    hi,      can any one tell me how to create a hierarchy in R/3. i want to create the generic hierarchies. thanks in advance. regards, meiy