Relatório Personalizado SAC
Citação de RICARCO.CARVALHO em 24/01/2022, 11:20Bom dia pessoal, estou com dificuldade em uma query para trazer a informação de "motivo" em um relatório personalizado. Não estou achando ligação da tabela SAC_MOTIVO com as outras. Alguém teria algo pronto.
obrigado
Bom dia pessoal, estou com dificuldade em uma query para trazer a informação de "motivo" em um relatório personalizado. Não estou achando ligação da tabela SAC_MOTIVO com as outras. Alguém teria algo pronto.
obrigado
Citação de Marcos Soares em 24/01/2022, 11:29Citação de RICARCO.CARVALHO em 24/01/2022, 11:20Bom dia pessoal, estou com dificuldade em uma query para trazer a informação de "motivo" em um relatório personalizado. Não estou achando ligação da tabela SAC_MOTIVO com as outras. Alguém teria algo pronto.
obrigado
Bom dia, Ricardo
Nunca realizei consulta desse módulo. Me informa a query que possui que posso verificar via banco as conexões.
Citação de RICARCO.CARVALHO em 24/01/2022, 11:20Bom dia pessoal, estou com dificuldade em uma query para trazer a informação de "motivo" em um relatório personalizado. Não estou achando ligação da tabela SAC_MOTIVO com as outras. Alguém teria algo pronto.
obrigado
Bom dia, Ricardo
Nunca realizei consulta desse módulo. Me informa a query que possui que posso verificar via banco as conexões.
Citação de RICARCO.CARVALHO em 24/01/2022, 11:54Bom dia Marcos, até agora cheguei nisso, quando tento puxar o motivo ja fica tudo errado. Tem também a questão de ocorrer de ter mais de um motivo, ai seria um listagg.
SELECT * FROM SAC_ALTERA_SITUACAO;
SELECT * FROM SAC_CHAMADO_SETOR;
SELECT * FROM SAC_CONTATO_CHAMADO;
SELECT * FROM SAC_DOC_CHAMADO;
SELECT * FROM SAC_HIST_CORRECAO;
SELECT * FROM SAC_MOTIVO;
SELECT * FROM SAC_MOTIVO_SETOR;
SELECT * FROM SAC_RECEPTOR;
SELECT * FROM SAC_RECEPTOR_PARECER;
SELECT * FROM SAC_RESPOSTA_PARECER;
SELECT * FROM SAC_REG_CONTATO_SOLIC;
SELECT * FROM SAC_RESPOSTA;
SELECT * FROM SAC_SOLIC_PARECER;
SELECT * FROM SAC_SOLICITACAO;
SELECT * FROM SAC_SOLICITACAO_TRAN;
SELECT * FROM TIPO_SAC_CHAMADO;
SELECT * FROM TIPO_SAC_CHAMADO_NIVEL;
SELECT * FROM MEIO_SAC_SOLICITACAO;
SELECT * FROM ORIGEM_SAC_SOLICITACAO;
SELECT * FROM SETOR;SELECT TO_CHAR(SAC_SOLICITACAO.DT_SOLICIDACAO, 'DD/MM/YYYY') DATA,
TO_CHAR(SAC_SOLICITACAO.HR_SOLICITACAO, 'HH24:MI') HORA,
SAC_SOLICITACAO.CD_USUARIO_ABERTURA ABERTO_POR,
SAC_SOLICITACAO.CD_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO.NM_ORIGEM ORIGEM,
MEIO_SAC_SOLICITACAO.NM_MEIO MEIO_ABERTURA,
TIPO_SAC_CHAMADO_NIVEL.NM_NIVEL,
SETOR.NM_SETOR,
SAC_SOLICITACAO.CD_PACIENTE,
PACIENTE.NM_PACIENTE,
Nvl(SAC_SOLICITACAO.SN_FIDELIDADE,'-') AS FIDELIDADE,
Nvl(SAC_SOLICITACAO.SN_SATISFATORIO, '-') AS SATISFATORIO,
Nvl(SAC_SOLICITACAO.TP_TEMPO_RETORNO, 0) AS TEMPO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_PREVISAO_RETORNO, 'DD/MM/YYYY'),'-') AS PREVISAO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_ENCERRAMENTO, 'DD/MM/YYYY'),'-') AS DT_ENCERRAMENTO
FROM SAC_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO,
MEIO_SAC_SOLICITACAO,
TIPO_SAC_CHAMADO_NIVEL,
SETOR,
PACIENTE
WHERE SAC_SOLICITACAO.CD_ORIGEM = ORIGEM_SAC_SOLICITACAO.CD_ORIGEM
AND SAC_SOLICITACAO.CD_MEIO = MEIO_SAC_SOLICITACAO.CD_MEIO
AND SAC_SOLICITACAO.CD_NIVEL = TIPO_SAC_CHAMADO_NIVEL.CD_NIVEL
AND SAC_SOLICITACAO.CD_SETOR = SETOR.CD_SETOR
AND SAC_SOLICITACAO.CD_PACIENTE = PACIENTE.CD_PACIENTE
ORDER BY CD_SOLICITACAO DESC;
Bom dia Marcos, até agora cheguei nisso, quando tento puxar o motivo ja fica tudo errado. Tem também a questão de ocorrer de ter mais de um motivo, ai seria um listagg.
SELECT * FROM SAC_ALTERA_SITUACAO;
SELECT * FROM SAC_CHAMADO_SETOR;
SELECT * FROM SAC_CONTATO_CHAMADO;
SELECT * FROM SAC_DOC_CHAMADO;
SELECT * FROM SAC_HIST_CORRECAO;
SELECT * FROM SAC_MOTIVO;
SELECT * FROM SAC_MOTIVO_SETOR;
SELECT * FROM SAC_RECEPTOR;
SELECT * FROM SAC_RECEPTOR_PARECER;
SELECT * FROM SAC_RESPOSTA_PARECER;
SELECT * FROM SAC_REG_CONTATO_SOLIC;
SELECT * FROM SAC_RESPOSTA;
SELECT * FROM SAC_SOLIC_PARECER;
SELECT * FROM SAC_SOLICITACAO;
SELECT * FROM SAC_SOLICITACAO_TRAN;
SELECT * FROM TIPO_SAC_CHAMADO;
SELECT * FROM TIPO_SAC_CHAMADO_NIVEL;
SELECT * FROM MEIO_SAC_SOLICITACAO;
SELECT * FROM ORIGEM_SAC_SOLICITACAO;
SELECT * FROM SETOR;
SELECT TO_CHAR(SAC_SOLICITACAO.DT_SOLICIDACAO, 'DD/MM/YYYY') DATA,
TO_CHAR(SAC_SOLICITACAO.HR_SOLICITACAO, 'HH24:MI') HORA,
SAC_SOLICITACAO.CD_USUARIO_ABERTURA ABERTO_POR,
SAC_SOLICITACAO.CD_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO.NM_ORIGEM ORIGEM,
MEIO_SAC_SOLICITACAO.NM_MEIO MEIO_ABERTURA,
TIPO_SAC_CHAMADO_NIVEL.NM_NIVEL,
SETOR.NM_SETOR,
SAC_SOLICITACAO.CD_PACIENTE,
PACIENTE.NM_PACIENTE,
Nvl(SAC_SOLICITACAO.SN_FIDELIDADE,'-') AS FIDELIDADE,
Nvl(SAC_SOLICITACAO.SN_SATISFATORIO, '-') AS SATISFATORIO,
Nvl(SAC_SOLICITACAO.TP_TEMPO_RETORNO, 0) AS TEMPO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_PREVISAO_RETORNO, 'DD/MM/YYYY'),'-') AS PREVISAO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_ENCERRAMENTO, 'DD/MM/YYYY'),'-') AS DT_ENCERRAMENTO
FROM SAC_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO,
MEIO_SAC_SOLICITACAO,
TIPO_SAC_CHAMADO_NIVEL,
SETOR,
PACIENTE
WHERE SAC_SOLICITACAO.CD_ORIGEM = ORIGEM_SAC_SOLICITACAO.CD_ORIGEM
AND SAC_SOLICITACAO.CD_MEIO = MEIO_SAC_SOLICITACAO.CD_MEIO
AND SAC_SOLICITACAO.CD_NIVEL = TIPO_SAC_CHAMADO_NIVEL.CD_NIVEL
AND SAC_SOLICITACAO.CD_SETOR = SETOR.CD_SETOR
AND SAC_SOLICITACAO.CD_PACIENTE = PACIENTE.CD_PACIENTE
ORDER BY CD_SOLICITACAO DESC;
Citação de Marcos Soares em 24/01/2022, 12:30Citação de RICARCO.CARVALHO em 24/01/2022, 11:54Bom dia Marcos, até agora cheguei nisso, quando tento puxar o motivo ja fica tudo errado. Tem também a questão de ocorrer de ter mais de um motivo, ai seria um listagg.
SELECT * FROM SAC_ALTERA_SITUACAO;
SELECT * FROM SAC_CHAMADO_SETOR;
SELECT * FROM SAC_CONTATO_CHAMADO;
SELECT * FROM SAC_DOC_CHAMADO;
SELECT * FROM SAC_HIST_CORRECAO;
SELECT * FROM SAC_MOTIVO;
SELECT * FROM SAC_MOTIVO_SETOR;
SELECT * FROM SAC_RECEPTOR;
SELECT * FROM SAC_RECEPTOR_PARECER;
SELECT * FROM SAC_RESPOSTA_PARECER;
SELECT * FROM SAC_REG_CONTATO_SOLIC;
SELECT * FROM SAC_RESPOSTA;
SELECT * FROM SAC_SOLIC_PARECER;
SELECT * FROM SAC_SOLICITACAO;
SELECT * FROM SAC_SOLICITACAO_TRAN;
SELECT * FROM TIPO_SAC_CHAMADO;
SELECT * FROM TIPO_SAC_CHAMADO_NIVEL;
SELECT * FROM MEIO_SAC_SOLICITACAO;
SELECT * FROM ORIGEM_SAC_SOLICITACAO;
SELECT * FROM SETOR;SELECT TO_CHAR(SAC_SOLICITACAO.DT_SOLICIDACAO, 'DD/MM/YYYY') DATA,
TO_CHAR(SAC_SOLICITACAO.HR_SOLICITACAO, 'HH24:MI') HORA,
SAC_SOLICITACAO.CD_USUARIO_ABERTURA ABERTO_POR,
SAC_SOLICITACAO.CD_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO.NM_ORIGEM ORIGEM,
MEIO_SAC_SOLICITACAO.NM_MEIO MEIO_ABERTURA,
TIPO_SAC_CHAMADO_NIVEL.NM_NIVEL,
SETOR.NM_SETOR,
SAC_SOLICITACAO.CD_PACIENTE,
PACIENTE.NM_PACIENTE,
Nvl(SAC_SOLICITACAO.SN_FIDELIDADE,'-') AS FIDELIDADE,
Nvl(SAC_SOLICITACAO.SN_SATISFATORIO, '-') AS SATISFATORIO,
Nvl(SAC_SOLICITACAO.TP_TEMPO_RETORNO, 0) AS TEMPO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_PREVISAO_RETORNO, 'DD/MM/YYYY'),'-') AS PREVISAO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_ENCERRAMENTO, 'DD/MM/YYYY'),'-') AS DT_ENCERRAMENTO
FROM SAC_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO,
MEIO_SAC_SOLICITACAO,
TIPO_SAC_CHAMADO_NIVEL,
SETOR,
PACIENTE
WHERE SAC_SOLICITACAO.CD_ORIGEM = ORIGEM_SAC_SOLICITACAO.CD_ORIGEM
AND SAC_SOLICITACAO.CD_MEIO = MEIO_SAC_SOLICITACAO.CD_MEIO
AND SAC_SOLICITACAO.CD_NIVEL = TIPO_SAC_CHAMADO_NIVEL.CD_NIVEL
AND SAC_SOLICITACAO.CD_SETOR = SETOR.CD_SETOR
AND SAC_SOLICITACAO.CD_PACIENTE = PACIENTE.CD_PACIENTE
ORDER BY CD_SOLICITACAO DESC;Ricardo, verificando as tabelas consegui chegar a tabela SAC_MOTIVO dessa maneira abaixo. Basta incluir os joins na sua query que obterá sucesso.
select * from SAC_SOLICITACAO ss
inner join sac_chamado_setor scs on ss.cd_solicitacao = scs.cd_solicitacao
inner join SAC_MOTIVO_SETOR sms on sms.cd_sac_parecer_setor = scs.cd_sac_parecer_setor
inner join SAC_MOTIVO sm on sm.cd_sac_motivo = sms.cd_sac_motivo
Citação de RICARCO.CARVALHO em 24/01/2022, 11:54Bom dia Marcos, até agora cheguei nisso, quando tento puxar o motivo ja fica tudo errado. Tem também a questão de ocorrer de ter mais de um motivo, ai seria um listagg.
SELECT * FROM SAC_ALTERA_SITUACAO;
SELECT * FROM SAC_CHAMADO_SETOR;
SELECT * FROM SAC_CONTATO_CHAMADO;
SELECT * FROM SAC_DOC_CHAMADO;
SELECT * FROM SAC_HIST_CORRECAO;
SELECT * FROM SAC_MOTIVO;
SELECT * FROM SAC_MOTIVO_SETOR;
SELECT * FROM SAC_RECEPTOR;
SELECT * FROM SAC_RECEPTOR_PARECER;
SELECT * FROM SAC_RESPOSTA_PARECER;
SELECT * FROM SAC_REG_CONTATO_SOLIC;
SELECT * FROM SAC_RESPOSTA;
SELECT * FROM SAC_SOLIC_PARECER;
SELECT * FROM SAC_SOLICITACAO;
SELECT * FROM SAC_SOLICITACAO_TRAN;
SELECT * FROM TIPO_SAC_CHAMADO;
SELECT * FROM TIPO_SAC_CHAMADO_NIVEL;
SELECT * FROM MEIO_SAC_SOLICITACAO;
SELECT * FROM ORIGEM_SAC_SOLICITACAO;
SELECT * FROM SETOR;SELECT TO_CHAR(SAC_SOLICITACAO.DT_SOLICIDACAO, 'DD/MM/YYYY') DATA,
TO_CHAR(SAC_SOLICITACAO.HR_SOLICITACAO, 'HH24:MI') HORA,
SAC_SOLICITACAO.CD_USUARIO_ABERTURA ABERTO_POR,
SAC_SOLICITACAO.CD_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO.NM_ORIGEM ORIGEM,
MEIO_SAC_SOLICITACAO.NM_MEIO MEIO_ABERTURA,
TIPO_SAC_CHAMADO_NIVEL.NM_NIVEL,
SETOR.NM_SETOR,
SAC_SOLICITACAO.CD_PACIENTE,
PACIENTE.NM_PACIENTE,
Nvl(SAC_SOLICITACAO.SN_FIDELIDADE,'-') AS FIDELIDADE,
Nvl(SAC_SOLICITACAO.SN_SATISFATORIO, '-') AS SATISFATORIO,
Nvl(SAC_SOLICITACAO.TP_TEMPO_RETORNO, 0) AS TEMPO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_PREVISAO_RETORNO, 'DD/MM/YYYY'),'-') AS PREVISAO_RETORNO,
Nvl(TO_CHAR(SAC_SOLICITACAO.DT_ENCERRAMENTO, 'DD/MM/YYYY'),'-') AS DT_ENCERRAMENTO
FROM SAC_SOLICITACAO,
ORIGEM_SAC_SOLICITACAO,
MEIO_SAC_SOLICITACAO,
TIPO_SAC_CHAMADO_NIVEL,
SETOR,
PACIENTE
WHERE SAC_SOLICITACAO.CD_ORIGEM = ORIGEM_SAC_SOLICITACAO.CD_ORIGEM
AND SAC_SOLICITACAO.CD_MEIO = MEIO_SAC_SOLICITACAO.CD_MEIO
AND SAC_SOLICITACAO.CD_NIVEL = TIPO_SAC_CHAMADO_NIVEL.CD_NIVEL
AND SAC_SOLICITACAO.CD_SETOR = SETOR.CD_SETOR
AND SAC_SOLICITACAO.CD_PACIENTE = PACIENTE.CD_PACIENTE
ORDER BY CD_SOLICITACAO DESC;
Ricardo, verificando as tabelas consegui chegar a tabela SAC_MOTIVO dessa maneira abaixo. Basta incluir os joins na sua query que obterá sucesso.
select * from SAC_SOLICITACAO ss
inner join sac_chamado_setor scs on ss.cd_solicitacao = scs.cd_solicitacao
inner join SAC_MOTIVO_SETOR sms on sms.cd_sac_parecer_setor = scs.cd_sac_parecer_setor
inner join SAC_MOTIVO sm on sm.cd_sac_motivo = sms.cd_sac_motivo
Citação de RICARCO.CARVALHO em 24/01/2022, 12:33Opa, show Marcos, vou testar aqui, obrigado
Opa, show Marcos, vou testar aqui, obrigado
Citação de Marcos Soares em 25/01/2022, 10:46Citação de RICARCO.CARVALHO em 24/01/2022, 12:33Opa, show Marcos, vou testar aqui, obrigado
Bom dia, @ricarco-carvalho.
Conseguiu finalizar o relatório?
Citação de RICARCO.CARVALHO em 24/01/2022, 12:33Opa, show Marcos, vou testar aqui, obrigado
Bom dia, @ricarco-carvalho.
Conseguiu finalizar o relatório?
Citação de RICARCO.CARVALHO em 25/01/2022, 15:39Opa, boa tarde Marcos, consegui sim, não tenho muito conhecimento ainda de plsql, me ajudou bastante sua query com join. Solucionou aqui pra mim, muito grato, estava travado nisso e o where só trazia informações divengentes. Agora virei adepto do join kkkk.
Opa, boa tarde Marcos, consegui sim, não tenho muito conhecimento ainda de plsql, me ajudou bastante sua query com join. Solucionou aqui pra mim, muito grato, estava travado nisso e o where só trazia informações divengentes. Agora virei adepto do join kkkk.
Citação de Marcos Soares em 25/01/2022, 17:17Citação de RICARCO.CARVALHO em 25/01/2022, 15:39Opa, boa tarde Marcos, consegui sim, não tenho muito conhecimento ainda de plsql, me ajudou bastante sua query com join. Solucionou aqui pra mim, muito grato, estava travado nisso e o where só trazia informações divengentes. Agora virei adepto do join kkkk.
Que bom que conseguiu irmão.
Como sempre digo, se aprender join, union e subquery , 90% dos problemas são resolvidos haha.
Isso ai, não desanima de estudar não. Pra cima!
Citação de RICARCO.CARVALHO em 25/01/2022, 15:39Opa, boa tarde Marcos, consegui sim, não tenho muito conhecimento ainda de plsql, me ajudou bastante sua query com join. Solucionou aqui pra mim, muito grato, estava travado nisso e o where só trazia informações divengentes. Agora virei adepto do join kkkk.
Que bom que conseguiu irmão.
Como sempre digo, se aprender join, union e subquery , 90% dos problemas são resolvidos haha.
Isso ai, não desanima de estudar não. Pra cima!