OpenLab manipulates the code irregularly and independently, when a aggregator is formed - OpenLab CDS 2.5 Reporting


Currently, we retrieve the compound_name in our value expression via a custom calculation and use this as a condition in an if-then statement. That could be a text field or a table column. The resulting value is then passed on by creating a variable.
Now we noticed that OpenLab manipulates the code irregularly and independently when including a custom calculation in the expression and forming an aggregator or variable. This only becomes visible after saving the report template and reloading it.
For example, the expression "if(Compound_Name like CCR((Compound_CustomCalculationResults),"Compound_name_2"),[..]" suddenly becomes "if(Compound_Name like Compound_Name like CCR((Compound_CustomCalculationResults),"Compound_name_2"),[..]", which causes an error. "Compound_name_2" is a string. Is this an error on our part or is it a bug?

In addition, we could observe that one condition for custom calculations is duplicated as soon as an aggregator (and probably also a variable) is formed and several Custom Calculations are connected with "AND" or "OR". For example "CCR((Compound_CustomCalculationResults),"resolution_ep") >2 and CCR((Compound_CustomCalculationResults),"resolution_usp") >2" is converted to "CCR((Compound_CustomCalculationResults),"resolution_ep") >2 and CCR((Compound_CustomCalculationResults),"resolution_usp") >2 >2".

Thanks, Chris

  • Hello,

    What version of CDS 2.x are you using? Known types of reported RTE expression corruptions have been fixed across the IR version changes. The issue is typically in the conversion of the editor expressions to the actual expression in the RDL file snippet. If the issues you are seeing are reproducible, please report them to applicable support group. If you are a workstation customer, you would contact your regions support number or reporting process. Client server customers should have access to the informatics support portal for issues like this one.


  • Hi Marty,

    thanks for your help. We use OpenLab CDS 2.5 (Data analysis build I think we will contact the relevant support group.


  • Hello,

    Several of those issues where repeatable have been found and resolved in the various updates and later versions. It is possible in some cases to work around the specific issue with syntax changes or editing the expression in the raw RDL. 


  • I started out with Custom Calculations which turned out be a powerful approach where I needed to have some logic performed and variables saved.

    Basically what it did for me was add my own personal additional columns to the routine Results calculations which appear in Data Analysis.

    The specific variables I needed were then available for further work, without relying on any Report Templates for any additional logic or variables. (still had to customize the Report Template a bit to print the desired CC data)

    Therefore with Custom Calculations it is possible to render some very sophisticated results to completion, allowing the use of a great variety of "generic" Report Templates afterward for final publication, depending only on the desired output of precalculated data values. Without depending on a custom Report Template for additional logic or variables which can be very method-specific and not very generic because of that.

    But our operation at this point is not going to be issuing final results from anything but the OpenLab Report Templates any time soon. (Except for things like DHA or Simdist where we have specialized third-party software to process the raw CDF files, after the CDFs are optionally collected at the conclusion of the run Processing.)

    And our Report Templates need to be customized anyway since our niche is not very mainstream.

    So I changed.

    I reverted away from the Custom Calculations and instead moved that logic to the customized Report Templates.

    Adding additional columns to the existing report table at the bottom of a Report Template can accomplish a bit of this, but for some other things you need to have gotten the logic and custom calculations fully accomplished before the final report table can be used to output what you need.

    So instead toward the top of the Report Template I edit in an additional Table with just the selected columns I will need to do this precalculation not much differently than it was done in CC. In Report Preview it will overlap other printables such as the header or chromatogram, and screw up the entire formatting, but after the logic has been validated the upper Table is then marked Visible:False so it will not print. So it accomplishes the custom logic & computation in the Report Template alone, using result data direct from the non-Custom Processing Method results, and including any computation or variables determined in the Report Header itself, which the final ("Visible:True", printable) report Table then has complete access to.

    This allows calibration and routine sample testing in a completely default way (without CC), but moves any custom computation needs into dedicated custom Report Templates instead.

    Regardless of this approach, one of the frustrating things to encounter is the way some variables will automatically become a string when you need it to be a number. Also some of the logic functions are not entirely bug-free

Was this helpful?