Type of descriptor & cast a refnum

Hello

This question is a re-opening of this old thread, which ends with a non-response... (given that the proposed solution is supposed to disappear one day)

http://forums.NI.com/T5/LabVIEW/LabVIEW-8-2-control-RefNum-type-descriptor-missing/m-p/592060/highli...

So how can we actually down a generic refnum (command in the following example of VI) at its initial type?

What I don't understand is that typeDesc property missing node, but type descriptor is still (and always will be of course, see http://zone.ni.com/reference/en-XX/help/371361H-01/lvconcepts/type_descriptors/ )

So what?

OpenG libraries use the descriptor type for many operations, but for refnum, apparently to stop down at the generic class of 'Server VI'.

(in case you're wondering, I'm essentially looking for the same things, made the library of OpenG_Variant_Configuration_File, but rather than use the dataset, I want to use the cluster of references to data)

I guess (and hope) it is very simple replacement of the old node of obsolete property or solution to this problem, but I can't.

Any help?

OK, been looking for this for hours, but of course, that I found the obvious answer right after asking.

Just need to "unzip" the type descriptor internal using the node property value... OO...

Display answer to my problem just in case something one day asking the same thing.

Tags: NI Software

Similar Questions

  • How to type work of casting for string to U16

    Hello

    Sorry for typing on the same subject, but I still don't understant what do happen when I type the 2-byte in U16 distribution chain. Could you please explain me this?

    Kind regards

    __behemot_

    Hello

    All ASCII characters are represented by 8 bits in memory. If you imagine these 8 bits, you can concatenate the. Who will be the 16-bit long integer (in this case, when you have a chain of 2 elements) and of course not signed, because there is no defined sign in ASCII values.

    So the two integers and character are represented in the same way in the memory, but LabVIEW knows what type is stored in variable. If you working with ASCII characters you'd have numbers, you must convert it in full then you can multiply it and etc. For example, if you want to change 'a' to 'A', you can convert it to integer U8 you must subtract 20 from her and typecast to character (string 1 element).

    I hope that this will help you understand the type cast. If you have any other questions, please write again.

    Kind regards

    Peter

  • Casting of object type to aid to more specific

    Hello

    I'm bit stuck in the legacies of the class in my current project. I implement a zero-coupling messaging architecture that uses variant tables to store objects to be cast to sample.

    The good news: it works in general, little we take a peek at some photos

    I tried the script of coulee before using an example that works as expected.

    Shows probe resulting:

    The Message of abstract [14] is cast to the more specific Message for the controller test [15], [9]

    Now, this implementation with the variants table, change things unfrotunately:

    The only thing that apparently changes is, as the class to be cast to a return value of a Subvi (actually reading the table variant) [12].

    As shown in the probe that the casting does not work this time... There is also no error on the terminal error.

    I have to admit, I'm quite confused... especially because in another class this exact methodiolgy works...

    Any thoughts?

    See you soon

    Oli

    Cast throws more specific to the type of object shown on the thread in the IDE, regardless of the type of the actual object passing along this thread (i.e. type of YARN and not DATA type).

    I bet that your wire to the Center terminal of the 'to more specific' is a son of the same type as the object you are trying to change but actually a more specific object.  The 'Cast to more specific"is a compiling decision, not a decision of execution. As such it takes the type of thread, not the object type for the casting.

    Look at the names on the left of your probes, they are all the same in the example below (all wires are nominally of the same type).  It's the onfo LV casting (assuming the names corresponding to the nominal type of the thread) not use content REAL of the wire.

    Shane.

    PS to make things clearer, give each hierarchy in your legacy a different aspect of wire.

  • the type cast or something of the sort

    This may sound stupid, but I have a 25 characters something like:

    $1hjfu7y4 y * 3fji2389561 ##k

    and I don't know what type it is. It is not a string but, and this is the problem. Is there some kind of equivalent with respect to the type of c cast ++? A kind of way to make this dynamic in a string?

    typeof():

    trace (typeof(1hjfu7y4$y*3fji2389561##k));

  • Analyze the VISA reference name

    I have a multi channel test setup that uses a serial port for each channel. So, I named the VISA aliases for channels 1 - DUT DUT-8. I have a coaxial switch that routes a signal from the current to a freq counter INSTRUMENT so that I can measure the frequency. The switch has eight positions who use an enum POS0, POS1... POS8. I need to translate the serial port selected to the correct pole on the switch so I made the attached VI. The problem is that it works very well when its open but is not when it is closed. What can I do possible box this function with a closed vi?

    Try using 'Cast from Type' to convert the VISA refnum into a string, rather than the Text.Text property.

  • Get specific references for all controls

    Using slightly modified code from here, I'm generating a table of references of control on my main façade which is then transmitted to a number of subVIs. Although this feature does not work, it would be preferable to obtain specific references to controls (for example, Boolean RefNum instead of RefNum of control).

    Get these specific references seem possible using constants more specific class and the class specifier. However, the storage of data becomes a problem because I can use is more tables (because they are a different type of data). I don't know if there is another way to transmit these data. I experienced casting the RefNums in the variants, but to get the data of the variant, I need to know what type of RefNum I'm waiting order, of defeats the purpose of making it in the first place.

    A secondary problem is the names of references. The RefNums of control do not have names associated with them, and I do not know how to assign names to them. I tried again using variants and using the function name of the OpenG value data, but this block LabVIEW without indicating why.

    I have attached a version of my code that tries to assign names by using the name of the OpenG value data and build an array of variant. To run it, simple addition the VI as a Subvi has VI that has some Boolean controls on the front panel. My apologies for the crude State of the code - I'm still trying to find how to run things are a bit messy.

    I don't know if you're going to get much better.  There is really no way I know to have a completely flexible way to the building called cluster of references based on any set of given façade, Subscribe to this.

    I tend to do things the manual way (as there are also a bunch of references to elements of façade, that I wouldn't need).  I would like to do all the work for the grouping in a Subvi.

    I am attaching a zip file that contains the key to VI (unless I missed something) on the first project where I really tried to resume on the reference building.  The files are LV9.

    My main VI, I have the Sub - VI soon called to build the interface user of VI references during an initialization phase.  I pass the reference to the main VI in this sub - VI that generates all the references.  I worked on it as a master cluster that contains items that are arrays of references to related controls.  It uses an other sub - VI, called get references and names of labels that I created to help find witnesses.  I still need to use more specific class to get the property references, but I put only once at the beginning.  I then move this thread to cluster out and anywhere in my VI which should have access to references of the façade elements.

    I use arrays of strings to supply the names, I need to build and group references.  This allows me to ignore the controls, I don't care.  The drawbacks to my system, is that if I change the name of a command, I need to update the name in the Subvi.  And if I want to add all controls, not only do I need to add the label to search functions names, I also need to update my cluster typedef (and you absolutely want it is a typedef) to add a place to store the new reference.

    I hope that gives you some ideas.  It worked for me and I will probably use the scheme on another project (or even rewrite other projects using this diagram.)  If there are ideas of improvements, I'd be happy to hear.

  • connectionID in dll lvrefnum

    I'm looking for information about the data type of LVRefNum and how to translate them for the use of the DLL.  I have a network configuration using UDP.  The Protocol that we put in place, we want to allow other users to interface with, therefore the DLL for C++ and VB users.  I created four base screws (functions): open, read, write, close.  My question is that the connectionID labview makes open UDP.  I want to pass this ID to the C guys so that they can manipulate the election for the other functions as needed.  When I create the DLL, it tells me that the login ID is a type of LVRefNum.  From what I've read on other threads on file, visa refnums activeX, etc, it's a real headache.  Some people say type perform a cast to a 32, and which should work fine. others say that these refnums are very specific and type-casting does not work.  So, what's the problem?  I like a very clear answer what to do for my situation.  My goal is have this connection ID as an exit from the function of opening and as an input to read, write and close.

    The login ID for TCP and UDP primitives is an identifier of uInt32. You should be sure cast on a uInt32 pass in and out of the dll. Just make sure that callers know how limited that id is will be meaningless in another instance of LabVIEW and it persists after the connection is closed or LV is restarted. If you manage the error invalid argument (code 1) in your code to G, then you should be sure the callers abuse it.

    Nathan

  • Not enough memory to perform the operation

    Hello

    I tried to run the code below, but still I get the error "not enough memory to perform."

    I don't know why is so? Its simple operation that I am doing...

    Thank you very much...

    This is what you need:

    Note that may throw you / add 'steps' caused by the type of double cast in full.

    Another note: in light of your departure and the timeout value and the Delta_f, you will get 10495 steps. This seems quite high. For?

    Norbert

  • In the Palette of what are endpoints network Stream?

    I adopt/adapt the project for example LabVIEW 2012 in real time to my needs and must create some additional network data stream parameters.  I can't find these on the pallets of façade, or the quick search Drop.  I can, of course, copy one of the code example, or drop down a function of stream network on the block diagram and create a control from the proper flow terminal, but shouldn't this be located somewhere, say in the Refnum palette?  It is also "conspicuously absent" from the help topic "Refnum controls Types", which mentions the other Refnums not on the Refnum palette, but not network streams.

    Suggestion to OR - at the risk of making the Refnum huge Palette (lightened in seen, say, a palette under "Advanced"), put all classes of Refnum NOR in the Refnum Palette, please.

    BS

    Duh - they aren't Refnums, they witness e/s, so they belong on (but not on) the e/s Palette.  The point of origin, that all the that refnums belong somewhere on the Refnum Palette can now be extended to say that all the orders/lights/o Panel belong in the e/s Palette.

    BS

  • How to determine the Thread of execution for PostUIMessage,

    Greetings:

    I'm trying to develop an application TestStand with two Interfaces (in addition to the sequence editor) user, and I need to be able to view messages from interface user back and forth between two user interfaces.

    So far I managed to create a user interface, and I can post messages for the user interface of a TestStand sequence to my user interface. large.  I spent the reference Application Manager in the constructor of the UI object.

    Now, I want a button on my first UI to cause a user interface message to send to my second UI... The PostUIMessage options I have are Engine.PostUIMessage or Thread.PostUIMessage... in both cases that I need the thread, I don't think I have unless I pass it explicitly in the constructor.  Ideally, I would like to pass only a single object in the constructor (to keep things simple).

    I tried to create versions of my first UI that pass the engine reference, or reference to the SequenceContext, but I seem to be impossible to extract the info that I need these.  For example, the SeqContext, in theory I can get the engine and the Thread, but when I try to get the reference of the AppMgr of engine

    TsEngine = seqContext.Engine;
    AppMgr = TsEngine.GetInternalOption (InternalOptions.InternalOption_ApplicationManager) (ApplicationMgrClass);

    I get the following exception:

    The instance of the .NET class could not be found.

    Impossible to object cast COM type 'System.__ComObject' to the class type 'NationalInstruments.TestStand.Interop.UI.ApplicationMgrClass '. COM components that enter the CLR and do not support IProvideClassInfo or who have not any registered assembly are wound in the __ComObject type. Instances of this type cannot be cast to any other class; However they can be cast to interfaces as long as the underlying COM component supports calls QueryInterface for the IID of the interface.
    Source: SidecarLib to

    What I really need to move the app Manager frame of reference and sequence and the thread as separate arguments my constructor, or I missed something that causes the exception above?

    Thank you very much

    Tom MacLean

    It seems I've found the problem.

    The code sample that I created on my user interface is from the article "launch of a floating .NET form in TestStand.  In this example, the reference of the Application Manager is in a member of the class defined as:

    Class AppMgr ApplicationMgr;

    If you try to get the referral of Application of the motor as this handler:

    AppMgr = seqContext.Engine.GetInternalOption (InternalOptions.InternalOption_ApplicationManager) (ApplicationMgrClass);

    It is then the exception mentioned above is generated.   If, however, the reference to Application Manager is defined as:

    ApplicationMgr AppMgr.

    and it is extracted in the context of the sequence as follows:

    AppMgr = seqContext.Engine.GetInternalOption (InternalOptions.InternalOption_ApplicationManager) (ApplicationMgr);

    everything works as I had planned (without exception).

    I hope that it can save someone else some grief.

    See you soon,.

    Tom MacLean

  • Error of vi-1074395247 IMAQ learn model 2.

    Hello

    Development environment:

    • LabVIEW 2012 32-bit (12.0f3)
    • Vision 2012

    Description:

    Can someone please shed some light on what types of descriptors of the KING are allowed for IMAQ learn ringtone 2?. Only certain KING types allowed for this VI, or you can use any type? I want to create a template with a mask image - KING type descriptors defined in polygon - what is possible or valid?

    I get the 1074395247 error: "invalid template descriptor '.

    However, just by simply changing the return on investment of the Rectangle type (and the coordinates to respond), I don't get this error (although it does not properly hide pixels I don't need)

    Thank you!

    Hi Chris,

    I think you should be able to create a return on investment with a polygon.  Please see this example: https://decibel.ni.com/content/docs/DOC-25241

    Thank you!

  • VisionDevMod: Looking for a valid image

    The question is simple: how to check if a wire image bears an image valid? Valid, which means that the value on the points of wire to a piece of memory allocated with IMAQ create correctly.

    In the past, I am using just a constant comparison simple image. This is to go to unravel each time that an once-valid image (with a name) has been eliminated by IMAQ Dispose.

    After I realized this, I turned to use not A Number/Path/Refnum.This works perfectly so far, as suggested to behave as such in this discussion this afternoon:

    LAVA.org: check-image-entry-is-valid.

    The following code snippet illustrates this behavior:

    In the tasks of programming later I met the problem with "empty array managers" in 2D-arrays of images - if several sizes 1-d arrays are integrated into a 2D array, empty fill the elements are created in the "shorter" lines Now - if I want to check how many valid images is stored in a particular line, I thought, well, "Not a Refnum?" works for that - we will not use "a Constant Refnum" with "research 1 D Array.

    But no, the images and not "a Constant Refnum" are not compatible.

    "" I tried casting the "Refnum don't no one" in an image: Broken wire.

    I tried TypeCasting 'No Refnum one' in a string (leaving the empty connector) - even when you are looking for a constant vacuum image (of course).

    Now, I use this feature bit which, however, seems a bit exaggerated:

    Is there a way to 'official' OR approve to do what I want. Or is it a more obvious, that I missed?

    Thanks for any clarification.

    Falk alias comrade

    Hello Falk,

    Thank you for your request. The way you solved the problem seems to be well programmed. Are you having disadvantages with the "exaggerated" function you are using right now? If it works fine, I would say that you have already found a good solution.

    Best

    Martin

  • dynamically load the Options in a drop-down list in C++

    Hey guys,.

    I'm trying to dynamically load items Option in a drop-down list by using C++.  I have a function in my class of WorkManager file that does the trick:

    QStringList WorkManager::getListOfItems() {
        int i = 0;
        QStringList taskNames;  // used for debugging mainly, so i can print the list out to debug
        QList  myObjects = m_model->toListOfObjects();
        DropDown * dpList = bb::cascades::Application::instance()->scene()->findChild("scriptListDropDown");
        if (dpList != 0 ) {
            dpList->setSelectedOption(0);
            dpList->removeAll();
            for (i = 0; i < myObjects.size(); i++) {
                Task * myTask = (Task *) myObjects[i];
                taskNames.append(myTask->taskName());
                dpList->add(Option::create().text(myTask->taskName()).value(myTask->command()));
    //          delete myTask;  // do I need to delete the task object?
            }
    //      qDebug() << "WorkManager::getLIstOfItems(), ---> list of tasks is : " << taskNames;
            return taskNames;
        } else  {
            qDebug() << "WorkManager::getListOfItems(), ---> dpList was 0";
            return taskNames;  // empty list
        }
    }
    

    I also found this thread:http://supportforums.blackberry.com/t5/Native-Development/Adding-options-to-a-DropDown-from-c/m-p/21... that helped me get the filled drop-down list when the application starts.

    However, I need to re - fill list from time to time, when the list (a GroupDataModel) changes.  calling the function above a second time anywhere in my application appears to hang the application immediately.

    I think / thought it might have something to do with the slot for the onSelectedValueChanged, but I can't understand it.

    It seems down right when I do dpList-> removeAll().

    I also can't seem to find the right place to call this function to an object of type in my class.  I think it's because the drop-down list is not ready yet as the dpList * is always 0 unless what I call after the line:

    app->setScene(root);
    

    in the applicationui.cpp file.  Calling it works on start-up, but trying to update the list later (by removeAll() and recreate) causes the app crashing.

    is there a better way to do it?  .. and make it safer?  I can't understand how to do this.

    Thank you!

    J

    First, drop the:

    dpList->setSelectedOption(0);
    

    Not only if it is not necessary, but it will explode your application if the function is called when there is already no options in the menu dropdown.

    Also, do NOT delete the task, because it is still owned by the datamodel. I also see that you use type casting C, which just blindly accepts your cast, even if it's a mistake. Instead, if you know for sure what kind it will be this way instead:

    Task* myTask = static_cast(myObjects[i]);
    

    If you are not sure if the type you are casting the is the type you need, use the dynamic_cast instead:

    Task* myTask = dynamic_cast(myObjects[i]);
    

    The advantage of this more static_cast , is that if you try to perform a type cast is not compatible, then myTask will be set to NULL.

    Alternatively, Qt offers a replacement for dynamic_cast which works on platforms where is not regular C++ casts.

    Task* myTask = qobject_cast(myObjects[i]);
    

    It is functionally equivalent to dynamic_cast, but as I said, it works on all platforms that Qt exists, whereas dynamic_cast cannot.

    Once you did get back to us.

    oddboy wrote:

    Hey guys,.

    I'm trying to dynamically load items Option in a drop-down list by using C++.  I have a function in my class of WorkManager file that does the trick:

    QStringList WorkManager::getListOfItems() {
        int i = 0;
        QStringList taskNames;  // used for debugging mainly, so i can print the list out to debug
        QList  myObjects = m_model->toListOfObjects();
        DropDown * dpList = bb::cascades::Application::instance()->scene()->findChild("scriptListDropDown");
        if (dpList != 0 ) {
            dpList->setSelectedOption(0);
            dpList->removeAll();
            for (i = 0; i < myObjects.size(); i++) {
                Task * myTask = (Task *) myObjects[i];
                taskNames.append(myTask->taskName());
                dpList->add(Option::create().text(myTask->taskName()).value(myTask->command()));
    //          delete myTask;  // do I need to delete the task object?
            }
    //      qDebug() << "WorkManager::getLIstOfItems(), ---> list of tasks is : " << taskNames;
            return taskNames;
        } else  {
            qDebug() << "WorkManager::getListOfItems(), ---> dpList was 0";
            return taskNames;  // empty list
        }
    }
    

    I also found this thread:http://supportforums.blackberry.com/t5/Native-Development/Adding-options-to-a-DropDown-from-c/m-p/21... that helped me get the filled drop-down list when the application starts.

    However, I need to re - fill list from time to time, when the list (a GroupDataModel) changes.  calling the function above a second time anywhere in my application appears to hang the application immediately.

    I think / thought it might have something to do with the slot for the onSelectedValueChanged, but I can't understand it.

    It seems down right when I do dpList-> removeAll().

    I also can't seem to find the right place to call this function to an object of type in my class.  I think it's because the drop-down list is not ready yet as the dpList * is always 0 unless what I call after the line:

    app->setScene(root);
    

    in the applicationui.cpp file.  Calling it works on start-up, but trying to update the list later (by removeAll() and recreate) causes the app crashing.

    is there a better way to do it?  .. and make it safer?  I can't understand how to do this.

    Thank you!

    J

  • 12.2.1 migration - new generics introduce compilation errors

    I am currently moving projects consistent with 12.2.1 (since 12.1.2.x) and the code compiles more.

    I see that some types of coherence have been changed to generics and this introduces errors or type checking type mismatches.

    The Live event interceptor next used to work:

    Public MustInherit class MyInterceptor implements {EventInterceptor < EntryEvent >

    {} public void onEvent (EntryEvent evt)

    {for (be BinaryEntry: {evt.getEntrySet ())}

    . . .

    }

    }

    }

    Now, he seems to have will be replaced by:

    / public abstract class MyInterceptor implements EventInterceptor < EntryEvent <? > > {}

    {} public void onEvent (EntryEvent evt)

    {for (be BinaryEntry: ((Set < BinaryEntry <?,? >>)) {evt.getEntrySet ())}

    . . .

    }

    }

    }

    Any more elegant way to adjust this code?

    This is documented somewhere in the coherence 12.2.1 release notes?

    Unfortunately this is a problem with the Java compiler, more precisely how the compiler infers and 'excessively' clears type information in a type, including those of inherited types (classes / interfaces) in the absence of soft types.  That is to say: How do you treat the erasure.

    Let us look at the part of the EntryEvent interface as defined by the coherence that is the origin of errors you see.

    EntryEvent /public interface extends Event {}

    Public game<>> getEntrySet();

    }

    When the parameters of type are left out a declaration of EntryEvent, which is natural when you're upgrading the source code to consistency 12.2.1 these settings did not exist before the 12.2.1, consistency the Java compiler guess essentially that:

    1. Your type of EntryEvent is using type erasure, and
    2. All types defined using parameters of type (everywhere) should be deleted.

    Therefore, a statement like 'e EntryEvent'; becomes effectively;

    EntryEvent/public interface extends Event {}

    public Set getEntrySet();

    }

    as you can imagine, is not what is expected.

    According to the team of Java and Java Language Specification, this is how it is supposed to work.  However as we have shown, not only in the above example, but in the examples of different basis of consistency / breeding, current "interpretation" of the specification of the Java language seems a bit harsh.  At worst we think that only the types which have been left out are deleted, certainly not all the types and certainly no inherited or supertypes.   for example: at worst the infers of EventEntry type should look like this:

    EntryEvent/public interface extends Event {}

    public Set getEntrySet();

    }

    Unfortunately, it is a little worse than that, especially when you consider that the great event interface defines the following method (where T extends Enum)

    public T getType();

    Unfortunately, when all soft types are deleted, what do you think of the type t becomes effectively?   If you guessed object, you're right.   But you would also correct (according to me) If you have accessed only one Enum!   So if your source using this method, you have now received warnings of Cast of the class or exceptions when you try to use the return as an Enum value

    The solution, as you have discovered, is to avoid the type erasure, or tell the compiler to not erase the types.  By changing the declaration of EntryEvent to EntryEvent or EntryEvent the compiler will prevent erasure of information essentially making and deduct all the types as object or type Super correct, for example: Enum instead of the object.

    We talked at length with the team of Java on this subject, including raise a fault against the OpenJDK (where such a fix should be applied).  Unfortunately the fix can break a wider range of the code in the Java community, and so we are unfortunate to have to walk around the anomaly of Java or adding (to avoid erasing type) or add casts.

    Technically, it is not a question of coherence, but in this case the corner, we hit with the consistent input event.

    The bottom line seems to be: If you want to use generic drugs, you need to do it everywhere, especially to be safe and avoid possible compiler problems, who are still kicking on (since Java 5!).

    Sorry I don't have a better answer.

    -Brian

    Architect | The Oracle coherence

    PS: I'll take a look at the release notes.   He should be here... because I wrote the note of specific version on this issue.

  • Just learned something new today - can include a column complete zero in a UNION statement

    I just thought it was pretty cool.

    SELECT null, job_id, NULL as manager_id, AVG (salary) as AVGSAL

    Employees

    GROUP BY department_id, job_id

    UNION ALL

    SELECT NULL, null, null, avg (salary) as AVGSAL

    OF hr.employees

    GROUP BY job_id, manager_id;

    I watched this and me "... sounds weird, how are the corresponding data types up."

    then I tried to run some scripts of myself and it works great. I guess that since the "datatype" NULL is not who collide with other data types, it makes sense.

    Huh? Why wouldn't you be able to include a null full column in a set of query results?

    Why do you think that it does not work?

    SELECT null, job_id, NULL as manager_id, AVG (salary) as AVGSAL

    Employees

    GROUP BY department_id, job_id

    UNION ALL

    SELECT NULL, null, null, avg (salary) as AVGSAL

    OF hr.employees

    GROUP BY job_id, manager_id;

    I watched this and me "... sounds weird, how are the corresponding data types up."

    then I tried to run some scripts of myself and it works great. I guess that since the "datatype" NULL is not who collide with other data types, it makes sense.

    No - there is NO SUCH THING as a NULL data type. A null is NOT a type of data: it represents an UNKNOWN value and does NOT have a data type.

    Because NULL is not a dataype is NOT in conflict with ANY data type of a column to a different query.

    See the sections of Oracle doc on NULL values

    http://docs.Oracle.com/CD/B28359_01/server.111/b28286/sql_elements005.htm

    You can convert a NULL value to a data type specific well and then because you have a conflict of data type, you will get an exception:

    SELECT cast (null as varchar2 (10)), job_id, cast (NULL as number (10)) as manager_id,.

    AVG (salary) as AVGSAL FROM employees

    GROUP BY department_id, job_id

    UNION ALL

    SELECT cast (NULL as number (10)), null, cast (null as varchar2 (10)).

    AVG (salary) as hr.employees AVGSAL

    GROUP BY job_id, manager_id;

    ORA-01790: expression must have same type of data, matching expression

    This exception is due to the incompatibility of data type of explicit CASTs.

    See the CAST operator in the Oracle documentation

    http://docs.Oracle.com/CD/B28359_01/server.111/b28286/functions016.htm

    CASTConverts a type of built-in data or value typed collection to another type of built-in data or value-typed collection.

Maybe you are looking for

  • He had to draw iPhone that is already locked

    MY father lost his phone 3 days ago I think I need to trace it the phone is locked

  • How to uninstall McAfee Protection against theft?

    I recently bought my laptop and would like to competely uninstall McAfee anti-theft before even registering for this program. I gave sensitive on my laptop and that you do not need this software.I read that it is difficult to completely uninstall thi

  • Windows 7 fail - invalid product key

    Dear Microsoft - I'm about 10 hours in the direction of your store from competitors... I have a custom desktop system that took place from Win 7 peacefully for many years.  After a failure of the upgrade of Windows 10, I wiped the HD and reinstalled

  • CTS500-CUBE-Cisco TP server, video connection fails

    Hello We strive to interoperability with TelePresence server configuration (8710) at our facility of TP. TP server is located in our "public network" that external callers are connected to Codian MCU via Highway VCS or VCS. Internal TP network is con

  • PW not saved for the MSN account?

    Since I updated last MS It seems that the MSN PW account is not saved whenever I reboot, I need to re enter my password to log in to MSN account How can I restore it? Thanks for all your comments