BDI Query with Macro Expressions does not work when initial query returns 0 rows

  • 7022538
  • 11-Jan-2018
  • 11-Jan-2018


Operations Center 5.X


You have Data Integrator (BDI) Adapter based off of a BDI Definition which is setup to do a Delta Query using Macro Expressions. On starting the Adapter the initial BDI query returns 0 rows from the given database, and in the Formula.trc you see a warning stating the BDI Adapter is throwing a type mismatch message.


Modify the BDI Definition to check if the Computed property is set to NULL or is set to a value.

Example BDI Definition:
#if ( ${query.initial} || !${query.getProperty().ComLastOccurTime})
     DATEADD(ss, LastOccurTime, '19700101')  >  dateadd(hour, -1, getdate())
     LastOccurTime  >   '${query.getProperty().ComLastOccurTime}'

In the above example I have ${query.getProperty().ComLastOccurTime} as my computed property.


The cause is due to Macro Expression Engine setting the “computed” property to “NULL” when the initial query returns 0 rows. On the next iteration of the BDI Adapter it will execute the else portion of the statement and plug in "NULL" for the "Computed" property.

Feedback service temporarily unavailable. For content questions or problems, please contact Support.