Views & Functions: mudanças entre as edições
Sem resumo de edição |
Sem resumo de edição |
||
(3 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 4: | Linha 4: | ||
!Função | !Função | ||
!Parametros | !Parametros | ||
|- | |- | ||
| rowspan="2" |'''VW_CRMSERVICE_REQUISICAO''' | | rowspan="2" |'''VW_CRMSERVICE_REQUISICAO''' | ||
Linha 168: | Linha 160: | ||
'''''Exemplo''''' | '''''Exemplo''''' | ||
select -- | select -- Icone do status do servico | ||
F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 1), | F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 1), | ||
-- | -- Descricao do icone do servico | ||
F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 2), | F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 2), | ||
-- Status do servico : 0 Nao fez nada, 1 trbalhando, 2 Encerrado | -- 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, | F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 3) | ||
from os_servicos s | from os_servicos s | ||
Linha 218: | Linha 206: | ||
P_TIPO_RESULT IN INT) RETURN NUMBER IS | P_TIPO_RESULT IN INT) RETURN NUMBER IS | ||
|- | |||
|'''F_GET_OS_ANDAMENTO''' | |||
|'''Retorna o andamento de uma OS {nao serve para orçamento}''' | |||
Função para substitui a view VW_CRM_SERVICE_OS_ANDAMENTO | |||
SELECT F_GET_OS_ANDAMENTO(OS.COD_EMPRESA, OS.NUMERO_OS, 1) AS ANDAMENTO | |||
FROM OS | |||
WHERE OS.ORCAMENTO = 'N' | |||
|P_COD_EMPRESA IN INT, | |||
P_NUMERO_OS IN INT, | |||
|- | |||
|F_GET_STATUS_PRODUTIVO | |||
|Retorna o status do produtivo '''Considerando''' | |||
* Curso | |||
* Ferias | |||
* Paradas de almoço e lanche | |||
* Feriado | |||
* Horário estabelecido nos eventos (incio e fim a cada dia da semana) | |||
'''A função NAO considera''' | |||
* Ativos e fictícios | |||
* Se esta trabalhando | |||
'''Exemplo''' | |||
SELECT -- grid | |||
initcap(a.nome) nome, | |||
substr(F_get_status_produtivo(a.cod_empresa, a.cod_tecnico, sysdate),6,length(F_get_status_produtivo(a.cod_empresa, a.cod_tecnico, sysdate))) Motivo, | |||
a.cod_tecnico,substr(F_get_status_produtivo(a.cod_empresa, a.cod_tecnico, sysdate),1,2) ST | |||
from servicos_tecnicos a[[Arquivo:Imageorprod.png|esquerda|miniaturadaimagem]] | |||
|P_COD_EMPRESA IN INT, | |||
P_COD_TECNICO AND IN | |||
p_DATA dATA QUE DESEJA TER O STATUS | |||
|} | |} |
Edição atual tal como às 12h46min de 15 de julho de 2020
Nome | Função | Parametros | ||||||||
---|---|---|---|---|---|---|---|---|---|---|
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 é... |
| ||||||||
select * from VW_CRMSERVICE_REQUISICAO where cod_empresa = 40 and numero_os = 43 | ||||||||||
VW_CRM_SERVICE_TEMPO_DISPONIVEL | Calcula por DAta/Box
Importante: Ele considera os Eventos do produtivo, Cursos, Ferias, Feriados | |||||||||
| ||||||||||
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 | |||||||||
| ||||||||||
Calcula TMO e Valor de um Serviço | ||||||||||
F_GET_STATUS_ICONE | Retorna 4 informação sobre 1 serviço
Exemplo select -- Icone do status do servico F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 1), -- Descricao do icone do servico F_GET_STATUS_ICONE_SERVICO(s.cod_empresa, s.numero_os, s.cod_servico, 2), -- 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, 3) from os_servicos s |
Parâmetros
| ||||||||
F_GET_SERVICO_PERCENT_TRAB | Retorna 3 Valores de 1 Serviço
Exemplo 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), -- % trabalhado, pronto para o gráfico 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 | ||||||||
F_GET_OS_ANDAMENTO | Retorna o andamento de uma OS {nao serve para orçamento}
Função para substitui a view VW_CRM_SERVICE_OS_ANDAMENTO SELECT F_GET_OS_ANDAMENTO(OS.COD_EMPRESA, OS.NUMERO_OS, 1) AS ANDAMENTO FROM OS WHERE OS.ORCAMENTO = 'N' |
P_COD_EMPRESA IN INT,
P_NUMERO_OS IN INT, | ||||||||
F_GET_STATUS_PRODUTIVO | Retorna o status do produtivo Considerando
A função NAO considera
Exemplo SELECT -- grid initcap(a.nome) nome, substr(F_get_status_produtivo(a.cod_empresa, a.cod_tecnico, sysdate),6,length(F_get_status_produtivo(a.cod_empresa, a.cod_tecnico, sysdate))) Motivo, a.cod_tecnico,substr(F_get_status_produtivo(a.cod_empresa, a.cod_tecnico, sysdate),1,2) ST from servicos_tecnicos a |
P_COD_EMPRESA IN INT,
P_COD_TECNICO AND IN p_DATA dATA QUE DESEJA TER O STATUS |