slow... Thanks for the response. I do use the the method you suggest for generating the "This Page Intentionally Blank" message on an extra page to satisfy the duplex requirement. However you still get column and page headers so you really don't get a blank page. I also add a boolean we name DUPLEX to turn the page on and off depending on the printer thus avoiding the extra page when not printing to duplex capable printer. ($P{DUPLEX} == true) & ($V{PAGE_NUMBER} % 2 == 1) Putting everything in generated groups and avoiding builtin groups such as column, page .. etc is a possibility but you give up a lot of productivity. One of the reasons for using iReport. I think to handle the duplex report as a blank page iReport would have to expose the next and possibly previous fields in the result set for the report. I would think that the next fields must be present for the bands to work. The other option is to include them in the query. This runs into the issue of analytics in the query, easy to write (at least in oracle), expensive to run, especially if the you are talking about a view used elsewhere many times. Anyway for now my column header print when expression remains empty. Thanks, Bob