Histórico da Página
| Composition Setup |
|---|
import.css=/download/attachments/327912/newLayout.css |
Abre um formulário FreeForm como WINDOW(janela modal - popup) ou VIEW (tab).
Obs.: Essa função está obsoleta, utilize a função OPEN-FREEFORM().
...
Syntax
OPENFORM( formXML, WINDOW | VIEW, [returnVar], FORM-PARAMS: param1, param2, ...).
formXML
Caminho e nome do XML do formulário a ser aberto.
...
Variável opcional que pode ser usada em conjunto com o tipo WINDOW. Quando informado esse parâmetro, após aberto o formulário como popup, a execução do script será pausada até que seja utilizado o comando CLOSEFORM() em um script do formulário recém aberto. O comando CLOSEFORM recebe um parâmetro do tipo LOGICAL que será utilizado para atribuir o seu valor para variável returnVar.
A returnVar pode ser dos tipos CHARACTER, INTEGER, DECIMAL, DATE, LOGICAL e TEMP-TABLE.
Se a returnVar não for informada no comando OPENFORM, o script em questão continua a execução normal sem esperar pelo CLOSEFORM.
FORM-PARAMS: param1, param2, ...
Parâmetros a serem passados para o formulário a ser aberto. É possível passar qualquer quantidade de parâmetros e os mesmos podem ser valores informados diretamente no comando ou variáveis dos tipos: CHARACTER, INTEGER, DECIMAL, DATE, LOGICAL e TEMP-TABLE.
No lado do formulário a ser aberto, podemos em qualquer script do mesmo obter os parâmetros declarando variáveis da seguinte forma:
DEFINE FORM-PARAM paramName AS DATATYPE.
Os nomes informados para os parâmetros(paramName) não precisam ser os mesmos das variáveis passadas para o comando OPENFORM. Porém a ordem de declaração dos parâmetros precisa ser a mesma da ordem informada no OPENFORM, assim como os tipos (DATATYPE) precisam corresponder. DATATYPE pode ser: CHARACTER, INTEGER, DECIMAL, DATE, LOGICAL e TEMP-TABLE.
...
Exemplos
Abre freeform em uma janela modal
...
OPENFORM("view/cm/freeform/TesteModal", WINDOW, bl)./* A partir desse ponto só será executado após o fechamento da janela modal com o comando CLOSEFORM(). */
IF bl THEN DO:
DISPLAY "OK".
...
No formulário "TesteModal" ao fechar o mesmo poderiamos executar o seguinte comando em algum de seus scripts:
CLOSEFORM(true).
Mesmo exemplo anterior porém retornando uma TEMP-TABLE.
DEFINE VARIABLE tt AS TEMP-TABLE.OPENFORM("view/cm/freeform/TesteModal", WINDOW, tt)./* A partir desse ponto só será executado após o fechamento da janela
modal com o comando CLOSEFORM(). */
FOR EACH tt: ....END.No formulário "TesteModal" ao fechar o mesmo poderiamos executar o seguinte comando em algum de seus scripts:
DEFINE TEMP-TABLE tt1 FIELD code AS INTEGER FIELD desc AS CHARACTER.CREATE tt1.tt1.code = 10.tt1.desc = "azul".CREATE tt1.tt1.code = 20.tt1.desc = "vermelho".CLOSEFORM(tt1).
Quando um FreeForm for aberto como POPUP, o tamanho da janela será definido pelas propriedades popupWidth
e popupHeight do FreeForm. Caso essas propriedades não estejam definidas, serão utilizadas as propriedades
...
Ver Também
...