Olá pessoal, É minha postagem no grupo. Espero não tá falando bobagem... :)
Fiz uma busca rápida na lista e não encontrei nada com o termo "Controle de Documentos Entregues", então coloco aqui a dúvida, se alguém puder ajudar... É o seguinte, comecei agora um projeto usando PostgreSQL. É um sistema que vai ter um controle dos documentos entregues por um aprendiz, tais como RG, CPF, Comprovante de Residência, Comprovante de Escolaridade (CE) etc. Documentos como CE devem ser entregues periodicamente. Toda entrega de documento deve constar no histórico do aprendiz (na verdade todo e qualquer evento que aconteça com o aluno vai para o histórico) A primeira dúvida é: como posso fazer uma modelagem simples para isso? Pensei na seguinte modelagem: Aprendiz ----------- id serial matricula varchar nome varchar ... outros campos ItemHistorico ------------------ id serial idAprendiz integer {FK para Aprendiz, formando uma relação de 1 aprendiz para muitos itens. Na modelagem OO eu tenho List<ItemHistorico> em Aprendiz} nomeEvento varchar descricao varchar datahoraEvento Timestamp detalheEvento integer //aqui eh um número que define o tipo do detalhe do evento, se é entrega de documentação ou se é outro tipo de evento notas Anexo -------- id serial descricao varchar dados bytea idItemHistorico {FK para ItemHistorico, formando uma relação de 1 item para muitos anexos. Na modelagem OO eu tenho List<Anexo> em ItemHistorico} DocEntregue ---------------- idItemHistorico integer {PK - mesmo que o id do item. No OO DocEntregue é filho de ItemHistorico} detalheEvento integer {pseudo FK - é o número do detalhe do evento, neste caso do tipo Documento Entregue} rg boolean //true se entregou o RG "RG" varchar //o número do RG "dataEmissaoRG" Date //a data de emissão do RG cpf boolean //true se entregou o CPF "CPF" varchar //o número do CPF ctps boolean // true para a CTPS "CTPS" varchar // número de séria da CTPS cr boolean //true se entregou o comprovante de residencia pis boolean //true se entregou o PIS "PIS" varchar //número do PIS nre boolean //true se entregou o registro de estrangeiro (para o caso) "NRE" varchar //número do registro de estrangeiro ce boolean // comprovante de escolariade "CE" String // número ou protocolo do CE notas varchar //observações e notas Então a ideia é que, na tela de detalhes do item de histórico o operador simplesmente clicasse o item correspondente ao documento entregue. O segundo problema é: como fazer a consulta (SQL) que retorne todos os documentos entregues e os que faltam em uma única linha totalizadora a partir de um conjunto de várias entradas na tabela para cada evento de entrega de documentação no histórico? Alguém teria uma ideia alternativa para essa modelagem? Abraços, André Cavalcante Manaus, AM.
_______________________________________________ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral