Depois de elaborado o DER, devemos criar as tabelas no banco de dados. A grosso modo, basta criar uma tabela para cada entidade do diagrama, mas a estrutura final do banco de dados depende de algumas análise sobre o DER. Os relacionamentos "um-para-muitos", por exemplo, são mapeados exportando-se a chave primária da entidade que está no lado "um " para a entidade do lado "muitos". Nos relacionamentos "muitos-para-muitos" são criadas tabelas adicionais com as chaves de ambas as entidades e algum atributo adicional requerido pelo relacionamento.
Dessa forma conseguimos a estrutura do banco de dados que será mostrada a seguir. Cada tabela apresenta uma breve descrição e para cada atributo "não óbvio" também conté uma breve explicação de sua funcionalidade no sistema.
Tabela 1. GRUPOPRODUTO - Agrupa produtos semelhantes
Campo | Tipo de dados | Descrição |
---|---|---|
CODIGO | Numérico | Identificação do grupo de produtos |
DESCRICAO | Alfa-numérico | Descrição do grupo |
COMISSAO | Porcentagem | Comissão paga nas vendas de peças do grupo |
GRUPOPAI | Numérico | Código do grupo ao qual o grupo pertence (se for um subgrupo). Este atributo mapeia o relacionamento SUBGRUPO. |
Tabela 2. PRODUTO - Cadastro de produtos
Campo | Tipo de dados | Descrição |
---|---|---|
CODIGO | Numérico | Identifica o produto no sistema |
GRUPO | Numérico | Grupo ao qual o produto pertence (chave de GRUPOPRODUTO) |
DESCRICAO | Alfa-numérico | Descrição completa do produto |
APELIDO | Alfa-numérico | Descrição resumida do produto |
UNIDADE | Alfa-numérico | Identifica a unidade em que é vendida o produto |
FRACAO | Sim/Não | Indica se pode vender quantidades fracionadas |
DESCONTO | Porcentagem | Desconto máximo permitito ao produto |
COMISSAO | Porcentagem | Comissão sobre o valor de venda |
SITUACAO | Alfa-numérico | Indica se um produto está disponível para negociação (A=Ativo, I=Inativo) |
Tabela 3. CLIENTE - Esta tabela contém os dados de cadastro do cliente
Campo | Tipo de dados | Descrição |
---|---|---|
CODIGO | Numérico | Identifica o cliente no sistema |
NOME | Alfa-numérico | Nome do cliente (para jurídica representa a razão social) |
APELIDO | Alfa-numérico | Apelido do cliente (para jurídica representa o nome fantasia) |
ENDERECO | Alfa-numérico | Endereço completo da pessoa (rua, número, complemento) |
BAIRRO | Alfa-numérico | Bairro |
CIDADE | Alfa-numérico | Cidade |
ESTADO | Alfa-numérico | Sigla do estado |
CEP | Numérico | Número do CEP |
TEL1 | Numérico | Telefone completo (incluindo DDD) |
TEL2 | Numérico | Telefone completo (incluindo DDD) |
FAX | Numérico | Fax (incluindo DDD) |
Alfa-numérico | Caixa postal na Internet | |
CPF | Numérico | Número do CPF da pessoa (pessoa física) |
IDENTIDADE | Numérico | Número da identidade |
CNPJ | Numérico | Número CNPJ (pessoa jurídica) |
INSCEST | Numérico | Número da inscrição estadual |
DATACADASTRO | Data | Data de cadastro da pessoa |
TIPO | Alfa-numérico | Tipo de cliente (Oficina, Revenda, Consumidor, Transportadora) |
CADASTRO | Numérico | Código do funcionário que cadastrou o cliente |
VENDEDOR | Numérico | Código do vendedor que solicitou o cadastro |
SITUACAO | Alfa-numérico | Situação de cadastro do cliente (Vista, Prazo, Bloqueado) |
Tabela 4. REEFERENCIA - Referências do cliente
Campo | Tipo de dados | Descrição |
---|---|---|
CODIGO | Numérico | Código do cliente (chave na tabela CLIENTE) |
NUMERO | Numérico | Identifica a referência do cliente |
NOME | Alfa-numérico | Nome da referência |
TELEFONE | Alfa-numérico | Telefone da referência |
CONTATO | Alfa-numérico | Pessoa que forneceu informação |
DTULTIMACOMPRA | Data | Data da última compra |
VLULTIMACOMPRA | Moeda | Valor da última compra |
DTMAIORCOMPRA | Data | Data da maior compra |
VLMAIORCOMPRA | Moeda | Valor da última compra |
ANOCADASTRO | Data | Ano de cadastro do cliente |
CONCEITO | Alfa-numérico | Conceito dado ao cliente pela referência |
OBSERVACAO | Alfa-numérico | Observações adicionais sobre o cliente |
Tabela 5. USUARIO - Dados dos usuários do sistema
Campo | Tipo de dados | Descrição |
---|---|---|
CODIGO | Numérico | Identificação do usuário |
NOME | Alfa-numérico | Nome do usuário |
VENDEDOR | Sim/Não | Indica se o usuário é um vendedor para permitir ou não vendas registradas em seu nome. |
TELEFONE | Alfa-numérico | Telefone do usuário (incluindo DDD) |
SENHA | Alfa-numérico | Senha de acesso ao sistema |
SITUACAO | Alfa-numérico | Situação do usuário (Ativo,Inativo) |
Tabela 6. FORMAPAGTO - Formas de pagamento aceitas na empresa
Campo | Tipo de dados | Descrição |
---|---|---|
CODIGO | Numérico | Identifica a forma de pagamento |
DESCRICAO | Alfa-numérico | Descrição da forma de pagamento |
PRAZO | Sim/Não | Indica se pode usar esta forma em vendas à prazo |
PESOCOM | Porcentagem | Indica o redutor aplicado sobre a comissão |
PESODESC | Porcentagem | Indica o redutor aplicado sobre o desconto máximo |
SITUACAO | Alfa-numérico | Situação da forma de pagamento(Ativo,Inativo) |
Tabela 7. VENDA - Registro das vendas (Orçamento, Ordem de venda e Venda)
Campo | Tipo de dados | Descrição |
---|---|---|
NUMERO | Numérico | Número da venda |
DATA | Data | Data da venda |
VENDEDOR | Numérico | Código do vendedor que realizou a venda |
CLIENTE | Numérico | Código do cliente para o qual a venda foi realizada |
TIPOPAGTO | Alfa-numérico | Tipo do pagamento (Vista, Prazo) |
TIPODOCUMENTO | Alfa-numérico | Indica o tipo de documento gerado (Orçamento, Venda) |
INFORMACOES | Alfa-numérico | Informações complementares sobre a venda |
VENDAFINAL | Numérico | Número da venda que agrupa esta e outras vendas para o mesmo cliente |
USREGISTRO | Numérico | Usuário que registrou a venda |
DTESTORNO | Data | Data de estorno da venda |
USESTORNO | Numérico | Código do funcionário que fez o estorno davenda |
MOTIVOESTORNO | Alfa-numérico | Motivo do estorno da venda |
Tabela 8. ITEMVENDA - Relação de peças vendidas
Campo | Tipo de dados | Descrição |
---|---|---|
VENDA | Numérico | Número da venda (chave na tabela VENDA) |
SEQUENCIA | Numérico | Seqüencial da peça na venda |
PRODUTO | Numérico | Código do produto vendido |
QUANTIDADE | Numérico | Quantidade vendida do produto |
PRECOVENDA | Moeda | Preço negociado na venda |
PRECOLISTA | Moeda | Preço de venda na lista |
Tabela 9. PAGAMENTO - Desdobramento do pagamento da venda
Campo | Tipo de dados | Descrição |
---|---|---|
VENDA | Número | Número da venda à qual este pagamento se refere |
SEQUENCIA | Número | Seqüencial da forma de pagamento para a venda |
FORMAPAGTO | Número | Forma de pagamento utilizada |
VENCIMENTO | Data | Data de vencimento da parcela |
VALOR | Moeda | Valor da parcela |
Nesta seção mostramos o que representa cada tabela do banco de dados em relação ao DER modelado para o sistema.
Tabela 10. Tabela de equivalência DER x BD
Tabela | Elemento do DER |
---|---|
GRUPOPRODUTO | Entidade GRUPOPRODUTO |
PRODUTO | Entidade PRODUTO |
CLIENTE | Entidade CLIENTE |
REFERENCIA | Entidade REFERENCIA |
USUARIO | Entidade VENDEDOR |
FORMAPAGTO | Entidade FORMA PAGAMENTO |
VENDA | Entidade VENDA |
ITEMVENDA | Relacionamento ESTA entre as entidades VENDA e PRODUTO |
PAGAMENTO | Relacionamento PAGA entre VENDA e FORMA PAGAMENTO |