Ampliação de widgets de botão para executar objetos técnicos de ação de dados

Objective

After completing this lesson, you will be able to crie um objeto técnico de ação de dados em uma história e amplie um widget de botão para executá-lo.

Ações de dados e widgets de botão

Por que você estenderia um botão com scripting?

Widgets de botão podem ser ampliados para:

  • Exibir diálogos personalizados e mensagens popup. Por exemplo, os botões podem ser ampliados para fornecer mensagens e diálogos personalizados ao usuário, enquanto os iniciadores de ação de dados exibem apenas os diálogos de sistema integrados.
  • Selecione o contexto de outro widget (como uma tabela de dados) e aplique-o automaticamente ao seu objeto técnico de ação de dados. Os botões podem ser ampliados para eliminar a necessidade de você fornecer manualmente valores em uma caixa de diálogo de prompt.
  • Adicione botões no modo de visualização para permitir que os usuários apliquem rapidamente as configurações disponíveis apenas no modo de edição. Por exemplo, se um planejador não tiver acesso de edição a uma história, ele poderá pressionar um botão para modificar uma propriedade, como definir uma tabela como somente leitura.
  • Exibir uma lista de versões para uma tabela de dados.
  • Permita acesso fácil a opções da barra de ferramentas comumente usadas, como atualizar e reverter, facilitando para os planejadores porque eles não precisam mais procurar opções na barra de ferramentas.

Ações de dados

Uma ação de dados é uma ferramenta de planejamento flexível para fazer modificações estruturadas em uma versão de dados do modelo, como copiar dados de um modelo para outro. No entanto, há duas maneiras de usar ações de dados em uma história:

  1. Usando um widget Iniciador de ação de dados.Iniciador de ação de dados em uma história do SAP Analytics Cloud. A barra de ferramentas é aberta com as configurações do Iniciador de ação de dados abertas no painel Gerador.

    Este tópico é abordado em detalhes no curso Aproveitando recursos avançados no SAP Analytics Cloud para planejamento.

  2. Uso de um objeto técnico de ações de dados e APIs relacionadas. É possível fazer o seguinte:
    • Executar ações de dados.
    • Definir valores de parâmetro de ações de dados.
    • Ler valores de parâmetro de ações de dados.
    Objeto técnico de ação de dados inserido no painel lateral esquerdo de uma história do SAP Analytics Cloud com o painel Configuração de ação de dados aberto no lado direito da tela.

Cenário empresarial: Criar um botão de ação de dados

Assista a este vídeo para saber mais sobre o requisito da equipe para um botão de ação de dados ampliado com scripting.

En

Sua equipe criou uma história que é usada por todos os planejadores na equipe. Atualmente, a história tem ações de dados, mas quando eles são clicados, os planejadores recebem uma mensagem do sistema informando Aguarde enquanto a ação de dados está em execução, um indicador de ocupado e uma opção para executar o job em background.

A equipe prefere que quaisquer modificações sejam bloqueadas até que a ação de dados seja concluída e os dados sejam atualizados automaticamente. Eles não querem que a opção Executar em background esteja disponível para os planejadores.

Caixa de diálogo Ação de dados

Você sugere a ampliação da história com um botão de ação de dados. O botão só será exibido quando uma versão privada estiver disponível e não permitirá que os planejadores executem a ação de dados em background.

Depois de trabalhar com sua colega Christine para entender totalmente o requisito empresarial do botão de ação de dados ampliado, você criará um botão de ação de dados que:

  1. Só é exibido quando há uma versão privada.
  2. Copia e atualiza dados.
  3. Tem um indicador de ocupado sem uma caixa de diálogo enquanto está sendo executado.
  4. Instrui o planejador quando ele é executado com êxito.

Configuração da história

Antes de adicionar o scripting, você precisa primeiro criar e configurar a ação de dados e, em seguida, adicionar o objeto técnico da ação de dados à sua história.

No exemplo a seguir, o objeto técnico de ação de dados DataAction_1 foi adicionado à história de planejamento e configurado com a ação de dados e os parâmetros exibidos.

Configuração de ação de dados em uma história.

Adicione um widget de botão à página da história. Este botão BTN_Copy será usado para executar a ação de dados.

História do SAP Analytics Cloud com o painel Estrutura aberto à esquerda com o widget do botão BTN_Copy destacado. O botão correspondente é destacado na página da história.

Visibilidade em tempo de visualização: verifique se o painel Definição de estilo do botão está definido como Oculto. Isso garantirá que o botão não seja exibido temporariamente enquanto o script que você planeja adicionar para verificar se há versões privadas em execução

O painel Definição de estilo de botão é aberto com a Visibilidade em tempo de visualização destacada e definida como Oculto.

Código utilizado no cenário

Adicionar script a um botão para executar a ação de dados e atualizar dados

Para o botão BTN_Copy, selecione Mais ações e adicione um script onClick a ele.

O seguinte script é usado para executar o objeto técnico da ação de dados DataAction_1 quando o botão é selecionado para copiar e, em seguida, atualizar os dados na tabela:

Code Snippet
12
DataAction_1.execute(); TBLPLANNING.getDataSource().refreshData();
Ação de dados configurada para a ação de clique. Linhas 1 e 2.

Botão de ação Mostrar/ocultar dados

Crie o objeto de script SO_Planning – updateButtonVisibility e adicione o código abaixo para mostrar e ocultar o botão BTN_Copy, dependendo de se uma versão privada existe ou não:

Code Snippet
12345678910
// retrieve all private versions available in the model var selectedPrivateVersion = TBLPLANNING.getPlanning().getPrivateVersions(); // if private version exists if (selectedPrivateVersion.length > 0) { BTN_Copy.setVisible(true); } else { BTN_Copy.setVisible(false); }
Código usado em objetos de script para mostrar e ocultar o botão. Linhas 7 e 10.

Verificar versões privadas no carregamento da página

O botão está definido para ser oculto por padrão, por isso, adicione o seguinte código a Page_1 - onInitialization:

Code Snippet
12
//Call Global Script function to populate story with button if private version exists SO_Planning.updateButtonVisibility();
Script para onInitialization para página 1.

Verificar versões privadas quando uma tabela é modificada

Assim que a tabela for atualizada, é importante verificar se existem versões privadas, por isso adicione o seguinte código a TBLPLANNING - onResultChanged:

Code Snippet
1
SO_Planning.updateButtonVisibility();
Código usado em TBLPLANNING para atualizar a visibilidade do botão após uma modificação na tabela. Linha 1.

Adicionar indicador ocupado

Adicione um indicador de ocupado que será exibido quando o botão Copiar e atualizar dados for clicado para mostrar ao usuário que a ação de dados está em execução:

Code Snippet
1
Application.showBusyIndicator();

Ocultar o indicador de ocupado quando a execução da ação de dados for concluída:

Code Snippet
1
Application.hideBusyIndicator();
Código usado em BTN_Copy para mostrar e ocultar o indicador de ocupado. Linhas 1 e 4.

Adicionar mensagem personalizada

Adicione o seguinte código para exibir a mensagem personalizada assim que a ação de dados for executada com sucesso:

Code Snippet
1
Application.showMessage(ApplicationMessageType.Success,"The data action has run successfully and the table has refreshed.");
Código usado em BTN_Copy para exibir mensagem personalizada. Linha 5.

Criar um botão de ação de dados com scripting

Tarefa 1: Criar um botão de ação de dados com scripting para copiar e atualizar dados

Fluxo de tarefa: neste exercício prático, você irá:

  • Adicione um objeto técnico de ação de dados à história e configure os parâmetros.
  • Adicione a criação de script ao botão para executar a ação de dados a fim de copiar e atualizar dados.
  • Adicione scripts a um widget de botão para que ele só seja exibido se houver uma versão privada.

Tarefa 2: Adicionar scripting a um botão de ação de dados para exibir um indicador de ocupado e uma mensagem personalizada

Fluxo de tarefa: neste exercício prático, você irá:

  • Adicione scripts ao botão para mostrar/ocultar um indicador de ocupado.
  • Adicione scripting ao botão para adicionar uma mensagem de êxito.