Prezados, boa tarde.
Estou iniciando na vida de plsql e estou com uma dúvida e espero que possam ajudar-me.
Tenho um controle de sistema referente a atendimento dentro de uma oficina.
Cada vez que um carro passa por uma equipe é criado dinamicamente uma coluna na minha tabela de atendimento. Hoje preciso mudar o sistema para que funcione da seguinte maneira
Cada passagem de um determinado veículo por uma equipe da oficina deve gerar um registro novo na tabela de atendimento, quando o carro passar novamente por uma equipe anterior, os campos “passagem” e “Tempo” devem ser incrementados.
Exemplo:
Fluxo carro1: Suspensão – 30 minutos -> lanternagem – 120 minutos -> mecânica – 80 minutos -> suspensão 50 minutos -> encerrou atendimento.
Neste caso, este carro terá 4 registros na tabela atendimento com as seguintes informações nos campos novos:
CARRO PLACA PASSAGEM EQUIPE TEMPO
FOCUS LBQ1234 2 SUSPENSAO 80
FOCUS LBQ1234 1 LANTERNAGEM 120
FOCUS LBQ1234 1 MECANICA 80
Eu preciso criar uma procedure que faça o cenário acima.
Desde já agradeço a ajuda de todos!
[DÚVIDA] PLSQL INCREMENTAL
-
- Rank: Estagiário Júnior
- Mensagens: 2
- Registrado em: Sáb, 05 Mar 2011 4:15 pm
- Localização: RIO DE JANEIRO
PLSQL
-
- Rank: DBA Sênior
- Mensagens: 389
- Registrado em: Ter, 27 Jul 2010 1:34 pm
- Localização: Sapiranga - RS
- Contato:
Quem falou que programar era fácil??
Quanto mais dificil for a implementação mais valorizado seu trabalho será!
Acessem: www.gfkauer.com.br
Quanto mais dificil for a implementação mais valorizado seu trabalho será!
Acessem: www.gfkauer.com.br
update tabela t
set t.passagem = nvl(t.passagem, 0) + 1, t.tempo = nvl(t.tempo, 0) + NOVO_TEMPO
where t.chave = t.chave
If sql%notfound Then
/*seu procedimento de insert aqui*/
end if;
-
- Rank: Estagiário Júnior
- Mensagens: 2
- Registrado em: Sáb, 05 Mar 2011 4:15 pm
- Localização: RIO DE JANEIRO
PLSQL
Amigo, boa tarde.
Talvez eu não tenha me explicado direito.
Detalhando um pouco mais:
1 - o campo PASSAGEM começa com valor 0 e será incrementado a cada novo registro em nova equipe, no caso informado forma 4 registros que na verdade são 3 pois a equipe SUSPENSAO teve 2 passagens.
2 - O campo EQUIPE deve fornecer todas as EQUIPES por onde o carro passo
que neste caso foram, SUSPENSÃO, LANTERNAGEM E PINTURA.
3 - O campo TEMPO deve informar o somatório do tempo gasto por cada equipe no atendimento do carro, caso a equipe tenha mais de uma passagem o campo tempo deve somar todos os tempos.
acredito que o nvl é necessário pois os valores não podem ser diferentes de ZERO. Agora eu tenho que saber quantas vezes o carro X passou pelas equipe e quanto tempo ele ficou nas mesmas, ou seja, somo as passagens por cada equipe e os tempos. Sendo que, cada equipe deve ter o seu total de tempo de atendimento.
Obrigado
Talvez eu não tenha me explicado direito.
Detalhando um pouco mais:
1 - o campo PASSAGEM começa com valor 0 e será incrementado a cada novo registro em nova equipe, no caso informado forma 4 registros que na verdade são 3 pois a equipe SUSPENSAO teve 2 passagens.
2 - O campo EQUIPE deve fornecer todas as EQUIPES por onde o carro passo
que neste caso foram, SUSPENSÃO, LANTERNAGEM E PINTURA.
3 - O campo TEMPO deve informar o somatório do tempo gasto por cada equipe no atendimento do carro, caso a equipe tenha mais de uma passagem o campo tempo deve somar todos os tempos.
acredito que o nvl é necessário pois os valores não podem ser diferentes de ZERO. Agora eu tenho que saber quantas vezes o carro X passou pelas equipe e quanto tempo ele ficou nas mesmas, ou seja, somo as passagens por cada equipe e os tempos. Sendo que, cada equipe deve ter o seu total de tempo de atendimento.
Obrigado
-
- Rank: DBA Sênior
- Mensagens: 389
- Registrado em: Ter, 27 Jul 2010 1:34 pm
- Localização: Sapiranga - RS
- Contato:
Quem falou que programar era fácil??
Quanto mais dificil for a implementação mais valorizado seu trabalho será!
Acessem: www.gfkauer.com.br
Quanto mais dificil for a implementação mais valorizado seu trabalho será!
Acessem: www.gfkauer.com.br
Você chegou a simular a rotina que eu sugeri?
Num modelo que implementei aqui baseado nas informações que você passou eu obtive o que me aparentou ser o resultado que você busca.
Num modelo que implementei aqui baseado nas informações que você passou eu obtive o que me aparentou ser o resultado que você busca.
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes