4D v16.3PROCESS 4D TAGS |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
PROCESS 4D TAGS
|
PROCESS 4D TAGS ( dadosEntrada ; dadosSaida {; param}{; param2 ; ... ; paramN} ) | ||||||||
Parâmetro | Tipo | Descrição | ||||||
dadosEntrada | Texto, BLOB |
![]() |
Dados que contém as etiquetas HTML a processar | |||||
dadosSaida | Texto, BLOB |
![]() |
Dados processados | |||||
param | Texto, Número, Data, Hora, Ponteiro, Booleano |
![]() |
Parâmetros passados ao template sendo executado | |||||
O comando PROCESS 4D TAGS provoca o processamento das etiquetas de transformação 4D contidas em dadosEntrada (campo ou variável de tipo Texto ou BLOB) enquanto opcionalmente insere valores utilizando os valores via os parâmetros param e retorna os dados resultantes em dadosSaida. Para uma descrição completa das etiquetas, veja Etiquetas HTML 4D
Este comando permite executar um texto de tipo "template" que contém as etiquetas e as referências as expressões ou variáveis 4D e produz um resultado dependendo do contexto de execução e/ou dos valores passados em parâmetro.
Por exemplo, pode utilizar este comando para gerar e guardar as páginas HTML baseadas em páginas semi-dinâmicas que contém as etiquetas de transformação 4D (sem que seja necessário que o servidor Web de 4D se inicie). Pode utilizar para enviar mensagens de e-mail em formato HTML que contenham processamentos e/ou referências aos dados contidos na base através de 4D Internet Commands. É possível processar qualquer tipo de dados baseados em texto, tais como XML, SVG ou texto multi-estilo.
Todas as etiquetas de transformação de 4D são compatíveis (4DTEXT, 4DHTML, 4DSCRIPT, 4DLOOP, 4DEVAL, etc.),,
Nota: Quando utilizar a etiqueta 4DINCLUDE fora do marco do servidor web (processo web):O comando PROCESS 4D TAGS suporta um número indefinido de parâmetros param que podem ser inseridos no código que se executa. Igualmente com os métodos projeto, tais parâmetros podem conter valores escalares de tipos variados (texto, data, hora, inteiro longo, real, etc). Também pode utilizar os arrays, por meio de ponteiros de arrays. Dentro do código processado pelas etiquetas 4D, estes parâmetros são acessíveis por meio de argumentos padrão ($1, $2, etc.), igual que nos métodos 4D (ver exemplo).
Um conjunto dedicado de variáveis locais se define no contexto de execução do comando PROCESS 4D TAGS. Estas variáveis podem ser escritas ou lidas durante o processamento.
Nota de Compatibidade: Em versões anteriores de 4D, variáveis locais definidas no contexto de chamada podem ser acessadas em PROCESS 4D TAGS no contexto de execução no modo interpretado . A partir de 4D v14 R4, este não é mais o caso.
Depois da execução do comando, o parâmetro dadosSaida recebe os dados do parâmetro dadosEntrada, junto com o resultado do processo das etiquetas HTML 4D que contém, quando aplicável. Se dadosEntrada não contiver etiquetas HTML 4D, o conteúdo de dadosSaida é idêntico ao de dadosEntrada.O parâmetro dadosSaida pode ser um campo ou uma variável, mas deve ser do mesmo tipo que o parâmetro dadosEntrada.
Nota: este comando já não chama ao On Web Authentication database method.
Este exemplo carrega um documento de tipo 'template', processa as etiquetas que contiver e depois o guarda:
C_BLOB($Blob_x)
C_BLOB($blob_out)
C_TEXT($inputText_t)
C_TEXT($outputText_t)
DOCUMENT TO BLOB("meutemplate.txt";$Blob_x)
$inputText_t:=BLOB to text($Blob_x;UTF8 text without length)
PROCESS 4D TAGS($inputText_t;$outputText_t)
TEXT TO BLOB($outputText_t;$blob_out;UTF8 text without length)
BLOB TO DOCUMENT($document;$blob_out)
Este exemplo gera um texto utilizando os dados dos arrays:
ARRAY TEXT($array;2)
$array{1}:="hello"
$array{2}:="world"
$input:="<!--#4DEVAL $1-->"
$input:=$input+"<!--#4DLOOP $2-->"
$input:=$input+"<!--#4DEVAL $2->{$2->}--> "
$input:=$input+"<!--#4DENDLOOP-->"
PROCESS 4D TAGS($input;$output;"elements = ";->$array)
// $output = "elements = hello world"
Produto: 4D
Tema: Ferramentas
Número
816
Criado por: 4D 2004
Modificado: 4D v11 SQL
Modificado: 4D v12
Renomear: 4D v13
Modificado: 4D v14 R4
Manual de linguagem 4D ( 4D v16)
Manual de linguagem 4D ( 4D v16.1)
Manual de linguagem 4D ( 4D v16.2)
Manual de linguagem 4D ( 4D v16.3)