ในโลกของการพัฒนาแอปพลิเคชันด้วยภาษา AL (Application Language) สำหรับระบบ Microsoft Dynamics 365 Business Central ข้อความ (String) เป็นสิ่งที่หลีกเลี่ยงไม่ได้ ไม่ว่าจะใช้เพื่อการแสดงผล การสร้างข้อความแจ้งเตือน การจัดโครงสร้างข้อมูล JSON/XML หรือแม้กระทั่งการสร้างไฟล์ข้อความส่งออก
ก่อนหน้านี้ การใช้งานข้อความที่มีหลายบรรทัดใน AL ถือเป็นเรื่องยุ่งยาก เนื่องจากต้องเขียนในรูปแบบบรรทัดเดียว หรือใช้เครื่องหมาย + เพื่อเชื่อมต่อหลาย ๆ บรรทัด ซึ่งทั้งอ่านยากและดูไม่เป็นระเบียบ
ใน Release 2025 wave 1 Microsoft ได้เพิ่มความสามารถใหม่ที่ชื่อว่า Multiline Strings ซึ่งช่วยให้นักพัฒนาสามารถเขียนข้อความหลายบรรทัดได้อย่างชัดเจน อ่านง่าย และจัดรูปแบบได้เหมือนที่เราต้องการ
รูปแบบการใช้งาน (Syntax)
Multiline Strings ใน AL ใช้สัญลักษณ์ @ (at sign) เพื่อเริ่มต้นข้อความหลายบรรทัด โดยครอบข้อความไว้ด้วยเครื่องหมาย single quote '...'
MyText := @'
Line 1
Line 2
Line 3';
ผลลัพธ์ของ MyText จะเป็น string เดียว ที่มีการขึ้นบรรทัดใหม่ภายในข้อความตามที่เขียนไว้
ข้อควรระวัง (Important Note)
เว้นวรรค (Whitespace) = ข้อมูลจริง
ช่องว่าง (spaces) ที่เราใส่เพื่อ indent จะถูกนับเป็นส่วนหนึ่งของข้อความจริง
ตัวอย่าง
IndentedText := @'
Hello
World!';
ผลลัพธ์
Hello
World!
แนะนำให้เขียนชิดซ้ายที่สุดถ้าต้องการข้อความที่ไม่มีช่องว่างเกิน
ตัวอย่างการใช้งานจริง (Example)
ตัวอย่าง 1: สร้าง JSON สำหรับส่ง API
procedure GetJsonTemplate(): Text
var
JsonText: Text;
begin
JsonText := @'
{
"customerId": "CUST-001",
"name": "Contoso Ltd.",
"status": "Active",
"contacts": [
{
"name": "John Doe",
"email": "john@contoso.com"
}
]
}';
exit(JsonText);
end;
ตัวอย่าง 2: ใช้ร่วมกับ Message()
procedure ShowWelcomeMessage()
begin
Message(@'
Welcome to BC-ALife!
This solution is powered by Dynamics 365 Business Central.
Happy Coding!');
end;
สรุป (Summary)
Multiline Strings ที่เปิดตัวใน Business Central 2025 Release Wave 1 ช่วยให้นักพัฒนาสามารถเขียนข้อความหลายบรรทัดในภาษา AL ได้ง่ายขึ้น โดยใช้เพียงสัญลักษณ์ @ นำหน้าข้อความแบบ '...'
