Objective
After completing this lesson, you will be able to amplíe las funciones de comentarios con scripting.
Comentarios
Uso de la funcionalidad integrada para añadir comentarios
Puede añadir comentarios fácilmente en historias de planificación utilizando la funcionalidad integrada en SAP Analytics Cloud.
Se pueden añadir comentarios a:
- Una celda en una tabla de datos utilizando la opción integrada Añadir comentario de punto de datos. Si una celda ya tiene comentarios, se muestra un indicador en la celda. Los planificadores pueden ver el comentario seleccionando la celda de datos.
- Una columna o columnas separadas en una tabla de datos. En la columna de comentarios solo se muestra el último comentario.
La visualización y la búsqueda de comentarios relevantes pueden requerir mucho tiempo. Si los comentarios se utilizan ampliamente, es posible que tenga que desplazarse hasta el final de la historia hasta la columna de comentarios o hacer clic en cada celda para ver los comentarios.
Cómo crear comentarios en una historia de SAP Analytics Cloud, incluida la función de comentarios asistida por IA, se trata en la lección Uso de comentarios de puntos de datos en el curso Realizar planificación manual con SAP Analytics Cloud.
Escenario empresarial: Ampliar funciones de comentarios con scripting
Vea este vídeo para obtener más información sobre los requisitos del equipo para ampliar las funciones de comentarios en una historia con scripting, lo que facilita la visualización y la creación de comentarios.
¿No?
El equipo valora la comunicación y colaboración efectivas y sabe lo crítico que es para una planificación exitosa. Documentan regularmente sus suposiciones de planificación a medida que trabajan en previsiones. Si bien utilizan tanto la columna de comentarios como los comentarios de puntos de datos, desearían que fuera más fácil ver, añadir y eliminar comentarios. También presentan sus previsiones regularmente a otros equipos de la empresa y a menudo se han olvidado de ocultar el indicador de comentarios antes de compartir sus pantallas.
Después de trabajar con su colega Frank para comprender completamente el requisito empresarial para ampliar las funciones de comentarios, sugiere crear:
- Un botón Activar/Desactivar modo de comentario que muestra o suprime el indicador de comentario aqua verde en celdas de datos.
- Un widget de texto y un botón que permite a los planificadores introducir comentarios en un campo de entrada y utilizar el botón Añadir comentario para añadirlos a la base de datos. Esto incluye una ventana emergente para un mensaje de error que se visualizará si el planificador intenta añadir un comentario sin seleccionar un grupo de productos en la tabla de datos.
- Un área fija en la historia para visualizar comentarios por grupo de productos. Esto incluye un botón de selección para seleccionar comentarios específicos para eliminarlos.
- Un área fija en la historia para visualizar la información del seguimiento de auditoría de comentarios (quién y cuándo).
- Un botón para eliminar comentarios.
- Una lista desplegable para visualizar o añadir comentarios en el widget de comentarios por grupo de productos.
Código utilizado en este escenario
En los siguientes ejemplos, puede ver el código utilizado en el escenario y el ejercicio para ampliar las funciones de comentarios de la historia de planificación.
Activar/Desactivar modo de comentario
El siguiente script se añade a BTN_EnableCommentMode - onClick para visualizar/ocultar los indicadores de comentario en una historia:
1
Application.setCommentModeEnabled(!Application.isCommentModeEnabled());
Leer comentarios
El siguiente script se ha añadido al objeto de script SO_Comments - readComments para permitirlo:
- Borre el grupo de botones de selección RB_CommentID y el campo de texto TXT_Display_Comments si hay una celda sin datos seleccionada en la tabla.
- Actualice el grupo de botones de selección RB_CommentID con ID de comentario(s) y texto para la celda de datos seleccionada.
- Visualice el texto del comentario, la hora de creación y la información de autor en el cuadro 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);
}
}
Ejecutar objeto de script
El siguiente script se añade a TBL_Planning_Enabled - onSelect para ejecutar el objeto de script cuando se selecciona la tabla:
1
SO_Comments.readComments();
Añadir comentarios
El siguiente script se añade a BTN_Add_Comment - onClick to:
- Visualice la ventana emergente Popup_Error si no se selecciona una celda de datos cuando el usuario intenta añadir un comentario.
- Lea el comentario definido por el usuario del campo de entrada INF_Enter_Comment y añádalo a la celda de datos seleccionada.
- Actualice los comentarios visualizados en el botón de selección y en el cuadro 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();
}
Error de ventana emergente
El siguiente script se añade a Popup_Error - onButtonClick para cerrar el mensaje de error que aparecerá si el planificador no selecciona una celda de datos al intentar añadir un comentario:
Eliminar comentarios
El siguiente script se añade a BTN_Delete_Comment - onClick para eliminar los comentarios de la celda de datos por su ID y actualizar los comentarios visualizados en el botón de selección y el cuadro de texto:
123
var sel = RB_CommentID.getSelectedKey();
TBL_Planning_Enabled.getDataSource().getComments().removeComment(sel);
SO_Comments.readComments();
Rellenar el menú desplegable de grupo de productos en la inicialización de página
El siguiente script se añade a Page_1 - onInitialization para rellenar el cuadro desplegable DD_ProductGroup con los valores de dimensión de ProductGroup (excepto el valor # no asignado) cuando un planificador abre la historia:
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 desplegable de grupos de productos
El siguiente script se añade a DD_ProductGroup - onClick para definir los valores de la lista desplegable que se utilizan para filtrar el widget de comentario:
123
CW_ProductGroup.getCommentingDataSource().removeDimensionFilter("ProductGroup");
CW_ProductGroup.getCommentingDataSource().setDimensionFilter("ProductGroup",DD_ProductGroup.getSelectedKey());
Ampliar funciones de comentarios con scripting
Tarea 1: Ampliar funciones de comentarios con scripting
Flujo de tareas: en este ejercicio práctico, podrá:
- Active el modo de comentario añadiendo scripting al botón Activar/Desactivar modo de comentario.
- Añada un objeto de script para leer comentarios de una celda de tabla de datos y visualizarlos en un cuadro de texto.
- Añada un script para configurar un cuadro de comentarios para incluir la selección de comentarios con botones de selección, así como la información de autor y hora.
- Añada botones de scripts para permitir la creación y eliminación de comentarios.
- Añada una ventana emergente personalizada para los mensajes de error y el script relevante para ocultarla.
Tarea 2: Opcional: Probar funciones de comentario ampliadas en una historia de planificación
Flujo de tareas: en este ejercicio práctico, podrá:
- Pruebe todos los scripts añadidos a la historia añadiendo, seleccionando y eliminando comentarios con los widgets y botones de texto.
- Pruebe los comentarios de filtrado por lista desplegable de grupo de productos.