11-16-2018 04:19 AM
Hi All,
I wanted to programmatically compare 2 sequence files. I found a "DiffSequencecFiles" method in EngineClass. But I have a few questions,
1. What is the difference between Engine Class and IEngine? The Engine Class has the GetSequenceFile method and the IEngine doesn't have the GetSequenceFile or DiffSequenceFile methods.
2. In which case should the Engine Class and IEngine be used?
2. What is the difference between GetSequenceFile and GetSequenceFileEx?
Thanks,
Sree Ranjani
Solved! Go to Solution.
11-20-2018 03:02 PM - edited 11-20-2018 03:35 PM
Hi Sree,
1. In general, you should use the IEngine class. This is the interface to the engine class, and engine is the CoClass.
2b. GetSequenceFile is the obsoleted version (and hidden publicly in the IEngine interface) of GetSequenceFileEx. It's still being internally used, hence its still available, but we recommend that you use GetSequenceFileEx.
Two things for you -
1. Can you upload your VI that you have shown here?
2. If you right-click on the IEngine nodes that have the broken attached wires and choose "Relink Invoke Node," does the error disappear?
It looks like you may be seeing a LabVIEW bug and we're gonna do further investigation on our end.
Hope this helps!
Roxy
11-26-2018 10:23 PM
Hi Roxy,
Thanks for your reply, I was able to get the error fixed by giving "Relink Invoke Node".
I am trying to get the difference between two sequence files programmatically. But I am not sure how to extract the details. It will be helpful if you can point me to any documents or resource for this.
To be more specific, how to extract the details from the File1Differences and File2Differences shown in the above image. I wanted to check if there are any changes in the setting of a particular type of step between the 2 files.
Please find the VI attached with this mail.
Thanks,
Sree
11-30-2018 10:50 AM
Hey Sree,
The engine reference coming from the Sequence Context property node is an ActiveX reference, but the reference expected by the Engine node is a .NET reference - hence, the broken wire. Relinking the invoke node does the same thing that you have in your diagram disable structure. The behavior that you're seeing is expected for this reason.
Let me know if you have any other questions.
Thanks!
Roxy
12-02-2018 10:47 PM
Hi Roxy,
Now that I am able to get the broken wires fixed and get the VI to run without any issues. I wanted to interpret the difference between the 2 sequence file from the below property node.
The File1Differences and File2Differences give 1D array of numbers. Please let me know if there are any documents that I can refer to get the details on how to interpret the file differences.
Thanks,
Sree
12-03-2018
10:07 AM
- last edited on
10-21-2024
02:16 PM
by
Content Cleaner
Hey Sree,
Rather than using this API, I would recommend using the Sequence File Differ Tool's command line to see the difference between the two sequence files - https://www.ni.com/docs/en-US/bundle/teststand/page/teststand-file-diff-and-merge-utility.html.
There is no public documentation on the methods that you are using above.
Thanks,
Roxy
12-04-2018 05:23 AM
Thanks Roxy,
I think I can go ahead with this method. This gives an XML report, which I should interpret to get the difference. I will try it and let you know.
Regards,
Sree Ranjani.