B2017-103: Bottom continue message location adjustment

B2017-103: Bottom continue message location adjustment using format value
This commit is contained in:
Kathy Ruffing 2017-06-01 12:26:33 +00:00
parent cbf44eb689
commit 4324fd93ae
3 changed files with 16 additions and 1 deletions

Binary file not shown.

View File

@ -836,6 +836,15 @@ namespace VEPROMS.CSLA.Library
return LazyLoad(ref _NoOverrideSpace, "@NoOverrideSpace");
}
}
private LazyLoad<int?> _LocAdj;
public int? LocAdj
{
get
{
return LazyLoad(ref _LocAdj, "@LocAdj");
}
}
#endregion
#region Message
private LazyLoad<string> _Message;

View File

@ -1620,7 +1620,13 @@ namespace Volian.Print.Library
float yTopMargin = _PointsPerPage - (float)myItemInfo.MyDocStyle.Layout.TopMargin;
yTopMargin -= _MyHelper.AdjustTopMarginForMultiLinePageListItems;
// the following line was modified to comment out the - 2 * SixLinesPerInch. this fixed a pagination problem with WCN EMG E-3.
float yBottomMargin = Math.Max(0, yTopMargin - (float)myItemInfo.MyDocStyle.Layout.PageLength); // - 2 * vlnPrintObject.SixLinesPerInch);
// The change mentioned above caused the bottom message to print without a line separating it from step text (if the text was long
// enough to go to the bottom of page). A fix for this problem, B2017-103, is to use a format variable to define
// how many lines will go above the continue message. It was done this way so that it fixes the format/data that the problem
// was found in, i.e. Ginna Rev2 SAMG, SAG-3 step 7. This change won't affect other plants/formats but if the problem occurs
// the format value can be used to adjust the location of bottom message. However, this could adversely affect pagination and
// each plant/format needs to be done on a case by base basis.
float yBottomMargin = Math.Max(0, yTopMargin - (float)myItemInfo.MyDocStyle.Layout.PageLength - (myItemInfo.MyDocStyle.Continue.Bottom.LocAdj==null?0:(int)myItemInfo.MyDocStyle.Continue.Bottom.LocAdj));
vlnParagraph.PathPrefix = myItemInfo.Path;
//Rtf2Pdf.PdfDebug = true;
Rtf2Pdf.Offset = new PointF(0, 2.5F);