Prazo de entrega: itens da OS
1 – Para que o sistema exiba a data de previsão de entrega dos itens da OS no Canal do Cliente, é necessário que tenha sido emitida nota fiscal para os produtos da OS.
2 – Após isso, o sistema irá buscar a transportadora contida na nota fiscal e caso não tenha a data de envio, o sistema irá utilizar a data de emissão da nota fiscal para iniciar a contagem do prazo.
– Para buscar o prazo de entrega, o sistema irá verificar se existe prazo de entrega para a transportadora da nota e para a cidade contida na OS.
– Se tiver prazo cadastrado, o sistema irá somar da data de emissão ou da data de envio, os dias úteis e retornará esta data.
– Se não tiver prazo cadastrado, a data de previsão não será exibida.
3 – Para ordens de serviço do tipo:
‘MATERIAL CONSUMO’,’TRANSPORTE’,’CILINDRO’
– busca o prazo de entrega dos itens da OS
– busca a data de previsão de entrega no cliente
‘ASSISTÊNCIA’,’SOFTWARE’,’TROCA SUPRIMENTO’,’CARNIVAL’
– caso a OS não tenha peça será considerado o SLA faltante da OS.
– caso a OS tenha peça, irá somar a previsão de entrega da peça + o SLA faltante da OS.
4 – Quando a OS é colocada no status agendamento, a data que aparece no campo é a data do agendamento da OS.
5 – Se a OS está em status de parada não mostra a data de previsão.
6 – * Na SELBETTI, quando a OS for do tipo ETIQUETA OU RIBON independente da faturadora que a OS esteja atrelada sempre irá considerar o prazo de entrega como local de origem SP.
——-
- SE TEM DATA DE CONCLUSAO E A OS ESTA CONCLUIDA, SETA PREVISAO COMO DATA DE CONCLUSAO;
- @DtFim
- SE A OS ESTA EM UM STATUS DE AGENDAMENTO, EXIBE A PREVISAO COMO A DATA AGENDADA;
- @dtAgendamento
- SE A OS ESTA EM UM STATUS DE PARADA DE SLA, NAO EXIBE PREVISAO DE ATENDIMENTO
- –
- SE INFORMADO A EMPRESA E ESTA POSSUIR HORARIO DE ATENDIMENTO CADASTRADO ATUALIZA O HORARIO DE INCIO PARA O CADASTRADO NO CLIENTE;
- EMPRESAS.dt_fim_jornada
- SE INFORMADO O EQUIPAMENTO E ESTE POSSUIR HORARIO DE ATENDIMENTO CADASTRADO ATUALIZA O HORARIO DE INCIO PARA O CADASTRADO NO EQUIPAMENTO;
- CONTRATO_PRODUTO.dt_fim_jornada
- SE O HORARIO DE INICIO DE JORNADA FOI INFORMADO SETA O HORARIO DE INICIO INFORMADO NO EQUIPAMENTO
- CONTRATO_PRODUTO.dt_fim_jornada
- SE ENCONTROU O TIPO DA OS
- (‘MATERIAL CONSUMO’,’TRANSPORTE’,’CILINDRO’)
- BUSCA OS PRAZOS DE ENTREGA DOS ITENS DA OS
- BUSCA A DATA DE PREVISAO DE ENTREGA NO CLIENTE DO PRODUTO
- @DtPrevisaoRecebimentoProdutoAtual = dbo.FN_GetDataPrevistaEntregaCliente(@CdOS, @CdProduto)
- SE A DATA DO ITEM ATUAL E MAIOR QUE A DO ANTERIOR, SETA A DATA DE PREVISAO DE ATENDIMENTO PARA ESTA
- @DtPrevisaoRecebimentoProdutoAtual
- SE ENCONTROU A DATA PREVISTA DE RECEBIMENTO
- @DtPrevisaoRecebimentoProdutoAtual = dbo.FN_GetProximoDiaUtilEquipamento(@DtPrevisaoRecebimentoProdutoAtual, @CdCidade, @CdEmpresa, @CdContratoProduto)
- (‘ASSISTÊNCIA’,’SOFTWARE’,’TROCA SUPRIMENTO’,’CARNIVAL’)
- SE A DATA FINAL DE PREVISAO DE ATENDIMENTO FOR MAIOR QUE O HORARIO DE FINAL DE ATENDIMENTO DO CLIENTE
- @DtAbertura = dbo.FN_GetProximoDiaUtilEquipamento(@DtAbertura, @CdCidade, @CdEmpresa, @CdContratoProduto)
- BUSCA A DATA DE PREVISAO DE ENTREGA DOS PRODUTOS DA OS
- @DtPrevisaoEntregaProdutos = dbo.FN_GetPrevisaoDataEntregaProduto(@CdOS)
- SE A OS ESTA COM SLA EM ATRASO NAO MOSTRA A PREVISAO DE ATENDIMENTO
- SE NAO TEM DATA DE PREVISAO DE ENTREGA
- –
- SE TEM DATA DE PREVISAO DE ENTREGA
- RETORNA PROXIMO DIA UTIL DA DATA DE PREVISAO DE ENTREGA
- @GetProximoDiaUtilEquipamentoResult = dbo.FN_GetProximoDiaUtilEquipamento(@DtPrevisaoEntregaProdutos, @CdCidade, @CdEmpresa, @CdContratoProduto)
- RETORNA PROXIMO DIA UTIL DA DATA DE PREVISAO DE ENTREGA
- SE O SLA E CALCULADO EM HORAS
- TRANSFORMA O SLA DE HORAS PARA MINUTOS
- @TotalJornada = dbo.FN_BuscaTotalHorasJornada(@CdOS)
- TRANSFORMA O SLA DE HORAS PARA MINUTOS
- SE O SLA ESTA FORA DO PRAZO (ATRASADO)
- VERIFICA SE A DATA ATUAL E UMA DIA UTIL
- @Uteis = (SELECT dbo.FN_GetDiaUtilEmpresa(@DtAuxiliar,1, @CdCidade, @CdEmpresa))
- VERIFICA SE A DATA ATUAL E UMA DIA UTIL
- SE TEM DATA DE PREVISAO DE ENTREGA DOS PRODUTOS
- SE NÃO TEM DATA DE PREVISAO DE ENTREGA DOS PRODUTOS
- @DtPrevisaoAtendimento = GETDATE()
- VERIFICA QUANTOS DIAS UTEIS NO PERIODO DO SLA FORAM USADOS
- @DiasUteisPeriodoSLA = (SELECT dbo.FN_GetDiaUtilEmpresa(@DtAbertura,@slaDias, @CdCidade, @CdEmpresa))
- SOMA OS DIAS NAO UTEIS PARA PRORROGAR O PRAZO DE ATENDIMENTO
- SE E A PRIMEIRA VEZ NO FOR E NAO FOI SETADA A DATA AUXILIAR
- VERIFICA SE A DATA ATUAL E UMA DIA UTIL
- (SELECT dbo.FN_GetDiaUtilEmpresa(@DtPrevisaoAtendimento,1, @CdCidade, @CdEmpresa))
- SE A DATA FINAL DE PREVISAO DE ATENDIMENTO FOR MAIOR QUE O HORARIO DE FINAL DE ATENDIMENTO DO CLIENTE
- SE FOR OUTRO TIPO DE OS
- JOGA DATA DE PREVISAO DE ATENDIMENTO PARA O PROXIMO DIA
- dbo.FN_GetProximoDiaUtilEquipamento(@DtPrevisaoAtendimento, @CdCidade, @CdEmpresa, @CdContratoProduto)—————————
- JOGA DATA DE PREVISAO DE ATENDIMENTO PARA O PROXIMO DIA
- (‘MATERIAL CONSUMO’,’TRANSPORTE’,’CILINDRO’)