NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Meas_Numericlimit

Hi,
I am using TestStand 3.5
For datalogging I am using Access.
For Meas_NumericLimit table, it store limit High and Low properly if both limits are define. For GT(>) and GE (=) type of comparision it store limit data in Low_limit column. Is there any way we can store this value in High_Limit column?
 
Regards,
vishal
 
0 Kudos
Message 1 of 11
(4,426 Views)
There's no way to do this from the standard interface that I know. It's putting the data in the correct column.
 
Without getting into any specifics, you might want to modify the process model to post process the database, or modify the results table of the sequence at run-time so the result is copied into a new high_limit column which gets picked up by the results collection process.
 
You might also be able to try developing a custom step type?
0 Kudos
Message 2 of 11
(4,408 Views)

Hi,

I made a custome schema for my use.  Is it possible to put conditional data in Expression part of Column/parameters in database options?

I tried but it didn't work. I am attaching my mode with teststanddatabaseoption.ini file.

Let me know what could be done?

Thanks

Vishal

 

 

Download All
0 Kudos
Message 3 of 11
(4,396 Views)

Hi Vishal,

Have you tried switching the high and low limits in the schema, or is this solution too general? I have attached a screenshot.

I don't believe you can put logical expressions in the Expression field for the column.

 

Brian

0 Kudos
Message 4 of 11
(4,391 Views)

Vishal,


You could change the schema as bce is suggesting, the only problem that I see is that the HIGH_LIMIT column will always contain information corresponding to the low limit property and viceversa, even for the steps configured to use both limits (GELE,GELT, etc).
I think that this change would be confusing.
I would like to know what is your motivation to change this?

1) If you want the step to use the high limit instead of the low limit for the comparison types that only require a limit, you will have to create your own custom step type.
2) If you want to change the way the data is stored in the database you could create a new table and store the properties as you want.

Regards.

0 Kudos
Message 5 of 11
(4,379 Views)

Hi,

Thanks for the reply.

I tried the way bce suggested , but it is not the way I wanted.

I want store the data in the database different way for LT and LE type of comparision. Specific to in this two condition, limits are stored as Low_Limit though they are actually higher limits. So I just want to store for this two conditions limit data in the High_Limit column instead of Low_Limit column.

regards,

vishal

0 Kudos
Message 6 of 11
(4,355 Views)

Hi Vishal,

You will probably need to create a custom schema where you log to different tables for the different types of tests.

 

BCE

0 Kudos
Message 7 of 11
(4,345 Views)

Vishal,

I found a way to accomplish what you want:

1. Go to Configure->Database Options.
2. Go to the Schemas tab and make a copy of the Generic Record Set. (Duplicate it).
3. Select the new schema.
4. Go to the statements tab.
5. Select rthe STEP_NUMERICLIMIT statement.
6. Go to the Columns/Parameters tab.
7. Select HIGH_LIMIT.
8. Enter 'Logging.StepResult.Comp' as the expected properties.
    The original configuration uses 'Logging.StepResult.Limits.High' as the expected property.
    It means that the property must be present in order to lod data to the column.
    When we use a property that only uses the low limit the 'Logging.StepResult.Limits.High' property is not present. In order to log data even when the property is not there we need to get rid of this 'filter'.
9. Enter 'Logging.DatabaseOptions.IncludeLimits && (Logging.StepResult.Comp == "LT" || Logging.StepResult.Comp == "LE") ?   PropertyExists("Logging.StepResult.Limits.Low") : PropertyExists("Logging.StepResult.Limits.High")' as the precondition.
We are indicating that we want to log data into that column if we select to include limits and the 'Logging.StepResul.Limits.High' property exist or the comparison type is LT or LE and the Logging.StepResult.Limits.Low property exist.
10. Enter '(Logging.StepResult.Comp == "LT" || Logging.StepResult.Comp == "LE") ?Logging.StepResult.Limits.Low : Logging.StepResult.Limits.High' as the Expression. This exprssion evaluates to 'Logging.StepResult.Limits.Low' if the comparsion type is LT or LE and evaluates to 'Logging.StepResult.Limits.High' with any other comparion type. 
11. Now select the LOW_LIMIT column.
12. Enter 'Logging.DatabaseOptions.IncludeLimits && !(Logging.StepResult.Comp == "LT" || Logging.StepResult.Comp == "LE")' as the precondition. This precondiction prevents data to be logged into the low limit column  if the comparison type is LT or LE.
13 Click OK in order to close the database options dialog.
14.Execute your sequence using single pass and verify you get the expected results.

Hope it helps

Antonio Lie.

 

Message 8 of 11
(4,341 Views)

Hi Antonio

Thanks for the reply!

There is a small change in your suggestion to make it work for me :-).

Changes I did : (your suggestion in Blue, my changes in Green)

Logging.StepResult.Comp -> Logging.StepResultProperty.Comp

Logging.StepResult.Limits.Low -> Logging.StepResultProperty.Limits.Low

Logging.StepResult.Limits.High -> Logging.StepResultProperty.Limits.High

 

In general, I write StepResultProperty instead of StepResult.

Thanks!

br,

vishal

0 Kudos
Message 9 of 11
(4,322 Views)

Hi  Antonio,

Is it possible to store symbol (e.g. > or < or >=   ) instead of Comparator name  (e.g. GT or LT or GTGE)?

br,

Vishal

0 Kudos
Message 10 of 11
(4,310 Views)