Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jonatas Marques

Update no Oracle

Recommended Posts

Boa Noite a todos

Estou Tentando Fazer uma uma atualização em uma tabela porem não estou conseguindo

quando eu rodo a consulta me diz Comando SQL não encerrado adequadamente, eu não estou conseguindo identificar onde estou errando pois quando eu rodo a consulta fora o update ela roda perfeitamente

 

Segue a consulta

 

UPDATE TBL_MED_SERVICO

SET ATRIBUTO_MEDIDO = TESTE.ATRIBUTO

 

FROM TBL_MED_SERVICO

INNER JOIN

(SELECT MED_SERVICO.FOTA_COD_BAR,

MED_SERVICO.TIFT_SEQ,

MED_SERVICO.TFSE_SEQ,

MED_SERVICO.TFTA_SEQ,

MED_SERVICO.FOTA_TAG,

MED_SERVICO.TFSE_DESCRICAO,

MED_SERVICO.TFTA_DESCRICAO,

CASE WHEN MED_SERVICO.ATRIBUTO_PINTURA IS NOT NULL THEN

MED_SERVICO.PERC_TAREFA

ELSE

MED_SERVICO.TFTA_PERC_TAREFA

END AS TFTA_PERC_TAREFA,

(MED_SERVICO.FOTA_QTD_PREV * ((CASE WHEN MED_SERVICO.ATRIBUTO_PINTURA IS NOT NULL THEN

MED_SERVICO.PERC_TAREFA

ELSE

MED_SERVICO.TFTA_PERC_TAREFA

END)/100)) as QTD_MEDIR,

NVL (MED_SERVICO.FOTA_QTD_PREV,0) AS FOTA_QTD_PREV,

MED_SERVICO.META_DT_EXECUCAO,

MED_SERVICO.FOTA_DISC_SEQ,

MED_SERVICO.FOTA_ARAP_COD,

COALESCE(MED_SERVICO.ATRIBUTO_PINTURA,MED_SERVICO.COD_ORCAMENTO,MED_SERVICO.ATRI_ESPEC) AS ATRIBUTO,

COALESCE(TO_CHAR(MED_SERVICO.ID_TBL_EMP_COMPA),TO_CHAR(MED_SERVICO.EMPREENDIMENTO),'A'||MED_SERVICO.ATFT_TIAT_TIPO_SEQ) AS LIG_PLAN_CLI,

TBL_MED_SERVICO.ID

 

FROM(SELECT SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_COD_BAR,

SISEPC.SEPC_TIPOS_FT.TIFT_SEQ,

SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_SEQ,

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_SEQ,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_TAG,

SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_DESCRICAO,

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_DESCRICAO,

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_PERC_TAREFA,

 

CASE WHEN SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_TAG LIKE '%TRANSFORMADOR%' THEN

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_PESO_PREV

ELSE

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_QTD_PREV

END AS FOTA_QTD_PREV,

 

SISEPC.SEPC_MEDICOES_TAREFAS.META_DT_EXECUCAO,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_DISC_SEQ,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_ARAP_COD,

TBL_ATRIBUTO_PINTURA.ID_ORCAMENTO AS ATRIBUTO_PINTURA,

TBL_ATRIBUTO_PINTURA.ID_TBL_EMP_COMPA,

TBL_ATRIBUTO_PINTURA.PERC_TAREFA,

TBL_PESO_SUPORTE_TUB.COD_ORCAMENTO,

TBL_PESO_SUPORTE_TUB.EMPREENDIMENTO,

ATRIBUTO_GERAL.ATFT_TIAT_TIPO_SEQ,

ATRIBUTO_GERAL.ATFT_ATRI_SEQ,

ATRIBUTO_GERAL.ATRI_ESPEC

 

FROM

SISEPC.SEPC_FOLHAS_TAREFAS

LEFT JOIN

SISEPC.SEPC_FOLHA_TAREFA_ITEM ON

SISEPC.SEPC_FOLHA_TAREFA_ITEM.FTIT_FOTA_COD_BAR = SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_COD_BAR

LEFT JOIN

SISEPC.SEPC_DICIONARIO ON

SISEPC.SEPC_DICIONARIO.DICI_COD_BAR = SISEPC.SEPC_FOLHA_TAREFA_ITEM.FTIT_DICI_COD_BAR

INNER JOIN

SISEPC.SEPC_TIPOS_FT ON

SISEPC.SEPC_TIPOS_FT.TIFT_SEQ = SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_TIFT_SEQ

INNER JOIN

SISEPC.SEPC_TIPOS_FT_SERVICOS ON

SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_TIFT_SEQ = SISEPC.SEPC_TIPOS_FT.TIFT_SEQ

INNER JOIN

SISEPC.SEPC_TIPOS_FT_TAREFAS ON

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_TFSE_TIFT_SEQ = SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_TIFT_SEQ AND

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_TFSE_SEQ = SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_SEQ

INNER JOIN

SISEPC.SEPC_MEDICOES_SERVICOS ON

SISEPC.SEPC_MEDICOES_SERVICOS.MESE_FOTA_COD_BAR = SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_COD_BAR AND

SISEPC.SEPC_MEDICOES_SERVICOS.MESE_TIFT_SEQ = SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_TIFT_SEQ AND

SISEPC.SEPC_MEDICOES_SERVICOS.MESE_TFSE_SEQ = SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_SEQ

INNER JOIN

SISEPC.SEPC_MEDICOES_TAREFAS ON

SISEPC.SEPC_MEDICOES_TAREFAS.META_MESE_FOTA_COD_BAR = SISEPC.SEPC_MEDICOES_SERVICOS.MESE_FOTA_COD_BAR AND

SISEPC.SEPC_MEDICOES_TAREFAS.META_MESE_TIFT_SEQ = SISEPC.SEPC_MEDICOES_SERVICOS.MESE_TIFT_SEQ AND

SISEPC.SEPC_MEDICOES_TAREFAS.META_MESE_TFSE_SEQ = SISEPC.SEPC_MEDICOES_SERVICOS.MESE_TFSE_SEQ AND

SISEPC.SEPC_MEDICOES_TAREFAS.META_TFTA_SEQ = SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_SEQ

LEFT JOIN

TBL_ATRIBUTO_PINTURA ON

TBL_ATRIBUTO_PINTURA.DISC_SEQ = SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_DISC_SEQ AND

TBL_ATRIBUTO_PINTURA.SERVICO = SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_DESCRICAO AND

TBL_ATRIBUTO_PINTURA.TAREFA = SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_DESCRICAO

LEFT JOIN

TBL_PESO_SUPORTE_TUB ON

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_DISC_SEQ = 4 AND

SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_SEQ = TBL_PESO_SUPORTE_TUB.SERV_SISEPC AND

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_QTD_PREV BETWEEN TBL_PESO_SUPORTE_TUB.PESO_INICIAL AND TBL_PESO_SUPORTE_TUB.PESO_FINAL

 

LEFT JOIN(SELECT SISEPC.SEPC_ATRIBUTOS_FT.ATFT_FOTA_COD_BAR,

SISEPC.SEPC_ATRIBUTOS_FT.ATFT_TIAT_TIPO_SEQ,

SISEPC.SEPC_ATRIBUTOS_FT.ATFT_ATRI_SEQ,

SISEPC.SEPC_ATRIBUTOS.ATRI_ESPEC

FROM SISEPC.SEPC_TIPO_ATRIBUTOS

INNER JOIN

SISEPC.SEPC_ATRIBUTOS ON

SISEPC.SEPC_TIPO_ATRIBUTOS.TIAT_TIPO_SEQ = SISEPC.SEPC_ATRIBUTOS.ATRI_TIAT_TIPO_SEQ

INNER JOIN

SISEPC.SEPC_ATRIBUTOS_FT ON

SISEPC.SEPC_ATRIBUTOS_FT.ATFT_TIAT_TIPO_SEQ = SISEPC.SEPC_ATRIBUTOS.ATRI_TIAT_TIPO_SEQ AND

SISEPC.SEPC_ATRIBUTOS_FT.ATFT_ATRI_SEQ = SISEPC.SEPC_ATRIBUTOS.ATRI_SEQ) ATRIBUTO_GERAL ON

ATRIBUTO_GERAL.ATFT_FOTA_COD_BAR = SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_COD_BAR

 

GROUP BY SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_SEQ,

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_SEQ,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_COD_BAR,

SISEPC.SEPC_TIPOS_FT.TIFT_SEQ,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_TAG,

SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_DESCRICAO,

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_DESCRICAO,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_QTD_PREV,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_PESO_PREV,

SISEPC.SEPC_TIPOS_FT_TAREFAS.TFTA_PERC_TAREFA,

SISEPC.SEPC_MEDICOES_TAREFAS.META_DT_EXECUCAO,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_DISC_SEQ,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_ARAP_COD,

TBL_ATRIBUTO_PINTURA.ID_ORCAMENTO,

TBL_ATRIBUTO_PINTURA.ID_TBL_EMP_COMPA,

TBL_ATRIBUTO_PINTURA.PERC_TAREFA,

TBL_PESO_SUPORTE_TUB.COD_ORCAMENTO,

TBL_PESO_SUPORTE_TUB.EMPREENDIMENTO,

ATRIBUTO_GERAL.ATFT_TIAT_TIPO_SEQ,

ATRIBUTO_GERAL.ATFT_ATRI_SEQ,

ATRIBUTO_GERAL.ATRI_ESPEC

ORDER BY SISEPC.SEPC_TIPOS_FT_SERVICOS.TFSE_SEQ,

SISEPC.SEPC_FOLHAS_TAREFAS.FOTA_COD_BAR,

SISEPC.SEPC_TIPOS_FT.TIFT_SEQ)MED_SERVICO

 

LEFT JOIN (SELECT TBL_MED_SERVICO.ID,

TBL_MED_SERVICO.FOTA_COD_BAR,

TBL_MED_SERVICO.TIFT_SEQ,

TBL_MED_SERVICO.TFSE_SEQ,

TBL_MED_SERVICO.TFTA_SEQ,

TBL_MED_SERVICO.FOTA_TAG,

TBL_MED_SERVICO.TFSE_DESCRICAO,

TBL_MED_SERVICO.TFTA_DESCRICAO,

TBL_MED_SERVICO.TFTA_PERC_TAREFA,

TBL_MED_SERVICO.FOTA_QTD_PREV,

TBL_MED_SERVICO.META_DT_EXECUCAO,

TBL_MED_SERVICO.DT_MEDICAO

FROM ( SELECT TBL_MED_SERVICO.FOTA_COD_BAR,

TBL_MED_SERVICO.TIFT_SEQ,

TBL_MED_SERVICO.TFSE_SEQ,

TBL_MED_SERVICO.TFTA_SEQ,

MAX(TBL_MED_SERVICO.DT_MEDICAO) AS DT_MEDICAO

FROM TBL_MED_SERVICO

GROUP BY TBL_MED_SERVICO.FOTA_COD_BAR,

TBL_MED_SERVICO.TIFT_SEQ,

TBL_MED_SERVICO.TFSE_SEQ,

TBL_MED_SERVICO.TFTA_SEQ ) MED_SERV_DATA_MAX

INNER JOIN TBL_MED_SERVICO ON

TBL_MED_SERVICO.FOTA_COD_BAR = MED_SERV_DATA_MAX.FOTA_COD_BAR AND

TBL_MED_SERVICO.TIFT_SEQ = MED_SERV_DATA_MAX.TIFT_SEQ AND

TBL_MED_SERVICO.TFSE_SEQ = MED_SERV_DATA_MAX.TFSE_SEQ AND

TBL_MED_SERVICO.TFTA_SEQ = MED_SERV_DATA_MAX.TFTA_SEQ AND

TBL_MED_SERVICO.DT_MEDICAO = MED_SERV_DATA_MAX.DT_MEDICAO) TBL_MED_SERVICO ON

 

TBL_MED_SERVICO.FOTA_COD_BAR = MED_SERVICO.FOTA_COD_BAR AND

TBL_MED_SERVICO.TIFT_SEQ = MED_SERVICO.TIFT_SEQ AND

TBL_MED_SERVICO.TFSE_SEQ = MED_SERVICO.TFSE_SEQ AND

TBL_MED_SERVICO.TFTA_SEQ = MED_SERVICO.TFTA_SEQ AND

TBL_MED_SERVICO.FOTA_QTD_PREV = MED_SERVICO.FOTA_QTD_PREV AND

TBL_MED_SERVICO.META_DT_EXECUCAO = MED_SERVICO.META_DT_EXECUCAO

 

WHERE TBL_MED_SERVICO.ID IS NOT NULL AND

COALESCE(TO_CHAR(MED_SERVICO.ID_TBL_EMP_COMPA),TO_CHAR(MED_SERVICO.EMPREENDIMENTO),'A'||MED_SERVICO.ATFT_TIAT_TIPO_SEQ) <> '0' ) TESTE ON

 

TESTE.FOTA_COD_BAR = TBL_MED_SERVICO.FOTA_COD_BAR AND

TESTE.TIFT_SEQ = TBL_MED_SERVICO.TIFT_SEQ AND

TESTE.TFSE_SEQ = TBL_MED_SERVICO.TFSE_SEQ AND

TESTE.TFTA_SEQ = TBL_MED_SERVICO.TFTA_SEQ

 

Grato Pela Colaboração

att

Jonatas Marques

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.