Hi Developer,
I'm working on a print report in D365FO that requires a fixed total body/table height per page, but with rows that grow dynamically based on content length.
The requirement:
- The table body has a fixed total height (e.g., enough space for ~10 lines)
- Each row height is dynamic — it wraps and grows if the text is long
- The remaining space after all data rows must be filled with blank rows so the table body always reaches the fixed height
- All rows must be tight/compact with no extra gaps between them
What I've tried:
The only workable approach I found so far:
- CanGrow = false on data rows
- Inject shadow/dummy records via DP preprocessing to pad up to a fixed row count
Problems:
1. Gap inconsistency — When real rows grow due to long text, the total height of real rows + dummy rows often exceeds or doesn't exactly match the fixed body height, causing visible spacing gaps or page overflow
2. Can't predict row height at preprocessing time — The actual rendered height of a row depends on font, column width, and text length, which is only known at render time (not at DP/X++ level)
3. Dummy row height miscalculation — If real rows consume more vertical space due to wrapping, the dummy rows need to shrink accordingly, but SSRS has no native mechanism for this
Core challenge:
SSRS does not provide a way to make the remaining blank rows dynamically absorb the leftover space after variable-height data rows. The renderer calculates row heights independently.
My questions:
1. Is there any SSRS technique (expressions, rectangle containers, sub-reports, custom sizing) that allows the padding/blank rows to auto-fill remaining body space after dynamic-height data rows?
2. Has anyone handled this with a custom RDL rendering approach or post-processing?
3. Would switching to a Word template merge (via Document Management in D365FO) be a more reliable solution for strict layout fidelity like this?
4. Any experience with third-party report engines (e.g., FastReport.NET embedded in D365FO, or generating PDF directly from X++) that handle this kind of layout better than SSRS?
Thanks in advance!