DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Importing data in obscure binary format into diadem

Hi all,

 

Lets assume that I have some data in a binary format which DIAdem can not automatically import into the data portal. One method I am aware of and used is to create a dataplugin in vbs which will then allow me to import this data. Recently I came across something called the "TDM header writer" which gives me the impression that it is capable of creating a header file for my binary data and as a result will be able to import this data into DIAdem without creating a dataplugin. Is this actually the case? If the answer is yes which method is actually easiest to use dataplugin or TDM header writer?

 

Thanks for reading and your assistance in advance.

 

Matthew

0 Kudos
Message 1 of 7
(4,771 Views)

Hi,

your impression is correct. With the TDM Header Writer you can write a TDM header file for your binary data, so it can be imported in DIAdem as TDM file.

However, you will need to create a TDM Header for each of your binary files. There are several ways to use the TDM Header Writer:

- C API

- JAVA API

- LabVIEW VIs

 

But please let me ask, if you are not satisfied with the DataPlugin you created. It should enable you to read all of your binary files without any extra work. You can export DataPlugins and distribute them. So once created, it should feel like a native file format for DIAdem.

For an overview of DataPlugins provided by National Instruments, please have a look here:

DataPlugins

0 Kudos
Message 2 of 7
(4,765 Views)

Usac,

 

Thanks for the reply. The reason I asked the question was because one of my clients suppliers has data in a binary format which needs to be imported into DIAdem here. I've already mentioned the dataplugin route to them but came across the TDM header writer and thought this may be an easier option for them if they do not have a lot of experience creating dataplugins. I've mentioned the online dataplugin help but there seems to be some debate as to the helpfulness of the contents in the context of their task.

 

Good luck always.

 

Matthew

0 Kudos
Message 3 of 7
(4,758 Views)

Matthew,

from what you described, the dataplugin should be the best way to go. The effort to create the header is probably comparable to the effort for the dataplugin. If you are interested and willing to share the description of the file format and some example files we might be able to help you with the creation of the dataplugin.

 

Andreas

0 Kudos
Message 4 of 7
(4,750 Views)

Hi Andreas,

 

Thanks for the reply. As I said in my initial post the files are created by one of our suppliers but there is now a requirement here to be able to read these files directly into DIAdem. The onus is on the supplier to create the means by which we are able to seamlessly import the data. I've recommended the dataplugin route to them but came across the TDM header writer yesterday and thought this might be a simpler option for them.

 

Unfortunately I'm not in a position to share the description of the file format with you simply because this information is not available to me and is guarded by the suppliers.

 

On a slightly different note is it possible to call a dll file from within a dataplugin?

 

Thanks

 

Matthew

0 Kudos
Message 5 of 7
(4,744 Views)

Matthew,

 

calling a DLL from a DataPlugin is not possible. DataPlugins are little scripts and calling a DLL from the script is not possible.

Creating a DataPlugin shouldn't be an issue for your supplier. Based on the documentation we provided, more than 300 DataPlugin have been created out of which quite a few were created from non-NI developers.

 

If you supplier needs help to create the plugin, we would be willing to help out. If your supplier is concerned that his IP regarding the file format might be spread, please let him know that the scripts can by encrypted so that no one else can look into the code.

 

Jumping a little here : NI is able to create DataPlugins incorporating a DLL. We have done those C++ plugins on a number of occasions.

 

Andreas

0 Kudos
Message 6 of 7
(4,742 Views)

Hi Matthew,

 

If the DLL is wrapped in a COM object that has all variant inputs and outputs, it is possible to use that functionality from within a VBScript DataPlugin.  It is also possible to create a LabVIEW DataPlugin, and those can call DLLs directly.  The TDM Header Writer was more usefull before we created the LabVIEW DataPlugin option, because back then it was the only option for a pure LabVIEW programmer.

 

I would agree with Mavis that the DataPlugin effort is comparable to the TDM Header Writer effort, so unless they are very comfortable with JAVA and not VBScript or LabVIEW, I'd suggest the DataPlugin route.

 

Brad Turpin

DIAdem Product Support Engineer

National Instruments

0 Kudos
Message 7 of 7
(4,735 Views)