Artigo do tipo Teórico
Modelagem de dados para sistemas de produção
A modelagem de sistemas para armazenamento de dados varia bastante. Cada caso precisa ser analisado a fim de descobrir a melhor alternativa de implementação, isto é, qual modelagem de dados deve ser desenvolvida. Neste artigo será apresentada uma modelagem de dados para atender as necessidades básicas de uma empresa que produz e vende determinado produto.

Durante a modelagem de dados é muito comum o desenvolvedor se deparar com situações em que é preciso definir qual tipo de relacionamento, atributo ou mesmo que tabela deve ser criada para atender a necessidade para a qual o sistema se destina. Neste artigo serão apresentados os principais atributos a serem armazenados e os principais relacionamentos a serem implementados no sistema, de forma a dar subsídio ao leitor desenvolver novas modelagens para finalidades diversas.

Em grande parte dos sistemas é necessário armazenar as operações realizadas e, além disso, garantir que as quantidades, tanto de venda, compra e estoque sejam fiéis à quantidade efetivamente presente no estoque. Implementar tal controle necessita do uso de sentenças SQL e tabelas com suporte a transação. Neste artigo será explorada a sintaxe SQL visando utilizar transações nas operações que necessitam seguir princípios de atomicidade.

Em que situação o tema útil
Para quem deseja conhecer a forma de modelar um sistema de banco de dados que atenda necessidades básicas de um sistema de produção, venda e controle de estoque.

Sistemas de produção, vendas e controle de estoque de segmentos empresariais distintos apresentam muitas características semelhantes, pois as operações básicas são as mesmas. No entanto, podemos encontrar inúmeras variações de uma modelagem para outra, pois cada empresa tem suas prioridades e necessidades, bem como regras que, para serem atendidas, precisam armazenar e manipular os dados de maneira específica.

No contexto produção, venda e controle de estoque, podemos incluir desde uma simples padaria até um empresa que monta automóveis. É claro que existem muitas diferenças entre sistemas tão distintos, mas de forma genérica ambas apresentam necessidades semelhantes. A possibilidade de modelar dados é muito útil, pois permite o armazenamento de dados conforme a necessidade de cada contexto. No modelo de dados apresentado neste artigo quatro necessidades devem ser atendidas:

· Controle de estoque de matéria-prima;

· Controle do estoque dos produtos fabricados;

· Controle de compras de matéria-prima;

· Controle de vendas.

Podemos observar que existem muitas outras funcionalidades que não foram citadas, tais como comissão de vendedores, controle de número de série dos produtos que compõem o produto produzido (produto fabricado pela empresa), prazo de validade de produtos fabricados, ordem de compra etc.

O controle de vendas será simples, pois não será controlado qual vendedor realizou a venda, não será armazenado cotação de preços, não será emitido pedido, nem será necessário o armazenamento de informações relativas a tributos e emissão de notas fiscais. Em resumo, o controle de vendas terá dados relativos a venda e aos itens que foram vendidos. Nota-se que nesta ação do sistema (adotaremos a venda como uma ação do sistema) devemos realizar algum evento que contabilize a saída das respectivas quantidades de cada produto (produzido) que foi vendido. Além das vendas, devem existir outros meios de saídas de produtos, tais como doação, avaria, roubo etc.

O controle de compras de matéria-prima também será simples, pois não trataremos de controles para importação de XML de nota fiscal de compra nem controle de número de série do produto ou código do fabricante do produto. Como o artigo se destina a controle genérico de produção/fabricação, não teremos regras tão restritas que podemos encontrar em sistemas de controle de compras de auto peças ou medicamentos, por exemplo.

Para que seja possível controlar as compras das matérias-primas, cada matéria-prima deve estar previamente cadastrada no sistema, isso não é uma regra, mas é a forma adotada no modelo de dados proposto. Da mesma forma que percebemos, no controle de vendas, que algum evento deveria ser gerado para contabilizar as saídas, percebemos aqui que devemos gerar um evento para controlar as entradas no estoque de matérias-primas.

...
Quer ler esse conteúdo completo? Tenha acesso completo