Duvida na construção de uma trigger

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
  

Mensagemem Qua, 06 Nov 2019 8:36 am

Fala galera!

Sou novo no mundo de PL e estou com dificuldade na criação de uma trigger.

Estrutura das tabelas:

TB_NOTA_FISCAL
numero numero da nota fiscal
produto_id numero de identificação do produto
valor_unitario valor unitário do item
quantidade quantidade vendida do produto
----------------------------
TB_COMISSOES
numero numero da nota fiscal
vendedor_id numero de identificação do vendedor
comissao valor da comissão da nota fiscal

Preciso da ajuda de vocês para criar uma trigger que antes de inserir na tabela de linhas de notas fiscais seja inserido um registro na tabela de COMISSOES.
Essa trigger deverá calcular o campo comissao da seguinte forma: 0,1% sobre cada item vendido da Nota Fiscal.

Obrigado desde já!
dvzrna

Mensagemem Qua, 06 Nov 2019 6:59 pm

Acho que ta faltando coisa.
Como você vai saber pra qual vendedor_id criar a comissão?
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered

Mensagemem Qui, 07 Nov 2019 9:44 am

Perdão, acabei não colocando a tabela de vendedores...

TB_VENDEDORES
vendedor_id
nome
data_admissao
dvzrna

Mensagemem Qui, 07 Nov 2019 9:45 am

dr_gori escreveu:Acho que ta faltando coisa.
Como você vai saber pra qual vendedor_id criar a comissão?



Perdão, acabei não colocando a tabela de vendedores...

TB_VENDEDORES
vendedor_id
nome
data_admissao
dvzrna

Mensagemem Qui, 07 Nov 2019 3:46 pm

Ainda tem coisa errada.

Veja:
Você insere uma linha na tabela de NOTAS FISCAIS e você quer inserir a comissão para o vendedor X.

Você tem essas informações:
TB_NOTA_FISCAL
numero - numero da nota fiscal
produto_id - numero de identificação do produto
valor_unitario - valor unitário do item
quantidade - quantidade vendida do produto

Baseado nessas informações, COMO você vai saber pra qual vendedor vai a comissão ?
Eu estava imaginando que a tabela de PRODUTO ia ter um campo dizendo: "Para o produto X quem recebe comissão é o vendedor Y".
Mas não...

Não sei se isso é um exercício de faculdade... se for, está muito mal feito. :-D
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered

Mensagemem Qui, 07 Nov 2019 11:22 pm

dr_gori escreveu:Ainda tem coisa errada.

Veja:
Você insere uma linha na tabela de NOTAS FISCAIS e você quer inserir a comissão para o vendedor X.

Você tem essas informações:
TB_NOTA_FISCAL
numero - numero da nota fiscal
produto_id - numero de identificação do produto
valor_unitario - valor unitário do item
quantidade - quantidade vendida do produto

Baseado nessas informações, COMO você vai saber pra qual vendedor vai a comissão ?
Eu estava imaginando que a tabela de PRODUTO ia ter um campo dizendo: "Para o produto X quem recebe comissão é o vendedor Y".
Mas não...

Não sei se isso é um exercício de faculdade... se for, está muito mal feito. :-D


Acredito que com a tabela de produtos ajudaria.

TB_PRODUTOS
produto_id
codigo
descricao
peso_liquido
dvzrna

Mensagemem Sex, 08 Nov 2019 6:50 pm

Pior que não ajuda.

Como você sabe pra quem vai a comissão ?
Como você vai gerar uma linha de comissão pra um representante ? Quem vai receber?
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered

Mensagemem Sáb, 09 Nov 2019 6:46 pm

dr_gori escreveu:Pior que não ajuda.

Como você sabe pra quem vai a comissão ?
Como você vai gerar uma linha de comissão pra um representante ? Quem vai receber?



Vendedor_id vendeu produto_id que será inserido na tabela de comissões com o cálculo percentual.
Basicamente isso.
dvzrna

Mensagemem Dom, 10 Nov 2019 5:50 pm

Como você sabe que o vendedor X vendeu o produto Y? Em qual tabela tem isso?
Essa informação deveria estar na nota fiscal.

O problema aqui não é construir uma trigger. O problema é que a modelagem está errada / incompleta.
dr_gori
Localização: Portland, OR USA

Thomas F. G

Você já respondeu a dúvida de alguém hoje?
http://glufke.net/oracle/search.php?search_id=unanswered



Voltar para PL/SQL

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 6 visitantes