Skip to main content
Question

Report Studio (25R2) - WatermarkId expression binding cannot read data fields


Hello,

I’m migrating an invoice layout to IFS Report Studio from Crystal Reports (IFS Cloud 25R2 SU9) and need a dynamic watermark: DUPLICATE / COPY / PRELIMINARY depending on print context.

 

Setup

  • The report definition (.rdf) computes a header-level field WATERMARK_TAG holding the watermark ID. The value is confirmed correct in the generated XML (e.g. <WATERMARK_TAG>PRELIMINARY</WATERMARK_TAG>).
  • The report’s Watermarks collection contains one text watermark per ID: DUPLICATE, COPY, PRELIMINARY and NONE.
  • The report’s WatermarkId property is bound to an expression.

 

Results
(test document: WATERMARK_TAG = PRELIMINARY in the XML)

  1. Hardcoded value → ✅ PRELIMINARY watermark printed
    'PRELIMINARY'
     
  2. Field only → ❌ first watermark of the collection (DUPLICATE) printed
    [INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG]
     
  3. Multi-condition Iif → ❌ no watermark printed (falls to the default branch NONE)
    Iif([INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG] == 'DUPLICATE', 'DUPLICATE', [INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG] == 'COPY', 'COPY', [INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG] == 'PRELIMINARY', 'PRELIMINARY', 'NONE')
     
  4. Nested Iif → ❌ no watermark printed (falls to the default branch NONE)
    Iif([INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG] == 'DUPLICATE', 'DUPLICATE',
      Iif([INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG] == 'PRELIMINARY', 'PRELIMINARY',
        Iif([INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG] == 'COPY', 'COPY',
          'NONE')))
     
  5. IsNullOrEmpty → ❌ error “The method or operation is not implemented”
    Iif(IsNullOrEmpty([INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_TAG]), 'NONE', [INVOICE_REP_REQUEST.INVOICE_REP.WATERMARK_ID])

 

The same field works fine in any label of the layout. The Expression Editor offers data fields for WatermarkId, but at runtime the field seems to always evaluate to NULL, and standard functions are not supported.

 

Questions

  • Is binding WatermarkId to a data field supported in Report Studio 25R2?
  • If not, what is the recommended way to display a conditional, full-page watermark (e.g. “COPY” only on copies) in Report Studio?

Thanks in advance!