CRUD automático para as classes de tabelas de banco de dados será criado uma unit GenericDao.
# Criar um classe TGenericDAO com métodos estáticos que recebam objetos genéricos para geração do CRUD da tabela referenciada.
1 - GetTableName - Busca o nome da tabela do objeto.
2 - Insert - Salva um novo registro na tabela baseado no objeto passado por parâmetro.
3 - GetAll - Busca todos os registros da tabela.
4 - Delete - Procedimento que gera o SQL e executa a exclusão do registro do objeto na tabela referenciada na classe passada por parâmetro.
5 - Update - Procedimento que gera o SQL e executa update na tabela referenciada na classe do objeto passado por parâmetro
6 - Create - Procedimento que cria a tabela no banco de dados.
7 - GetInsert - Método que retorna o SQL gerado pelo método Get sem executar.
8 - GetUpdate - Método que retorna o SQL gerado pelo método Update sem executar.
9 -GetDelete - Método que retorna o SQL gerado pelo método Delete sem executar.
# Criar uma classe de entidade de banco de dados para que as novas classes herdem dela TGenericEntity que deve conter os métodos básicos de CRUD consumindo as funções da GenericDao.
1 - Deve ser criado um método GetByFilter que retorna todos os registro de determinada tabela obedecendo as restrições do filtro passado.
2 - Deve ser criado um método Delete que fará a exclusão do objeto referenciado pela sua chave primária.
3 - Deve ser criado um método Update que fará a exclusão do registro referenciado pela sua chave primária.
4 - Deve ser criado um método Insert que fará a inclusão de um novo registro na tabela pelas informações do objeto referenciado.
5 - Deve ser criado um método ToJson que transformará as informações do objeto em um Json, para que possa ser retornado ao sistema o cliente que estiver consumindo.
6 - Deve ser criado um método CreateTable que fará a criação da tabela pelas informações contidas na classe do objeto; caso a tabela já exista o método deve ignorar a criação.
7 - Deve ser criada uma variável Msg para armazenar as mensagens de retorno ocorridas nesta camada.
8 - Deve ser criado um procedimento AddMessage para adição das mesagens no formato exigido pelo TOTVS Html Framework.
9 - Deve ser criado um método GetAll que retorna todos os registros para determinada tabela.