As etapas neste exemplo:
- Configurando campo do tipo Radio
- Configurando e criando blocos
- Usando Macro em Evento Ajax
A macro tem o seguinte escopo:
Aplicação Calendário
| Aplicação Gráfico
| Aplicação Consulta
| Aplicação Formulário
| Aplicação Controle
|
onAfterInsert onAfterUpdate onScriptInit onLoad onRefresh onValidate onValidateFailure onValidateSuccess | onScriptInit
| onScriptInit onRecord | onAfterDeleteAll onAfterInsert onAfterInsertAll onAfterUpdate onAfterUpdateAll onScriptInit onLoad onNavigate onLoadRecord onRefresh onValidate onValidateFailure onValidateSuccess | onClick onScriptInit onLoadAll onRefre |
Configurando campo do tipo Radio
1.Estaremos utilizando um botão do tipo Radio como flag para habilitar o block ou desabilita-lo, dessa forma estaremos criando um lookup Manual para colocar duas opções disponíveis (Full e Simple)
1.1 Criando Botão Do tipo Radio com o nome de "Filling"
Lembre-se de desabilitar o checkBox para Criar um novo bloco para posicionar este campo
Configurando Lookup Manual do Campo Radio
1.2 Com o campo já criado escolha a opção de Lookup Manual com os seguintes labels (Full e Simple) com os seguintes valores respectivamente ("f" e "s"), como mostra abaixo:
Após a configuração de cada opção clique no botão "Incluir"
No evento onLoad do seu formulário coloque o seguinte código:
- {filling} = "s";
- sc_block_display('block2','off');
Configurando e Incluindo blocos
2. Estaremos nessa etapa criando o nosso bloco para que seja utilizada na macro.
2.1 No seu formulário clique em Layout->Blocos
Crie um bloco chamado "block2" como segue imagem:
Organize os seus campos separados para cada bloco na opção de Posicionamento dos Campos, com segue imagem:
Usando a macro em evento Ajax
3.Crie um evento ajax "onClick" e utilize o seguinte código:
- if({filling} == 'f') {
- sc_block_display('block2', 'on');
- } else {
- sc_block_display('block2', 'off');
- }
3.1 Salve e execute o aplicativo.
Ao clicar na opção "Full", todo o bloco será mostrado, e ao clicar na opção "Simple" o bloco será recolhido