From 7b53bbc78383c10c042370862bedd461d8af9cff Mon Sep 17 00:00:00 2001 From: John Date: Mon, 15 Jun 2020 14:12:26 +0000 Subject: [PATCH] B2020-085 Needed to consider the starting position as well as the length of AEP substeps when checking to see if they print past the RNO that PROMS was to break on. --- PROMS/Volian.Print.Library/Pagination.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/PROMS/Volian.Print.Library/Pagination.cs b/PROMS/Volian.Print.Library/Pagination.cs index bbfb0d21..6aa31cdd 100644 --- a/PROMS/Volian.Print.Library/Pagination.cs +++ b/PROMS/Volian.Print.Library/Pagination.cs @@ -1589,6 +1589,7 @@ namespace Volian.Print.Library // B2020-016 for Robinson AOP-010 step 27 was breaking too soon // B2020-073 was not keeping all of RNO sub-step together - Comanche Peak FRC-0.1 (unit 1) Step 14 // B2020-081 was breaking on an AER substep that has an long RNO - should keep AER substep and part of RNO on the page = D.C. Cook "Current (Post FLEX) U1 NOP NOT [EOPs]" set, ES-0.1 step 1. + // B2020-085 was breaking first child of second RNO (if third IF in RNO) - should break on second child of second RNO - D.C. Cook AOP Unit 1 002-020 Step 15 if ((-yLocation + yStart) >= yLowerLimit) { vlnParagraph rnoChild = myPara.HasSecondRNOThatWillFit(yStart, yLowerLimit, yUpperLimit, myList, stepLevel, yTop); // Only if it is more than the lower limit @@ -1643,6 +1644,7 @@ namespace Volian.Print.Library // B2020-016 bad pagination on RNOs for Robinson AOP-010 step 27 , AOP-024 Step 10, EOP E-0 step 10, EOP ECA-2.1 step 28 // B2020-073 was not keeping all of RNO sub-step together - Comanche Peak FRC-0.1 (unit 1) Step 14 // B2020-081 was breaking on an AER substep that has an long RNO - should keep AER substep and part of RNO on the page = D.C. Cook "Current (Post FLEX) U1 NOP NOT [EOPs]" set, ES-0.1 step 1. + // B2020-085 was breaking first child of second RNO (if third IF in RNO) - should break on second child of second RNO - D.C. Cook AOP Unit 1 002-020 Step 15 private vlnParagraph HasSecondRNOThatWillFit(float yStart, float yLowerLimit, float yUpperLimit, StepLevelList myList, int stepLevel, float yTop) { // note: "this" is the myPara from where this method is called @@ -1673,7 +1675,7 @@ namespace Volian.Print.Library // check to see if there is AER substep children that would be spit if we pagination on the RNO foreach (vlnParagraph chld in parent.ChildrenBelow) - if (YBottomMostExcludingRNO(chld) > this.YTopMost) + if (chld.YOffset < this.YOffset && YBottomMostExcludingRNO(chld) > this.YTopMost) // B2020-085 Does AER child start before myPara and length greater than myPara start return null; // the AER text positioning overlaps the RNO text positioning (caused AER sub-steps to be split onto next page (i.e. RO step) have pagination logic keep looking for place to break return this; // current myPara is good