Ir para o conteúdo

Funções SQL Definidas pelo Usuário

A sintaxe da função SQL do usuário pode ser colocada em linha com App Builder sintaxe suportada para substituição de parâmetros.

Exemplo de Função SQL Definida pelo Usuário

Para fins de ilustração, descreveremos um caso de uso para ter uma Função SQL Definida pelo Usuário:

  • Você tem duas tabelas: Employees (tabela original) e EmployeesPanel (tabela nova)
  • Ambas as tabelas têm as mesmas chaves
  • Uma tabela contém valores carregados da fonte de dados, a outra foi usada como uma fonte de painel

Se com o cenário acima você deseja exibir o valor Original ou o valor Original !! '-------' !! Novo valor para um campo específico, você pode fazer isso com uma Função SQL Definida pelo Usuário. Neste exemplo, usaremos uma Função SQL Definida pelo Usuário para comparar o valor FirstName da nossa tabela Original (Employees, alias como E) e a tabela New (EmployeesPanel, alias como EP).

Aqui está a definição para nossa Função SQL Definida pelo Usuário de exemplo:

IIF({0} = {1}, {0}, {0}  || '------>' || {1})

Aqui está uma captura de tela ilustrando como este cenário de exemplo usando uma função SQL definida pelo usuário pode parecer a partir do App Builder visualização do aplicativo:

UdfSQL

Para Criar uma Função SQL Definida pelo Usuário

As funções SQL definidas pelo usuário são criadas no App Builder área de configurações do IDE, na tela Functions.

  1. Vá para o Action Drawer e selecione App Builder IDE no menu
  2. Selecione Configure your site no menu Configure
  3. Clique em Functions
  4. Clique no botão Create para adicionar uma nova User Defined SQL Function.
  5. Forneça informações sobre a User Defined SQL Function:

    • Owner - Padrão para valor
    • Type - MVSQL ou SQL
    • Name - Nome definido pelo usuário para a função, deve começar com um caractere sublinhado. Por exemplo, _DiffFirstName
    • Número de argumentos - Número de argumentos na função
    • Definição - A sintaxe SQL real para a função
    • Descrição - Descrição de texto do que a função SQL faz
    • Exemplo - Um exemplo usando a função SQL
    • Resultados do exemplo - Resultados da função SQL

    Udffunction

  6. Clique em Salvar

Para Usar uma Função SQL Definida pelo Usuário em uma Regra

Após criar uma Função SQL Definida pelo Usuário, você está pronto para usá-la em uma Regra de Objeto de Negócios.

  1. Vá para a Gaveta de Ações e selecione App Builder IDE no menu
  2. Clique em Criar seu aplicativo no menu Criar
  3. Clique no botão de menu Camada de lógica de negócios
  4. Clique no ícone BOBJ para sua fonte de dados do aplicativo
  5. Clique em Criar em Regras
  6. Atribua um Nome para a Função SQL definida pelo usuário e selecione Objeto de negócios como Finalidade
  7. Clique em Salvar
  8. Clique no ícone SQL para definir a lógica SQL para a Função SQL definida pelo usuário. As etapas para configurar esta função são semelhantes a como você trabalha com a definição de outras funções SQL em App Builder. Quando você chegar ao painel Columns, você fará referência ao User Defined SQL Function Name junto com a sintaxe:

    Column

  9. Se você quiser usar o valor da coluna da função SQL definida pelo usuário em outro lugar no aplicativo, clique em Criar em Colunas e adicione um ID exclusivo que vinculará as tabelas.

  10. Neste exemplo, queremos ver os resultados da função SQL definida pelo usuário no painel Funcionários que usa EmployeesPanel (Origem). Vá para a lógica de negócios EmployeesPanel (Origem) e clique no ícone SQL para o objeto de negócios EmployeesPanel (Origem).
  11. Clique em Criar em Tabelas e traga a regra do objeto de negócios da função SQL definida pelo usuário. Neste exemplo, é Employees (UDF _DiffFirstName).
  12. Crie uma junção interna na tabela e na regra
  13. Una as colunas no ID exclusivo
  14. Clique em Criar em Colunas para adicionar uma coluna com o valor resultante da sua função SQL definida pelo usuário que você deseja ver. Atribua um Alias e clique na marca de seleção para salvar.

Nota

Este recurso pressupõe que a pessoa que cria uma Função SQL Definida pelo Usuário esteja ciente de App Builder sintaxe suportada para substituição de parâmetros com funções SQL.