Objective
After completing this lesson, you will be able to amplie os recursos de comentário com scripting.
Comentários
Utilizando a funcionalidade integrada para adicionar comentários
Você pode adicionar facilmente comentários em histórias de planejamento usando a funcionalidade integrada no SAP Analytics Cloud.
Os comentários podem ser adicionados a:
- Uma célula em uma tabela de dados usando a opção integrada Adicionar comentário de ponto de dados. Se uma célula já tiver comentários, é exibido um indicador na célula. Os planejadores podem visualizar o comentário selecionando a célula de dados.
- Uma coluna separada, ou colunas, em uma tabela de dados. Somente o comentário mais recente é exibido na coluna de comentários.
Visualizar e encontrar comentários relevantes pode ser demorado. Se os comentários forem usados extensivamente, talvez seja necessário rolar até o final da história até a coluna de comentários ou clicar em cada célula para visualizar os comentários.
Como criar comentários em uma história do SAP Analytics Cloud, incluindo o recurso de comentários assistidos por IA, é abordado na lição Uso de comentários de ponto de dados no curso Execução de planejamento manual com o SAP Analytics Cloud.
Cenário empresarial: ampliar funcionalidades de comentário com scripting
Assista a este vídeo para saber mais sobre os requisitos da equipe para ampliar os recursos de comentário em uma história com scripting e facilitar a visualização e a criação de comentários.
En
A equipe valoriza a comunicação e a colaboração eficazes e sabe o quanto ela é fundamental para o planejamento bem-sucedido. Eles documentam regularmente suas suposições de planejamento à medida que trabalham nas previsões. Embora usem a coluna de comentários e os comentários de ponto de dados, eles desejam que fosse mais fácil visualizar, adicionar e excluir comentários. Eles também apresentam suas previsões regularmente para outras equipes da empresa e muitas vezes esqueceram de esconder o indicador de comentário antes de compartilhar suas telas!
Depois de trabalhar com seu colega Frank para compreender completamente o requisito empresarial para ampliar os recursos de comentários, você sugere a criação de:
- Um botão Ativar/desativar modo Comentários que exibe ou suprime o indicador de comentário verde aqua nas células de dados.
- Um widget de texto e botão que permite aos planejadores inserir comentários em um campo de entrada e usar o botão Adicionar comentário para adicioná-los ao banco de dados. Isso inclui um pop-up para uma mensagem de erro que será exibida se o planejador tentar adicionar um comentário sem selecionar um grupo de produtos na tabela de dados.
- Uma área fixa na história para exibir comentários por grupo de produtos. Isso inclui um botão de rádio para selecionar comentários específicos para excluí-los.
- Uma área fixa na história para exibir as informações do histórico de comentários (quem e quando).
- Um botão para excluir comentários.
- Um menu suspenso para exibir ou adicionar comentários no widget de comentário por grupo de produtos.
Código utilizado neste cenário
Nos exemplos a seguir, você pode ver o código usado no cenário e no exercício para ampliar os recursos de comentários da história de planejamento.
Ativar/desativar modo Comentários
O seguinte script foi adicionado ao BTN_EnableCommentMode – onClick para exibir/ocultar os indicadores de comentário em uma história:
1
Application.setCommentModeEnabled(!Application.isCommentModeEnabled());
Ler comentários
O seguinte script foi adicionado ao objeto de script SO_Comments – readComments para permitir que ele:
- Elimine o grupo de botões de rádio RB_CommentID e o campo de texto TXT_Display_Comments se uma célula não de dados estiver selecionada na tabela.
- Atualize o grupo de botões de rádio RB_CommentID com ID(s) de comentário(s) e texto para a célula de dados selecionada.
- Exiba o texto do comentário, a hora da criação e as informações criadas por na caixa de texto TXT_Display_Comments.
12345678910111213141516171819
var sel = TBL_Planning_Enabled.getSelections();
var cellSelected = TBL_Planning_Enabled.getDataSource().getData(sel[0]);
if (cellSelected === undefined) {
RB_CommentID.removeAllItems();
TXT_Display_Comments.applyText(" ");
}
else if (sel.length > 0) {
var comments = TBL_Planning_Enabled.getDataSource().getComments().getAllComments(sel[0]);
RB_CommentID.removeAllItems();
TXT_Display_Comments.applyText(" ");
for (var i=0;i<comments.length; i++){
var comment = comments[i];
RB_CommentID.addItem(comment.commentId, comment.text);
var comments_text = TXT_Display_Comments.getPlainText() + "\n" + "Created by :" + comment.createdBy.displayName + "\n" + "Created at :" + comment.createdAt + "\n" + "Comment :" + comment.text;
TXT_Display_Comments.applyText(comments_text);
}
}
Executar objeto de script
O seguinte script é adicionado a TBL_Planning_Enabled - onSelect para executar o objeto de script quando a tabela é selecionada:
1
SO_Comments.readComments();
Adicionar comentários
O seguinte script foi adicionado a BTN_Add_Comment – onClick para:
- Exiba o popup Popup_Error se uma célula de dados não for selecionada quando o usuário tentar adicionar um comentário.
- Leia o comentário definido pelo usuário do campo de entrada INF_Enter_Comment e adicione-o à célula de dados selecionada.
- Atualize os comentários exibidos no botão de rádio e na caixa de texto.
12345678910111213
var sel = TBL_Planning_Enabled.getSelections();
var cellSelected = TBL_Planning_Enabled.getDataSource().getData(sel[0]);
if (cellSelected === undefined) {
Popup_Error.open();
}
else if (sel.length > 0) {
var comment = INF_Enter_Comment.getValue();
TBL_Planning_Enabled.getDataSource().getComments().addComment(sel[0], comment);
INF_Enter_Comment.setValue("");
SO_Comments.readComments();
}
Erro de popup
O seguinte script foi adicionado ao Popup_Error – onButtonClique no pop-up para fechar a mensagem de erro que será exibida se uma célula de dados não for selecionada pelo planejador ao tentar adicionar um comentário:
Excluir comentários
O script a seguir foi adicionado a BTN_Delete_Comment – onClick para excluir os comentários de célula de dados pelo ID e atualizar os comentários exibidos no botão de rádio e na caixa de texto:
123
var sel = RB_CommentID.getSelectedKey();
TBL_Planning_Enabled.getDataSource().getComments().removeComment(sel);
SO_Comments.readComments();
Preencher o menu suspenso Grupo de produtos na inicialização da página
O seguinte script foi adicionado a Page_1 – onInitialization para preencher a caixa suspensa DD_ProductGroup com os valores de dimensão de ProductGroup (exceto o valor # não atribuído) quando um planejador abre a história:
12345678
var ProductGroups = TBL_Planning_Enabled.getDataSource().getMembers("ProductGroup");
for (var x=0; x<ProductGroups.length; x++){
var ProductGroup = ProductGroups[x];
if (ProductGroup.id!=="#"){
DD_ProductGroup.addItem(ProductGroup.id,ProductGroup.description);
}
}
Lista de opções de grupo de produtos
O seguinte script foi adicionado ao DD_ProductGroup – onClick para definir os valores da lista suspensa que são usados para filtrar o widget de comentário:
123
CW_ProductGroup.getCommentingDataSource().removeDimensionFilter("ProductGroup");
CW_ProductGroup.getCommentingDataSource().setDimensionFilter("ProductGroup",DD_ProductGroup.getSelectedKey());
Ampliar recursos de comentário com scripting
Tarefa 1: Ampliar recursos de comentário com scripting
Fluxo de tarefa: neste exercício prático, você irá:
- Ative o modo de comentário adicionando scripts ao botão Ativar/desativar modo Comentários.
- Adicione um objeto de script para ler comentários de uma célula da tabela de dados e exibir em uma caixa de texto.
- Adicione um script para configurar uma caixa de comentários para incluir a seleção de comentários com botões de rádio, bem como informações de hora e Criado por.
- Adicione botões de scripts para permitir a criação e exclusão de comentários.
- Adicione um popup personalizado para mensagens de erro e o script relevante para ocultá-lo.
Tarefa 2: Opcional: Testar recursos de comentário estendido em uma história de planejamento
Fluxo de tarefa: neste exercício prático, você irá:
- Teste todos os scripts adicionados à história adicionando, selecionando e excluindo comentários usando os widgets e botões de texto.
- Teste os comentários de filtragem por menu suspenso de grupo de produtos.