Neste exemplo, queremos enviar um alerta para um operador que conterá os nomes dos perfis que abriram um boletim informativo, mas não clicaram no link que ele continha.
Os campos de nome e sobrenome dos perfis são vinculados à targeting dimension Recipients, enquanto a atividade Alert é vinculada à targeting dimension Operator. Como resultado, não há nenhum campo disponível entre as duas dimensões de target para executar uma reconciliação e recuperar os campos de nome e sobrenome e exibi-los na atividade Alert.
O processo é criar um workflow como abaixo:
Adicione o código abaixo na atividade JavaScript code.
var query = xtk.queryDef.create(
<queryDef schema="temp:query" operation="select">
<select>
<node expr="[target/recipient.@firstName]"/>
<node expr="[target/recipient.@lastName]"/>
</select>
</queryDef>
);
var items = query.ExecuteQuery();
Verifique se o código Javascript corresponde às suas informações de workflow:
Para recuperar essas informações, siga as etapas abaixo:
Clique com o botão direito do mouse na transição de saída da atividade de Query e selecione Display the target.
Clique com o botão direito do mouse na lista e depois selecione Configure list.
A targeting dimension e os nomes de campos da consulta são exibidos na lista.
Adicione o código abaixo na atividade Test para verificar se a população direcionada contém pelo menos 1 perfil.
var.recCount>0
Agora que a população foi adicionada na variável da instância com os campos desejados, é possível adicionar essas informações na atividade Alert.
Para fazer isso, adicione o código abaixo na guia Source:
<ul>
<%
var items = new XML(instance.vars.items)
for each (var item in items){
%>
<li><%= item.target.@firstName %> <%= item.target.@lastName %></li>
<%
} %></ul>
O comando <%= item.target.recipient.@fieldName %> permite adicionar um dos campos que foram salvos na variável da instância por meio da atividade JavaScript code.
É possível adicionar quantos campos desejar, desde que tenham sido inseridos no código JavaScript.