Herança de Tabela
Há um recurso de Herança de Tabela disponível para uso na Camada de Armazenamento de Dados. A Herança de Tabela permite que você não precise usar o App Builder conector se tudo ao que você está se conectando for local. Para usar esse recurso, você clicará no botão Edge Case disponível na Tabela da qual deseja estender, ao trabalhar na Camada de Dados. É aqui que você configura e define esse recurso para uso. O campo Extends, disponível ao configurar, exibe uma lista de todos os objetos de dados públicos que estão disponíveis no ambiente do servidor.
A herança instrui essencialmente App Builder para herdar uma cópia de todas as Colunas e registros de dados que a Tabela selecionada tem disponível para ela da Fonte de Dados existente. Os registros de dados ainda residem no local da Fonte de Dados da tabela da qual você Herda. A suposição é que você Herdaria uma Tabela e, em seguida, anexaria novas Colunas exclusivas a ela, conforme necessário.
A tabela local que é criada ao usar Herança armazena quaisquer Chaves Primárias junto com quaisquer Colunas recém-adicionadas. A tabela recém-criada também herdará quaisquer validações, lógica e/ou Eventos da tabela de origem selecionada. Você pode usar a tabela Herdada recém-criada para adicionar Lógica de Negócios a ela ou contra ela.
Por design, App Builder não refletirá automaticamente as alterações feitas na tabela de origem ou mestre na tabela Herdada. Veja "Para capturar alterações da tabela herdada" para resolver essa situação.
Nota
Uma vez que a Herança de Tabela é definida para uma tabela dada, esse valor não pode ser modificado após ter sido salvo.
Para Configurar a Herança de Tabela
A herança de tabela está disponível na camada de dados. As etapas descritas aqui pressupõem que você deseja estender uma tabela para a mesma fonte de dados, a opção para estender uma tabela para uma fonte de dados diferente é descrita na seção Exemplo de uso abaixo.
- Navegue até o App Workbench
- Localize a tabela existente que deseja estender, clique no botão Design. Por exemplo: Customer
- Clique no botão Edge Case
- Clique no botão Extend
- Deixe o valor Extends como está, isso representa a tabela nomeada sendo estendida. Por exemplo: Customer
- Atribua um Nome exclusivo para a nova tabela. Por exemplo: CustomerExtend
- Clique em Salvar
- App Builder traz todas as colunas herdadas para o painel Colunas
- Clique em Criar e adicione quaisquer novas colunas necessárias
Para Capturar Alterações da Tabela Herdada
Por design, a Herança de Tabela não trará automaticamente as alterações de Coluna feitas na tabela de origem ou mestre selecionada da qual você está herdando. Se quiser capturar alterações da tabela de origem, você pode usar o botão Importar disponível na Camada de Dados.
- Navegue até o App Workbench
- Localize a Tabela existente que deseja atualizar, clique no botão Design. Por exemplo: CustomerExtend
- Clique no botão Edge Case
- Clique no botão Importar
- App Builder solicitará a pergunta "Importar alterações para a tabela atual?", clique em Continuar
- App Builder solicitará após importar as alterações, e quaisquer atualizações de coluna serão visíveis no painel Columns. Por exemplo: Bem-sucedido!
Exemplo de Uso
O exemplo a seguir descreve um cenário em que você pode usar a herança de tabela. Nesse cenário, você deseja estender uma tabela de uma fonte de dados para outra. Um exemplo em que você pode usar a herança de tabela é se você quiser criar uma tabela de parâmetros de usuário a partir de um objeto de dados público em uma fonte de dados que você estende para uma fonte de dados diferente. Com esse cenário, descreveremos as etapas básicas que você deve seguir para começar:
- Navegue até o App Workbench, Business Layer e confirme se App Data Sources tem a fonte de dados selecionada onde você deseja que a tabela estendida resida. Por exemplo: Northwinds
- Abra o registro de qualquer uma das tabelas existentes nessa fonte de dados
- Clique no botão Edge Case
- Clique no botão Extend
- Selecione a tabela que deseja estender no menu suspenso Extends. Por exemplo: Se_User do App Builder fonte de dados
- Confirme se o valor Nome é o que você deseja que a tabela estendida seja Nomeada. Por exemplo: Se_User_Extension
- Clique em Salvar
- Clique em Caso Extremo e confirme se a tabela de extensão tem Suporte CRUD marcado ou habilitado para Inserível, Atualizável, Excluível
-
Crie uma nova coluna Booleana na tabela de extensão. Por exemplo: BooleanTest
-
Crie uma Regra CRUD para atualizar todos os registros para o valor booleano para 1. Certifique-se de habilitar a Camada de Negócios nas configurações da Regra CRUD Propósito.
-
Clique no botão Edge Case e marque para habilitar Business Layer
- Clique em Save
-
Clique no x para sair da tela
-
Confirme a regra CRUD Resultados mostram todas as contas de usuário existentes com campo booleano marcado como 1
- Clique no botão Executar para executar a regra CRUD
- Navegue até a camada de armazenamento de dados, até a tabela que você estendeu e confirme que a coluna booleana agora lê 1 para todas as contas de usuário