TDMS Channel Property NI_DataType

I write I16 values to a TDMS channel from LabVIEW. In DIAdem the data type is always float64. The property NI_DataType is read only so how can I set the correct data type ? In fact I have problems because the conversion from I16 to float64 gives me strange results like if I store a sinus my expected negative values will be saved as MaxFloat64 (4.294964939E+09)
I probed my LabVIEW data and I'm sure that it's ok.
Regards
Christian

If I make a explicit type cast to double before writing the data to the TDMS the data looks good.

Similar Messages

  • Why can't I find "Data Transfer and Memory " option in channel property node?

    Hi All,
    I'm trying to find some properties such as "Data Transfer and Memory " in my "DAQmx Channel" property node, as below
    But, in my Labview 8.5, I can't find it. I re-installed NI-DAQmx, but it didn't work. What I can get is
    Did I miss something? Thank you.
    Regards,
    Bo
    Message Edited by foolooo on 10-23-2008 07:02 AM
    My blog Let's LabVIEW.
    Solved!
    Go to Solution.
    Attachments:
    temp.JPG ‏11 KB

    Hi Andrey,
    Thank you for your reply. But I tried this on another computer on which lv 8.6 was installed, and it worked. I just simply dropped the channel property node, and didn't connect with any channel vi, and there were available options on that one. But for this pc, it doesn't work. I also configured the hardware in Mea & AE, it didn't help.
    btw, my labview is full licenced.
    Best wishes,
    Bo
    My blog Let's LabVIEW.

  • Daqmx channel property node

    Hi all,
    I've downloaded an example for a quad counter which uses a daqmx channel property node to specify A,B,Z channels.
    I have tried to replicate the example using LV8.1 but the only properties that I get are 'Active Channel' and 'General Properties' with 4 sub properties. Why don't the channel properties show up? What am I missing here?
    I have attached a jpeg of what im talking about. Any help is appreciated.
    Cheers,
    Dave
    Attachments:
    prop node.jpg ‏16 KB

    Hi David,
    This happens when you have not inserted a DAQ device in your system or your DAQ device is not detected by your MAX.
    You could do one of the following
    1. Insert a DAQ card into the PCI/PXI slot
    or
    2. Simulate a DAQmx device in MAX.
    By doing this, the corresponding DAQmx properties will show up

  • TDMS Get Property bug

    I found a bug with tdms get property (in LV 8.5) basically if the Property Value output isn't wired then the Found Output may not return true when it should. I've attached an example, just probe the found output, and it'll return false if property value isn't wired and true if it is (you can just attach it to the case structure). Oddly if I attach an indicator to found and wire Property Value, then run it, I can remove the property value wire, and it'll work until I open the vi again.
    Matt W.
    Attachments:
    Bug.zip ‏12 KB

    That indeed is a bug. CAR # 4DRIL6WJ.  Good thing there's a workaround.
    Thanks for letting us know,
    Herbert

  • Delete or replace (NOT append) TDMS Channel data

    Is there a way to delete channel data that has already been written to a TDMS file?
    Just writting the new data tot channel data appears to append the new to the old.
    I don't see a way of deleting OR replacing the old dat with the new.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction
    Solved!
    Go to Solution.

    Jarrod S. wrote:
    You know what's sad, Ben, is I was the one who wrote those TDM -> TDMS and TDMS -> TDM conversion VIs that the poster used in the example to delete a TDMS channel.
    All is not lost.
    Repost with a link to the same solution. That way I can mark your new reply so new users will find the example with a double bonus of you re-taking that solution and picking up some more Kudos along the way.
    Go for it!
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • Change a DAQmx channel property for a single channel from a channel group

    Hi,
    I'm doing some digital output, and I'd like to tristate certain lines in each port. However, I'm having difficulty figuring out how to specify which individual lines to tristate. I input a port and a line range, e.g. PXI-6533/port0/line0:7, specify to use one channel for each line in the DAQmx Create Virtual Channel VI, retrieve the channels from the DAQmx Task Property, and try to operate on the individual channels that way.  However, this results in the following error:
    Error -200428 occurred at Property Node DAQmx Channel (arg 1) in tristate_test.vi
    Possible reason(s):
    Measurements: Value passed to the Task/Channels In control is invalid.
    The value must refer to a valid task or valid virtual channels.
    Task Name: PXI-6533/port0/line0
    The NI knowledge base article that deals with this error code talks about creating a task with the DAQ assistant, or ensuring that a task has been created. However, I'm not using the DAQ assistant, as my I/O is pretty complicated; I'm just using a bunch of virtual channels. 
    Is there a way to specify individual channels to changethe properties of without having to create additional virtual channels? I have 48 digital channels I plan to use, so the less virtual channels I have to create the better. 
    Please reference the attached VI, which demonstrates the problem I am facing. 
    Thanks for any assistance. 
    Attachments:
    tristate_test.vi ‏11 KB

    You can only software-time tristate for the 6533/6534. Have a look at the attached example.
    Adnan Zafar
    Certified LabVIEW Architect
    Coleman Technologies
    Attachments:
    tristate6533.vi ‏58 KB

  • WLS 10.3: Channel Property OutboundEnabled=true. What does it do?

    Hi,
    in the course of trying to find good configurations that will support rapid activation of standby wls-servers in case of machine failure or catastrophe, we've stumbled across some behaviour that we want to understand better. We want to know what is the relationship between the OutboundEnabled property, in channel definition, and application deployment on a managed server.
    Current (simplified test) domain environment: Admin-Server and 1 managed server ms1, ms1 has an app to deploy. the servers are started with the standard oracle start scripts
    Currently working fine. In all cases
    , admin server is running: ie ms1 is not in MSI mode.
    a. Only default http and https channels in use.
    b. non default http and https channels binding to particular local interfaces with OutboundEnabled left at default (which is 'false' for everything but the admin channel, that we don't use)
    c. non default http and https channel binding to particular local interfaces. https channel is defined with OutboundEnabled=true
    Currently not working:
    c. non default http and https channel binding to particular local interfaces. http channel is defined with OutboundEnabled=true
    this gives the following stacktrace at the managed-server.
    <28.10.2009 15:23 Uhr MEZ> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
    java.net.BindException: Cannot assign requested address: JVM_Bind
    at java.net.PlainSocketImpl.socketBind(Native Method)
    at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
    at java.net.Socket.bind(Socket.java:571)
    at weblogic.socket.SocketMuxer.newSocket(SocketMuxer.java:350)
    at weblogic.socket.ChannelSocketFactory.createSocket(ChannelSocketFactory.java:77)
    at weblogic.socket.ChannelSocketFactory.createSocket(ChannelSocketFactory.java:58)
    at weblogic.net.http.HttpClient.openServer(HttpClient.java:302)
    at weblogic.net.http.HttpClient.openServer(HttpClient.java:388)
    at weblogic.net.http.HttpClient.New(HttpClient.java:238)
    at weblogic.net.http.HttpURLConnection.connect(HttpURLConnection.java:172)
    at weblogic.deploy.service.datatransferhandlers.HttpDataTransferHandler.getDataAsStream(HttpDataTransferHandler.java:75)
    at weblogic.deploy.service.datatransferhandlers.DataHandlerManager$RemoteDataTransferHandler.getDataAsStream(DataHandlerManager.java:153)
    at weblogic.deploy.internal.targetserver.datamanagement.AppDataUpdate.doDownload(AppDataUpdate.java:39)
    at weblogic.deploy.internal.targetserver.datamanagement.DataUpdate.download(DataUpdate.java:56)
    at weblogic.deploy.internal.targetserver.datamanagement.Data.prepareDataUpdate(Data.java:97)
    at weblogic.deploy.internal.targetserver.BasicDeployment.prepareDataUpdate(BasicDeployment.java:682)
    at weblogic.deploy.internal.targetserver.BasicDeployment.stageFilesForStatic(BasicDeployment.java:725)
    at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:104)
    at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:39)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:187)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    <28.10.2009 15:23 Uhr MEZ> <Error> <Deployer> <BEA-149205> <Failed to initialize the application 'sample' due to error weblogic.management.DeploymentE
    xception: Exception occured while downloading files.
    weblogic.management.DeploymentException: Exception occured while downloading files
    at weblogic.deploy.internal.targetserver.datamanagement.AppDataUpdate.doDownload(AppDataUpdate.java:43)
    at weblogic.deploy.internal.targetserver.datamanagement.DataUpdate.download(DataUpdate.java:56)
    at weblogic.deploy.internal.targetserver.datamanagement.Data.prepareDataUpdate(Data.java:97)
    at weblogic.deploy.internal.targetserver.BasicDeployment.prepareDataUpdate(BasicDeployment.java:682)
    at weblogic.deploy.internal.targetserver.BasicDeployment.stageFilesForStatic(BasicDeployment.java:725)

    Hi,
    in the course of trying to find good configurations that will support rapid activation of standby wls-servers in case of machine failure or catastrophe, we've stumbled across some behaviour that we want to understand better. We want to know what is the relationship between the OutboundEnabled property, in channel definition, and application deployment on a managed server.
    Current (simplified test) domain environment: Admin-Server and 1 managed server ms1, ms1 has an app to deploy. the servers are started with the standard oracle start scripts
    Currently working fine. In all cases
    , admin server is running: ie ms1 is not in MSI mode.
    a. Only default http and https channels in use.
    b. non default http and https channels binding to particular local interfaces with OutboundEnabled left at default (which is 'false' for everything but the admin channel, that we don't use)
    c. non default http and https channel binding to particular local interfaces. https channel is defined with OutboundEnabled=true
    Currently not working:
    c. non default http and https channel binding to particular local interfaces. http channel is defined with OutboundEnabled=true
    this gives the following stacktrace at the managed-server.
    <28.10.2009 15:23 Uhr MEZ> <Notice> <WebLogicServer> <BEA-000365> <Server state changed to STARTING>
    java.net.BindException: Cannot assign requested address: JVM_Bind
    at java.net.PlainSocketImpl.socketBind(Native Method)
    at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
    at java.net.Socket.bind(Socket.java:571)
    at weblogic.socket.SocketMuxer.newSocket(SocketMuxer.java:350)
    at weblogic.socket.ChannelSocketFactory.createSocket(ChannelSocketFactory.java:77)
    at weblogic.socket.ChannelSocketFactory.createSocket(ChannelSocketFactory.java:58)
    at weblogic.net.http.HttpClient.openServer(HttpClient.java:302)
    at weblogic.net.http.HttpClient.openServer(HttpClient.java:388)
    at weblogic.net.http.HttpClient.New(HttpClient.java:238)
    at weblogic.net.http.HttpURLConnection.connect(HttpURLConnection.java:172)
    at weblogic.deploy.service.datatransferhandlers.HttpDataTransferHandler.getDataAsStream(HttpDataTransferHandler.java:75)
    at weblogic.deploy.service.datatransferhandlers.DataHandlerManager$RemoteDataTransferHandler.getDataAsStream(DataHandlerManager.java:153)
    at weblogic.deploy.internal.targetserver.datamanagement.AppDataUpdate.doDownload(AppDataUpdate.java:39)
    at weblogic.deploy.internal.targetserver.datamanagement.DataUpdate.download(DataUpdate.java:56)
    at weblogic.deploy.internal.targetserver.datamanagement.Data.prepareDataUpdate(Data.java:97)
    at weblogic.deploy.internal.targetserver.BasicDeployment.prepareDataUpdate(BasicDeployment.java:682)
    at weblogic.deploy.internal.targetserver.BasicDeployment.stageFilesForStatic(BasicDeployment.java:725)
    at weblogic.deploy.internal.targetserver.AppDeployment.prepare(AppDeployment.java:104)
    at weblogic.management.deploy.internal.DeploymentAdapter$1.doPrepare(DeploymentAdapter.java:39)
    at weblogic.management.deploy.internal.DeploymentAdapter.prepare(DeploymentAdapter.java:187)
    at weblogic.management.deploy.internal.AppTransition$1.transitionApp(AppTransition.java:21)
    at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:233)
    at weblogic.management.deploy.internal.ConfiguredDeployments.prepare(ConfiguredDeployments.java:165)
    at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:122)
    at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:173)
    at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:89)
    at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    <28.10.2009 15:23 Uhr MEZ> <Error> <Deployer> <BEA-149205> <Failed to initialize the application 'sample' due to error weblogic.management.DeploymentE
    xception: Exception occured while downloading files.
    weblogic.management.DeploymentException: Exception occured while downloading files
    at weblogic.deploy.internal.targetserver.datamanagement.AppDataUpdate.doDownload(AppDataUpdate.java:43)
    at weblogic.deploy.internal.targetserver.datamanagement.DataUpdate.download(DataUpdate.java:56)
    at weblogic.deploy.internal.targetserver.datamanagement.Data.prepareDataUpdate(Data.java:97)
    at weblogic.deploy.internal.targetserver.BasicDeployment.prepareDataUpdate(BasicDeployment.java:682)
    at weblogic.deploy.internal.targetserver.BasicDeployment.stageFilesForStatic(BasicDeployment.java:725)

  • Sort tdms channels

    I am reading data from channels of a TDMS file. The channels are different frequencies which data was recorded. However they are not in order. For example the channels might be arranged, 1 Hz, 2 Hz, 3 Hz, 7 Hz, 5Hz, 4Hz. I am trying to either sort these channels in my file. Or another option would be set and "lock" the channel order in the tdms before collecting data.
    Solved!
    Go to Solution.

    How are you saving to the TDMS file?  Can you share some code?
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Is my DAQmx channel property node missing RTD?

    Should RTD be available in the menu shown? I do not have an RTD hooked up right now; could this be the problem? However, I don't have a thermistor or a thermocouple and those options show up. I am trying to set A, B, C and R0 programmatically.
    CLA, LabVIEW Versions 2010-2013
    Solved!
    Go to Solution.
    Attachments:
    daqmxchannel.PNG ‏12 KB

    Thanks, Brad. I'm just using the 6009 for testing because I have it available in-house. Ultimately this code will be used with scxi. But this is very helpful since I am developing using DAQmx without the hardware attached, and. I'm sure this is not the last time I will be doing this. Thanks again!
    CLA, LabVIEW Versions 2010-2013

  • Extract single channel information from file group

    Hello All,
    I want to perform a repeat operation on one channel of a large number of multi-channel files.
    As a simplified example lets say I want to calculate the max value in channel 1 for each file in a group. I then want to place these values in the row of a new channel in a new file. Has anyone a similar example file I could modify or suggestions on how to do this? I am working with TDMS files. 
    Thanks
    Mark
    Solved!
    Go to Solution.

    I had a very similar approach, so here's another example in case it helps.  This example loops through all files in a specified directory, and if the file is a TDMS file, it loads the first channel in the file and calculates the maximum value.
    DIM MyFiles, iCount, Channel
    CALL Data.Root.Clear()
    SET Channel = Data.Root.ChannelGroups.Add("Calculated Values").Channels.Add("Maximum",DataTypeFloat64)
    MyFiles = DirListGet("C:\Program Files (x86)\National Instruments\DIAdem 2011\Examples\Data", "*.*", "filename", "FullFilenames")
    IF IsArray(MyFiles) THEN
    FOR iCount = LBound(MyFiles) to UBound(MyFiles)
    IF UCase(NameSplit(MyFiles(iCount),"E")) = "TDMS" THEN
    CALL DataFileLoadSel(MyFiles(iCount),,"[1]/[1]")
    Channel.Values(Channel.Size+1) = CCh("Calculated Values/[2]",2)
    CALL Data.Root.ChannelGroups("Calculated Values").Channels.Remove(2)
    END IF
    NEXT
    END IF
    If you can calculate the channel maximum value (or whatever property you're interested in tracking) during the acquisition and saving of the file, you should store that entity to a TDMS channel property.  This would allow you to run queries on the property across all of your files and then very quickly load the results as a channel into the Data Portal.
    I hope that helps...
    Derrick S.
    Product Manager
    NI DIAdem
    National Instruments

  • How can I sort channels by a custom property?

    Hello.
    I have written a script that creates a series of formatted charts in View.  The data comes from TDMS files with several groups of channels with some custom properties assigned to the channels.  I would like to sort the channels within each group by one of these custom properties so that the curves display in the desired order.
    It appears that ChnMove and ChnRenumber can be used to reorder the channels, but how can I programatically sort the channels by a channel property?
    Thanks,
    Craig

    Hello Craig!
    Unfortunately DIAdem doesn't have a adequate command. You have to use some lines of script code. Try this bubblesort adaption:
    Option Explicit
    Call GroupChnSort(1,"name")
    Sub GroupChnSort(ByRef nGroupIndex, ByRef sgPropName)
    Dim i
    Dim j
    Dim n
    Dim anCNo()
    If GroupChnCount(nGroupIndex) > 1 Then
    ReDim anCNo( GroupChnCount(nGroupIndex)-1 )
    For i=1 To GroupChnCount(nGroupIndex)
    anCNo(i-1) = i
    Next
    For i = 0 to UBound(anCNo)
    For j = i+1 to UBound(anCNo)
    If ChnPropValGet("[" & nGroupIndex & "]/[" & anCNo(i) & "]", sgPropName) > _
    ChnPropValGet("[" & nGroupIndex & "]/[" & anCNo(j) & "]", sgPropName) Then
    n = anCNo(i)
    anCNo(i) = anCNo(j)
    anCNo(j) = n
    End If
    Next
    Next
    For i=1 To GroupChnCount(nGroupIndex)
    Call ChnMove( anCNo(i-1), nGroupIndex, i)
    Next
    End If
    End Sub
    The string compare is casessensitive. You can wrap the ChnPropValGet with a UCase to change this.
    Matthias
    Matthias Alleweldt
    Project Engineer / Projektingenieur
    Twigeater?  

  • TDMS property NI_DiskCacheSize

    Hello All,
    I stumbled with  TDMS set property named NI_DiskCacheSize. 
    Can someone please tell me how to set 2Mb cache using this property?
    what exact property value should I write to set cache size 2MB for TDMS file?
    Help will be truly appreciated.
    Thanks,
    CLAD
    Passionate for LabVIEW
    Solved!
    Go to Solution.

    [email protected] wrote:
    Thanks very much 
    Its truly helpful. 
    If it's really that helpful maybe you should give some kudos to the post that helped?  Or maybe even mark one of the other posts the solution instead of your post thanking them.
    Unofficial Forum Rules and Guidelines - Hooovahh - LabVIEW Overlord
    If 10 out of 10 experts in any field say something is bad, you should probably take their opinion seriously.

  • Periodic spectra storing in TDMS

    I need to periodically store spectra from 4 voltages and 4
    currents, each  spectra signal has 100 spectral lines. This means 800 spectral
    lines is one record which is created each aggregation interval (200ms up to 10
    min – user selectable). For long time I use binary data format for this and it
    works fine and fast. Now I need to optionally store data into TDMS data format
    for my customer who want to process them in DIAdem.
    I found only one example for periodical storing of spectra
    signal: Express
    write data (time and frequency domain).vi. I tried to create data
    file with approximatelly 500 records. The data file is about 2MB. But to show
    this file in LabVIEW TDMS File Viewer takes tens of second having CPU
    utilisation on 100%!!! If 
    I load this 2MB file into DIAdem it makes also significantly longer
    responses in comparison with example files!!!
    I am
    looking for efective way how to proceed for this type of data with TDMS format.
    Consequently I will need to read data in LabVIEW, but the reader must be fast.
    I have few typical tasks for reader:
    To read time sequence of
    selected harmonic on selected signal for the whole measurement
    To read one record (all
    harmonics) from one signal
    Please
    help.
    Bilik

    Hi Bilik,
    One reason you are getting poor performance in the TDMS code you posted is that you are writing one data point at a time to each channel.  Since each buffer write in TDMS is prefaced with a binary buffer header describing its contents, you are creating a binary header for every data point you are storing.  The LabVIEW 2009 Beta, which is already live, contains TDMS VIs with an updated option to create a single binary header for the entire file (and forego the option of changing anything during the acquisition)-- with this option you would not encounter this problem.
    But you can sidestep this problem with already shipping LabVIEW versions by invoking a special channel-level property set to automatically buffer channel writes up to a certain minimum buffer size, then flush that minimum buffer to disk automatically.  This avoids excessive binary header writes without changing your code inside the acquisition loop, though it does require you to add the channel property sets outside (left of) the acquisition loop.  Just assign the "NI_MinimumBufferSize" property to something like 500 or 1000 or 2000 values on each of the channels.  This also avoids the need to defrag the TDMS file afterwards, since you aren't creating it with serious fragmentation to start with.  However, I did notice after adding all this to your code that the write performance of your binary file is still much better than TDMS, and this I don't understand.
    Perhaps Herbert can take a look at the edits I made and suggest further improvements.
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments
    Attachments:
    TimeFreqDomain-TDMS.vi ‏33 KB
    TimeFreqDomain-BIN.vi ‏27 KB

  • WARNING TDMS memory leak in LV 2010

    Hopefully this will save someone the headache that I've been through the last couple of days.  I have a very large applicaiton that is running a final verification test on a production line.  In my testing I noticed a memory leak in the application and after 2 days of debug discovered that the TDMS logging is the culprit.  This is very disappointing since I am (I mean was) a huge fan of the TDMS file format and the LabVIEW functions.  The attached VI reproduces the leak by checking and unchecking the Memory Leak checkbox.  Its a bit ugly but I was just coping and pasting the sections from my application and trying to reproduce the issue.  Luckily for me in this particular application I was only writing to the TDMS log files so I was able to eliminate the problem by switching to the gTDMS versions of the write functions.  I found these referenced in another post about TDMS memory leak, but in that case the leak was caused by the indexing and the fact that the SAME file was continuously written too over a very long period.  As you can see in my case, a log file is opened and closed for each "Test".
    gTDMS link
    Thanks,
    Brian
    Brian Gangloff
    DataAct Incorporated
    Attachments:
    TDMS Memory testing.vi ‏31 KB

    YongqingYe wrote:
    Hi Brian,
    I'm one of the developers of TDMS in NI R&D. Well, this is a problem of TDMS which has been complained by some customers. The reason you see the "memory leak" or the memory usage increment is because TDMS needs to bookkeep some information in memory and when you writing more and more data values, the information we keep in memory will keep increasing.
    There are some workarounds, gTDMS probably is also one of them, but the original purpose of creating gTDMS is to support writing TDMSs on Linux, Mac and other platforms:
    Using "NI_MinimumBufferSize" propertie on channels, you can find the details of the help documentation of TDMS Set Property. It can not eliminate this problem, but would reduce the memory usage significantly. Normally we would set it as 1,000 to 10,000.
    From LV 2009, if you writing to the file always with the same layout, like same channels same number of data values, you will not have memory increament.
    If you are using LV 2010 and later, you can try to play with TDMS Advanced API, this API will not have any memory increasing problem at all.
    Thank you!
    Yongqing Ye
    NI R&D
    Hello Yongqing,
    Apparently you did not bother to look at the examples that I provided or read any of the description either.  As Hooovahh has already pointed out, INDEXING is NOT the issue.  The example writes an array to multiple channels ONE time and then the reference is CLOSED.  In the case that does NOT leak, there are multiple waveform arrays written to the file which would require some indexing but the memory does NOT increase.  The problem is when an array of strings is written to multiple channels and the reference is CLOSED.  Unfortunately this type of quick assumption about the problem is why the real issue was overlooked back in 2009.
    Thanks,
    Brian
    Brian Gangloff
    DataAct Incorporated

  • DIAdem: How to store the input channel information from the Analysis modules

    Hi,
    I would like to know if there is a way to store the input channel name(s) when executing modules from the Analysis Panel. For example, when I run an FFT on a set of data: x-channel: "[1]/Time" y-channel: "[1]/Voltage" , I would like to be able to store this information as a custom channel property in the output file (ex. "[1]/AutoSpectrum").  
    The only place I've found that contains this "history" information is in the log section of the Analyze Panel. However, I have not been able to figure out how to access the information in the Analysis log programatically through VBS scripting.
    Thanks

    Hi Brad,
    So here's where I'm struggling. My tool is more a set of tools. I have created custom bars that launch the appropriate dialog box for each tool. Let me give you and example of the kind of work flow I that might be used:
    The user loads up a TDM file or imports data using a DataPlugin. Then, they launch my tool for going through each channel and adding custom properties (sensor type, sensor location, etc). Once all properties have been applied to the channels they close that tool. Now they fire up the Smoothing module in ANALYSIS and save the result as a new channel. Next, they launch my tool for computing the Shock Response for that event. When the user has the desired output, they run my plotting SUD. This is where they can select which report template to use and which channels to plot. The selected channel(s) used for plotting doesn't have all of the custom properties that we taged in the original data channels.
    As you can see, the process involves using some of my own custom SUDs where I can keep track of everything but also allows the user to use any of DIAdem's native functions. This is where I am struggling to be able to keep track of the channels used as input. I can "see" the info I need listed in the log section of the ANALYSIS Panel but can't pragmatically access it (the info in the main display window). It would be really handy if this info was automatically stored in the channel properties of each output channel.
    I guess my only option is to (in the plotting SUD) not only ask the user for the channels to plot, but also ask them to select the coresponding original channels that have the custom properties.
    James

Maybe you are looking for

  • Cannot send email from Mail through .mac account

    I have recently opened a .mac account and started using the email service. It works fine online however I am having difficulty sending messages through the Mail application in Tiger. Whenever I attempt to send a message, a dialog box appears saying "

  • What url should be given to java developer to call wsdl deployed by XI?

    Hi gurus, I generate a web service by using integration directory, and in the wsdl file there is a parameter "location", which I think can be used by java developer to call the web service. However, they think the form of url should be http://.....?w

  • MS Exchange Server 2013 Error

    Error: The following error was generated when "$error.Clear();           Install-ExchangeCertificate -WebSiteName "Exchange Back End" -services "IIS, POP, IMAP" -DomainController $RoleDomainController -InstallInTrustedRootCAIfSelfSigned $true        

  • Wait step event

    Hi, i am new to the workflows.i worked in support project and i am looking for development. could any one can explain: what is wait step event, when it should be used and while creating the wait step event do we use any tcodes to assign the events(sw

  • Repository Install Problem

    I am trying to install a repository, i have designer 6i release 4 Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.1.0 - Production I have checked all the requ