sql_acervo
===

```{sql}
SELECT
DIM_CLASSE.SIG_CLASSE,
CASE WHEN DIM_PROCESSO.FLG_TUTELAANT = 1 THEN 'Sim'
ELSE 'Não' END,
CASE WHEN DIM_PROCESSO.FLG_TUTELAPROV = 1 THEN 'Sim'
ELSE 'Não' END,
DIM_PROCESSO.NUM_PROCESSO,
DIM_PROCESSO.DSC_ULTIMA_LOCALIZACAO,
'<a href=''http://www.stf.jus.br/portal/processo/verProcessoAndamento.asp?incidente='||DIM_PROCESSO.SEQ_NAT_OBJETO_INCIDENTE||''' target=_blank>'||DIM_PROCESSO.SIG_CLASSE||'-'||DIM_PROCESSO.NUM_PROCESSO||'</a>',
initcap(DIM_PROCESSO.DSC_MEIO_PROCESSO),
DIM_PROCESSO.NOM_MIN_REL_ULT_ANDAMENTO,
TRUNC(DIM_PROCESSO.DAT_ULTIMO_ANDAMENTO),
DIM_PROCESSO.DSC_ULTIMO_ANDAMENTO,
DIM_PROCESSO.DSC_OBSERVACAO_ULT_ANDAMENTO,
DIM_PROCESSO.SEQ_NAT_OBJETO_INCIDENTE,
DIM_PROCESSO.ID_PROCESSO,
DIM_PROCESSO.DAT_ULTIMA_LOCALIZACAO,
// indicador de representante da controversia
CASE WHEN DIM_PROCESSO.FLG_REPR_CONTROVERSIA = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_REPR_CONTROVERSIA = 0 THEN 'Não' ELSE 'Não Informado' END,
// indicador de limintar pendente
CASE WHEN DIM_PROCESSO.FLG_LIMINAR_PENDENTE = 1 THEN 'Sim' ELSE 'Não' END,
// indicador de sem decisao
CASE WHEN DIM_PROCESSO.FLG_MERITO_PENDENTE = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_MERITO_PENDENTE = -1 THEN 'Não se aplica' ELSE 'Não' END,
// Indicador de recurso interno pendente
CASE WHEN DIM_PROCESSO.FLG_RECURSO_INTERNO_PENDENTE = 1 THEN 'Sim' ELSE 'Não' END,
// Indicador de Em instrução (sem decisão)
CASE WHEN (DIM_PROCESSO.FLG_SEM_DECISAO = 1 AND DIM_PROCESSO.FLG_MERITO_PENDENTE = 1) THEN 'Sim' ELSE 'Não' END,
// Com alguma decisão (exceto decisao final)
CASE WHEN (DIM_PROCESSO.FLG_MERITO_PENDENTE = 1 AND DIM_PROCESSO.FLG_SEM_DECISAO = 0) THEN 'Sim' ELSE 'Não' END,
// Com decisão final (com recurso interno pendente)
CASE WHEN (DIM_PROCESSO.FLG_MERITO_PENDENTE = 0 AND DIM_PROCESSO.FLG_RECURSO_INTERNO_PENDENTE = 1) THEN 'Sim' ELSE 'Não' END,
// Com decisão final (sem recurso interno pendente)
CASE WHEN (DIM_PROCESSO.FLG_MERITO_PENDENTE = 0 AND DIM_PROCESSO.FLG_RECURSO_INTERNO_PENDENTE = 0) THEN 'Sim' ELSE 'Não' END,
Case when DIM_PROCESSO.NUM_RAMO_DIREITO = -1 then
(Case when SUBSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO,1,INSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO, '|') - 1) is not null then SUBSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO,1,INSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO, '|') - 2) else DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO end)
else
'Não Informado'
end,
CASE WHEN DIM_CLASSE.DSC_GRUPO_ORIGEM = 'CLASSE ORIGINÁRIA' THEN 'Originária'
WHEN DIM_CLASSE.DSC_GRUPO_ORIGEM = 'CLASSE RECURSAL' THEN 'Recursal' ELSE DIM_CLASSE.DSC_GRUPO_ORIGEM END,
DIM_CLASSE.DSC_GRUPO_CONTROLE, TO_NUMBER(TO_CHAR(TRUNC(DIM_PROCESSO.DAT_AUTUACAO),'SYYYY')),
CASE WHEN DIM_PROCESSO.FLG_PROCESSO_MESA_PAUTA = 1 THEN 'Sim'
ELSE 'Não' END,
DIM_ULTIMO_ANDAMENTO.DSC_GRUPO_ANDAMENTO,
DIM_ULTIMO_ANDAMENTO.DSC_SUBGRUPO_ANDAMENTO,
CASE WHEN DIM_PROCESSO.FLG_PROCESSO_SOBRESTADO = 1 THEN 'Sim'
ELSE 'Não' END,
CASE WHEN DIM_PROCESSO.FLG_ACORDAO_PEND_PUBLICACAO = 1 THEN 'Sim'
ELSE 'Não' END,
DIM_PROCESSO.DSC_ASSUNTO_CONCAT_COMPLETO,
DIM_ORGAO_LOCALIZACAO_ATUAL.DSC_TIP_ORGAO,
DIM_PROCESSO.COD_ULTIMA_LOCALIZACAO,
CASE WHEN DIM_PROCESSO.FLG_SEM_DECISAO = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_SEM_DECISAO = 0 THEN 'Não' END ,
case when DIM_PROCESSO.FLG_COM_PEDIDO_VISTA = 1 THEN 'Sim'
ELSE 'Não' END,
DIM_PROCESSO.DSC_PROCEDENCIA,
DIM_PROCESSO.SIG_PROCEDENCIA,
DIM_PROCESSO.DSC_ORGAO_ORIGEM,
TRUNC(DIM_PROCESSO.DAT_AUTUACAO),
DIM_PROCESSO.DSC_SIGLA_ULTIMO_RECURSO,
CASE WHEN DIM_PROCESSO.FLG_CRIMINAL = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_CRIMINAL =0 THEN 'Não' END , count(distinct(FATO_OCORRENCIA_PROCESSO.ID_PROCESSO)),
SUM(FATO_OCORRENCIA_PROCESSO.QTD_OCOR_PROCESSUAL)
FROM
FATO_OCORRENCIA_PROCESSO,
DIM_PROCESSO,
DIM_ORGAO DIM_ORGAO_LOCALIZACAO_ATUAL,
DIM_ANDAMENTO DIM_ULTIMO_ANDAMENTO,
DIM_CLASSE
WHERE
( FATO_OCORRENCIA_PROCESSO.ID_CLASSE=DIM_CLASSE.ID_CLASSE )
AND ( DIM_PROCESSO.ID_PROCESSO=FATO_OCORRENCIA_PROCESSO.ID_PROCESSO )
AND ( DIM_ORGAO_LOCALIZACAO_ATUAL.COD_ORGAO(+)=DIM_PROCESSO.COD_ULTIMA_LOCALIZACAO )
AND ( DIM_PROCESSO.COD_ULTIMO_ANDAMENTO=DIM_ULTIMO_ANDAMENTO.COD_ANDAMENTO(+) )
AND ( FATO_OCORRENCIA_PROCESSO.FLG_OPERACIONAL_ATIVO=1 )
AND ( DIM_PROCESSO.FLG_OPERACIONAL_ATIVO=1 )
AND ( FATO_OCORRENCIA_PROCESSO.FLG_LANCAMENTO_INDEVIDO=0 )
AND
( DIM_PROCESSO.FLG_TRAMITACAO=1 )
GROUP BY
DIM_CLASSE.SIG_CLASSE,
CASE WHEN DIM_PROCESSO.FLG_TUTELAANT = 1 THEN 'Sim'
ELSE 'Não' END,
CASE WHEN DIM_PROCESSO.FLG_TUTELAPROV = 1 THEN 'Sim'
ELSE 'Não' END,
DIM_PROCESSO.NUM_PROCESSO,
DIM_PROCESSO.DSC_ULTIMA_LOCALIZACAO,
'<a href=''http://www.stf.jus.br/portal/processo/verProcessoAndamento.asp?incidente='||DIM_PROCESSO.SEQ_NAT_OBJETO_INCIDENTE||''' target=_blank>'||DIM_PROCESSO.SIG_CLASSE||'-'||DIM_PROCESSO.NUM_PROCESSO||'</a>',
initcap(DIM_PROCESSO.DSC_MEIO_PROCESSO),
DIM_PROCESSO.NOM_MIN_REL_ULT_ANDAMENTO,
TRUNC(DIM_PROCESSO.DAT_ULTIMO_ANDAMENTO),
DIM_PROCESSO.DSC_ULTIMO_ANDAMENTO,
DIM_PROCESSO.DSC_OBSERVACAO_ULT_ANDAMENTO,
DIM_PROCESSO.SEQ_NAT_OBJETO_INCIDENTE,
DIM_PROCESSO.ID_PROCESSO,
DIM_PROCESSO.DAT_ULTIMA_LOCALIZACAO,
CASE WHEN DIM_PROCESSO.FLG_REPR_CONTROVERSIA = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_REPR_CONTROVERSIA = 0 THEN 'Não' ELSE 'Não Informado' END,
CASE WHEN DIM_PROCESSO.FLG_LIMINAR_PENDENTE = 1 THEN 'Sim'
ELSE 'Não' END,
CASE WHEN DIM_PROCESSO.FLG_MERITO_PENDENTE = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_MERITO_PENDENTE = -1 THEN 'Não se aplica'
ELSE 'Não' END,
CASE WHEN DIM_PROCESSO.FLG_RECURSO_INTERNO_PENDENTE = 1 THEN 'Sim' ELSE 'Não' END,
CASE WHEN (DIM_PROCESSO.FLG_SEM_DECISAO = 1 AND DIM_PROCESSO.FLG_MERITO_PENDENTE = 1) THEN 'Sim'
ELSE 'Não' END,
CASE WHEN (DIM_PROCESSO.FLG_MERITO_PENDENTE = 1 AND DIM_PROCESSO.FLG_SEM_DECISAO = 0) THEN 'Sim'
ELSE 'Não' END,
CASE WHEN (DIM_PROCESSO.FLG_MERITO_PENDENTE = 0 AND DIM_PROCESSO.FLG_RECURSO_INTERNO_PENDENTE = 1) THEN 'Sim'
ELSE 'Não' END,
CASE WHEN (DIM_PROCESSO.FLG_MERITO_PENDENTE = 0 AND DIM_PROCESSO.FLG_RECURSO_INTERNO_PENDENTE = 0) THEN 'Sim'
ELSE 'Não' END,
Case when DIM_PROCESSO.NUM_RAMO_DIREITO = -1 then
(Case when SUBSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO,1,INSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO, '|') - 1) is not null then SUBSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO,1,INSTR (DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO, '|') - 2) else DIM_PROCESSO.DSC_ASSUNTO_CONCATENADO end)
else
'Não Informado'
end,
CASE WHEN DIM_CLASSE.DSC_GRUPO_ORIGEM = 'CLASSE ORIGINÁRIA' THEN 'Originária'
WHEN DIM_CLASSE.DSC_GRUPO_ORIGEM = 'CLASSE RECURSAL' THEN 'Recursal' ELSE DIM_CLASSE.DSC_GRUPO_ORIGEM END,
DIM_CLASSE.DSC_GRUPO_CONTROLE,
TO_NUMBER(TO_CHAR(TRUNC(DIM_PROCESSO.DAT_AUTUACAO),'SYYYY')),
CASE WHEN DIM_PROCESSO.FLG_PROCESSO_MESA_PAUTA = 1 THEN 'Sim' ELSE 'Não' END,
DIM_ULTIMO_ANDAMENTO.DSC_GRUPO_ANDAMENTO,
DIM_ULTIMO_ANDAMENTO.DSC_SUBGRUPO_ANDAMENTO,
CASE WHEN DIM_PROCESSO.FLG_PROCESSO_SOBRESTADO = 1 THEN 'Sim' ELSE 'Não' END,
CASE WHEN DIM_PROCESSO.FLG_ACORDAO_PEND_PUBLICACAO = 1 THEN 'Sim' ELSE 'Não' END,
DIM_PROCESSO.DSC_ASSUNTO_CONCAT_COMPLETO,
DIM_ORGAO_LOCALIZACAO_ATUAL.DSC_TIP_ORGAO,
DIM_PROCESSO.COD_ULTIMA_LOCALIZACAO,
CASE WHEN DIM_PROCESSO.FLG_SEM_DECISAO = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_SEM_DECISAO = 0 THEN 'Não' END,
case when DIM_PROCESSO.FLG_COM_PEDIDO_VISTA = 1 THEN 'Sim'
ELSE 'Não' END,
DIM_PROCESSO.DSC_PROCEDENCIA,
DIM_PROCESSO.SIG_PROCEDENCIA,
DIM_PROCESSO.DSC_ORGAO_ORIGEM,
TRUNC(DIM_PROCESSO.DAT_AUTUACAO),
DIM_PROCESSO.DSC_SIGLA_ULTIMO_RECURSO,
CASE WHEN DIM_PROCESSO.FLG_CRIMINAL = 1 THEN 'Sim'
WHEN DIM_PROCESSO.FLG_CRIMINAL =0 THEN 'Não' END
```
## Implementações

* último andamento do processo
* situação atual do acervo
* recurso interno pendente
* em instrução
* com alguma decisão (exceto final)
* liminar pendente
* em pauta
* preferências (?)