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:
- Usando um widget Iniciador de ação de dados.
Este tópico é abordado em detalhes no curso Aproveitando recursos avançados no SAP Analytics Cloud para planejamento.
- 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.
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.
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:
- Só é exibido quando há uma versão privada.
- Copia e atualiza dados.
- Tem um indicador de ocupado sem uma caixa de diálogo enquanto está sendo executado.
- 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.
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.
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
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:
12
DataAction_1.execute();
TBLPLANNING.getDataSource().refreshData();
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:
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);
}
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:
12
//Call Global Script function to populate story with button if private version exists
SO_Planning.updateButtonVisibility();
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:
1
SO_Planning.updateButtonVisibility();
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:
1
Application.showBusyIndicator();
Ocultar o indicador de ocupado quando a execução da ação de dados for concluída:
1
Application.hideBusyIndicator();
Adicionar mensagem personalizada
Adicione o seguinte código para exibir a mensagem personalizada assim que a ação de dados for executada com sucesso:
1
Application.showMessage(ApplicationMessageType.Success,"The data action has run successfully and the table has refreshed.");
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.