ALERT: Some images may not load properly within the Knowledge Base Article. If you see a broken image, please right-click and select 'Open image in a new tab'. We apologize for this inconvenience.

Datamaker: Test Matching Condition getting cut off and causing ORA-0907 error at runtime


Article ID: 4481


Updated On:


CA Test Data Manager (Data Finder / Grid Tools)


In the data painter screen of Datamaker we have a case statement written for a Test Matching condition. During validating, the statement is getting cut off after first quoted string. 

This is causing an "ORA-0907:missing right parenthesis" error at run-time.

For example, the statement used is:

@case(~Var1~='ValueA', usecase_col_val in ('ABC','PQR','XYZ'),~Var1~='ValueB',usecase_col_val in ('DEF'))@ 

With this statement, during validation in data painter, the statement is getting cut off after 'ABC'.


The issue is caused due to a limitation of Powerbuilder, the platform on which Datamaker is written.


Datamaker 3.2.2 and later


We need to apply a workaround of enclosing the entire value component used in the case statement within double-quotes if there are multiple single-quoted values used in the expression.

So in the example above, we would need to put double-quotes around:

usecase_col_val in ('ABC','PQR','XYZ')


The entire statement would then have to be written as:

@case(~Var1~='ValueA', "usecase_col_val in ('ABC','PQR','XYZ')",~Var1~='ValueB',usecase_col_val in ('DEF'))@ 


Note that you do not need to use double quotes around: usecase_col_val in ('DEF'). This is because only one single-quoted value is referenced here, and the workaround needs to be applied only when multiple single-quoted values are used.

Additional Information

This issue is has been fixed in the TDM Web Portal, and no workaround needs to be applied.