Mail Mergeแม่แบบจากMustacheไวยากรณ์

Aspose.Wordsช่วยให้คุณสร้างเทมเพลตที่มีไวยากรณ์mustacheนอกเหนือจากเทมเพลตที่คุ้นเคย Mustacheเป็นตัวแปรทางเลือกของไวยากรณ์แม่แบบที่ประกอบด้วยชื่อแท็กที่ล้อมรอบด้วยและได้รับก.

ไวยากรณ์Mustacheเป็นตัวเลือกเดียวที่จะใช้กับเทมเพลตที่ไม่มีฟิลด์เช่นHTMLและTXTเทมเพลต ด้วยแม่แบบคำคุณมีสองตัวเลือกในการใช้ฟิลด์หรือไวยากรณ์Mustache.

ไวยากรณ์Mustacheรองรับแท็กforeachซึ่งเป็นทางเลือกสำหรับการใช้Mail Mergeกับภูมิภาค ดังนั้นประโยชน์คือการที่คุณสามารถใช้mustacheไวยากรณ์ถ้าด้วยเหตุผลบางอย่างที่คุณไม่สามารถ.

คุณยังสามารถรวมฟิลด์Mail Mergeกับฟิลด์เพิ่มเติมบางฟิลด์โดยใช้แท็กforeachตามที่แสดงในภาพด้านล่าง.

mustache_syntax_aspose_words_java

สร้างเทมเพลตMustache

จุดสำคัญแรกที่จะชี้แจงคือMustacheไม่ได้เป็นเครื่องยนต์เทมเพลต Mustacheเป็นตัวแปรไวยากรณ์อื่นที่สามารถใช้ได้สำหรับแม่แบบใดๆในรูปแบบการโหลดได้รับการสนับสนุนโดยAspose.Words คุณเพียงแค่ต้องรวมไวยากรณ์บางอย่างและสอดคล้องกับข้อกำหนดMustache.

สมมติว่าคุณจำเป็นต้องส่งอีเมลเดียวกันไปยังผู้รับ 50 เพื่อปรับแต่งคำอวยพรด้วยชื่อแรกที่สอ คุณสามารถแทนที่ชื่อแรกของผู้รับโดยตัวยึดตำแหน่งบางส่วนดังต่อไปนี้:

Dear {{FirstName}}

I hereby…

คำถามที่นี่:วิธีที่คุณสามารถสร้าง 50 อีเมล์จาก 1 เดี่ยวMustacheแม่แบบ? เพื่อตอบคำถามนั้นคุณต้องดำเนินการMail Mergeกับภูมิภาคเพื่อเติมวงเล็บปีกกาหยิกสำหรับตัวยึดตำแ.

mustache_template_aspose_words_java

ทำงานกับMustacheไวยากรณ์

Mustacheจะแสดงเป็นลำดับตรรกะน้อยลงเนื่องจากขาดคำสั่งการควบคุมใดๆที่เฉพาะเจาะจงเช่นforลูปและifและelseเงื่อนไข แต่คุณสามารถใช้รายการการประมวลผลแท็กส่วนและแลมบ์ดาเพื่อให้บรรลุการประเมิน ดังนั้นเพื่อรวมไวยากรณ์MustacheภายในMail Mergeการดำเนินการ,คุณจะต้องใช้คุณสมบัติUseNonMergeFieldsและตั้งค่าเป็นTrue.

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการแทนที่แท็กMustacheด้วยข้อมูลที่ระบุ:

คุณสามารถสังเกตเห็นความแตกต่างระหว่างเอกสารก่อนที่จะประมวลผลMail Mergeกับภูมิภาคพร้อมกับใช้คุณสมบัติUseNonMergeFields:

mustache_syntax_aspose_words_java

และหลังจากใช้Mail Mergeกับภูมิภาค:

mustache_syntax_result_aspose_words_java

ใช้ฟิลด์IFเพื่อสร้างMail Mergeอัจฉริยะ

Aspose.Wordsอนุญาตให้คุณใช้Mail Mergeฟิลด์และMustacheแท็กที่มีคำสั่งIF ฟิลด์IFสามารถใช้ในเอกสารMail Mergeเพื่อระงับช่องว่างและเครื่องหมายจุลภาคที่ไม่ต้องการหากฟิลด์ว่างเปล่า.

สูตรฟิลด์IFแสดงด้านล่าง:

{ IF [Condition] [Display Result 1] [Display Result 2] }

ที่นี่เงื่อนไขสามารถเป็นฟิลด์ผสานหรือแท็กMustache.

ตัวอย่างเช่นคุณสามารถใช้ฟิลด์IFหากคุณต้องการแทรก"ของเขา",“เธอ”,“เขา"หรือ"เธอ"ขึ้นอยู่กับเพศดังต่อไปนี้:

{ IF { MERGEFIELD Gender } = “MALE” “ข้อความจริง” “ข้อความเท็จ”}

{ IF “{{ GENDER }}” = “MALE” “ข้อความจริง” “ข้อความเท็จ”}

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการดำเนินการMail Mergeด้วยMustacheแท็กและIFฟิลด์:

คุณสามารถสังเกตเห็นความแตกต่างระหว่างเอกสารก่อนที่จะใช้คุณสมบัติUseNonMergeFields:

mustache_if_field_aspose_words_java

และหลังจากใช้คุณสมบัติUseNonMergeFields:

mustache_if_field_2_aspose_words_java