use standard data types in NIDAQmx functions

I use NIDAQmx 8.6 with LabWindows 7.1. Can I use the standard data types rather than NIDAQmx data types in NIDAQmx functions?

For example "unsigned char" instead of "uInt8', 'long' instead of 'TaskHandle '.

I saw in 'NIDAQmx.h' that the types of data NIDAQmx anyway are derived from the standard data types.

IMHO, you can use the standard types, as long as they are equivalent. The advantage of using the types special predefined data in data acquisition, etc., it is that sometimes these definitions may change (i.e. because of porting from 32-bit to 64-bit applications). In this case your code can remain intact, as NEITHER should take care of a definition of appropriate type, adapted.

Tags: NI Software

Similar Questions

  • By using the Date/Time Format String function Vi

    I wanted to display the time in milliseconds to Labview and I got it to work. I want to display AM or PM after the milliseconds so it looks like this

    31/05/11 4:45:39.849 PM

    I use %p as you can see from the picture, but it does not work. AM or PM does not appear.

    What I am doing wrong?

    Thanks in advance.

    Replace your hour % I. Hour is 24 hours which has no designation A.m. or p.M. You must use the time of 12 hours.

  • From a function table: invalid data type error

    Hello

    I'm a ORA-00902: invalid data type error when I try to call the function from a select statement below. Here, I am leaving an array from a function.
    create or replace package pkg10
    as
    
    type tabletype1 is table of table1%rowtype
    index by binary_integer;
    
    function func1 return tabletype1;
    
    end pkg10;
    create or replace package body pkg10
    as
    
    function func1 return tabletype1 
    is
        v_tab1 tabletype1;
        idx integer;
    begin 
    
        idx := 1;
        
        for i in (select * from table1)
        loop
            v_tab1(idx).name1 := i.name1;
            v_tab1(idx).key := i.key;
            idx := idx+1;
            
        end loop;
    
    return v_tab1; 
    
    end func1; 
    
    end pkg10;
    select * from table(pkg10.func1);
    Please point out to me where I'm wrong.

    Thank you

    Sathya Vamsi says:
    Hello

    I'm a ORA-00902: invalid data type error when I try to call the function from a select statement below. Here, I am leaving an array from a function.

    create or replace package pkg10
    as
    
    type tabletype1 is table of table1%rowtype
    index by binary_integer;
    
    function func1 return tabletype1;
    
    end pkg10;
    
    create or replace package body pkg10
    as
    
    function func1 return tabletype1
    is
    v_tab1 tabletype1;
    idx integer;
    begin 
    
    idx := 1;
    
    for i in (select * from table1)
    loop
    v_tab1(idx).name1 := i.name1;
    v_tab1(idx).key := i.key;
    idx := idx+1;
    
    end loop;
    
    return v_tab1; 
    
    end func1; 
    
    end pkg10;
    
    select * from table(pkg10.func1);
    

    Please point out to me where I'm wrong.

    Thank you

    you try to use a data type of PL/SQL as part of an SQL statement. is NOT authorized.

  • Impact on performance when you use the LONG data type

    Hi all


    Only I have a doubt about the use of LONG data type

    I use the data type LONG for some columns in a table and I created indexes on the columns separately, but these column values can be easily fit into the varchar data type.

    (Just to see the performance on this issue)

    Suppose that a common select query with WHERE condition on any of the column which has LONG data type will affect the performance of the query?

    Please explain.

    Thank you

    (1) the LONG (and LONG RAW) data types have been depricated for quite a while. Oracle has been strongly recommends that you move to 8.1.5 CLOB and BLOB data types. Why you use the LONG data type? You're still on Oracle 7?

    (2) have you tried to write a query that has a WHERE condition that refers to a LONG column? In general, you can not because it does not support the type of data LONG. For example

    SQL> ed
    Wrote file afiedt.buf
    
      1  create table a (
      2    col1 varchar2(30),
      3    col2 long
      4* )
    SQL> /
    
    Table created.
    
    SQL> select * from a where col2='abc';
    select * from a where col2='abc'
                          *
    ERROR at line 1:
    ORA-00997: illegal use of LONG datatype
    

    LONG data types are a royal pain to work with. They also have implications on the performance of wicked on the client.

    Justin

  • How to record a data type float [64] table in a file?

    I have a table of type float64 [] data I want to save to a file.  I tried to use the ArrayToFile function, but he dislikes the type of data [] float64 .  I'm with LabWindows/CVI version 7.1.

    Why not use the data type double?

  • Consume a web service from ASP which responds with complex data types...

    Here's my problem - I'm trying to consume a web service from a provider that uses complex data types.

    The starting of the WSDL part looks like this (I have not included all) - named have been changed to protect the innocent:

    " < wsdl:definitions targetNamespace = ' http://domain_name ">
    WSDL: < types >
    " < s:schema elementFormDefault ="qualified"targetNamespace =" http://domain_name ">
    < s:element name = "Authentication" >
    < s:complexType >
    < s:sequence >
    < s:element minOccurs = "0" maxOccurs = "1" name = "User name" type = "s:string" / >
    < s:element minOccurs = "0" maxOccurs = "1" name = "Password" type = "s:string" / >
    < s:element minOccurs = "0" maxOccurs = "1" name = "Token" / >
    < / s:sequence >
    < / s:complexType >
    < / s:element >
    < s:element name = "AuthenticateResponse" >
    < s:complexType >
    < s:sequence >
    < s:element minOccurs = "1" maxOccurs = "1" name = "AuthOK" type = "s:int" / >
    < s:element minOccurs = "0" maxOccurs = "1" name = "Token" / >
    < / s:sequence >
    < / s:complexType >
    < / s:element >

    Since it is a return, with a sequence of complexType, I expect an array or a structure returned, but instead I just get the value of "AuthOK" and no way to get something else.

    Here are the ways I tried to call it:

    < cfscript >

    WS = createObject ("WebService", "https://WSDL_URL");

    WS_ret = WS. Authentication (name of user = "username", password = "password", token = "");

    < / cfscript >

    < cfdump var = "" #WS_ret # "/ >"

    < cfinvoke webservice = "WSDL_URL" method = "Authentication" returnVariable = "WS_ret" >

    < name cfinvokeargument = "userID" value = "7253320" / >
    < cfinvokeargument name = "password" value = "ctpjxs3" / >
    < name cfinvokeargument = "SecurityToken" value = "" / > "

    < / cfinvoke >

    < cfdump var = "" #WS_ret # "/ >"

    Any ideas how I can get the other variables in the sequence? I have other calls after that have a greater amount of variables, and as such I can't use without being about to get more than the

    You can try using the function GetSOAPResponse to review the XML code you receive.

    'GetSOAPResponse '.

    http://livedocs.Adobe.com/ColdFusion/8/htmldocs/help.HTML?content=functions_e-g_59.html#50 54378

    "Troubleshooting SOAP requests and responses.

    http://livedocs.Adobe.com/ColdFusion/8/htmldocs/help.HTML?content=webservices_27.html#1222 070

    As for the question of docs, I suspect mediocre edition is at fault.  I assume that the web service is supposed to have an echoStruct method but this is unclear.

  • Removal of the custom by TestStand 4.0 data types

    Hello! I use the custom in my TestStand sequence data type. This data type is derived from my own control and is a huge cluster of clusters. It is created in a file of sequence (and not in any *.ini). By changes in the sequence, it becomes necessary to delete existing custom data type and create a new one due to changes in the custom control. How can I remove custom data types?

    I n ' found any possibility to do in Teststand menus. It was not so important, if the custom data type was not so huge.

    Thank you in advance for your answer - maybe it's a workout if no direct solution?

    Hello

    Just see the Type of data in the file in the sequence and highlight the custom data type it, then delete it.

    (Please make sure that you do not have variables defined in your file of sequence that still use the data type you want to remove).

    Concerning

    Ray Farmer

  • Variant data type conversion

    Hi all

    I use VI Scripting in LabVIEW 2010. I need to know the data type of the wire connected to a Terminal. Terminal wire reference gives a property called "Datatype". I thought that this will help me. But he is a variant and how do I actually convert the data to find out the data type. Specifically, I want to make use of data type of cluster. How do I know if the wire is of type cluster?

    Thanks for any help.

    You want to use the 'GetTypeInfo.vi' VI "LabVIEW 20xx\vi.lib\Utility\VariantDataType\" folder for this!

    I would recommend installation of this Package of VI because it adds these features to pallets:

    https://decibel.NI.com/content/groups/hidden-gems-in-vilib

    Here's what it looks like:

  • Modification of the data types of the custom shared variables

    My application includes a library containing a number of shared single process variables. I use type defs to create the shared variable "of the custom control." I know that shared variables do not-automatic update since the type defs, so I'm updating shared variables (data type, do a right click, properties) whenever I update the type definitions.  However, if I make a change to a type design that does not change the data type, for example to change the labels controls, these changes will be reflected in the shared variable.  The data types of variable window shared list contains entries for each previous update, which indicates he uses the previous entries.  How can I make the window of properties of shared variables 'forget' my previous defs type wandering without deleting the variable total? Withdrawal and replacement would be troublesome because the done variable references throughout my project.

    Thank you

    Wes

    The variable is not in the Distributed System Manager, or Manager of the Variable, and cancellation of the deployment has not been resolved.  However, I found Labview from closing completely and reboot clears the memory of the previously used custom data types that sees the library.  Thus, the effective workaround I found is:

    1 make a significant change to the data type of the type (per your suggestion) FED. Record.

    2 - redefine the variable screw-notice type FED.

    3. save the project. Close and restart labview.

    4 - the old def type is now disabled.

    5. return the significant change of the def type, implement trivial change and save.

    6 redefine the variable using the type correct now def. Viola!

    Thank you!

  • Ksoap2 complex data types

    I'm moving the xml as a parameter in a Web service, however it doesn't seem to work.

    The Web service is a service of .net, the required parameters is a group of data.  It is built in xml that I put in a string and then add it as a parameter to aid,

    SoapObject rpc = new SoapObject(serviceNamespace, _soapAction);rpc.addProperty("paramname", xml);
    

    I have no problem to send the basic parameter types, the type complex seems to be incorrect.  Someone else has managed to use complex data types when communicating with a web service using Ksoap2?

    Use SoapSerializationEnvelope addMapping with namespace, the name of the class (as in the wsdl document) and class (getClass() or .class) itself.

  • XML data type in CFQUERY

    I have a column in the database by using the data type XML from SQL 2005.

    When I do a select statement using CFQUERY, I just returned the first 32000 characters of the XML file, even if the file in the data column is almonst 60 000 characters.

    How can I do a select statement to get the entire record?

    Thank you
    Peter

    Hi Phil:

    By setting up CLOB in my datasource, it works great!

    Thank you so much to report for me.

    Peter

  • Long data type in 10g

    Hi all

    We are abt to put one of our prod 9.2.0.6 in 10.2.0.4 database in solaris and when I checked in the base of a few paintings of long data type is still it is it necessary to convert of LOB or I can ignore it.

    DATA_TYPE TABLE_NAME OWNER
    --------------- ------------------------------ -------------------- -----------
    OUTLN OL$ LONG
    WLI_SCHEMA WLI_B2B_BUSINESS_PROTOCOL_DEFN LONG
    WLI_SCHEMA WLI_B2B_LOGIC_PLUGIN LONG
    WLI_SCHEMA WLI_TPM_EXTENDED_PROPERTY_SET LONG
    WLI_SCHEMA WLI_TPM_SERVICE LONG
    WLI_SCHEMA WLI_TPM_TRADING_PARTNER LONG


    KK

    If Oracle is recommended for several years do not use the data type LONG on the user objects, there is still little for dictionaries of Oracle tables.
    However, you should not touch.
    With respect to users within LONG data type, it is yours and tests the results depending on whether you can switch the type of LOB data or not and probably submit to be approved and taken in charge by the provider of your application.

    Nicolas.

  • Performance/Oracle data types

    Does anyone know how the data types can affect the performance of SQL queries? I would particularly like to know NUMBER, VARCHAR2, and DATE.

    You use the appropriate data type for the data being stored, end of story. Any hypothetical gains you are trying to do by using a data type 'faster' is deleted by bugs or performance issues using the data.

  • CHD: the string is used as an index of change in data type? String to double?

    Hello

    I'm new to the tiara. I'm reading the line of a channel number and then to read the data of a channel which is in the same line of another channel.

    That's why I use the SMC function but my index seems not to fit. What I need to change in the code?

    error:

    CHD (2, NOVALUE): = 785 wird die Textvariable «...» CHD (2, > N)

    Code:

     

    DIM intloop, zeilenwerte
    Line DIM, aktwert, index
    Call ChnAlloc ("zeilenwerte", lang, 1, DataTypeFloat64) ' Create channel, 'lang' is the size of a channel
    index = 0
    index = 1 to lang
    index = index + 1
    aktwert zeit (index) = ' get the value that will be compared to the SOPS in the following line of code
    Line = PNo (myChannel, aktwert) ' it returns the line only by comparing aktwert valued myChannel
    CHD (line, zeilenwerte) = intloop ' <--->here the error. try to get the value in a line @index do String data types does not match? what do I do then?
    Next

    Thank you very much for your help!

    Buddhist salvation,

    It seems to me that you would be better to use "Linear Mapping" in the palette of ANALYSIS "Suitable curve", but you should be able to get your code works by passing the name of the channel in this second parameter instead of an empty string variable.  You would have noticed that if you had OPTION EXPLICIT the first line of your code - always a good idea.

    Brad Turpin

    Tiara Product Support Engineer
    National Instruments

  • -Error function of incompatible data types

    Hi all

    I created a function that will take 3 IN parameters and return the result in type. Here's the code.

    Created a table type:

    {code}

    CREATE OR REPLACE TYPE FEATURES_ROW_TYPE

    AS AN OBJECT

    (VARCHAR2 (100) OF THE ENVIRONMENT)

    MNR VARCHAR2 (100),

    GUID VARCHAR2 (100),

    USER_ID VARCHAR2 (1000).

    RGN VARCHAR2 (100),

    RGN_NM VARCHAR2 (5000).

    FEATURE_NAME VARCHAR2 (5000).

    DATE OF LAST_SIGON_DATE

    );

    CREATE OR REPLACE TYPE FEATURES_TABLE_TYPE

    AS THE FEATURES_ROW_TYPE TABLE;

    {code}

    Here's the function:

    {code}

    CREATE OR REPLACE FUNCTION FETCH_FEATURES_FN (P_ENVIRONMENT IN VARCHAR2,

    P_FEATURE_ID NUMBER,

    P_RGN IN VARCHAR2

    )

    RETURN FEATURES_TABLE_TYPE

    IS

    V_ROWS FEATURES_TABLE_TYPE: = FEATURES_TABLE_TYPE ();

    V_CUR_ENV VARCHAR2 (100);

    V_ENV VARCHAR2 (50);

    V_WHERE VARCHAR2 (1000);

    V_SQL VARCHAR2 (10000);

    BEGIN

    V_ENV: = '@DBL_ ' | P_ENVIRONMENT;

    V_CUR_ENV: = P_ENVIRONMENT;

    IF P_RGN = "ALL" THEN

    V_WHERE: = ' WHERE FD. WPP_FTR_IK = ' | P_FEATURE_ID;

    ON THE OTHER

    V_WHERE: = ' WHERE FD. WPP_FTR_IK = ' | P_FEATURE_ID | "AND FD. RGN = ' | '''' || P_RGN | '''';

    END IF;

    V_SQL: =.

    "WITH USER_DATA ' | ' ' ||

    "ACE" | ' ' ||

    ' (SELECT DISTINCT EB. GUID, AD. USER_ID_ACCT_AFFECTED AS USER_ID, MAX (TRANSACTION_TS) AS LAST_SIGNON_DATE ' | ' ' ||

    "TO WPP_EBIZ_ACCT" | V_ENV | '  EB'                                                                || ' ' ||

    "INNER JOIN WPP_SECURITY_AUDIT_LOG | V_ENV | ' AD'                                                   || ' ' ||

    ' ON EB. GUID = AD. USER_UNIQUE_ID_ACCT_AFFECTED ' | ' ' ||

    ' WHERE AD. APP_NAME = "consumer" AND AD. TRANSACTION_TYPE_CD = "SIGN_ON" AND AD. FEATURE_NAME = "sign" AND AD. TRANSACTION_RESULT_CD = "S" ' | ' ' ||

    ' GROUP BY EB. GUID, AD. USER_ID_ACCT_AFFECTED ' | ' ' ||

    '), ' || ' ' ||

    "FEATURE_DATA" | ' ' ||

    'AS '           || ' ' ||

    "(MY SEPARATE SELECT." MNR, EB. GUID, MY. RGN, RGN. RGN_NM, FTR. WPP_FTR_IK, FTR. NM AS FEATURES_SUPPORTED ' | ' ' ||

    "TO WPP_MBRSHP_ACCT" | V_ENV | "MY" | ' ' ||

    "INNER JOIN WPP_EBIZ_ACCT | V_ENV | ' EB WE MY. WPP_EBIZ_ACCT_IK = EB. WPP_EBIZ_ACCT_IK' | ' ' ||

    "INNER JOIN WPP_RGN | V_ENV | «RGN WE MY.» RGN = RGN. RGN_ID ' | ' ' ||

    "INNER JOIN WPP_RGN_APLCTN_STS | V_ENV | ' RGN_ST ON RGN_ST. RGN_ID = RGN. RGN_ID ' | ' ' ||

    "INNER JOIN WPP_FTR_APLCTN | V_ENV | ' FTR_APP ON FTR_APP. WPP_FTR_APLCTN_IK = FTR_APP. WPP_FTR_APLCTN_IK ' | ' '||

    "INNER JOIN WPP_FTR | V_ENV | "FTR ON FTR. WPP_FTR_IK = RDFS. WPP_FTR_IK' | ' ' ||

    ') ' || ' ' ||

    "SELECT DISTINCT"HINT1"LIKE ENVIRONMENT, | ' ' ||

    "FD. MNR, FD. GUID, UD. USER_ID, FD. RGN, FD. RGN_NM, FD. FEATURES_SUPPORTED ACE FEATURE_NAME, TO_DATE (TRUNC (UD. LAST_SIGNON_DATE)) AS LAST_SIGNON_DATE' | ' ' ||

    "FROM FEATURE_DATA INNER JOIN USER_DATA UD ON FD FD. GUID = UD. GUID ' | ' ' || V_WHERE;

    -DBMS_OUTPUT. PUT_LINE (V_SQL);

    RUN IMMEDIATELY V_SQL

    BULK COLLECT INTO V_ROWS;

    RETURN V_ROWS;

    END FETCH_FEATURES_FN;

    {code}

    When I tried to run as below.

    SELECT * FROM TABLE (FETCH_FEATURES_FN ('HINT1', 2, 'ALL'));

    but I get the error message

    ORA-00932: inconsistent data types: expected - was -.

    ORA-06512: at "KPGCPY. FETCH_FEATURES_FN', line 57

    00932 00000 - ' incompatible data types: wait %s %s got. "

    * Cause:

    * Action:

    Please guide to solve this problem.

    Thank you

    So after running actual query:

    -DBMS_OUTPUT. PUT_LINE (V_SQL);

    You said the line that will do.

    Firstly - I suggest replace this long, complex query with a VERY SIMPLE one until your code actually works.

    When you do this, you will see that the TYPE that you defined (FEATURES_ROW_TYPE) is NOT mentioned anywhere in your code.

    You need create instances of this TYPE, then a collection of these instances.

    Some EXAMPLES of code that shows what I mean by VERY SIMPLE and shows how interrogate instances of a TYPE in a collection

    -type to match record emp

    create or replace type emp_scalar_type as an object

    (EMPNO NUMBER 4,

    ENAME VARCHAR2 (10),

    USE VARCHAR2 (9).

    MGR NUMBER 4,

    HIREDATE DATE,

    NUMBER OF SAL (7, 2)

    NUMBER OF COMM (7, 2)

    DEPTNO NUMBER (2)

    )

    /

    -records of the emp table

    create or replace type emp_table_type to table of emp_scalar_type

    /

    declare

    TB emp_table_type;

    sys deptnoList. OdciNumberList;

    BEGIN

    Select emp_scalar_type (empno, ename, job, mgr, hiredate, sal, comm, deptno)

    bulk collect into tb emp;

    Collect SELECT deptno in bulk

    IN deptnoList

    DEPARTMENT where deptno not in (select deptno table (tb));

    I'm looping 1.deptnoList.count

    dbms_output.put_Line (deptnoList (i));

    end loop;

    END;

    40

    Try this code and work with it until you understand what makes each piece.

    Select emp_scalar_type (empno, ename, job, mgr, hiredate, sal, comm, deptno)

    bulk collect into tb emp;

    See how this SIMPLE query creates instances of the EMP_SCALAR_TYPE and then use COLLECT in BULK to put them in the collection?

    Modify your code to use a SIMPLE QUERY like in my example, until you get the code to work.

Maybe you are looking for

  • Re: Life of the battery of the Satellite A660-141

    How does the satellite A660-141 has a battery 6 cells as many other toshiba models, but has a maximum of 4h15min! How is it?

  • all files that are opened in a compact size instead of maximized

    All my folders open in the compact format and I need to maximize their.  My browser and programs open to full size, but none of my records.  I'm running Vista 64 bit and I would really like to see my files in the original format when I open them.  Ca

  • blue screen after installing windows update

    Original title: Windows Update system killed 13 March 2012 After you install the updates Windows yesterday (13/03/12), the screens of the blue system at startup and in safe mode, does not restore system, saying: "a parameter is incorrect."

  • Router Wi - Fi and network discovery

    I HAV dell latitude e5420. He was previously installed with ubuntu 10.10, but now I have installed win 7 ultimate 64-bit. I have the wifi router in my house, but it is never discovered in Control Panel, the "wireless network configuration" said wait

  • The bad language displayed on the LCD after you set up the printer

    HP Photosmart C4450 all-in-one printer Solution Center keeps popping up the following: "The wrong language displayed on the LCD after you set up the printer. The printer has been upward and works well for months and all of a sudden it stopped working