Funções ESQL

Uma função é uma construção ESQL que calcula um valor a partir de vários valores de entrada especificados.

Uma função geralmente possui parâmetros de entrada e pode, mas geralmente não possui, parâmetros de saída. Ela retorna um valor calculado pelo algoritmo descrito por sua instrução. Essa instrução é geralmente uma instrução composta, como BEGIN... END, porque permite que um número ilimitado de instruções aninhadas sejam utilizadas para implementar o algoritmo.

O ESQL fornece várias funções predefinidas ou "internas", que você pode utilizar livremente nas expressões. Também é possível utilizar a instrução CREATE FUNCTION para definir suas próprias funções.

Ao definir uma função, você deve atribuir a ela um nome exclusivo. O nome é tratado sem fazer distinção entre maiúsculas e minúsculas (ou seja, pode-se utilizar o nome com qualquer combinação de maiúsculas e minúsculas na instrução). Isso é o oposto do que ocorre com os nomes declarados para esquemas, constantes, variáveis e rótulos, que fazem distinção entre maiúsculas e minúsculas e que devem ser especificados exatamente da maneira como foram declarados.

Considere o seguinte fragmento de programa ESQL:

SET Diameter = SQRT(Area / 3.142) * 2;

Neste exemplo, a função SQRT (raiz quadrada) recebe o valor entre colchetes (o próprio resultado de uma expressão, uma operação de divisão) e seu resultado está sendo utilizado em uma expressão adicional, uma operação de multiplicação. Seu valor de retorno é designado ao Diâmetro de variável. Consulte Chamando Funções ESQL para obter informações sobre todas as funções ESQL internas.

Além disso, uma expressão ESQL pode referir-se a uma função de um outro esquema do intermediário (ou seja, uma função definida por uma instrução CREATE FUNCTION em um arquivo ESQL no mesmo projeto dependente ou em um diferente). Para resolver o nome da função chamada, você deve executar um dos seguintes procedimentos:

Observe que não é possível definir uma função dentro de uma instrução EVAL ou de uma função EVAL.

Conceitos relacionados
Visão Geral de Fluxos de Mensagens
Visão Geral de Mapeamentos de Mensagens
Tarefas relacionadas
Desenvolvendo Fluxos de Mensagens
Desenvolvendo ESQL
Referências relacionadas
Nós Internos
Referência de ESQL
Chamando Funções ESQL
Instrução CREATE FUNCTION
Instrução CREATE MODULE
Instrução CREATE PROCEDURE
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ak01080_