~~ODT~~

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

Relatório de Combustíveis Distribuídos por Unidade

Esta funcionalidade é utilizada pelos gestores de transportes com a finalidade de listar o consumo de determinados combustíveis por unidades em um período de tempo.

Este caso de uso inicia quando o usuário acessa a opção: SIPAC → Transportes → Aba de Relatórios → Abastecimento → Combustíveis Distribuídos por Unidade.

As seguintes opções de filtragens são oferecidas:

  • Período*: Formato - XXXX/AAAA. Tipo TEXTO.
  • Combustíveis*: Tipo TEXTO.
  • Mostrar Saldo?*: Tipo TEXTO. Pode ser SIM ou Não.

Então o sistema exibe um relatório tal qual o modelo abaixo quando não for mostrar saldo:

Relatório de Consumo de Itens de Manutenção por Unidade

  • Período: Formato - XXXX/AAAA. Tipo TEXTO e NUMÉRICO.
  • Combustíveis: Tipo TEXTO.
  • Mostrar Saldo?: Tipo TEXTO.
Unidade Denominação do Combustível
Cód.Nome Abreviado Litros Valor (R$)
CÓDIGOSIGLA DA UNIDADE 9.999,99 R$ 99,99
CÓDIGOSIGLA DA UNIDADE 9.999,99 R$ 99,99
Total (R$): 99.999,99 99.999,99

Ou então o sistema exibe um relatório tal qual o modelo abaixo quando for para mostrar saldo:

Relatório de Consumo de Itens de Manutenção por Unidade

  • Período: Formato - XXXX/AAAA. Tipo TEXTO e NUMÉRICO.
  • Combustíveis: Tipo TEXTO.
  • Mostrar Saldo?: Tipo TEXTO.
Unidade Denominação do Combustível (Litros)
CÓDIGO - SIGLA DA UNIDADE 9.999,99
CÓDIGO - SIGLA DA UNIDADE 9.999,99
Total 99.999,99
SALDO
Saldo Anterior em DD/MM/AAAA Entradas em MÊS de ANO Saídas em MÊS de ANO Saldo Atual em DD/MM/AAAA
Denominação do Combustível
9.999,99 9.999,99 9.999,99 9.999,99
9.999,99 9.999,99 9.999,99 9.999,99

Ao final do relatório deve ser impresso local, data e ainda espaços para a assinatura do encarregado do serviço e do diretor da divisão.

O caso de uso é finalizado.

Não se aplica

Resoluções/Legislações Associadas

Não se aplica

Classe Tabela
br.ufrn.sipac.transportes.dominio.TipoCombustivel administrativo.transporte.tipo_combustivel
br.ufrn.sipac.transportes.dominio.Abastecimento administrativo.transporte.abastecimento
br.ufrn.sipac.cadastro.dominio.Unidade administrativo.transporte.unidade
br.ufrn.sipac.transportes.dominio.EntradaCombustivel administrativo.transporte.entrada_combustivel

Plano de Teste

Sistema: SIPAC

Módulo: TRANSPORTES

Link(s): Aba de Relatórios → Abastecimento → Combustíveis Distribuídos por Unidade

Usuários: bergue

Papel que usuário deve ter:

  • SipacPapeis.GESTOR_TRANSPORTES_GLOBAL,
  • SipacPapeis.GESTOR_TRANSPORTES_UNIDADES,
  • SipacPapeis.RELATORIOS_TRANSPORTES,
  • SipacPapeis.GESTOR_TRANSPORTES_ABASTECIMENTO,
  • SipacPapeis.AUDITOR.
  • Verificar se o fluxo do caso de uso está funcionando corretamente.
  • Para verificar os dados dos combustíveis e usá-los nas consultas abaixo, basta executar a consulta abaixo:
  SELECT * FROM transporte.tipo_combustivel
  • Para verificar os dados do consumo de cada combustível por unidade, basta usar a consulta abaixo, informando o período com o dia igual a 1, por exemplo, para o mês de maio de 2011, deve-se informar abastecime0_.data_transacao>='2011-05-01' and abastecime0_.data_transacao<'2011-06-01', e os ids dos tipos de combustíveis:
  SELECT unidade2_.ID_UNIDADE, unidade2_.CODIGO_UNIDADE, unidade2_.SIGLA, unidade2_.NOME,
	unidade2_.UNIDADE_ORCAMENTARIA, tipocombus1_.id_tipo_combustivel, tipocombus1_.denominacao,
	SUM(abastecime0_.quantidade_litros), SUM(round(abastecime0_.valor_abastecimento))
	FROM transporte.abastecimento abastecime0_
	INNER JOIN transporte.tipo_combustivel tipocombus1_ ON abastecime0_.id_tipo_combustivel=tipocombus1_.id_tipo_combustivel
	INNER JOIN comum.UNIDADE unidade2_ ON abastecime0_.id_unidade=unidade2_.ID_UNIDADE
		WHERE abastecime0_.data_transacao>='?' AND abastecime0_.data_transacao<'?' AND (tipocombus1_.id_tipo_combustivel IN (? , ?))
			AND (EXISTS (SELECT entradacom3_.id_tipo_combustivel FROM transporte.entrada_combustivel entradacom3_
						WHERE tipocombus1_.id_tipo_combustivel=entradacom3_.id_tipo_combustivel))
					GROUP BY unidade2_.ID_UNIDADE , unidade2_.CODIGO_UNIDADE , unidade2_.SIGLA , unidade2_.NOME , unidade2_.UNIDADE_ORCAMENTARIA ,
						tipocombus1_.id_tipo_combustivel , tipocombus1_.denominacao
					ORDER BY unidade2_.CODIGO_UNIDADE, tipocombus1_.denominacao
  • Para verificar o saldo anterior (caso seja positiva a resposta de mostrar saldo) ao mês selecionado por combustível, pode-se utilizar as consultas abaixo informando a data do período em que o dia é sempre 1, por exemplo, para o mês de maio de 2011: ent.data_cadastro < '2011-05-01'. Informar o id do tipo de combustível. E fazer a subtração do resultado da primeira consulta pelo da segunda:
  SELECT SUM(ent.quantidade) FROM transporte.entrada_combustivel ent WHERE ent.data_cadastro < '?' AND ent.id_tipo_combustivel = ?
  SELECT SUM(abas.quantidade_litros)
	FROM transporte.abastecimento abas
	INNER JOIN transporte.tipo_combustivel tc ON abas.id_tipo_combustivel = tc.id_tipo_combustivel
		WHERE abas.data_transacao < '?' AND tc.id_tipo_combustivel = ?
			AND EXISTS(SELECT ec.id_tipo_combustivel
					FROM transporte.entrada_combustivel ec 
						WHERE tc.id_tipo_combustivel = ec.id_tipo_combustivel)
  • Para verificar as entradas de combustível no mês selecionado (caso seja positiva a resposta de mostrar saldo), pode-se utilizar a consulta abaixo informando o período com o dia sempre igual a 1, por exemplo, para o mês de maio de 2011: ent.data_cadastro >= '2011-05-01' and ent.data_cadastro < '2011-06-01'. E o id do tipo de combustível:
  SELECT SUM(ent.quantidade) FROM transporte.entrada_combustivel ent
	WHERE ent.data_cadastro >= '?' AND ent.data_cadastro < '?'
		AND ent.id_tipo_combustivel = ?
  • As saídas do mês selecionado (caso seja positiva a resposta de mostrar saldo) são o total consumido de cada combustível que é apresentado na tabela de gastos por unidade (primeira tabela). E o saldo atual é a soma do saldo anterior com o total de entradas, subtraído do total de saídas.
  • desenvolvimento/especificacoes/sipac/transportes/casos_de_uso/relatorios/abastecimento/combustiveis_distribuidos_por_unidade.txt
  • Última modificação: 2017/04/03 18:23
  • (edição externa)