Views & Functions: mudanças entre as edições

De Wiki NBS
Ir para navegação Ir para pesquisar
Sem resumo de edição
Sem resumo de edição
Linha 159: Linha 159:
|
|
|-
|-
|F_GET_STATUS_ICONE
|'''F_GET_STATUS_ICONE'''
|Retorna 3 Possíveis valores de 1 serviço
|'''Retorna 4 informação sobre 1 serviço'''
# Aprovacao do cliente
# Icone que vai na frente do servico (bolinha vermelha etc)
# Descricao do icone
# Status do Servico (0- nunca fez servico  1-em andamento/Parado      2-Finalizado)
# Status do Servico (0- nunca fez servico  1-em andamento/Parado      2-Finalizado)
# Icone que vai na frente do servico (bolinha vermelhe etc)
# Descricao do icone


Esta função poupa ficar repetindo um longo sql pra descobrir se esta parado, trabalhando etc
'''''Exemplo'''''
 
select   -- Aprovacao do cliente
 
         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 1),
 
         -- Icone do status do servico
 
         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 2),
 
         -- Descricao do icone do servico
 
         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 3),


Exemplo
         -- Status do servico : 0 Nao fez nada, 1 trbalhando, 2 Encerrado  


select F_GET_STATUS_ICONE_SERVICO(k.cod_empresa, k.numero_os, k.cod_servico,3)
         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 4)         


from  os_servicos k
from os_servicos s
|Parâmetros
|Parâmetros
# P_COD_EMPRESA IN INT,
# P_COD_EMPRESA IN INT,
Linha 177: Linha 190:
# P_COD_SERVICO IN VARCHAR2,
# P_COD_SERVICO IN VARCHAR2,
# P_TIPO_RESULT IN INT  
# P_TIPO_RESULT IN INT  
|-
|'''F_GET_SERVICO_PERCENT_TRAB'''
|'''Retorna 3 Valores de 1 Serviço'''
# TMO
# Tempo Trabalhado
# %trabalhando (para o Gráfico
select   -- tempo trabalhado
         F_GET_SERVICO_PERCENT_TRAB(s.cod_empresa, s.numero_os, s.cod_servico, 1),
         -- TMO
         F_GET_SERVICO_PERCENT_TRAB(s.cod_empresa, s.numero_os, s.cod_servico, 2),
         -- % trabalado, prono para o grafico
         F_GET_SERVICO_PERCENT_TRAB(s.cod_empresa, s.numero_os, s.cod_servico, 3)
from os_servicos s
|  (P_COD_EMPRESA IN INT, 
   P_NUMERO_OS IN INT, 
   P_COD_SERVICO IN VARCHAR2,
   P_TIPO_RESULT IN INT) RETURN NUMBER IS 
|}
|}

Edição das 22h25min de 8 de junho de 2020

Nome Função Parametros
VW_CRMSERVICE_OS_ANDAMENTO Retorna o andamento de uma OS&Orçamento

select andamento from VW_CRMSERVICE_OS_ANDAMENTO where cod_empresa = 40 and numero_os = 43

  • Cod_empresa
  • Numero_os
VW_CRMSERVICE_REQUISICAO Retorna as Requisições de uma OS com o preço liquido Total (* qtde) já calculado.

Parece bobagem, mas ja viram o calculo bisonho que é pra achar o preço de uma peça ? pois é...

  • Cod_empresa
  • Numero_os
select * from VW_CRMSERVICE_REQUISICAO where cod_empresa = 40 and numero_os = 43
Imageor2.png
VW_CRM_SERVICE_TEMPO_DISPONIVEL Calcula por DAta/Box
  1. O tempo Total no dia/box
  2. O tempo OCUPADO (pelos CHIPS da Agenda)
  3. O Tempo disponível na Data/Box

Importante: Ele considera os Eventos do produtivo, Cursos, Ferias, Feriados

Empresa/Período Empresa/Período/Box Empresa/Período/Produtivo
select sum(v.tempo_total)      Tp_agenda, 

       sum(v.tempo_ocupado)    Tp_ocupado , 

       sum(v.tempo_disponivel) Tp_disp

from VW_crmservice_tempo_disponivel v

--

where cod_empresa = 34

and   data >= to_date('01/07/2016')

and   data <= to_date('30/07/2016')

select v.prisma,

       sum(v.tempo_total)      Tp_agenda, 

       sum(v.tempo_ocupado)    Tp_ocupado , 

       sum(v.tempo_disponivel) Tp_disp

from VW_crmservice_tempo_disponivel v

--

where cod_empresa = 34

and   data >= to_date('01/07/2016')

and   data <= to_date('30/07/2016')

Group by v.prisma

select v.cod_tecnico,

sum(v.tempo_total)      Tempo_agenda, 

       sum(v.tempo_ocupado)    Tempo_ocupado , 

       sum(v.tempo_disponivel) Tempo_disponivel

from VW_crmservice_tempo_disponivel v

--

where cod_empresa = 34

and   data >= to_date('01/07/2016')

and   data <= to_date('30/07/2016')

Group by v.cod_tecnico

Imageor20.png
Imageor21.png
Imageor30.png

F_GET_TEMPO_TRABALHADO

Calcular o tempo trabalhado do produtivo,

Tratando inicio em um dia e parada em outro, assim como data final nula  considerado sysdate.

Quando data inicial e final for diferente, vai descontar domingos e feriados e horas paradas do produtivo cadastradas na tabela servicos_tecnicos_eventos,

assim como pegará hora inicial e final para cálculo de tempo trabalhado de lá.

Se técnico estiver sem horário cadastrado, vai buscar do parm_sys2 => p2.agenda_hora_comeca e p2.agenda_hora_fim

Empresa/OS Empresa/OS/Serviço Empresa/OS/Produtivo
SELECT  sum(f_get_tempo_trabalhado(ot.cod_empresa, ot.cod_tecnico,             ot.data_entrada, ot.hora_entrada,      

ot.data_saida, ot.hora_saida)) tempo_trab_t

FROM os_tempos_executados ot 

where ot.cod_empresa = 34

and   ot.numero_os   = 15398

SELECT ot.cod_servico,

sum(f_get_tempo_trabalhado(ot.cod_empresa, ot.cod_tecnico, 

                ot.data_entrada, ot.hora_entrada,      

  ot.data_saida, ot.hora_saida)) tempo_trab_t

FROM os_tempos_executados ot

where ot.cod_empresa = 34

and   ot.numero_os   = 15398

group by cod_servico

SELECT ot.cod_servico, ot.cod_tecnico,

sum(f_get_tempo_trabalhado(ot.cod_empresa, ot.cod_tecnico, 

                                ot.data_entrada, ot.hora_entrada,  

 ot.data_saida, ot.hora_saida)) tempo_trab_t

FROM os_tempos_executados ot

where ot.cod_empresa = 34

and   ot.numero_os   = 15398

group by cod_servico, ot.cod_tecnico

Imageor40.png
Imageor6.png
Imageor7.png
Calcula TMO e Valor de um Serviço
F_GET_STATUS_ICONE Retorna 4 informação sobre 1 serviço
  1. Aprovacao do cliente
  2. Icone que vai na frente do servico (bolinha vermelha etc)
  3. Descricao do icone
  4. Status do Servico (0- nunca fez servico 1-em andamento/Parado 2-Finalizado)

Exemplo

select   -- Aprovacao do cliente

         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 1),

         -- Icone do status do servico

         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 2),

         -- Descricao do icone do servico

         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 3),

         -- Status do servico : 0 Nao fez nada, 1 trbalhando, 2 Encerrado  

         F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 4)         

from os_servicos s

Parâmetros
  1. P_COD_EMPRESA IN INT,
  2. P_NUMERO_OS IN INT,
  3. P_COD_SERVICO IN VARCHAR2,
  4. P_TIPO_RESULT IN INT
F_GET_SERVICO_PERCENT_TRAB Retorna 3 Valores de 1 Serviço
  1. TMO
  2. Tempo Trabalhado
  3. %trabalhando (para o Gráfico

select   -- tempo trabalhado

         F_GET_SERVICO_PERCENT_TRAB(s.cod_empresa, s.numero_os, s.cod_servico, 1),

         -- TMO

         F_GET_SERVICO_PERCENT_TRAB(s.cod_empresa, s.numero_os, s.cod_servico, 2),

         -- % trabalado, prono para o grafico

         F_GET_SERVICO_PERCENT_TRAB(s.cod_empresa, s.numero_os, s.cod_servico, 3)

from os_servicos s

  (P_COD_EMPRESA IN INT, 

   P_NUMERO_OS IN INT, 

   P_COD_SERVICO IN VARCHAR2,

   P_TIPO_RESULT IN INT) RETURN NUMBER IS