Você pode utilizar os comandos de script (WFS) do WebFOCUS com as configurações do Cliente WebFOCUS (consulte Como Usar o Console de Administração) e as variáveis do cabeçalho HTTP ( consulte Variáveis de Cabeçalho HTTP Disponíveis para Processamento de Script) para personalizar ainda mais o processamento e controle do Cliente WebFOCUS.
Você pode utilizar os comandos WFS para:
Dica: Você também pode utilizar as seguintes variáveis com os comandos de script do WebFOCUS:
Você pode posicionar os seguintes comandos WFS no arquivo site.wfs ou no perfil de nó de um servidor específico.
Sintaxe de Comando |
Descrição |
---|---|
<EXIT> |
Faz com que o Cliente WebFOCUS interrompa o processamento e se feche imediatamente. |
<INCLUDE> filename
|
Incorpora a lógica do WFS a partir de arquivos externos dentro do processamento WFS padrão. O arquivo deve existir para que o processamento continue. Para obter informações, consulte Como Incluir Arquivos Externos no Processamento Padrão do WFS . |
<CONDITIONAL_INCLUDE> filename
|
Trabalha da mesma maneira que o <INCLUDE> filename, exceto pelo fato de que o arquivo não precisa existir. Para obter informações, consulte Como Incluir Arquivos Externos no Processamento Padrão do WFS . |
<SET> variable (option) |
Envia variáveis para o Servidor de Relatório do WebFOCUS para uso com procedimentos do servidor. É utilizado para variáveis que não são enviadas automaticamente para o Servidor de Relatório. para obter mais informações, consulte Como Enviar Variáveis para o Reporting Server do WebFOCUS . |
<CALL> function(parm1,...) |
Chama os plug-ins do WebFOCUS Qualquer plug-in do WebFOCUS pode conter um máximo de dez parâmetros de entrada. Para obter mais informações, consulte Chamar o Plug-in do Servlet do WebFOCUS . |
<IF> variable operator value
<ELSE>
<ENDIF>
|
Permite a verificação condicional das variáveis do Cliente WebFOCUS. Para obter mais informações, consulte Como Verificar Variáveis de Forma Condicional. |
<IFDEF> variable
<ELSE>
<ENDIF>
|
Verifique a existência de uma variável de Cliente do WebFOCUS. Para obter mais informações, consulte Como Verificar a Existência de Variáveis. |
<IFNDEF> variable
<ELSE>
<ENDIF>
|
Verifica se uma variável do Cliente do WebFOCUS não existe. Para obter mais informações, consulte Como Verificar se a Variável Não Existe. |
<SENDVAR> name={constant|&value} <ENDSENDVAR> |
Envia variáveis para o Servidor de Relatório do WebFOCUS para uso com procedimentos do servidor. É utilizado para variáveis que não são enviadas automaticamente para o Servidor de Relatório. para obter mais informações, consulte Como Enviar Variáveis para o Reporting Server do WebFOCUS . Observação: Esta sintaxe foi eliminada. É recomendado que o <SET> variable_name (pass) seja utilizado em vez da técnica <SENDVAR>. |
Ao codificar comandos WFS, você pode utilizar a sintaxe a seguir.
Sintaxe de Comando |
Descrição |
---|---|
<! > # |
Caracteres de comentários que indicam ao Cliente do WebFOCUS que a linha atual é um comentário. Símbolo "menor que" e um ponto de exclamação (<!) ou uma cerquilha (#) devem ser os primeiros caracteres na linha. Por exemplo: <! This is a comment.> # This is also a comment. |
\\= |
Caractere de continuação que você pode adicionar no fim de qualquer linha. Ele diz ao Cliente WebFOCUS que a próxima linha é uma continuação da atual. Por exemplo: long_string = this is a \\= very long string that \\= needs multiple lines |
\n |
Retorno de linha com avanço de carro que permite que você insira diversos comandos em uma única linha. |
value = {constant|&variable} |
Atribui um valor a uma variável em um arquivo WFS como constante ou varíavel, onde:
Após atribuir-se um valor à variável, você pode utilizar o nome da variável, com um ampersand (&) como prefixo, no lugar do valor. Você pode concatenar valores literais desta forma. Por exemplo: long_string = this is a long_string = &long_string very long string long_string = &long_string that requires multiple lines |
Quando uma barra invertida (\) for utilizada como o caracter de escape, você pode:
Quando uma barra invertida (\) é utilizada como um caractere de escape, ela não é incluída nos cálculos com base no comprimento da string. Uma string de cinco caracteres e um caracter de escape cabem em uma variável de cinco caracteres.
As variáveis do Cliente WebFOCUS fornecem a você controle sobre a exibição de diversos relatórios na mesma página HTML com diversos quadros sem a necessidade da sintaxe HTML FRAME. Também permite que você conecte vários relatórios com um único Sumário (TOC). Você pode utilizar estas variáveis para exibir formatos diferentes de relatórios, como HTML e PDF, em uma única página de início. Para afetar a saída de solicitações retornando ao Reporting Server do WebFOCUS, emita a sintaxe a seguir no Reporting Server do WebFOCUS:
-TYPE WEBFOCUS CGIVAR variable = value
onde:
É o nome da variável do Cliente WebFOCUS.
Especifica o valor da variável do Cliente WebFOCUS
Para obter mais informações sobre os nomes de variáveis e possíveis variáveis do Cliente WebFOCUS, consulte o manual Como Desenvolver Aplicativos de Relatório.
Você pode incorporar arquivos externos no processamento padrão do WFS. O comando <INCLUDE> a seguir permite que outro arquivo do WFS seja chamado a partir de arquivos padrão do WFS. O arquivo personalizado deve existir para que o processamento continue.
<INCLUDE> filename
onde:
É o nome do arquivo a ser incluído para processamento do WFS.
Observação: <CONDITIONAL_INCLUDE> filename trabalha da mesma maneira que o <INCLUDE> filename, exceto pelo fato de que o arquivo não precisa existir.
O comando <SET> a seguir permite a validação e o controle das variáveis do Cliente do WebFOCUS passadas de um cookie ou formulário:
<SET> variable (option)
onde:
É o nome da variável do Cliente WebFOCUS.
Podem ser um dos seguintes:
Especifica que a variável será tratada como uma variável ampersand do Gerente de Diálogo no Reporting Server do WebFOCUS. Este é o valor padrão.
Especifica que a variável não será passada para o Reporting Server do WebFOCUS.
Especifica que a variável não pode ser configurada do navegador.
Observação: As variáveis IBIF_focexec and IBIF_ex não devem ser restringidas com a opção protect. Fazer isso impediria que o WebFOCUS executasse o procedimento.
Especifica que a variável só pode ser numérica.
Especifica que a variável só pode conter caracteres alfanuméricos (0-9, a-z) e pontos finais (.).
Especifica que todos os caracteres são válidos.
Configura o comprimento máximo de uma variável em caracteres. O comprimento é ilimitado por padrão.
O plug-in do Servlet do WebFOCUS pode ser habilitado através da configuração da variável WFEXT como o nome de classe ibi.webfoc.WFEXTDefault no arquivo cgivars.vars.
Observação: Apenas um plug-in pode estar ativo por vez. Caso seja necessário adicionar funções, você deve estender esta classe para incluí-las, com o objetivo de não perder o acesso aos métodos fornecidos nesta classe.
O comando <CALL> a seguir chama um plug-in do WebFOCUS.
<CALL> routine(parm1,parm2) <IF> RETCODE NE "returncodevalue" # insert your code here <ENDIF>
onde:
É o nome do comando que chama o plug-in do Servlet WebFOCUS.
Define o nome da função a ser chamada (por exemplo, a segurança ou CopyHTTPCookieToWFVar).
São os parâmetros de saída do plug-in WebFOCUS. Qualquer plug-in do WebFOCUS pode conter um máximo de dez parâmetros de entrada. O buffer de saída é passado, mas não contribui para o número máximo de parâmetros de entrada.
É o status da chamada do método.
É o valor que você está comparando com o que o plug-in retorna (por exemplo, 0).
A declaração <IF> a seguir verifica de forma condicuional as variáveis do Cliente do WebFOCUS.
<IF> variable operator value
<ELSE>
<ENDIF>
onde:
É qualquer variável do Cliente WebFOCUS.
Pode ser configurado como EQ, NE, CONTAINS, OR ou AND.
Aplicável a qualquer variável ou constante do Cliente WebFOCUS.
Você pode utilizar a declaração <IF> a seguir para garantir que a página para conexão do WebFOCUS seja chamada.
Se você adicionar upper à variável WFS, o valor é verificado como se possuísse caracteres em caixa alta. Isto permite que você verifique o valor que o usuário inseriu sem se preocupar com o caso.
A declaração <IF> a seguir garante que qualquer valor inseirdo seja tratado como caixa alta.
<IF> ABC.upper EQ "Y" OR ABC.upper EQ "YES" DEF = &GHI <ENDIF>
A declaração <IF> a seguir garante que qualquer valor inseirdo seja tratado sem distinção entre maiúsculas e minúsculas.
<IF> IBIC_server.upper EQ "EDASERV" # INSERT YOUR CODE HERE.... <ENDIF>
A declaração <IF> a seguir verifica se a constante .ibi.com está contida na variável HTTP_HOST do Cliente do WebFOCUS.
<IF> HTTP_HOST contains ".ibi.com"
# INSERT YOUR CODE HERE....
<ENDIF>
A declaração <IFDEF> a seguir verifica a existência de uma variável de Cliente do WebFOCUS.
<IFDEF> variable
<ELSE>
<ENDIF>
onde:
É qualquer variável do Cliente WebFOCUS.
No exemplo a seguir, se a variável _ON_NT existir, PATH_SEP será configurado como um ponto e vírgula (;). Se a variável _ON_NT não existir, PATH_SEP é configurado com dois pontos (:).
<IFDEF> _ON_NT PATH_SEP=; <ELSE> PATH_SEP=: <ENDIF>
A declaração <IFNDEF> a seguir verifica se uma variável do Cliente do WebFOCUS não existe.
<IFNDEF> variable
<ELSE>
<ENDIF>
onde:
É qualquer variável do Cliente WebFOCUS.
O comando <SET> envia variáveis para o Servidor de Relatório do WebFOCUS para uso com procedimentos do servidor. Certas variáveis personalizadas são enviadas para o Servidor de Relatório WebFOCUS automaticamente. Esta sintaxe é utilizada para variáveis que não são enviadas automaticamente para o Servidor de Relatório.
<SET> name = {constant|&variable} (pass)
onde:
É uma variável do Gerente de Diálogo a ser utilizada pelo Reporting Server do WebFOCUS.
É um valor literal. Se você incluir aspas ("), estas serão incluídas como parte da variável. Aplicável a qualquer variável do Cliente WebFOCUS.
É um marcador de posição para um valor. Aplicável a qualquer variável do Cliente WebFOCUS.
WebFOCUS |