fix(form_1_2): cap reason/workload text length to prevent page overflow
continuous-integration/drone/push Build is passing

FastReport doesn't support splitting a single growing text object
mid-paragraph across multiple physical pages — an oversized field
just clips at the page boundary instead of flowing to a new page.
Capped the free-text fields most prone to this (reason, old/new
workload) at 200-300 characters with a "..." suffix when truncated,
so pathologically long input degrades gracefully instead of clipping
mid-sentence or overlapping following content.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0153wBt23EjW125ZsADwWVAs
This commit is contained in:
Nut.ไปเรื่อย
2026-09-08 18:50:07 +07:00
parent 2aa1e455e8
commit ff353b65f9
@@ -80,7 +80,7 @@
<TextObject Name="P1PosQualVal" Left="292.95" Top="28.35" Width="302.4" Height="28.35" Text="[form_1_2.form_1_2_positions.old_qualification]" HorzAlign="Center" VertAlign="Bottom" Font="TH Sarabun New, 16pt"/> <TextObject Name="P1PosQualVal" Left="292.95" Top="28.35" Width="302.4" Height="28.35" Text="[form_1_2.form_1_2_positions.old_qualification]" HorzAlign="Center" VertAlign="Bottom" Font="TH Sarabun New, 16pt"/>
<TextObject Name="P1Reasons" Top="66.15" Width="718.2" Height="28.35" Text="โดยมีเหตุผลและความจำเป็นดังนี้" Font="TH Sarabun New, 16pt, style=Bold"/> <TextObject Name="P1Reasons" Top="66.15" Width="718.2" Height="28.35" Text="โดยมีเหตุผลและความจำเป็นดังนี้" Font="TH Sarabun New, 16pt, style=Bold"/>
<TextObject Name="P1ReasonsText" Top="94.5" Width="718.2" Height="94.5" Text="[form_1_2.form_1_2_positions.reason]" CanGrow="true" Font="TH Sarabun New, 16pt"/> <TextObject Name="P1ReasonsText" Top="94.5" Width="718.2" Height="94.5" Text="[([form_1_2.form_1_2_positions.reason] != null &amp;&amp; [form_1_2.form_1_2_positions.reason].Length > 300) ? [form_1_2.form_1_2_positions.reason].Substring(0, 300) + &quot;...&quot; : [form_1_2.form_1_2_positions.reason]]" CanGrow="true" Font="TH Sarabun New, 16pt"/>
<TextObject Name="P1Attach" Top="189" Width="718.2" Height="28.35" Text="พร้อมทั้งแนบเอกสารประกอบการเสนอขออัตราใหม่ มาพร้อมนี้" Font="TH Sarabun New, 16pt, style=Bold"/> <TextObject Name="P1Attach" Top="189" Width="718.2" Height="28.35" Text="พร้อมทั้งแนบเอกสารประกอบการเสนอขออัตราใหม่ มาพร้อมนี้" Font="TH Sarabun New, 16pt, style=Bold"/>
<TextObject Name="P1AttachNote" Top="217.35" Width="718.2" Height="28.35" Text="(ขอความอนุเคราะห์กองนโยบายและแผนตรวจสอบเอกสารตามนี้)" Font="TH Sarabun New, 14pt"/> <TextObject Name="P1AttachNote" Top="217.35" Width="718.2" Height="28.35" Text="(ขอความอนุเคราะห์กองนโยบายและแผนตรวจสอบเอกสารตามนี้)" Font="TH Sarabun New, 14pt"/>
@@ -139,11 +139,11 @@
<TextObject Name="P2OldWorkLabel" Top="388.35" Width="359.1" Height="28.35" Border.Lines="Left,Right" Text="ภาระงานที่รับผิดชอบ" Font="TH Sarabun New, 16pt"/> <TextObject Name="P2OldWorkLabel" Top="388.35" Width="359.1" Height="28.35" Border.Lines="Left,Right" Text="ภาระงานที่รับผิดชอบ" Font="TH Sarabun New, 16pt"/>
<TextObject Name="P2NewWorkLabel" Left="359.1" Top="388.35" Width="359.1" Height="28.35" Border.Lines="Left,Right" Text="ภาระงานที่รับผิดชอบ" Font="TH Sarabun New, 16pt"/> <TextObject Name="P2NewWorkLabel" Left="359.1" Top="388.35" Width="359.1" Height="28.35" Border.Lines="Left,Right" Text="ภาระงานที่รับผิดชอบ" Font="TH Sarabun New, 16pt"/>
<TextObject Name="P2OldWorkVal" Top="416.7" Width="359.1" Height="132.3" Border.Lines="Left,Right,Bottom" Text="[form_1_2.form_1_2_positions.old_workload]" CanGrow="true" Font="TH Sarabun New, 16pt"/> <TextObject Name="P2OldWorkVal" Top="416.7" Width="359.1" Height="132.3" Border.Lines="Left,Right,Bottom" Text="[([form_1_2.form_1_2_positions.old_workload] != null &amp;&amp; [form_1_2.form_1_2_positions.old_workload].Length > 200) ? [form_1_2.form_1_2_positions.old_workload].Substring(0, 200) + &quot;...&quot; : [form_1_2.form_1_2_positions.old_workload]]" CanGrow="true" Font="TH Sarabun New, 16pt"/>
<TextObject Name="P2NewWorkVal" Left="359.1" Top="416.7" Width="359.1" Height="132.3" Border.Lines="Left,Right,Bottom" Text="[form_1_2.form_1_2_positions.new_workload]" CanGrow="true" Font="TH Sarabun New, 16pt"/> <TextObject Name="P2NewWorkVal" Left="359.1" Top="416.7" Width="359.1" Height="132.3" Border.Lines="Left,Right,Bottom" Text="[([form_1_2.form_1_2_positions.new_workload] != null &amp;&amp; [form_1_2.form_1_2_positions.new_workload].Length > 200) ? [form_1_2.form_1_2_positions.new_workload].Substring(0, 200) + &quot;...&quot; : [form_1_2.form_1_2_positions.new_workload]]" CanGrow="true" Font="TH Sarabun New, 16pt"/>
<TextObject Name="P2ReasonLabel" Top="558.9" Width="718.2" Height="28.35" Text="เหตุผลความจำเป็น" Font="TH Sarabun New, 16pt, style=Underline,Bold"/> <TextObject Name="P2ReasonLabel" Top="558.9" Width="718.2" Height="28.35" Text="เหตุผลความจำเป็น" Font="TH Sarabun New, 16pt, style=Underline,Bold"/>
<TextObject Name="P2ReasonVal" Top="587.25" Width="718.2" Height="94.5" Border.Lines="Bottom" Text="[form_1_2.form_1_2_positions.reason]" CanGrow="true" Font="TH Sarabun New, 16pt"/> <TextObject Name="P2ReasonVal" Top="587.25" Width="718.2" Height="94.5" Border.Lines="Bottom" Text="[([form_1_2.form_1_2_positions.reason] != null &amp;&amp; [form_1_2.form_1_2_positions.reason].Length > 300) ? [form_1_2.form_1_2_positions.reason].Substring(0, 300) + &quot;...&quot; : [form_1_2.form_1_2_positions.reason]]" CanGrow="true" Font="TH Sarabun New, 16pt"/>
<TextObject Name="P2Certify" Top="700.65" Width="718.2" Height="28.35" Text="ขอรับรองว่าข้อความดังกล่าวข้างต้นเป็นความจริงทุกประการ" Font="TH Sarabun New, 16pt"/> <TextObject Name="P2Certify" Top="700.65" Width="718.2" Height="28.35" Text="ขอรับรองว่าข้อความดังกล่าวข้างต้นเป็นความจริงทุกประการ" Font="TH Sarabun New, 16pt"/>