Mail Merge Modelo da sintaxe Mustache
Aspose.Words permite criar modelos com sintaxe mustache além dos modelos familiares. A Mustache é uma variante alternativa da sintaxe do modelo que consiste em nomes de tags delimitados por {{ }}
e é apoiada por um objeto de modelo que contém os dados do modelo.
A sintaxe Mustache é a única opção a ser usada com modelos que não contêm campos, como modelos HTML e TXT. Com Word modelos, você tem duas opções para usar campos ou Mustache sintaxe.
A sintaxe Mustache suporta a tag foreach, que é uma alternativa para usar Mail Merge com regiões. Portanto, o benefício é que você pode usar a sintaxe mustache se, por algum motivo, não puder ou simplesmente não quiser usar campos de mesclagem e regiões de mesclagem.
Você também pode combinar campos Mail Merge com alguns campos adicionais usando a tag foreach, conforme mostrado na figura abaixo.
Criar um modelo Mustache
O primeiro ponto importante a esclarecer é que Mustache não é um mecanismo de modelagem. Mustache é outra variante de sintaxe que está disponível para qualquer modelo em um load format suportado por Aspose.Words. Portanto, você pode criar tal modelo tanto programaticamente quanto por meio de uma interface, basta incluir certa sintaxe e cumprir a especificação Mustache.
Vamos supor que você precise enviar o mesmo e-mail para 50 destinatários para personalizar a saudação com seus nomes correspondentes. Você pode substituir o primeiro nome do destinatário por algum espaço reservado como o seguinte:
Dear {{FirstName}}
I hereby…
A questão aqui: como você pode criar 50 e-mails a partir de 1 Modelo Único Mustache? Para responder a isso, você precisa executar um Mail Merge com regiões para preencher as chaves para espaços reservados no modelo com dados reais e gerar um documento de saída.
Trabalhar com a sintaxe Mustache
Mustache é representado como uma ordem sem lógica, pois carece de quaisquer instruções de fluxo de controle específicas, como for loops e if e else condições. Mas você pode usar as listas de processamento de tags de seção e lambdas para obter avaliação condicional e loop. Portanto, para incluir a sintaxe Mustache na operação Mail Merge, você precisará usar a propriedade use_non_merge_fields e definir seu valor como True.
Use IF
campos para tornar um Mail Merge inteligente
Aspose.Words permite que você use campos Mail Merge e tags Mustache com a instrução IF
. Os campos IF
podem ser usados em qualquer documento Mail Merge para suprimir espaços e vírgulas indesejados se um campo estiver em branco.
A fórmula do campo IF
é mostrada abaixo:
{ IF [Condition] [Display Result 1] [Display Result 2] }
Aqui, a condição pode ser um campo de mesclagem ou uma tag Mustache.
Por exemplo, você pode usar os campos IF
se precisar inserir “his”, “her”," he “ou” she", dependendo do sexo, da seguinte forma:
{ IF { MERGEFIELD Gender } = “MALE” “Texto verdadeiro” “texto falso”}
{ IF “{{ GENDER }}” = “MALE” “Texto verdadeiro” “texto falso”}
O exemplo de código a seguir mostra como executar uma operação Mail Merge com tags Mustache e campos IF
:
Você pode notar a diferença entre o documento antes de aplicar a propriedade use_non_merge_fields:
E depois de aplicar a propriedade use_non_merge_fields: