Rotina Lançador

Digamos que no processo de faturamento exista uma lista de tarefas a serem executadas por pedido e que ao ser criado o pedido, seja necessário definir essas tarefas. Seria interessante lançar o cadastro de tarefas diretamente da Central, filtrando as tarefas do pedido selecionado.

Dessa forma, localize a TGFCAB na tela Dicionário de Dados e na aba "Ações" criaremos um lançador para a tela, assim, teremos:

Clique no botão "Incluir";
Informe a "Descrição" da ação e selecione o tipo "Lançador". Assim, uma cópia do menu do sistema será exibida para determinar qual item abre a tela desejada;
Em seguida, selecione o menu "Tarefas".

951

Nota: Quando uma tabela adicional for utilizada, faça o uso da tela Construtor de telas.

Pelo fato de a ação estar ligada à TGFCAB, ao abrir a Central, a ação estará sob o Menu "Ações" na barra superior:

1244

Quando selecionado, o menu abrirá a tela "Lista de Tarefas".

Para contextualizar a tela nas tarefas do pedido selecionado na Central, devemos incluir um argumento na ação que envia para tela requerida, o NUNOTA da TGFCAB. Para isso serve a grade de "Parâmetros" (não confunda com os parâmetros da TSIPAR). Esses parâmetros relacionam os campos da tela chamadora (Central) com os campos da tela chamada "Tarefas". Assim, adicione um parâmetro ligando NUNOTA da origem com NUNOTA do destino. Assim, referente a esses parâmetros podemos destacar:

Quando clicado, o menu abre o cadastro de tarefas, como esperado.

  • Qualquer campo pode ser referenciado, independente de ser PK tanto na tela de origem quanto no destino.
  • Caso não existam registros que atendam aos critérios estabelecidos, a tela entra automaticamente em modo de inclusão, preenchendo os campos referenciados com os respectivos valores. Isso adianta o processo de inclusão.
  • Se existirem parâmetros para essa ação, ela só poderá ser executada quando todos os campos referenciados estiverem preenchidos.

Como tirar dúvidas?

Para tirar dúvidas e compartilhar informações, use a sala Botões de Ação da comunidade Sankhya Developer.