OPSSQL is now Hach WIMS
A noted issue with all OPS LIMS interfaces concerns the creation of OPS variables that contain duplicate LIMS Interface tab settings. This may easily occur if the OPS user has created a variable and configured the LIMS Interface tab, then copies that variable to a new variable without changing the LIMS Interface tab settings. The effect of this duplication during the interface execution results in only one of the duplicate variables being populated with LIMS data. The duplicate variables are ignored. This is an artifact of the performance optimization algorithm for LIMS based interfaces which control looping from the LIMS recordset and populate the *first* matching OPS variable. The LIMS recordset then increments to the next record and proceeds with processing. Therefore duplicate LIMS variables are ignored and not filled with data during interface execution. If the user is not managing the OPS variable creation process in a rigorous manner, they may find a desired variable is no longer being populated by the interface while some duplicate variable they are not using or even aware of *is* being populated.
Note that SCADA Interfaces are not subject to this issue as their loop processing is controlled from the variable side rather than the import source side. This causes *all* variables to be processed by the interface.
This article is a digest of discussions with LJP & BSS.
ADDITION by Mike Bynum
It is possible to detect whether or not a lims tag is used more than once, if you are using OPSSQL. We can run a query against the database in question within OPS SQL. This process should be performed by an advanced user because it's possible to jeopardize the integrity of the database if the user is not careful.
Before starting I would suggest making a back up of your database so that if there seems to be a big problem, you can restore from the backup with little loss.
First, open OPS SQL and press F9. This will bring up the OPS SQL - SQL Console.
In the text field at the top, Type in the following query:
select varnum from vardesc where lims_loc = 'LOC' and lims_test = 'TEST'
Replace LOC with the location in the lims tab of the tag in question. replace TEST with the chemical in question.
Make sure that your query looks correct then press Execute.
You should get a lest in the gray box on the bottom. This is a list of variables by number that share the same lims tag. Only one of these variables will be populated with data if you are experienceing the problem described above.
One thing to look out for is that if you have a typo and you push execute, you will still get a result however it will look something like the result in the picture below. If you get something like this, read through your query and make sure there are 0 types. (Hint: location and test names should match in case as well.)
Please be careful with the OPS SQL - SQL CONSOLE and remember to backup your database often.
END OF ADDITION