Os gerentes consideram útil saber quais funcionários visualizaram um novo cartão ou comentário, como uma lista de recibos de leitura. Ela ajuda os gerentes a saber se um funcionário visualizou sua tarefa atribuída e avaliar como os funcionários informados estão sobre novas atualizações na organização. Para personalizar esses requisitos no Qntrl, scripts de servidor podem ser usados.
Cenário de negócios
A Zylker Corp está tomando providências para o lançamento de um produto e todos os funcionários estão envolvidos no processo. Todos os funcionários recebem tarefas a serem concluídas. Os gerentes da empresa querem monitorar os funcionários que estão ativamente envolvidos no lançamento e acompanhar o cartão.
Solução
O requisito pode ser resolvido usando scripts de servidor da seguinte forma:
- Crie um campo de seleção múltipla -- Ler destinatários -- no formulário com nomes de usuário diferentes como opções.
- Crie um script de servidor e codifique a lógica para preencher os usuários no campo ler destinatários quando os usuários abrirem o cartão.
- Crie um cartão e adicione o trabalho que precisa ser feito para a inicialização do produto e monitore os usuários que visualizaram o cartão usando o campo Ler destinatários.
Configuração de exemplo
Etapa 1 – criar uma orquestração
Crie uma nova
orquestração para o lançamento do produto e adicione campos relacionados a ele.
- Adicione um campo de seleção múltipla e nomeie-o como Ler destinatários.
- Adicione nomes de usuário como opções ao campo de seleção múltipla.
- Desative a visibilidade para que o campo fique oculto durante a criação de um cartão.
Depois que o formulário for salvo, prossiga para projetar o blueprint, definir permissões e publicar a orquestração.
Etapa 2: codificar scripts do servidor
Codifique o script do servidor para preencher os nomes de usuário no campo Read Recipients (Ler destinatários) quando eles abrirem o cartão.
- Crie um novo script de servidor e insira um nome: 'Preencher lista de destinatários lidos'.
- Escolha Product Launch (Iniciar produto) no menu suspenso Form (Formulário).
- Escolha Job (Tarefa) como Execution Location (Local de execução) para executar o script.
- Escolha On Load como Execution Trigger (Gatilho de execução) para executar este script sempre que a página do cartão for carregada.
- Copie e cole o script abaixo em seu editor de script e substitua os nomes dos parâmetros.
- Você pode usar o ícone ? no canto superior direito do editor de scripts para se referir aos nomes dos parâmetros.
- Quando o script estiver pronto, Publish (Publique) -o.
- function onLoad(){
- var userIdPicklistIdMap = {};
- userIdPicklistIdMap["<User_ID>"] = "<Picklist ID>";
- userIdPicklistIdMap["<User_ID>"] = "<Picklist ID>";
- userIdPicklistIdMap["<User_ID>"] = "<Picklist ID>";
- userIdPicklistIdMap["<User_ID>"] = "<Picklist ID>";
- userIdPicklistIdMap["<User_ID>"] = "<Picklist ID>";
-
- //Get User ID from our API doc: Get all users
- //Get Dropdown ID from our API doc: Get all custom fields
-
- var myPickId = userIdPicklistIdMap[current.User.getId()];
- if (!myPickId) {
- console.log("Current user not available in Read Recipients dropdown");
- return;
- }
- var readRecipients = current.Job.getVariable("Read Recipients");
- if (!readRecipients) {
- readRecipients = "";
- }
- console.log("Read recipients = " + readRecipients);
- var splitByComma = readRecipients.split(",");
- if (!splitByComma[0]) {
- splitByComma.shift();
- }
-
- if (splitByComma.indexOf(myPickId) == -1) {
- splitByComma.push(myPickId);
- }
- console.log("result = " + splitByComma.join(","));
- current.Job.setVariable("Read Recipients", splitByComma.join(","));
-
- //Select Read Recipients parameter here
- current.Job.setValue(current.Layout.Fields.<select-Read-Recipients-parameter-here>.id ,splitByComma.join(","));
- console.log("Read Recipients updated");
-
- }
Etapa 3 - adicionar um cartão
Quando a orquestração e o script do servidor estiverem prontos, podemos testar o script criando um novo
cartão.
- Navegue até Cards (Cartões) e clique em Add Card (Adicionar cartão)
- Selecione Product Launch (Iniciar produto) no menu suspenso Form (Formulário).
- Insira os detalhes do cartão e clique em Save (Salvar).
Quando os usuários começarem a visualizar a página de detalhes do cartão, seus nomes começarão a ser preenchidos no campo Read Recipients (Ler destinatários).