Avalados por :

Como criar e usar uma matriz multidimensional com as APIs de script do SAC Analytics Designer

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 1 Vistas
0
Loading...

Introdução:


O objetivo deste blog é mostrar o uso de uma matriz multidimensional com as APIs de scripting do SAC Analytics Designer.

Mais especificamente, em relação às tarefas de calendário, já que as funcionalidades integradas pareciam insuficientes para mim.
O contexto principal é recuperar informações das tarefas de calendário para o ciclo de planejamento atual ordenado pela sequência de passos.

Configuração:


Existem várias tarefas de calendário em um modelo de planejamento. Queremos acessar e usar um subconjunto delas com base em seus nomes (e ordenados pelo nome).

Problema:


Os IDs das tarefas de calendário podem ser recuperados através da função de integração de calendário. Além disso, os nomes dessas tarefas podem ser acessados.
No entanto, não há um objeto para filtrar e ordenar por nome e ainda ter o ID disponível.
Isso poderia ser alcançado com várias variáveis e loops múltiplos através deles, mas seria mais eficiente se tivéssemos uma matriz de duas colunas com todas as informações disponíveis.

A última solução é mostrada abaixo.

Implementação:


A possibilidade geral de trabalhar com matrizes multidimensionais no Designer é descrita no Manual do Desenvolvedor ( https://d.dam.sap.com/a/3Y16uka/DeveloperHandbookSACAnalyticsDesigner_v12.1_final.pdf ) - na Versão 12.1, pode ser encontrado no capítulo 4.4.14.
Assim como em outros casos, as funcionalidades do dialeto JavaScript do Application Design não são tão poderosas quanto nos desenvolvimentos padrão em JavaScript, mas com alguns truques é possível obter uma boa solução.

Em nosso caso de uso com tarefas de calendário, primeiro vamos recuperar algumas tarefas de exemplo:
var rel_tasks = CI_1.getRelatedTaskIds();

Isso nos dá as seguintes 8 entradas


rel_tasks


Agora podemos criar a matriz bidimensional com 8 linhas (baseado no comprimento de "rel_tasks"):
var numRows = rel_tasks.length;
var arr1D = ArrayUtils.create(Type.string);
var arr2D = [arr1D];

for (var i = 1; i < numRows; i++) { 
    arr2D.push(ArrayUtils.create(Type.string));
}

A matriz "arr2D" agora é uma matriz vazia de 2 colunas e 8 linhas do tipo string.

A próxima parte é a operação crucial, para uma melhor compreensão aqui estão os nomes de nossos 8 valores de exemplo na ordem de seus IDs:

STEP1_2022
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

Sin respuestas

No hay respuestas para mostrar No hay respuestas para mostrar Se el primero en responder

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?