Tabela de conteúdos

~~ODT~~

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

Relatório de Consumo

O relatório de consumo, do módulo de almoxarifado, traz informações sobre o quanto foi consumido de cada material, com divisão por grupo de material. O relatório é usado pelos gestores e auditores de almoxarifados para fazer classificações e estudos de consumo dos respectivos almoxarifados.

Descrição do Caso de uso

O caso de uso é acessado através do caminho no sistema: SIPAC → Módulo Almoxarifado → Aba Relatórios → Consumo → Relatório de Consumo.

Alguns filtros são disponibilizados para a consulta:

Filtrar por Material
Filtrar por Unidade

Relatório de Consumo - NOME DO ALMOXARIFADO

<FILTROS SELECIONADOS>

CódigoDenominaçãoTotalConsumo DiárioConsumo Mensal (RN04)Consumo Semestral (RN05)Estoque Mínimo (RN06)
9999NOME DO GRUPO DE MATERIAL (RN01)
999999999999NOME DO MATERIAL9…9,999,999,999…
999999999999NOME DO MATERIAL9…9,999,999,999…
999999999999NOME DO MATERIAL9…9,999,999,999…
9999NOME DO GRUPO DE MATERIAL (RN01)
999999999999NOME DO MATERIAL9…9,999,999,999…

Logo abaixo serão apresentados os conceitos de período (RN07)

O caso de uso é finalizado.

Principais Regras de Negócio

Resoluções/Legislações Associadas

Não se aplica.

Classes Persistentes e Tabelas Envolvidas

Classe Tabela
br.ufrn.sipac.requisicoes.material.dominio.Material sipac.public.material
br.ufrn.sipac.requisicoes.material.dominio.GrupoMaterial sipac.public.grupo_material

Plano de Teste

Sistema: SIPAC

Módulo: ALMOXARIFADO

Link(s): Aba Relatórios → Consumo → Relatório de Consumo

Usuário: genibaldo

Papel que usuário deve ter: SipacPapeis.GESTOR_ALMOXARIFADO, SipacPapeis.AUDITOR_ALMOXARIFADO

Cenários de Teste

  1. Com usuário gestor de almoxarifado gere o relatório informando os dados necessários e anote o código do material;
  2. Com usuário que seja requisitor de material, cadastre uma requisição para o almoxarifado, informado esse material e proceda com o atendimento;
  3. Com o usuário de gestor de almoxarifado, gere novamente o relatório e verifique se o consumo foi alterado;
  4. Com o usuário gestor de almoxarifado, gere relatórios com períodos diferentes, com a opção de todos os grupos e todas as unidades e depois escolha um ou dois grupos e unidades para verificar consistências no total e nos consumos calculados;

Dados para o Teste

O relatório é composto das seguintes consultas:

Consultas dos materiais presentes no estoque que tiveram item atendidos por requisições:

select mat.id_material as IDMAT, grupo.codigo as grcodigo, grupo.denominacao as grden, mat.codigo as matcodigo, mat.denominacao as matden, sum(item.qtd_atendida)-sum(item.qtd_devolvida) as total, est.saldo_minimo as estmin, unidmed.denominacao as unidmedida from almoxarifado.atendimento_req_material atend, comum.grupo_material grupo, requisicoes.item_requisicao item, comum.material mat join comum.unidade_medida unidmed on mat.id_unidade_medida = unidmed.id, almoxarifado.estoque_material est where atend.id_item_req_material=item.id and mat.id_material=item.id_material and est.id_material=mat.id_material and mat.id_grupo=grupo.id and est.id_almoxarifado=? and atend.id_almoxarifado=? and atend.data between '?' and '?' group by mat.id_material, mat.codigo, est.saldo_minimo, grupo.codigo, grupo.denominacao, mat.denominacao, unidmed.denominacao order by grupo.codigo asc, mat.denominacao asc;

Consultas dos materiais presentes no estoque que tiveram movimentações do tipo saída avulsa:

select mat.id_material as IDMAT, grupo.codigo as GRCODIGO, grupo.denominacao as GRDEN, mat.codigo as MATCODIGO, mat.denominacao as MATDEN, sum(quantidade) as TOTAL, mov_est.id_material, est_mat.saldo_minimo as estmin, unidmed.denominacao as unidmedida from almoxarifado.movimentacao_estoque mov_est , comum.material mat join comum.unidade_medida unidmed on mat.id_unidade_medida = unidmed.id, comum.grupo_material grupo,almoxarifado.estoque_material est_mat where mov_est.tipo =0 and mov_est.estornado= false and est_mat.id_almoxarifado = ? and mov_est.id_almoxarifado = ? and mov_est.data_movimento >= '?' and mov_est.data_movimento ⇐ '?' and mov_est.id_material = mat.id_material and mat.id_grupo = grupo.id and est_mat.id_material = mat.id_material and mov_est.estornado = false group by mat.id_material, mov_est.id_material, grupo.codigo, grupo.denominacao, mat.codigo, mat.denominacao, est_mat.saldo_minimo, unidmed.denominacao order by grupo.codigo asc, mat.denominacao asc;