ไวยากรณ์เทมเพลต
ตัวแปรคือตัวแทนค่าในเทมเพลตของคุณ ซึ่งจะถูกแทนที่ด้วยข้อมูลจากแต่ละระเบียน: แถวในตาราง Excel รายการในลิสต์ SharePoint แถวใน Dataverse แถวในชีต Google Sheets ระเบียนใน Lark Base หรือ JSON ที่คุณส่งผ่าน API เอกสาร ไวยากรณ์เหมือนกันไม่ว่าข้อมูลจะมาจากแหล่งใด
ไวยากรณ์พื้นฐาน
หัวข้อที่มีชื่อว่า “ไวยากรณ์พื้นฐาน”ใช้วงเล็บปีกกาคร่อมชื่อฟิลด์ที่ถูกต้อง:
{Field_Name}ตัวอย่าง:
{Customer_Name}→ “Acme Corp”{Invoice_Date}→ “2024-01-15”{Total_Amount}→ “1,500.00”
ตัวแทนค่าแสดงผลอะไร
หัวข้อที่มีชื่อว่า “ตัวแทนค่าแสดงผลอะไร”หากไม่มีฟิลเตอร์ ตัวแทนค่าจะแสดงค่าตามที่แหล่งข้อมูลแสดง ส่วนฟิลเตอร์ตัวเลขและวันที่จะทำงานกับค่าดิบที่อยู่เบื้องหลังแทน ดูฟิลเตอร์อ่านค่าดิบ
| ค่า | Excel | ลิสต์ SharePoint | Dataverse | Google Sheets | Lark Base | API เอกสาร |
|---|---|---|---|---|---|---|
| ตัวเลข | ตามที่เซลล์แสดง | 1,234.5 ตามจำนวนทศนิยมของคอลัมน์ |
ข้อความที่ Dataverse จัดรูปแบบแล้ว | ตามที่เซลล์แสดง | รูปแบบตัวเลขของฟิลด์ | ตามที่ส่งมา: 1234.5 |
| สกุลเงิน | ตามที่เซลล์แสดง | โดยปกติในสกุลเงินของคอลัมน์: $1,234.50 |
ข้อความที่ Dataverse จัดรูปแบบแล้ว พร้อมสัญลักษณ์สกุลเงิน | ตามที่เซลล์แสดง | ในสกุลเงินของฟิลด์: $1,234.50 |
ตามที่ส่งมา |
| เปอร์เซ็นต์ | ตามที่เซลล์แสดง: 12% |
12% |
เป็นตัวเลข | ตามที่เซลล์แสดง: 12% |
ฟิลด์ความคืบหน้า โดยปกติ: 12% |
ตามที่ส่งมา |
| วันที่ เวลา | ตามที่เซลล์แสดง | 2026/02/26 หรือ 2026/02/26 15:30 เมื่อมีเวลา |
2026/02/26 หรือ 2026/02/26 15:30 เมื่อมีเวลา |
ตามที่เซลล์แสดง | รูปแบบวันที่ของฟิลด์ ค่าเริ่มต้นคือ 2026/02/26 |
ตามที่ส่งมา |
| บุคคล | ข้อความ | ชื่อ | Lookup ที่แสดงชื่อ | ชิปบุคคล: ชื่อ | ชื่อ | ตามที่ส่งมา |
| ลิงก์ | =HYPERLINK(…): ที่อยู่ |
ที่อยู่ | ที่อยู่ | เซลล์ที่เป็นลิงก์เดียว: ที่อยู่ | ที่อยู่ | ตามที่ส่งมา |
| ตัวเลือก | ข้อความ | ป้ายกำกับ หลายค่าคั่นด้วยจุลภาค | ป้ายกำกับ หลายค่าคั่นด้วยจุลภาค | ตัวเลือก หลายค่าตามที่เซลล์แสดง | ตัวเลือก หลายค่าคั่นด้วยจุลภาค | ตามที่ส่งมา รายการจะคั่นด้วยจุลภาค |
| ใช่/ไม่ใช่ | true / false |
true / false |
ป้ายกำกับของคอลัมน์เอง เช่น Yes / No |
ช่องทำเครื่องหมาย: true / false |
ช่องทำเครื่องหมาย: true / false |
true / false |
| รูปภาพ ไฟล์ | คอลัมน์รูปภาพ | คอลัมน์ Picture และ Image และ {Attachments} ของรายการ |
คอลัมน์รูปภาพและไฟล์ บันทึกย่อ | ชิปไฟล์ ลิงก์ไปยังไฟล์ใน Drive และ =IMAGE(…) |
ฟิลด์ไฟล์แนบ | URL ของรูปภาพ |
| แถวที่เชื่อมโยง | ตารางที่เกี่ยวข้อง | คอลัมน์ Lookup | Lookup และความสัมพันธ์ | แท็บที่เกี่ยวข้อง | ฟิลด์ลิงก์และ Lookup | ออบเจกต์และรายการ |
- วันที่จาก SharePoint, Dataverse และ Lark Base แสดงตามเขตเวลาของเทมเพลต (เทมเพลต → ผลลัพธ์ → เขตเวลา หรือ UTC หากไม่ได้ตั้งไว้)
- เซลล์หรือฟิลด์ที่ว่างจะไม่แสดงอะไร และนับว่าว่างใน
{#if} - รูปภาพและไฟล์ไม่แสดงเป็นข้อความ ให้วางผ่าน Alt Text ของรูป (ดูรูปภาพแบบไดนามิก) หรือเพิ่มลงใน PDF ด้วย
{ATTACH:…} - เข้าถึงแถวที่เชื่อมโยงด้วยเครื่องหมายจุดหรือลูป ดูระเบียนที่เชื่อมโยง
- ลิงก์และบุคคลมีคุณสมบัติย่อย เช่น
{Website.text}และ{Owner.email}ดูคุณสมบัติเพิ่มเติมของฟิลด์ - Lark Base: ฟิลด์สูตรแสดงผลตามชนิดของผลลัพธ์ (ข้อความ ตัวเลข หรือวันที่) ฟิลด์คะแนนมักแสดงเป็น
4/5และฟิลด์ Lookup แสดงค่าที่ดึงมา
หน้าของแต่ละแหล่งข้อมูลมีรายละเอียดเพิ่มเติม ได้แก่ ส่วนเสริม Excel ลิสต์ SharePoint และ Dataverse ส่วนเสริม Google Sheets และ API เอกสาร
ฟิลเตอร์อ่านค่าดิบ
หัวข้อที่มีชื่อว่า “ฟิลเตอร์อ่านค่าดิบ”ฟิลเตอร์ตัวเลขและวันที่จะไม่สนใจว่าค่าแสดงผลอย่างไร แต่จะนำค่าดิบที่อยู่เบื้องหลังมาจัดรูปแบบใหม่:
{Price} → "$1,234.50" (ตามที่แหล่งข้อมูลแสดง){Price | number:2} → "1,234.50" (ตัวเลขดิบ จัดรูปแบบใหม่){Price | currency:"EUR":"de-DE"} → "1.234,50 €" (ตัวเลขดิบ locale เยอรมัน)
{Date} → "2026/02/26" (ตามที่แหล่งข้อมูลแสดง){Date | date:"DD MMM YYYY"} → "26 Feb 2026" (วันที่ดิบ จัดรูปแบบใหม่)ค่าดิบยังเป็นสิ่งที่ sum, avg, max, min, where และ sort ใช้เปรียบเทียบด้วย ค่าดิบคืออะไรขึ้นอยู่กับแหล่งข้อมูล:
| แหล่งข้อมูล | ตัวเลขดิบ | วันที่ดิบ |
|---|---|---|
| Excel | ค่าของเซลล์ ไม่ว่าจะใช้รูปแบบตัวเลขใด | วันและเวลาที่เซลล์เก็บไว้ ตามเขตเวลาของเทมเพลต |
| ลิสต์ SharePoint | ตัวเลขที่จัดเก็บไว้ | คอลัมน์วันที่อย่างเดียว: วันนั้น ตามเขตเวลาของเทมเพลต คอลัมน์วันที่และเวลา: ช่วงเวลาที่จัดเก็บไว้ |
| Dataverse | ตัวเลขที่จัดเก็บไว้ | คอลัมน์วันที่อย่างเดียวหรือคอลัมน์ที่ไม่ขึ้นกับเขตเวลา: วันและเวลาที่คอลัมน์เก็บไว้ ตามเขตเวลาของเทมเพลต คอลัมน์อื่น: ช่วงเวลาที่จัดเก็บไว้ |
| Google Sheets | ค่าที่อยู่ใต้รูปแบบของเซลล์ | วันและเวลาที่เซลล์เก็บไว้ ตามเขตเวลาของเทมเพลต |
| Lark Base | ตัวเลขของฟิลด์ | ช่วงเวลาที่จัดเก็บไว้ |
| API เอกสาร | ตัวเลข JSON หรือข้อความที่เป็นตัวเลขธรรมดา เช่น "1234.5" |
ข้อความ เช่น 2026-02-26 หรือ 2026-02-26 15:30 อ่านตามเขตเวลาของเทมเพลต ข้อความที่มีเขตเวลา เช่น 2026-02-26T15:30:00Z อ่านตามที่เขียน ตัวเลขอ่านเป็นมิลลิวินาทีนับจาก 1 มกราคม 1970 (UTC) |
- ค่าดิบของเปอร์เซ็นต์เป็นเศษส่วน:
12%คือ0.12และpercentจะคูณด้วย 100 เมื่อส่งผ่าน API เอกสาร ให้ส่ง0.12ไม่ใช่12 - ค่าที่ไม่มีตัวเลขดิบจะแสดงตามเดิมพร้อมคำเตือนเมื่อใช้ฟิลเตอร์ตัวเลข ซึ่งรวมถึงข้อความที่มีตัวคั่น เช่น
"1,234.50"ฟิลด์คะแนนของ Lark และฟิลด์ Lookup ของ Lark ที่มีตัวเลขมากกว่าหนึ่งค่า - ใน Excel และ Google Sheets เซลล์ที่มีเฉพาะเวลาหรือระยะเวลาถือเป็นข้อความ จะแสดงตามที่เห็นและไม่นับเป็นวันที่
- เวิร์กบุ๊ก Excel ที่ใช้ระบบวันที่แบบ 1904 จะแสดงวันที่ได้ถูกต้อง แต่เมื่อ AutomaDoc อ่านจาก OneDrive หรือ SharePoint (เทมเพลตที่ผูกกับไฟล์) วันที่ดิบจะเร็วไปสี่ปีกับอีกหนึ่งวัน
ระเบียนที่เชื่อมโยง (ฟิลด์ซ้อน)
หัวข้อที่มีชื่อว่า “ระเบียนที่เชื่อมโยง (ฟิลด์ซ้อน)”ระเบียนที่เชื่อมโยงมาจากตารางที่เกี่ยวข้อง (Excel) Lookup (SharePoint, Dataverse) แท็บที่เกี่ยวข้อง (Google Sheets) ฟิลด์ลิงก์ (Lark Base) หรือออบเจกต์ที่ซ้อนกัน (API เอกสาร) เข้าถึงฟิลด์ของระเบียนเหล่านี้ด้วยเครื่องหมายจุด:
{Customer.Name}{Customer.Address}{Customer.Email}ซ้อนได้ลึกสุด 5 ระดับ:
{Order.Customer.Company.Address.City}คุณสมบัติเพิ่มเติมของฟิลด์ (เครื่องหมายจุด)
หัวข้อที่มีชื่อว่า “คุณสมบัติเพิ่มเติมของฟิลด์ (เครื่องหมายจุด)”ลิงก์และบุคคลมีคุณสมบัติย่อยให้เรียกใช้ผ่านเครื่องหมายจุด ฟิลด์บางประเภทของ Lark Base ก็เช่นกัน หากไม่ใช้จุด จะแสดงค่าเริ่มต้น
ลิงก์จากเซลล์ =HYPERLINK(…) ของ Excel คอลัมน์ไฮเปอร์ลิงก์ของ SharePoint เซลล์ Google Sheets ที่เป็นลิงก์เดียว หรือฟิลด์ URL ของ Lark:
{Website} → "https://example.com" (ที่อยู่){Website.text} → "Example Site" (ข้อความที่แสดง){Website.link} → "https://example.com" (ที่อยู่)ใน Google Sheets เซลล์ที่มีลิงก์อยู่ภายในข้อความอื่นจะแสดงข้อความนั้น ใน Excel ลิงก์ที่เพิ่มด้วย แทรก → ลิงก์ จะแสดงข้อความของลิงก์
บุคคลหนึ่งคน จากคอลัมน์บุคคลของ SharePoint หรือฟิลด์ Created By หรือ Modified By ของ Lark:
{Owner} → "John Doe" (ชื่อ){Owner.name} → "John Doe"{Owner.email} → "john@example.com" (SharePoint){Owner.en_name} → "John Doe" (Lark Base: ชื่อภาษาอังกฤษ){Owner.id} → ID ของบุคคลในแหล่งข้อมูล ใน Lark Base คือ ID ผู้ใช้ Lark เช่น "ou_abc123"ในที่ที่ใส่ได้หลายคน ค่าจะเป็นลิสต์แม้จะมีคนเดียวก็ตาม ดังนั้น {Assignee.name} จะไม่ได้ค่า ได้แก่ ฟิลด์ User ของ Lark เซลล์ชิปบุคคลของ Google Sheets หรือคอลัมน์บุคคลของ SharePoint ที่อนุญาตให้ใส่หลายคน ให้ใช้การระบุลำดับสำหรับบุคคลที่ต้องการ หรือใช้ลูปสำหรับทุกคน:
{Assignee} → "John Doe, Jane Roe" (ทุกชื่อ){Assignee[0].name} → "John Doe" (คนแรก){Assignee[0].email} → "john@example.com" (SharePoint, Google Sheets)
{#Assignee} {name}{/Assignee}ใน Dataverse บุคคล (เจ้าของ หรือ “created by”) เป็น Lookup: {Owner} แสดงชื่อ และ {Owner.Field} อ่านคอลัมน์ในแถวของบุคคลนั้น เหมือนระเบียนที่เชื่อมโยงอื่น ๆ
ฟิลด์ตำแหน่งที่ตั้ง (Lark Base)
หัวข้อที่มีชื่อว่า “ฟิลด์ตำแหน่งที่ตั้ง (Lark Base)”{Office} → "Headquarters, 123 Main St, City, Country"{Office.name} → "Headquarters"{Office.full_address} → "123 Main St, City, Country"{Office.address} → "123 Main St"ฟิลด์กลุ่ม (Lark Base)
หัวข้อที่มีชื่อว่า “ฟิลด์กลุ่ม (Lark Base)”ฟิลด์กลุ่มเป็นลิสต์ {Team.name} จึงไม่ได้ค่า ให้ใช้การระบุลำดับหรือลูปแทน:
{Team} → "Engineering, Design" (ชื่อกลุ่มคั่นด้วยจุลภาค){Team[0].name} → "Engineering" (กลุ่มแรก){Team[0].id} → ID ของกลุ่มแรกหากต้องการทุกกลุ่ม ให้ใช้ลูป:
{#Team} {name} (ID: {id}){/Team}หลายตัวเลือก
หัวข้อที่มีชื่อว่า “หลายตัวเลือก”ฟิลด์หลายตัวเลือกของ Lark คอลัมน์ตัวเลือกหรือคอลัมน์ Managed Metadata ของ SharePoint ที่มีหลายค่า ตัวเลือกแบบหลายค่าของ Dataverse หรือดรอปดาวน์แบบเลือกหลายค่าของ Google Sheets สามารถวนลูป หรือเชื่อมค่าด้วยตัวคั่นที่คุณกำหนดเองได้:
{Tags} → "Red, Blue, Green" (ค่าเริ่มต้นคั่นด้วยจุลภาค){Tags | join:" / "} → "Red / Blue / Green"{#Tags} - {.}{/Tags}เมื่อส่งผ่าน API เอกสาร รายการค่าธรรมดาจะมาถึงโดยเชื่อมด้วยจุลภาคไว้แล้ว ดังนั้น {Tags} จะแสดง Red, Blue, Green และวนลูปไม่ได้ หากต้องการวนลูป ให้ส่งรายการออบเจ็กต์
ลูป (ฟิลด์เชื่อมหลายระเบียน)
หัวข้อที่มีชื่อว่า “ลูป (ฟิลด์เชื่อมหลายระเบียน)”สำหรับฟิลด์ที่เชื่อมกับหลายระเบียน ให้ใช้ไวยากรณ์ลูปเพื่อทำซ้ำเนื้อหาสำหรับแต่ละรายการ:
{#Line_Items} Product: {Product_Name} Quantity: {Quantity} Price: {Price}{/Line_Items}{#Field} เปิดลูป และ {/Field} ปิดลูป ภายในลูปให้ใช้ชื่อฟิลด์โดยไม่ต้องใส่ชื่อฟิลด์แม่นำหน้า
แท็กปิดแบบย่อ
หัวข้อที่มีชื่อว่า “แท็กปิดแบบย่อ”คุณสามารถใช้ {/} แทนการพิมพ์ชื่อฟิลด์ซ้ำ:
{#Line_Items} {Product_Name} - {Price}{/}การขยายแถวตาราง
หัวข้อที่มีชื่อว่า “การขยายแถวตาราง”เมื่อวางแท็กลูปไว้ในแถวของตาราง ทั้งแถวจะถูกทำซ้ำสำหรับแต่ละรายการ จึงเหมาะมากสำหรับตารางรายการสินค้า
| Product | Qty | Price |
|---|---|---|
{#Line_Items} {Product_Name} |
{Quantity} |
{Price} {/Line_Items} |
อาร์เรย์ของค่าอย่างง่าย
หัวข้อที่มีชื่อว่า “อาร์เรย์ของค่าอย่างง่าย”สำหรับอาร์เรย์ที่เก็บค่าอย่างง่าย (ไม่ใช่อ็อบเจ็กต์) ให้ใช้ {.} เพื่ออ้างถึงรายการปัจจุบัน:
{#Tags} {.}{/Tags}ข้อมูลกำกับของลูป
หัวข้อที่มีชื่อว่า “ข้อมูลกำกับของลูป”ภายในลูปใด ๆ จะมีตัวแปรพิเศษเหล่านี้ให้ใช้:
| ตัวแปร | คำอธิบาย | ตัวอย่าง |
|---|---|---|
{$index} |
ลำดับปัจจุบัน (เริ่มที่ 0) | 0, 1, 2, … |
{$num} |
หมายเลขแถว (เริ่มที่ 1) | 1, 2, 3, … |
{$first} |
เป็น true ที่รายการแรก |
แสดงค่า true / false |
{$last} |
เป็น true ที่รายการสุดท้าย |
แสดงค่า true / false |
ลูปซ้อนลูป
หัวข้อที่มีชื่อว่า “ลูปซ้อนลูป”ลูปสามารถซ้อนกันได้ ลูปด้านในยังเข้าถึงฟิลด์จากขอบเขตด้านนอกได้:
{#Departments} Department: {Name} {#Employees} {Name} works in {Department.Name} {/Employees}{/Departments}หากมีชื่อฟิลด์ซ้ำกันทั้งด้านในและด้านนอก ระบบจะให้ความสำคัญกับขอบเขตด้านใน
การกรอง การเรียงลำดับ และการจำกัดจำนวนแถว
หัวข้อที่มีชื่อว่า “การกรอง การเรียงลำดับ และการจำกัดจำนวนแถว”เพิ่มฟิลเตอร์ที่แท็กเปิดของลูป เพื่อเลือกว่าจะทำซ้ำแถวใดบ้าง และเรียงตามลำดับใด:
{#Line_Items | where:"Status == 'Approved'" | sort:"Amount":"desc" | limit:10} {Product_Name} {Amount | currency:"USD"}{/Line_Items}| ฟิลเตอร์ | หน้าที่ | ตัวอย่าง |
|---|---|---|
where |
เก็บไว้เฉพาะแถวที่ตรงตามเงื่อนไข | where:"Status == 'Approved'" |
sort |
เรียงแถวตามฟิลด์ จากน้อยไปมากหรือจากเก่าไปใหม่ | sort:"Due_Date" |
sort |
… หรือจากมากไปน้อยหรือจากใหม่ไปเก่า | sort:"Amount":"desc" |
limit |
เก็บไว้เฉพาะแถวแรก ๆ | limit:10 |
offset |
ข้ามแถวแรก ๆ | offset:10 |
unique |
เก็บแถวแรกไว้หนึ่งแถวต่อค่าแต่ละค่าของฟิลด์ | unique:"Customer" |
ฟิลเตอร์ทำงานจากซ้ายไปขวาตามลำดับที่คุณเขียน: sort:"Amount":"desc" | limit:3 คือสามแถวที่มีค่ามากที่สุด ส่วน limit:3 | sort:"Amount":"desc" คือสามแถวแรก เรียงจากมากไปน้อย
เงื่อนไขของ where ให้เขียนไว้ในเครื่องหมายคำพูดคู่ และใส่ค่าที่เป็นข้อความไว้ในเครื่องหมายคำพูดเดี่ยว:
| เงื่อนไข | เก็บแถวที่ |
|---|---|
Status == 'Approved' |
Status เป็น Approved ทุกตัวอักษร |
Status != 'Draft' |
Status เป็นค่าใดก็ได้ที่ไม่ใช่ Draft |
Amount > 1000 |
Amount มากกว่า 1000 (ใช้ >=, <, <= ได้ด้วย) |
Paid |
Paid มีค่า เช่นเดียวกับ {#if Paid} |
!Notes |
Notes ว่าง |
- ตัวเลขจะเปรียบเทียบตามค่าดิบ ไม่ใช่ตามที่แสดงผล:
Amount > 1000ตรงกับ$1,250.00ให้เขียนตัวเลขแบบธรรมดา คือ1000ไม่ใช่1,000 - วันที่จะเปรียบเทียบกันแบบวันที่เมื่อเขียนในรูปแบบ
2026-01-31(หรือพร้อมเวลา2026-01-31 17:30) ตามเขตเวลาของเทมเพลต:where:"Due_Date >= '2026-01-01'"การเปรียบเทียบนับเป็นทั้งวัน:Due_Date > '2026-01-31'จะเริ่มตั้งแต่วันที่ 1 กุมภาพันธ์ - เชื่อมเงื่อนไขด้วย
&&(และ) และ||(หรือ) และจัดกลุ่มด้วยวงเล็บ:where:"Status == 'Approved' && (Amount > 1000 || Rush)" sortเรียงวันที่ตามลำดับวันที่ ตัวเลขตามลำดับตัวเลข และข้อความตามลำดับตัวอักษร เซลล์ว่างจะอยู่ท้ายสุดเสมอ- หากมีฟิลเตอร์
whereหลายตัว แถวต้องตรงทุกเงื่อนไข ฟิลเตอร์sortหลายตัวที่เขียนต่อกันจะเรียงตามตัวแรกก่อน แล้วจึงเรียงตามตัวถัดไปเมื่อค่าของตัวแรกเท่ากัน:sort:"Category" | sort:"Amount":"desc" - ฟิลด์ของระเบียนที่เชื่อมโยงใช้ได้ด้วยเครื่องหมายจุด:
where:"Product.Category == 'Hardware'" - สำหรับรายการค่าอย่างง่าย เช่น ฟิลด์หลายตัวเลือก ให้ใช้
.แทนตัวค่าเอง:{#Tags | where:". != 'Internal'" | sort} - ฟิลเตอร์ใช้ได้เหมือนกันทั้งในลูปแถวตาราง ลูปย่อหน้า ลูปซ้อนลูป และรายการรายละเอียดของ Lark Approval
ผลรวมที่ตรงกับตารางที่กรองแล้ว
หัวข้อที่มีชื่อว่า “ผลรวมที่ตรงกับตารางที่กรองแล้ว”sum, count และ join รับฟิลเตอร์ชุดเดียวกันได้ ผลรวมจึงรวมเฉพาะแถวที่ตารางด้านบนแสดงได้อย่างตรงกันพอดี:
{Line_Items | where:"Status == 'Approved'" | sum:"Amount" | currency:"USD"}{Line_Items | where:"Status == 'Approved'" | count} approved itemsหากใช้ฟิลเตอร์ในผลรวมไม่ได้ ผลรวมจะเว้นว่างไว้พร้อมคำเตือน แทนที่จะรวมทุกแถว
ลูปแนวนอน (คอลัมน์)
หัวข้อที่มีชื่อว่า “ลูปแนวนอน (คอลัมน์)”เพิ่ม horizontal ให้กับลูปที่อยู่ในตาราง เพื่อทำซ้ำเซลล์ในแนวนอน หนึ่งคอลัมน์ต่อหนึ่งรายการ แทนการทำซ้ำแถวลงด้านล่าง:
| ป้ายกำกับ | ทำซ้ำในแนวนอน |
|---|---|
| Name | {#Staff | horizontal} {Name} |
| Role | {Role} {/Staff} |
ถ้ามีสามคน ผลลัพธ์จะเป็นตารางที่มีคอลัมน์ละหนึ่งคน ทุกแถวที่อยู่ระหว่างแท็กเปิดและแท็กปิดจะถูกทำซ้ำไปพร้อมกัน ชื่อและตำแหน่งของแต่ละคนจึงอยู่ในคอลัมน์เดียวกัน
- คอลัมน์ใหม่จะแบ่งความกว้างของเซลล์ในเทมเพลตเท่า ๆ กัน และคงเส้นขอบกับการแรเงาของเซลล์ไว้
- ใช้ร่วมกับฟิลเตอร์อื่นได้:
{#Staff | where:"Active" | sort:"Name" | horizontal} - สูงสุด 20 คอลัมน์ รายการที่เกินจากนั้นจะถูกตัดออกพร้อมคำเตือน
- หากรายการว่าง เซลล์จะเว้นว่างไว้แทนที่จะถูกลบ
- ลูปแนวนอนวางไว้ในลูปแถวได้: แต่ละแถวจะมีจำนวนคอลัมน์เท่ากับจำนวนรายการในลิสต์ของแถวนั้นเอง
- นอกตาราง
horizontalจะถูกข้ามพร้อมคำเตือน และลูปจะทำซ้ำตามปกติ
เนื้อหาแบบมีเงื่อนไข
หัวข้อที่มีชื่อว่า “เนื้อหาแบบมีเงื่อนไข”แสดงหรือซ่อนเนื้อหาตามค่าของฟิลด์
ตรวจว่ามีค่า
หัวข้อที่มีชื่อว่า “ตรวจว่ามีค่า”แสดงเนื้อหาเฉพาะเมื่อฟิลด์มีข้อมูล:
{#if Discount} Discount applied: {Discount}{/if}ตรวจว่าว่าง (ปฏิเสธ)
หัวข้อที่มีชื่อว่า “ตรวจว่าว่าง (ปฏิเสธ)”แสดงเนื้อหาเฉพาะเมื่อฟิลด์ว่าง:
{#if !Notes} No additional notes.{/if}เปรียบเทียบว่าเท่ากัน
หัวข้อที่มีชื่อว่า “เปรียบเทียบว่าเท่ากัน”{#if Status == "Approved"} This invoice has been approved.{/if}เปรียบเทียบว่าไม่เท่ากัน
หัวข้อที่มีชื่อว่า “เปรียบเทียบว่าไม่เท่ากัน”{#if Status != "Draft"} This document has been submitted.{/if}เปรียบเทียบตัวเลขและวันที่
หัวข้อที่มีชื่อว่า “เปรียบเทียบตัวเลขและวันที่”>, >=, < และ <= เปรียบเทียบตัวเลขตามค่าจริง และเปรียบเทียบวันที่แบบวันที่ (เขียนเป็น 2026-01-31 ตามเขตเวลาของเทมเพลต):
{#if Amount > 1000} Requires a second approval.{/if}
{#if Due_Date < "2026-01-01"} Overdue.{/if}== และ != ใน {#if} จะเปรียบเทียบข้อความตามที่พิมพ์ออกมา: {#if Qty == "2"} จะไม่ตรงกับจำนวนที่แสดงเป็น 2.00 ส่วนในฟิลเตอร์ where หรือส่วน {#Qty == 2}…{/} จะตรงกับตัวเลขเดียวกันหรือวันเดียวกันด้วย
ฟิลเตอร์
หัวข้อที่มีชื่อว่า “ฟิลเตอร์”ฟิลเตอร์ใช้เปลี่ยนวิธีแสดงค่า โดยใช้เครื่องหมายไปป์ (|):
{Field | filterName}{Field | filterName:"arg1":"arg2"}ฟิลเตอร์จะทำงานหลังจากดึงค่ามาแล้ว และก่อนนำไปใส่ในเอกสาร หากไม่ใช้ฟิลเตอร์ ค่าจะแสดงตามที่แหล่งข้อมูลแสดง (ดูตัวแทนค่าแสดงผลอะไร)
ฟิลเตอร์ข้อความ
หัวข้อที่มีชื่อว่า “ฟิลเตอร์ข้อความ”| ฟิลเตอร์ | คำอธิบาย | ตัวอย่าง | ผลลัพธ์ |
|---|---|---|---|
upper |
ตัวพิมพ์ใหญ่ทั้งหมด | {Name | upper} |
ACME CORP |
lower |
ตัวพิมพ์เล็กทั้งหมด | {Name | lower} |
acme corp |
capitalize |
ขึ้นต้นแต่ละคำด้วยตัวพิมพ์ใหญ่ | {Name | capitalize} |
Acme Corp |
trim |
ตัดช่องว่างหน้า-หลัง | {Name | trim} |
Acme Corp |
truncate |
ตัดให้สั้นตามความยาว (ค่าเริ่มต้น 50) | {Description | truncate:16} |
Lorem ipsum dolo... |
pad |
เติมอักขระให้ครบ (ค่าเริ่มต้น 0) |
{$num | pad:3} |
001 |
ฟิลเตอร์ตัวเลข
หัวข้อที่มีชื่อว่า “ฟิลเตอร์ตัวเลข”number, currency และ percent รับพารามิเตอร์ locale เพิ่มเติมได้ เพื่อจัดรูปแบบตามภูมิภาค:
| ฟิลเตอร์ | พารามิเตอร์ | ตัวอย่าง | ผลลัพธ์ |
|---|---|---|---|
number |
ทศนิยม, locale | {Price | number:2} |
1,234.50 |
number |
ทศนิยม, locale | {Price | number:2:"de-DE"} |
1.234,50 |
currency |
รหัสสกุลเงิน, locale | {Price | currency:"USD"} |
$1,234.50 |
currency |
รหัสสกุลเงิน, locale | {Price | currency:"EUR":"de-DE"} |
1.234,50 € |
currency |
รหัสสกุลเงิน, locale | {Price | currency:"JPY":"ja-JP"} |
¥1,235 |
currency |
รหัสสกุลเงิน, locale, ทศนิยม | {Price | currency:"IDR":"id-ID":2} |
Rp 1.234,50 |
percent |
ทศนิยม, locale | {Rate | percent:1} |
45.6% |
percent |
ทศนิยม, locale | {Rate | percent:1:"de-DE"} |
45,6 % |
toFixed |
ทศนิยม | {Price | toFixed:2} |
1234.50 (ไม่มีตัวคั่นหลักพัน) |
chineseUppercase |
ไม่มี | {Amount | chineseUppercase} |
捌万捌仟捌佰捌拾捌 |
chineseLowercase |
ไม่มี | {Amount | chineseLowercase} |
八八八八八 |
chineseFinancial |
ไม่มี | {Amount | chineseFinancial} |
捌万捌仟捌佰捌拾捌元整 |
ฟิลเตอร์วันที่
หัวข้อที่มีชื่อว่า “ฟิลเตอร์วันที่”จัดรูปแบบวันที่ด้วยรูปแบบที่กำหนดเอง เมื่อรูปแบบของวันที่ในข้อมูลของคุณไม่ใช่แบบที่ต้องการ
ไวยากรณ์: {Field | date:"format":"timezone":"locale"}
พารามิเตอร์ทั้งหมดไม่บังคับ เขตเวลาเริ่มต้นคือเขตเวลาของเทมเพลต (เทมเพลต → ผลลัพธ์ → เขตเวลา) หรือ UTC หากไม่ได้ตั้งไว้ และ locale เริ่มต้นคือ en-US วันที่ที่ส่งมาเป็นข้อความโดยไม่มีเขตเวลา เช่น 2026-01-31 จาก API เอกสารหรือแบบฟอร์ม Lark Approval จะแสดงเป็นวันนั้นเสมอไม่ว่าเขตเวลาจะเป็นอะไร
| ฟิลเตอร์ | พารามิเตอร์ | ตัวอย่าง | ผลลัพธ์ |
|---|---|---|---|
date |
รูปแบบ, เขตเวลา, locale | {Date | date:"DD MMM YYYY"} |
26 Feb 2026 |
date |
รูปแบบ, เขตเวลา, locale | {Date | date:"dddd, DD MMMM YYYY"} |
Thursday, 26 February 2026 |
date |
รูปแบบ, เขตเวลา, locale | {Date | date:"DD MMMM YYYY":"UTC":"fr-FR"} |
26 février 2026 |
date |
รูปแบบ, เขตเวลา, locale | {Date | date:"dddd, DD MMMM YYYY":"UTC":"de-DE"} |
Donnerstag, 26 Februar 2026 |
ตัวระบุรูปแบบวันที่ที่รองรับ:
| ตัวระบุ | ผลลัพธ์ | ตัวอย่าง |
|---|---|---|
YYYY |
ปีแบบ 4 หลัก | 2026 |
MMMM |
ชื่อเดือนเต็ม (ตาม locale) | February, février, Februar |
MMM |
ชื่อเดือนย่อ (ตาม locale) | Feb, févr., Feb |
MM |
เดือนแบบ 2 หลัก | 02 |
dddd |
ชื่อวันเต็ม (ตาม locale) | Thursday, Donnerstag, 木曜日 |
ddd |
ชื่อวันย่อ (ตาม locale) | Thu, Do, 木 |
DD |
วันที่แบบ 2 หลัก | 26 |
HH |
ชั่วโมงแบบ 24 ชั่วโมง | 15 |
mm |
นาที | 30 |
ss |
วินาที | 00 |
ตัวอย่าง:
{Invoice_Date | date:"DD MMM YYYY"} → 26 Feb 2026{Invoice_Date | date:"YYYY-MM-DD"} → 2026-02-26{Invoice_Date | date:"MM/DD/YYYY"} → 02/26/2026{Invoice_Date | date:"DD/MM/YYYY":"Asia/Tokyo"} → 26/02/2026 (เขตเวลาโตเกียว){Invoice_Date | date:"dddd, DD MMMM YYYY":"UTC":"ja-JP"} → 木曜日, 26 2月 2026{Invoice_Date | date:"DD MMMM YYYY":"UTC":"id-ID"} → 26 Februari 2026ฟิลเตอร์อื่น ๆ
หัวข้อที่มีชื่อว่า “ฟิลเตอร์อื่น ๆ”| ฟิลเตอร์ | คำอธิบาย | ตัวอย่าง | ผลลัพธ์ |
|---|---|---|---|
join |
เชื่อมค่าในอาร์เรย์ (ค่าเริ่มต้น , ) |
{Tags | join:" / "} |
Red / Blue / Green |
join |
เชื่อมฟิลด์หนึ่งของแต่ละแถว โดยข้ามค่าที่ว่าง | {Items | join:", ":"Name"} |
Widget, Gadget |
sum |
รวมค่าของฟิลด์จากทุกแถวในลูป | {Items | sum:"Price"} |
1234.5 |
sum |
ผลรวม จัดรูปแบบด้วยฟิลเตอร์ถัดไป | {Items | sum:"Price" | currency:"USD"} |
$1,234.50 |
count |
จำนวนแถวในลูป | {Items | count} |
12 |
avg |
ค่าเฉลี่ยของฟิลด์จากทุกแถว (ไม่นับเซลล์ว่าง) | {Items | avg:"Price"} |
411.5 |
max / min |
ค่ามากที่สุด / น้อยที่สุดของฟิลด์จากทุกแถว | {Items | max:"Price"} |
$980.00 |
default |
ค่าสำรองเมื่อว่าง | {Phone | default:"N/A"} |
N/A |
การต่อฟิลเตอร์
หัวข้อที่มีชื่อว่า “การต่อฟิลเตอร์”ต่อฟิลเตอร์หลายตัวได้ด้วยไปป์ โดยทำงานจากซ้ายไปขวา:
{Name | trim | upper} → " hello " กลายเป็น "HELLO"{$num | pad:3} → 1 กลายเป็น "001"{Phone | default:"N/A" | upper} → null กลายเป็น "N/A"ฟิลเตอร์ภายในลูป
หัวข้อที่มีชื่อว่า “ฟิลเตอร์ภายในลูป”ฟิลเตอร์ใช้ได้กับตัวแปรของลูปและการอ้างถึงรายการปัจจุบันด้วย:
{#Items} #{$num | pad:3} - {Name | upper}{/Items}
{#Tags}{. | capitalize}, {/Tags}รูปภาพแบบไดนามิก
หัวข้อที่มีชื่อว่า “รูปภาพแบบไดนามิก”แทนที่รูปภาพตัวแทนค่าด้วยรูปจากข้อมูลของคุณ: คอลัมน์รูปภาพของตาราง Excel หรือลิสต์ SharePoint คอลัมน์รูปภาพของ Dataverse เซลล์ชิปไฟล์หรือ =IMAGE(…) ใน Google Sheets ฟิลด์ไฟล์แนบของ Lark หรือ URL ของรูปภาพที่ส่งไปยัง API เอกสาร ตารางด้านบนแสดงว่าแต่ละแหล่งข้อมูลมีอะไรให้ใช้
- แทรกรูปภาพใดก็ได้ลงในเทมเพลต Word (รูปนี้คือตัวแทนค่า)
- คลิกขวาที่รูป → Edit Alt Text
- ในช่องคำอธิบาย Alt Text ให้พิมพ์
{FieldName} - บันทึกเทมเพลต
รูปตัวแทนค่าจะถูกแทนที่ด้วยรูปจากฟิลด์นั้น โดยคงขนาดของตัวแทนค่าไว้
รูปภาพหลายรูป
หัวข้อที่มีชื่อว่า “รูปภาพหลายรูป”สำหรับฟิลด์ที่มีไฟล์แนบหลายไฟล์ ให้ใช้การระบุลำดับ:
{Photo} → รูปแรก (เท่ากับ {Photo[0]}){Photo[1]} → รูปที่สอง{Photo[2]} → รูปที่สามวนลูปรูปภาพทั้งหมด
หัวข้อที่มีชื่อว่า “วนลูปรูปภาพทั้งหมด”สำหรับฟิลด์ที่มีจำนวนไฟล์แนบไม่แน่นอน ให้ใช้ไวยากรณ์ลูปโดยตั้ง {.} เป็น alt text ของรูป ไฟล์แนบแต่ละไฟล์จะขยายเป็นสำเนาของตัวแทนค่าเอง:
{#Product_Photos} [รูปภาพที่มี alt text: {.}]{/Product_Photos}เมื่ออยู่ในตาราง ไฟล์แนบแต่ละไฟล์จะได้แถวของตัวเอง:
| # | Photo | Filename |
|---|---|---|
{#Product_Photos} {$num} |
alt ของรูป: {.} |
{name} {/Product_Photos} |
คุณสมบัติที่ใช้ได้ภายในลูป:
| ตัวแปร | คำอธิบาย | ตัวอย่าง |
|---|---|---|
{name} |
ชื่อไฟล์ | photo1.jpg |
{type} |
ชนิด MIME | image/jpeg |
{size} |
ขนาดไฟล์ (ไบต์) | 204800 |
รูปภาพในลูปของระเบียนที่เชื่อมโยง
หัวข้อที่มีชื่อว่า “รูปภาพในลูปของระเบียนที่เชื่อมโยง”ตัวแทนค่ารูปภาพใช้ได้ภายในบล็อกลูปเช่นกัน แต่ละรอบจะดึงรูปของรายการนั้น:
{#Employees} Name: {Name} Photo: [รูปภาพที่มี alt text: {Photo}]{/Employees}QR โค้ดและบาร์โค้ด
หัวข้อที่มีชื่อว่า “QR โค้ดและบาร์โค้ด”สร้าง QR โค้ดและบาร์โค้ดจากค่าของฟิลด์ ตั้งค่าเหมือนกับรูปภาพแบบไดนามิก คือผ่าน Alt Text ของรูป
QR โค้ด
หัวข้อที่มีชื่อว่า “QR โค้ด”{QR:FieldName}ตัวอย่าง: {QR:Order_ID} จะสร้าง QR โค้ดที่บรรจุค่าของ Order_ID
บาร์โค้ด
หัวข้อที่มีชื่อว่า “บาร์โค้ด”| ไวยากรณ์ | ชนิด | หมายเหตุ |
|---|---|---|
{BARCODE:FieldName} |
Code128 | ค่าเริ่มต้น รองรับตัวอักษรและตัวเลข |
{BARCODE128:FieldName} |
Code128 | ระบุ Code128 อย่างชัดเจน |
{BARCODE39:FieldName} |
Code39 | เฉพาะตัวพิมพ์ใหญ่และตัวเลข |
{BARCODEEAN13:FieldName} |
EAN-13 | รหัสสินค้าค้าปลีก 13 หลัก |
{BARCODEEAN8:FieldName} |
EAN-8 | EAN แบบสั้น 8 หลัก |
{BARCODEUPCA:FieldName} |
UPC-A | ค้าปลีกอเมริกาเหนือ 12 หลัก |
{BARCODEUPCE:FieldName} |
UPC-E | UPC แบบย่อ |
{BARCODEITF14:FieldName} |
ITF-14 | รหัสขนส่ง / ลังสินค้า |
{BARCODEDATAMATRIX:FieldName} |
DataMatrix | 2 มิติ ความหนาแน่นสูง |
{BARCODEPDF417:FieldName} |
PDF417 | 2 มิติ แบบเส้นซ้อนชั้น |
คำนำหน้าไม่แยกตัวพิมพ์เล็ก-ใหญ่: {qr:Field} และ {QR:Field} ใช้ได้เหมือนกัน
หัวกระดาษและท้ายกระดาษ
หัวข้อที่มีชื่อว่า “หัวกระดาษและท้ายกระดาษ”ไวยากรณ์ตัวแทนค่าทั้งหมดใช้ได้ในหัวกระดาษและท้ายกระดาษเช่นเดียวกับในเนื้อหาหลัก
การใช้งานที่พบบ่อย:
- ชื่อบริษัทหรือโลโก้ในหัวกระดาษ
- เลขที่เอกสารหรือวันที่ในท้ายกระดาษ
- ป้ายกำกับแบบไดนามิก เช่น
Invoice for {Customer_Name}
วิธีเพิ่ม: Insert → Header/Footer → Edit แล้วพิมพ์ตัวแทนค่า เช่น {Field_Name}
ย้ายมาจากแอปเอกสาร Lark อื่น
หัวข้อที่มีชื่อว่า “ย้ายมาจากแอปเอกสาร Lark อื่น”เทมเพลตที่เขียนไว้สำหรับแอปเอกสาร Lark อื่นใช้ที่นี่ได้โดยไม่ต้องแก้ไข อัปโหลดไฟล์ Word ตามเดิมได้เลย ไวยากรณ์ของเทมเพลตเหล่านั้นทำงานใน AutomaDoc ดังนี้:
| รูปแบบที่เขียน | การทำงานที่นี่ |
|---|---|
{#isNew} Welcome {/isNew} |
แสดงข้อความเมื่อฟิลด์มีค่า หากเป็นลิสต์ จะทำงานเป็นลูป |
{#!isNew}Welcome{/isNew} |
แสดงข้อความเมื่อฟิลด์ว่าง ไม่ได้ติ๊ก หรือเป็นลิสต์ว่าง |
{#Status=="Paid"}…{/} |
แสดงข้อความเมื่อเงื่อนไขเป็นจริง ใช้ !=, >, >=, <, <=, && และ || ได้ด้วย |
{/} |
ปิดลูปหรือส่วนที่เปิดอยู่ซึ่งใกล้ที่สุด |
{$index+1} |
หมายเลขแถว เริ่มที่ 1 เหมือนกับ {$num} |
{#Items | sortBy:"Total":"desc"} |
เหมือนกับ sort |
{#Items | where:"A == 'x' && B > 5"} |
เก็บเฉพาะแถวที่ตรงเงื่อนไข เช่นเดียวกับในการกรอง การเรียงลำดับ และการจำกัดจำนวนแถว |
{>Items}{Name} ที่ต้นแถวของตาราง |
ทำซ้ำเซลล์นั้นและเซลล์ทางขวาไปตามแนวแถว หนึ่งคอลัมน์ต่อหนึ่งรายการ นี่คือลูปแนวนอน |
{#image}{#$isImage}{%src}{/}{#!$isImage}{$fileName}{/}{/image} |
พิมพ์รูปภาพทุกรูปของฟิลด์ไฟล์แนบ และชื่อของทุกไฟล์ที่ไม่ใช่รูปภาพ |
{%src | size:100:50} / {%src | maxSize:500:500} |
รูปภาพขนาดตรงตามที่กำหนด หรือไม่เกินขนาดนั้น หน่วยเป็นพิกเซล |
{%Logo} |
รูปภาพแรกของฟิลด์ไฟล์แนบ ตามขนาดจริงของรูป แต่ไม่เกินความกว้างของหน้า |
{Name | uppercase} / {Name | lowercase} |
เหมือนกับ upper / lower |
{Price | toFixed:"2"} |
ตัวเลขทศนิยมสองตำแหน่ง ไม่มีตัวคั่นหลักพัน |
{Price | currency:'USD'} |
อาร์กิวเมนต์ในเครื่องหมายคำพูดเดี่ยวใช้ได้เหมือนในเครื่องหมายคำพูดคู่ |
{Date | customDate:'YYYY-MM-DD HH:mm:ss'} |
ใช้ตัวระบุรูปแบบเดียวกับ date ตามเขตเวลาของเทมเพลต |
{Date | date:'full'} |
2024-7-13 Saturday 00:00:00 |
chineseUppercase, chineseLowercase, chineseFinancial |
ตัวเลขแบบภาษาจีน ดูฟิลเตอร์ตัวเลข |
สรุปไวยากรณ์
หัวข้อที่มีชื่อว่า “สรุปไวยากรณ์”| ไวยากรณ์ | คำอธิบาย |
|---|---|
{Field} |
ตัวแปรทั่วไป |
{Field.Nested} |
ฟิลด์ของระเบียนที่เชื่อมโยง (เครื่องหมายจุด) |
{Link.text} / {Link.link} |
คุณสมบัติย่อยของลิงก์ |
{Owner.name} / .email / .id |
คุณสมบัติย่อยของบุคคลหนึ่งคน (.en_name ใน Lark Base) |
{Assignee[0].name} |
หลายคน (เป็นลิสต์ จึงต้องระบุลำดับหรือวนลูป) |
{Location.name} / {Location.full_address} |
คุณสมบัติย่อยของตำแหน่งที่ตั้งใน Lark Base |
{Team[0].name} / {Team[0].id} |
ฟิลด์กลุ่มของ Lark Base (เป็นลิสต์ จึงต้องระบุลำดับหรือวนลูป) |
{#Field}...{/Field} |
วนลูปฟิลด์หลายค่า |
{#Field | where:"Status == 'Paid'"} |
วนลูปเฉพาะแถวที่ตรงเงื่อนไข |
{#Field | sort:"Amount":"desc"} |
วนลูปตามลำดับ จากมากไปน้อย |
{#Field | limit:5} / {#Field | offset:5} |
5 แถวแรก / ทุกแถวยกเว้น 5 แถวแรก |
{#Field | horizontal} |
ทำซ้ำเซลล์ตารางในแนวนอน หนึ่งคอลัมน์ต่อหนึ่งแถว |
{Field | where:"Paid" | sum:"Amount"} |
ผลรวมของแถวที่ตรงเงื่อนไข |
{Field | count} |
จำนวนแถว |
{Field | avg:"Amount"} / max / min |
ค่าเฉลี่ย ค่ามากที่สุด ค่าน้อยที่สุดของแถว |
{#Field == "v"}...{/} |
ส่วนที่แสดงเมื่อเงื่อนไขเป็นจริง |
{#!Field}...{/Field} |
ส่วนที่แสดงเมื่อฟิลด์ว่าง |
{#if Field > 100}...{/if} |
เงื่อนไข (ลำดับตัวเลขหรือวันที่) |
{/} |
แท็กปิดแบบย่อ (ปิดลูปที่ใกล้ที่สุด) |
{.} |
รายการปัจจุบันในลูป (อาร์เรย์อย่างง่าย) |
{$index} |
ลำดับในลูป (เริ่มที่ 0) |
{$num} |
หมายเลขแถว (เริ่มที่ 1) |
{$first} / {$last} |
บูลีนรายการแรก/สุดท้าย |
{#if Field}...{/if} |
เงื่อนไข (มีค่า) |
{#if !Field}...{/if} |
เงื่อนไข (ว่าง) |
{#if Field == "val"}...{/if} |
เงื่อนไข (เท่ากับ) |
{#if Field != "val"}...{/if} |
เงื่อนไข (ไม่เท่ากับ) |
{Field | upper} |
ฟิลเตอร์: ตัวพิมพ์ใหญ่ |
{Field | lower} |
ฟิลเตอร์: ตัวพิมพ์เล็ก |
{Field | capitalize} |
ฟิลเตอร์: ขึ้นต้นคำด้วยตัวพิมพ์ใหญ่ |
{Field | trim} |
ฟิลเตอร์: ตัดช่องว่าง |
{Field | truncate:30} |
ฟิลเตอร์: ตัดสั้นพร้อมจุดไข่ปลา |
{Field | pad:3} |
ฟิลเตอร์: เติมศูนย์ |
{Field | number:2} |
ฟิลเตอร์: ตัวเลขพร้อมทศนิยม |
{Field | number:2:"de-DE"} |
ฟิลเตอร์: ตัวเลขตาม locale |
{Field | currency:"USD"} |
ฟิลเตอร์: รูปแบบสกุลเงิน |
{Field | currency:"EUR":"de-DE"} |
ฟิลเตอร์: สกุลเงินตาม locale |
{Field | percent:1} |
ฟิลเตอร์: เปอร์เซ็นต์ |
{Field | date:"DD MMM YYYY"} |
ฟิลเตอร์: รูปแบบวันที่กำหนดเอง |
{Field | date:"dddd, MMMM DD":"UTC":"fr-FR"} |
ฟิลเตอร์: วันที่ตาม locale |
{Field | join:" / "} |
ฟิลเตอร์: เชื่อมอาร์เรย์ด้วยตัวคั่น |
{Field | default:"N/A"} |
ฟิลเตอร์: ค่าสำรอง |
{Field | trim | upper} |
ต่อฟิลเตอร์ (ซ้ายไปขวา) |
{Photo} / {Photo[1]} |
รูปภาพ (ผ่าน Alt Text) |
{QR:Field} |
QR โค้ด (ผ่าน Alt Text) |
{BARCODE:Field} |
บาร์โค้ด (ผ่าน Alt Text) |