Nosso ERP tem 385 stored procedures, a maior delas atende o WMS e roda na madrugada, gerando automaticamente centenas de pedidos no CD que serão depois separados e expedidos para as filiais (nosso maior cliente tem 20 delas). Temos várias outras que fazem tarefas complexas como "Importar XML", que recebe o XML de uma NFe do fornecedor e cria os registros nas diversas tabelas relevantes, incluindo no contas a pagar.
Uma grande vantagem é poder chamar as procedures por diversos aplicativos, desde clientes desktop (versões antigas do ERP), REST API + aplicações web / PWA (versão nova do ERP e WMS novo) e aplicativos console que rodam via SSH (WMS versão antiga). Controlamos o versionamento via GIT usando um shell script: https://github.com/rednaxelbr/scripts O script "gera_pgfunc" gera um arquivo "nome-da-procedure.sql" para cada SP usando a pg_get_functiondef() do PostgreSQL. Em 3 de janeiro de 2018 10:13, Samuel Teixeira Santos <arcano...@gmail.com> escreveu: > Bom dia pessoal, feliz 2018 a todos. > > Sou novo na lista e meu perfil é de desenvolvedor (para entenderem o > porque da minha pergunta abaixo... tentando justificá-la 🙄) > > Estou na faixa de conhecimento que vai do básico para intermediário em > relação a banco de dados e me interesso mais pela perfil técnico de banco > de dados do que da modelagem/administração de dados. > > Por isso, gostaria de bater um papo, ler o que vocês sabem ou acham sobre > casos, se já viram algum, em que foi-se construída uma aplicação que tinha > toda sua inteligência no banco de dados, podendo facilitar a desacoplagem > da camada do cliente de forma menos trabalhosa e associando a outras > tecnologias desta camada conforme a necessidade. > > Já viram algo do tipo? Recomendam tal abordagem? > > Por exemplo, hoje uma aplicação WEB, você desenvolve a camada > cliente(browser: html/css/js), desenvolve o backend (apache/nginx/tomcat - > php/python/java) e ainda mais específico, a camada do banco de dados. > > A idéia é continuar desenvolvendo a camanda cliente (porque não há como > fugir dela no casa da plataforma web), mas minimizar o possível a camada do > server, deixando-a apenas para o repasse de dados para o banco e a chamada > de procedures e functions no mesmo, onde realmente existirá o processamento > total dos dados, as regras de negócio etc > > Na experiência de vocês, já viram algo? Já tentaram algo do tipo? > > O que acham desta abordagem? > > Chamei-a no título de "orientado a banco de dados" com aspas porque > realmente não sabia como titular de outra forma menos redundante, ou com > pleonasmo, não sei. > > Espero poder muito aprender com vocês, independente do que eu expus aqui > ser viável ou não. > > Abraço a todos. > > > Samuel > > _______________________________________________ > pgbr-geral mailing list > pgbr-geral@listas.postgresql.org.br > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > -- Atenciosamente, Alexsander da Rosa
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral