Issue 31183 — Since BUG fix 30704 components with entities below break frame do not compile
Status: Solved in 10.2.01
Solution available in patch(es): G104
Description:
Summary: The solution for BUG 30704 (Compiler does not throw error when entity frame below page break frame) can cause compatibility problems. Prior to the bug fix there was a loophole in the compiler that allowed to place entity frames directly below or within a break frame (page break). Environment: +Uniface: Version 9.6.07 - X705 (and higher) +Operating System: OS independent +Database: DBMS independent Symptoms: The solution for BUG 30704 (Compiler does not throw error when entity frame below page break frame) can cause compatibility problems. Prior to the bug fix there was a loophole in the compiler that allowed to place entity frames directly below or within a break frame (page break). In older versions of Uniface it was possible to place entity frames after or within a break frame. Some existing reports have multiple 1x1 entity frames painted at the bottom of a component (after break frame) for referential integrity control. With bug fix 30704 the compiler will throw error: '1054 - Entity frames not allowed below a trailer/break frame' and the component will not compile The fix for BUG 31116 - 'X705: The solution for BUG 30704 is causing compatibility problems' partially restored compatibility but not in all cases. Components with entity frames painted below or within a break frame still throw error: '1054 - Entity frames not allowed below a trailer/break frame' when compiling in 9.701 + G102.
Workaround:
Move any entity frame that is painted below the break frame to a position above it.
Notes:
After the fix, you'll get a compiler warning instead of a compiler error when an entity is painted below a page break frame. When an entity is painted below a trailer frame, nothing will be changed so that Uniface raises a compiler error.