Grande Chiappa,
Realmente,,, pensei em tudo isto que voce coloca... so queria mesmo ter uma
definição mais clara por "descarrego"... na verdade penso em fazer meio que no
"braço" mesmo, ou seja, uma interface com uma grande view e deixar o usuario
definir suas clausulas, no final montar o select e rodar o result para o
cliente... acho inclusive mais seguro e facil de dar manutenção no futuro...
Ale
- Original Message -
From: José Laurindo
To: oracle_br@yahoogrupos.com.br
Sent: Tuesday, February 23, 2010 10:23 AM
Subject: [oracle_br] Re: Discoverer
Bom, de site eu poderia indicar pra começo o da Oracle mesmo (ie,
http://www.oracle.com/technology/products/discoverer/index.html ) , que tem
vários links de interesse, e de livro um bonzinho poderia ser "Oracle
discoverer 10g Handbook", de Michael Armstrong-Smithe Darlene Armstrong-Smith,
e na documentação dele tem uns tutos simples, pode ser útil também... Agora, a
dica maior pra ele é a mesma que pra outras tools de usuário final : vc NUNCA,
JAMAIS, em TEMPO ALGUM, vai fazer o usuário acessar as tabelas normalizadas
diretamente - pro usuário final manipular ma tela uma coisinha que traz os
dados da nota, outra que traz os itens, outra que traz o fornecedor, etc, como
normalmente é numa aplicação, é de pirar o cabeção, ele VAI SE PERDER
grandemente, é INVIÁVEL : o que ele precisa é uma view chamada NOTAS_FISCAIS
que já traz o que ele precisa, aí ele monta as queries em cima da viewzinha
dele, certo ??? Eu já vi uma instalação bem grande de Discover (na filial
brasileira duma multi alimentícia) falhar clamorosamente, ser rejeitada Em
Absoluto pelos usuários, justamente por causa dos
implementadores/adminsitradores não terem dado à atenção devida ás views de
usuário, aí os coitados dos usuários tinham que ficar referenciando tabelas do
sistema, aí foi pro brejo a usabilidade...
Pra PERFORMANCE vc também tem algumas preocupações, que NECESSARIAMENTE vc
deve estar ciente e cuidar delas ANTES DO DESENVOLVIMENTO, a saber :
1. quase nunca o usuário final sabe exatamente aonde tá a informação que
quer, então se vc deixar por ele ele quer fazer pesquisas SEM argumento, ou
quase isso : necessariamente algum tipo de limite (sei lá, últimos 6 meses, 3
meses, da dados, ou ter um máximo de n fornecedores a pesquisar
simultaneamente, o que for) - uma busca pelo banco de dados todo é via de regra
LENTA (mesmo que seja por índice, ler uns milhões de registros AINDA QUE por
índice é lento, não tem jeito) É uma negociação DIFÍCIL mas é algo que TEM
QUE ser pensado/visto/discutido... E uma vez isso acertado, PLZ tenha no
Discoverer parâmetros Obrigatórios pras queries com o que for acertado.
2. views materializadas e/ou índices de função : muitas vezes o usuário quer
a informação já calculada (ie, total de NFs do mês, digamos) , mas nas tabelas
relacionais não é assim que a informação está, lá estão os DETALHES das
milhares de NFs : não afz sentido se ter uma query que constantemente varra a
tabela de NFs e itens e fornecedores e preçso pra dar o resultado, é
EXPONENCIALMENTE mais performático vc já ter o cálculo pronto numa vm.
Da mesma forma, via de regra há um ** sub-conjunto ** apenas dos dados que
interessam pro pessoal (ie, apenas as NFs em eberto, ou coisa assim), um índice
de função que só indexe esses caras pode ser útil
3) as views dos usuários TEM que ser criadas por um especialista Oracle , que
vai saber indicar os campos indexados, usar as melhores/mais indicadas
funcionalidades SQL... Sei que é bem complicado vc conseguir arranjar tempo do
usuário sentar e definir o que precisa, E pra validar as views depois, mas
deixar a view pro usuário-final criar é erro na certa...
[]s
Chiappa
--- Em oracle_br@yahoogrupos.com.br, "AtlasSys" escreveu
>
> Pessoal,
>
> Alguem tem algum material (site, texto, etc...) para indicar para
iniciantes em Discoverer??? Estou pensando em adotar esta ferramenta para
distribuição de "query"...
>
> Ale
> Oracle 10+Win2003
>
> [As partes desta mensagem que não continham texto foram removidas]
>
[As partes desta mensagem que não continham texto foram removidas]