~~ODT~~

Última atualização: 2017/04/03 18:21 (edição externa)

Relatório de Demonstrativo Orçamentário

Este caso de uso tem a finalidade de demonstrar o saldo atual agrupado pelo seguintes elementos da célula orçamentária: esfera, programa de trabalho, fonte de recurso, natureza de despesa e plano interno. É utilizado pelos executores de orçamento e convênio da instituição.

Pré-condição:

Descrição do Caso de Uso

Este caso de uso inicia quando o usuário acessa a opção: SIPAC → Orçamento → Aba Relatórios → Saldos → Demonstrativo Orçamentário.

O sistema exibe o relatório conforme modelo:

Demonstrativo Orçamentário - Situação em DD/MM/AAAA

Esfera Programa de Trabalho Resumido Fonte de Recurso Natureza de Despesa Plano Interno Saldo
9… 9… 9… 9… 9… R$ 99,99
9… 9… 9… 9… ND R$ 99,99
9… 9… 9… 9… F4009G01ASN R$ 99,99
Total: R$ 99,99

Observação: O sistema apresenta dados da data corrente.

O caso de uso é finalizado.

Principais Regras de Negócio

Não se aplica.

Classes Persistentes e Tabelas Envolvidas

Classe Tabela
br.ufrn.sipac.orcamento.dominio.CelulaOrcamentaria administrativo.sco.celula_orcamentaria

Plano de Teste

Sistema: SIPAC

Módulo: Orçamentário

Link(s): Relatórios → Saldo → Demonstrativo Orçamentário

Usuário: larrubia2

Papel que usuário deve ter: ScoPapeis.EXECUTOR_ORCAMENTO, ScoPapeis.EXECUTOR_ORCAMENTO_GLOBAL, ScoPapeis.EXECUTOR_CONVENIO

Dados para o Teste

É possível obter os dados do relatório realizando a seguinte consulta:

SELECT PT.CODIGO AS CODIGO_PT, FR.CODIGO AS CODIGO_FR, ED.CODIGO AS CODIGO_ED, ESF.CODIGO AS CODIGO_ESF, PI.CODIGO AS CODIGO_PI, SUM(CEL.SALDO) AS SALDO FROM SCO.CELULA_ORCAMENTARIA CEL JOIN UNIDADE UN ON (UN.ID_UNIDADE = CEL.ID_UNIDADE) JOIN SCO.PROGRAMA_TRABALHO PT ON (CEL.ID_PROGRAMA_TRABALHO = PT.ID_PROGRAMA_TRABALHO) JOIN SCO.FONTE_RECURSO FR ON (CEL.ID_FONTE_RECURSO = FR.ID_FONTE_RECURSO) JOIN SCO.ELEMENTO_DESPESA ED ON (CEL.ID_ELEMENTO_DESPESA = ED.ID_ELEMENTO_DESPESA) JOIN SCO.ESFERA ESF ON (CEL.ID_ESFERA = ESF.ID_ESFERA) LEFT JOIN SCO.PLANO_INTERNO PI ON (CEL.ID_PLANO_INTERNO = PI.ID_PLANO_INTERNO) WHERE CEL.ID_UNIDADE IN ( SELECT ID_UNIDADE FROM UNIDADE WHERE UNIDADE_RESPONSAVEL = ? UNION SELECT ID_UNIDADE FROM UNIDADE WHERE ID_UNIDADE = ?) AND CEL.ANO = ? AND UN.UNIDADE_ORCAMENTARIA = TRUE GROUP BY PT.CODIGO, FR.CODIGO, ED.CODIGO, ESF.CODIGO, PI.CODIGO ORDER BY ESF.CODIGO, PT.CODIGO, FR.CODIGO, ED.CODIGO, PI.CODIGO