gerador de aplicativos oracle pl/sql web baseado na estrutura das tabelas do banco de...

31
Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de dados Oracle banco de dados Oracle Wagner da Silva Orientando Prof. Alexander Roberto Valdameri Orientador

Upload: others

Post on 18-Mar-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Gerador de aplicativos Oracle PL/SQL WEBbaseado na estrutura das tabelas dobanco de dados Oraclebanco de dados Oracle

Wagner da SilvaOrientando

Prof. Alexander Roberto ValdameriOrientador

Page 2: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Roteiro

� Introdução e Objetivos;� Fundamentação Teórica;� Especificação;� Especificação;� Implementação;� Apresentação da Ferramenta;� Conclusão;� Extensões.

Page 3: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Introdução

� Banco de Dados;� Modelo de Dados;� Linguagem SQL;

Introdução e Objetivos

� Linguagem SQL;� HTML;� Geração de Código;� Oracle Form Builder e PL/SQL.

Page 4: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Objetivos

� Desenvolver uma ferramenta para ageração de código para tecnologia OraclePL/SQL WEB, a partir da estrutura das

Introdução e Objetivos

PL/SQL WEB, a partir da estrutura dastabelas do banco de dados Oraclejuntamente com as configurações feitaspelo usuário.

Page 5: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Motivação

� Auxiliar e agilizar os programadores; � Diminuir a necessidade de programação;� Evitar código inconsistente.

Introdução e Objetivos

� Evitar código inconsistente.

Page 6: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Banco de Dados

� Oracle 10g Express Edition;� Rápido;� Gratuito;

Fundamentação Teórica

� Gratuito;� Disponibiliza a linguagem PL/SQL WEB.

Page 7: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Modelo de Dados

� Modelo Relacional;� Surgimento do SGBD;� Definição das estruturas das tabelas.

Fundamentação Teórica

� Definição das estruturas das tabelas.

Page 8: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Linguagem SQLFundamentação Teórica

� Utilizada para manipulação e consulta aobanco de dados;

� A Oracle disponibiliza diversas funções� A Oracle disponibiliza diversas funçõesque facilitam o trabalho;

� Todas informações de uma tabela dobanco de dados podem ser obtidasatravés de consultas SQL.

Page 9: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

HTML

� Fácil aprendizagem;� Amplamente divulgado e conhecido;� Permite a utilização de folhas de estilos

Fundamentação Teórica

� Permite a utilização de folhas de estilos(CSS);

� Permite a utilização de JavaScript para avalidação dos formulários.

Page 10: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Geração de Código

� Qualidade;� Consistências geradas automaticamente;� Mais tempo para customizações.

Fundamentação Teórica

O Código gerado não possui erro de sintaxe

O código gerado já possuí a � Mais tempo para customizações.O código gerado já possuí a validação dos tipos de dados

Não consome muito tempo com tarefas repetitivas de programação

Page 11: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Trabalhos CorrelatosEspecificação

� Menin (2005), foi desenvolvida umaferramenta de geração de código emlinguagem JSP utilizando banco de dadosMySQL (Furb);MySQL (Furb);

� Schvepe (2006), foi desenvolvida umaferramenta para migração de aplicaçõesem Oracle Forms 6i para código Java(Furb).

Page 12: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Visão Geral da FerramentaEspecificação

Page 13: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Requisitos FuncionaisRequisitos

� Permitir a escolha de uma tabela;� Possibilitar a personalização dos tipos de

campos;� Possibilitar a personalização de listas de valores;� Possibilitar a personalização de listas de valores;� Possibilitar a personalização das validações dos

formulários;� Possibilitar a personalização da ordem de

apresentação dos campos;

Page 14: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Requisitos não FuncionaisRequisitos

� Deverá ser desenvolvido em ambiente deprogramação Oracle Forms 6i;

� Deverá gerar os aplicativos em linguagemOracle PL/SQL Web;Oracle PL/SQL Web;

� Deverá utilizar o banco de dados Oracle10g Express Edition.

Page 15: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Casos de usoEspecificação

Page 16: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Modelo Relacional Especificação

Page 17: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Técnicas e Ferramentas

� Oracle Forms 6i;� Oracle 10g Express Edition;� Microsoft Internet Explorer;

Implementação

� Microsoft Internet Explorer;� Enterprise Architect;� PL/SQL Developer.

Page 18: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

ArquiteturaImplementação

Page 19: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Conexão com o Banco Implementação

Page 20: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

ImplementaçãoTela Principal

Page 21: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Implementação

Leitura da Estrutura das Tabelas

Page 22: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

ImplementaçãoConfigurações Adicionais

Page 23: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

ImplementaçãoFunções JavaScript

Folhas de Estilos (CSS)

Page 24: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

ImplementaçãoConfigurações por Empresa

Page 25: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Regras para o Formulário

� Se tamanho do campo <= 50 = caixa de texto,senão textArea;

� Se campo MAX+1 (auto-incremento) então gerao código automático;

Implementação

o código automático;� Se campo não permite alteração então seta o

campo para ser apenas leitura;� Se campo possuir lista de valores então gera

função para chamar a lista e apresenta osdados retornados da consulta informada pelousuário.

Page 26: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Operacionalidade

Estudo de caso

Page 27: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Conclusões

O objetivo foi alcançado gerando os aplicativosem PL/SQL WEB que permitem:

Inclusão, exclusão, alteração e consulta.

Conclusões

Inclusão, exclusão, alteração e consulta.

O tempo gasto no desenvolvimento deaplicações foi reduzido em relação à formatradicional de construção das mesmas.

Page 28: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Conclusões

Como adicionais, foram feitos algunsfacilitadores para a ferramenta conformelistados a seguir:

� Ordenação: ordenar qualquer coluna no

Conclusões

� Ordenação: ordenar qualquer coluna noaplicativo Web gerado;

� Apresentação: permitir a utilização de folhas deestilos (CSS).

Page 29: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Extensões

� Criação de uma pré-visualização do layoutque será gerado para o aplicativo.

Extensões

Page 30: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Relevância

Este trabalho foi muito importante paramim pois:

� Para a sua realização tive que utilizarconhecimentos adquiridos desde o

Relevância

Para a sua realização tive que utilizarconhecimentos adquiridos desde oprimeiro semestre da faculdade até oúltimo, mostrando com isto, a necessidadede cada matéria do curso para minhaformação.

Page 31: Gerador de aplicativos Oracle PL/SQL WEB baseado na estrutura das tabelas do banco de ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/TCC2007-2-13... · 2011-03-03 · Gerador de aplicativos

Obrigado a todos!