Exemplo de Como Criar uma Função

Manual do Maker 2

Exemplo de Como Criar uma Função

Este passo a passo mostra a criação de uma função para ser utilizada no Maker.

A finalidade da função é abrir o formulário numa moldura no modo edição, navegação ou inserção.

Siga os passos abaixo para a criação da função:

Passo 1: Acesse o menu Arquivo e localize o submenu Funções....Será apresentada a tela Funções do fluxo de ações:

Passo 2: Insira um novo registro. Clique em para apresentar a tela em branco:

  • Na aba Geral preencha os campos:

  • Nome/Apelido - neste campo, deve-se colocar o nome da nova função a ser criada. Neste exemplo: Abrir Formulário numa Moldura - Modo;

  • Descrição - neste campo, deve-se colocar a descrição do funcionamento e o que faz a função, pois esta documentação estará disponível na nova lista de funções primitivas do Maker. Para o exemplo:
    Está função permite abrir um formulário dentro de um objeto do tipo moldura, passando como parâmetro o modo como o formulário será aberto. (-1 - Navegação, 1 - Modo de inserção): 1º parâmetro - Nome do formulário que possui o objeto moldura; 2º parâmetro - Nome do objeto moldura no qual o formulário será carregado; 3º Parâmetro - Nome do formulário que será carregado dentro da moldura; 4º Parâmetro - Valor lógico para controle da barra de rolagem; 5º Parâmetro - Modo em que será aberto o formulário.

  • Nome real - neste campo, deve-se colocar o nome da função que deve obedecer as convenções da linguagem java. Nome utilizado no exemplo: openFrmModo;

  • Parâmetros - neste campo, devem-se colocar os parâmetros que serão passados para função caso a mesma utilize internamente. Parâmetros deste usados neste exemplo: Formulário;Componente;Formulário;Lógico;Inteiro;

  • Tipo de função - neste campo, deve-se informar a categoria a qual a função fará parte. Neste exemplo, a função foi posta na categoria Formulários;

  • Retorno - neste campo, deve-se informar o valor a ser retornado, caso a função retorne algum valor. Neste exemplo a função não esta retornando nenhum valor, apenas executa uma operação;

  • Resumo - neste campo, deve-se informar a descrição breve do uso desta função. Neste exemplo: Abrir Formulário numa moldura - Modo(Formulário;Componente;Formulário;Lógico;Modo);

  • Compatibilidade - neste campo deve-se informar a camada nas quais a função é compatível, neste exemplo foi informado, a camada Cliente.

A aba Geral ficará da seguinte forma:

Observação: Uma função que for utilizada na camada Cliente deve ser escrita em javascript. Caso ela seja executada na camada Servidor, deve ser escrita utilizando Java.

  • Na aba Cliente, preencha os campos:

  • Nome/Apelido - neste campo, deve-se colocar o nome da nova função a ser criada. Neste exemplo: Abrir Formulário numa Moldura - Modo;

  • JavaScript: neste campo, informe o código-fonte abaixo:

    /*Componentes e valores passados como parâmetro para função*/

function openFrmModo (formName, componentName, formTarget,scrollbar, mode)

{

var component = controller.getElementById(componentName, formName);

if ((component) && (component instanceof HTMLGroupBox))

{

var oldIframe = component.div.getElementsByTagName("iframe");

/*Verificação e definição da exibição ou não da barra de rolagem*/

var scrolling;

if (scrollbar)

{

scrolling = 'yes';

}

else

{

scrolling = 'no';

}

if (oldIframe.length > 0)

{

if (oldIframe.formOnUnLoadAction)

oldIframe.formOnUnLoadAction();

/*Criação uma variável para guardar o caminho do formulário a ser exibido dentro da moldura, passando também os parâmetros necessários*/

var url = 'form.jsp?sys='+sysCode+'&action=openform&formID='+formTarget

+'&align=0&mode='+mode+'&goto=-1&filter='+(filter?filter:'')+'&scrolling='+scrolling;

if (oldIframe[0].src.substr(oldIframe[0].src.length-url.length) != url)

{

oldIframe[0].src = url

oldIframe[0].style.scrollbars = scrollbar;

alert(mode);

}

}

else

{

ebfFrameOpenURL(formName, componentName,'form.jsp?sys='+sysCode+

'&action=openform&formID='+formTarget+'&align=0&mode='+mode

+'&goto=-1&filter='+(filter?filter:'')+'&scrolling='+scrolling, scrollbar);

alert(mode);

}

}

else

{

throw "O Componente não é do tipo moldura";

}

}

A aba Cliente deverá ficar da seguinte forma:

Passo 3: Ao final do processo de criação da função, clique em para Salvar a função.

Observação: É necessário que, após a criação de novas funções no Maker, o Webrun seja reiniciado.

Após a criação da função, será criado um exemplo prático utilizando a função "Abrir Formulário numa Moldura - Modo".

Siga os passos abaixo:

Passo 1: Criar um formulário sem fontes de dados, utilizando os componentes Moldura e Botão:

Passo 2: Criar o fluxo para associar ao formulário. Abra o Editor de Fluxos de Ações, adicione um e, no Montador de Expressão, localize a função Abrir Formulário numa moldura - Modo:

No componente Processamento, ficou da seguinte forma:

Observação: Salve o fluxo na camada Cliente.

Passo 3: Associe o componente Botão do formulário ao Evento "Ao clicar" e teste no Webrun. Após ter clicado no botão foi aberto o formulário na moldura:



Criando Funções - Este vídeo demonstra os passos para a criação de uma nova função para o Editor de fluxos de Ações
 

____________________________________________________________________________

Caso este tópico não tenha comentário satisfatório, envie e-mail para [email protected]