Abrir caixa de diálogo apenas se determinada condição for atendida

Ir em baixo

Abrir caixa de diálogo apenas se determinada condição for atendida Empty Abrir caixa de diálogo apenas se determinada condição for atendida

Mensagem  andrewandrade em Seg 18 Fev - 8:12

Criamos uma série de scripts que realizam testes específicos, sendo que cada script abre uma caixa de diálogo solicitando a informação de período (mês e ano) para realização dos testes.

Agora, queremos criar um script que executa todos os demais scripts de uma única vez, e também que o usuário forneça a informação de período apenas uma vez, mas queremos manter ainda a opção de executar os scripts individualmente.
Resumindo, queremos continuar com nossos scripts individuais, caso o usuário queira executar um ou outro script individualmente, e queremos também ter uma opção em que o usuário possa executá-los todos de uma vez, sendo que nessa última, o usuário informaria o período apenas uma vez.

Tentei fazer o seguinte: no script "geral" (script que ordena a execução de todos os outros) existiria um flag que indicaria se o script individual está sendo chamado pelo script geral ou se foi chamado "diretamente". Dentro do script individual, eu colocaria o comando DIALOG dentro do GROUP e faria o teste no flag, somente executando o GROUP se o flag indicasse que o script foi chamado diretamente.

Exemplo:
SCRIPT GERAL (Serve para chamar a execução de todos os outros)

DIALOG .... v_mes ... v_ano ....

v_flag = "TRUE"

DO SCRIPT Script1

v_flag = "FALSE"

_________________________________
SCRIPT1

GROUP IF (MATCH(v_flag;"FALSE"))
DIALOG ... v_mes ... v_ano ...
END

Restante do script
_________________________________

Só que não é permitido usar DIALOG dentro de GROUP, e agora?

andrewandrade

Mensagens : 4
Data de inscrição : 24/01/2013

Voltar ao Topo Ir em baixo

Abrir caixa de diálogo apenas se determinada condição for atendida Empty GROUP?

Mensagem  Miro em Seg 18 Fev - 14:25

não entendi bem o uso do GROUP. Usamos o GROUP quando estamos lendo um arquivo linha a linha e queremos tomar uma decisão a cada linha.

entre outras restrições o GROUP não aceita qualquer comando ou parametro de comando que vá mudar a ordem de leitura do arquivo ou provocar o CLOSE do arquivo lido.

DIALOG, entre outros comandos não funciona dentro de um GROUP, mas não entendi se é exatamente este comportamento (Abrir a caixa de dialogo a cada linha do arquivo), que você esperava com esta codificação.

Talvez seja o caso de você ter que colocar um IF antes de cada caixa de dialogo

IF (MATCH(v_flag;"FALSE")) DIALOG1 ... v_mes ... v_ano ...
IF (MATCH(v_flag;"FALSE")) DIALOG2 ... v_mes ... v_ano ...
IF (MATCH(v_flag;"FALSE")) DIALOG3 ... v_mes ... v_ano ...

Miro

Mensagens : 110
Data de inscrição : 24/02/2012

http://www.it-tech.com.br

Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum