Páginas filhas
  • LGX - LWEBDIALOG

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Pagetitle
LGX - LWEBDIALOG
LGX - LWEBDIALOG
Componente do tipo janela de diálogo não modal (não permite que outras janelas sejam controladas enquanto uma estiver ativa), permitindo movimentação dentro da área de trabalho do usuário e executando em modo maximizado ou normal.


Nota
iconfalse

(aviso) Válido apenas a partir do build HARPIA. Para build 32 bits, usando smartclient Lobo Guará, algumas propriedades podem não estar disponíveis. (aviso)

Componente disponível a partir do pacote LOGIX 12.1.2503 ou Framework Fix 12.1.2411.FIX01


Hierarquia




Sintaxe


Bloco de código
LET m_webdialog_reference = _ADVPL_create_component(NULL,"LWEBDIALOG")


Métodos GET


Métodos acessíveis através da função _ADVPL_get_property que permite recuperar e manipular os valores do componente.


Expandir
titleGET URL

Método GET: URL

Retorna o endereço atual URL carregado na janela de dialog WEB no acionamento da propriedades INIT_URL ou INIT_APP.

Sintaxe




Bloco de código
_ADVPL_get_property(< lWebDialogReference >,"URL") => cUrl

Parâmetros




NomeTipoDescriçãoObrigatório?
lWebDialogReferenceCHAR

Referência do componente que está em foco na tela.

Sim


Retorno




TipoDescrição
CHAREndereço URL em execução na janela de diálogo WEB.

Exemplo




Bloco de código
linenumberstrue
LET l_url = _ADVPL_get_property(lWebDialogReference,"URL")

Métodos SET

Métodos acessíveis utilizando a função _ADVPL_set_property que permite alterar e manipular os valores do componente.

Sim
Expandir
titleSET INITGET CLEAR_URLCACHE

Método

SET

GET:

INIT

CLEAR_

URL

CACHE

Retorna o valor da propriedade CLEAR_CACHE que indica se é feita a limpeza do cache antes de exibir a página WEB.

Por padrão esta propriedade é definida como TRUE na criação do componente

Iniciar a exibição e permitir navegação de uma página WEB para o endereço URL informado.

Sintaxe




Bloco de código
_ADVPL_setget_property(< lWebDialogReference >,"INITCLEAR_URLCACHE",< l_urlAddress >)) => nClearCache

Parâmetros




NomeTipoDescriçãoObrigatório?
lWebDialogReferenceCHAR

Referência do componente que está em foco na tela.

Sim
l_urlAddress 
CHAR
Endereço WEB a ser apresentado para navegação.


Retorno



TipoDescrição
BOOLEAN

Indica se deve limpar ou não o cache da página web antes de exibi-la.

TRUE - Limpeza de cache ativa.

FALSE - Limpeza de cache inativa.

Exemplo



ruby
Bloco de código
language
themeConfluence
linenumberstrue
LET l_enableClearCache   = CALL _ADVPL_setget_property(lWebDialogReference,"INITCLEAR_URL","https://www.totvs.com")CACHE")


Métodos SET


Métodos acessíveis utilizando a função _ADVPL_set_property que permite alterar e manipular os valores do componente.


Indica se deve limpar ou não o cache da página web antes de exibi-la.

TRUE - Limpeza de cache ativa.

FALSE - Limpeza de cache inativa.
Expandir
titleGET CLEARSET INIT_CACHEURL

Método

GET

SET:

CLEAR

INIT_

CACHE

URL

Iniciar a exibição e permitir navegação de uma página WEB para o endereço URL informado

Retorna o valor da propriedade CLEAR_CACHE que indica se é feita a limpeza do cache antes de exibir a página WEB.

Por padrão esta propriedade é definida como TRUE na criação do componente.

Sintaxe



Bloco de código
_ADVPL_getset_property(< lWebDialogReference >,"CLEARINIT_CACHE") => nClearCacheURL",< l_urlAddress >)

Parâmetros



NomeTipoDescriçãoObrigatório?
lWebDialogReferenceCHARReferência do componente
que está em foco na tela
.Sim

Retorno

l_urlAddress 
CHAR
Endereço WEB a ser apresentado para navegação.Sim
TipoDescrição
BOOLEAN

Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
LET l_enableClearCache =     CALL _ADVPL_getset_property(lWebDialogReference,"CLEAR_CACHEINIT_URL","https://www.totvs.com")




Expandir
titleSET INIT_APP

Método SET: INIT_APP

Iniciar a execução de uma aplicação desenvolvida com padrões Web Logix utilizando interface com componentes PO-UI.

Para correto funcionamento da aplicação, utilizando este componente e propriedade, o código do programa principal que aciona a tela com interface WEB em PO-UI é desenvolvida utilizando um fonte 4GL, que precisa ser desenvolvido com uma determinada estrutura padrão que é apresentada num código de exemplo ao final desta página onde constará um código de exemplo completo utilizando a classe LWebDialog.

Sintaxe



Bloco de código
_ADVPL_set_property(< lWebDialogReference>,"INIT_APP",< l_appwebLogix >)

Parâmetros




NomeTipoDescriçãoObrigatório?
l_webdialog_referenceCHARReferência do componente.Sim
l_appwebLogix 
CHAR
Nome da fonte 4gl que possui a função principal que aciona a aplicação WEB Logix.Sim


Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(lWebDialogReference,"INIT_APP","exemploweb")   




Expandir
titleSET CLEAR_CACHE

Método SET: CLEAR_CACHE

Realiza limpeza de cache da página WEB antes de exibir a URL.


Sintaxe



Bloco de código
_ADVPL_set_property(< lWebDialogReference>,"CLEAR_CACHE",< l_enableClearCache >)

Parâmetros




NomeTipoDescriçãoObrigatório?
l_webdialog_referenceCHARReferência do componente.Sim
l_enableClearCache 
BOOLEAN

Indicador para forçar limpeza de cache da página WEB a ser exibida.

TRUE - Limpar o cache antes da exibição da página WEB.

FALSE - Não limpar o cache da página WEB antes de exibi-la.

Sim


Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(lWebDialogReference,"CLEAR_CACHE", < l_enableClearCache> )   




Expandir
titleSET FINISH_APP

Método SET: FINISH_APP

Encerra a janela de diálogo onde está sendo executada a aplicação WEB ou endereço URL iniciada com a propriedade INIT_APP ou INIT_URL.

Sintaxe



Bloco de código
_ADVPL_set_property(< lWebDialogReference>,"FINISH_APP")

Parâmetros



NomeTipoDescriçãoObrigatório?
lWebDialogReferenceCHARReferência do componente.Sim


Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(lWebDialogReference,"FINISH_APP")  




Expandir
titleSET ENABLE_CLOSE_BUTTON

Método SET: ENABLE_CLOSE_BUTTON

Define se habilita ou não um botão FECHAR para encerrar a janela de diálogo WEB. Por padrão este botão FECHAR é apresentado no topo da janela de diálogo.

Nota
iconfalse

Disponível a partir do pacote Logix 12.1.2507 ou Framework FIX 12.1.2411.FIX02.

Sintaxe



Bloco de código
_ADVPL_set_property(< lWebDialogReference>,"ENABLE_CLOSE_BUTTON",< l_enableButton >,< l_alignButton >)

Parâmetros



NomeTipoDescriçãoObrigatório?
lWebDialogReferenceCHARReferência do componente.Sim
l_enableButton 
BOOLEAN

Indicador que define se a janela apresentará um botão para Fechar a janela de diálogo WEB.

TRUE - Apresentar botão FECHAR.

FALSE - Não apresentar botão FECHAR.

Sim
l_alignButton CHAR

Alinhamento do botão FECHAR,

TOP (Padrão) - Alinhamento do botão na área superior da janela de diálogo WEB.

BOTTOM - Alinhamento do botão na área inferior da janela de diálogo WEB.

Não


Exemplo



Bloco de código
languageruby
themeConfluence
linenumberstrue
CALL _ADVPL_set_property(lWebDialogReference,"ENABLE_CLOSE_BUTTON",FALSE)





Expandir
titleClique AQUI para visualizar um exemplo completo utilizando a classe LWEBDIALOG

Exemplo



Bloco de código
linenumberstrue
###---------------------------------------------------------------------------------------------------------------------------------###
### A aplicação WEB LOGIX sempre deverá ter uma função onde o prefixo é _getRelativePath() para determinar o caminho relativo da 
### pasta onde está localizada a pasta de mesmo nome da aplicação que conterá os artefatos para execução da tela WEB.
### Exemplo:
###       Aplicação: exemploweb
###       Fonte 4GL: exemploweb.4gl
###       Funções desenvolvidas neste código fonte 4GL:
###           - Function exemploweb()
###           - Function exemploweb_getRelativePath()
###---------------------------------------------------------------------------------------------------------------------------------###
DATABASE logix

DEFINE m_container_reference        VARCHAR(10)
DEFINE m_webdialog_reference        VARCHAR(10)

#------------------------------------------------------------------#
 FUNCTION exemploweb()
#------------------------------------------------------------------#
    RETURN exemploweb_runInContainer(NULL)
 END FUNCTION

#------------------------------------------------------------------#
 FUNCTION exemploweb_runInContainer(l_container_refer)
#------------------------------------------------------------------#
#OBJETIVO: função para acionamento de programa a partir de uma tela COCKPIT,
#          onde deverá passar a referencia do painel lateral do cockpit, onde
#          o formulário deverá ser renderizado, como parâmetro.
    DEFINE l_container_refer  VARCHAR(10)

    INITIALIZE m_webdialog_reference TO NULL

    IF LOG_initApp("PADRAO") = 0 THEN
        IF m_container_reference <> " " THEN
            LET m_container_reference = _ADVPL_create_component(NULL,"LSCROLLPANEL",m_container_reference)
            CALL _ADVPL_set_property(m_container_reference,"ALIGN","CENTER")
        END IF
        LET m_webdialog_reference = _ADVPL_create_component(NULL,"LWEBDIALOG",m_container_reference)

        ### Neste caso imaginemos que no meu appserver está configurado assim:
        ### ROOTPATH: c:\totvs\logix
        ### Ambiente web:
        ### -------------------------------------------------
        ### [<HOST_OR_IP>:<HTTP_OR_HTTPS_PORT>/apps]
        ### ENVIRONMENT=<Environment_name>
		### RESPONSEJOB=JOBWEB
		### DEFAULTPAGE=index.html
		### PATH=c:\totvs\logix\web\apps
		### SOURCEPATH=c:\totvs\logix\web\apps
		### CACHE-CONTROL=no-store
		### PRAGMA=no-cache
        ### 
        ### a aplicação exemploweb terá seus artefatos web armazenados na pasta c:\totvs\logix\web\apps\exemplos\exemploweb\
        ### Onde a pasta "/exemplos/" é a pasta relativa localizada a partir da pasta principal indicada para o ambiente web no appserver.
        ### e a pasta "exemploweb" é a pasta com o nome da aplicação que armazena todos artefatos web para execução da tela.
        CALL _ADVPL_set_property(m_webdialog_reference,"INIT_APP","exemploweb")
    END IF
 END FUNCTION

#------------------------------------------------------------------#
FUNCTION exemploweb_getRelativePath()
#------------------------------------------------------------------#
   ### Retorna o caminho do PATH relativo a pasta raiz configurada a partir da pasta indicada como ROOTPATH no Appserver 
   ### onde ficam armazenados os artefatos desta aplicação WEB (imagens, html, json, artefatos angular, etc).
   RETURN "/exemplos/"
END FUNCTION

Visualização