~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Relatório Quadro Comparativo ====== Esse caso de uso permite ao funcionário do setor de licitações a geração de um relatório que apresenta as propostas de uma licitação de forma comparativa. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: SIPAC -> Compras/Licitação -> Aba Licitação -> Consultas/Relatórios -> Quadro Comparativo. Ao acessar o caso de uso o sistema apresenta os seguintes filtros para geração do relatório: * **Nº Processo:** Tipo NUMÉRICO, formato: 99999.999999/AAAA-99. [[#PRINCIPAIS REGRAS DE NEGÓCIO|(RN01)]] * **Modalidade/Número/Ano**: Tipo TEXTO, formato: SIGLA MODALIDADE - 9.../AAAA. São apresentadas as opções: ''CC'',''CI'',''PR'',''DL'',''IN'' e''CV''. O relatório é gerado e apresenta o seguinte formato: **QUADRO COMPARATIVO DE PROPOSTAS** ***__Licitação__**: Tipo - TEXTO. Formato: 99999.999999/AAAA-99 - XX 99/AAAA - XX ***__Gestora__**: Tipo - TEXTO. ***__Assunto__**: Tipo - TEXTO. ***__Tipo___**: Tipo - TEXTO. ***__Status__**: Tipo - TEXTO. ***__Abertura da Licitação__**:Tipo - DATA. ***__Validade da Ata__**:Tipo - DATA. Formato: DD/MM/AAAA à DD/MM/AAAA. ^Item^Especificação do Material ^Unid. ^Quant. ^Quant. Interna [[#principais_regras_de_negócio|(RN02)]]^Quant. Externa[[#principais_regras_de_negócio|(RN02)]]^Quant. Total[[#principais_regras_de_negócio|(RN02)]]^ |9 |**NOME DO MATERIAL/SERVIÇO**|UNIDADE |9 | |9 |9 | | |ESPECIFICAÇÃO | | | | || | |**Firma** |**Marca**|**Valor Unit.**| | || | |9 |MARCA |R$ 9.999,99 | | || |9 - NOME DA FIRMA (CNPJ)| ===== Principais Regras de Negócio ===== * **RN01** - Caso o parâmetro UTILIZA_PROTOCOLO_SIPAC esteja configurado como falso, será exibido um campo único para a informação do número do processo no formato radical.número/ano-dv. Esse campo é mascarado, ou seja, não é necessário o usuário informar os "./-". Caso o parâmetro esteja configurado como verdadeiro será solicitado os valores de forma separada, sendo quatro campos: **radical** . **número** / **ano** - **dv**. As informações desse campo são exibidas também no formato radical.número/ano-dv. (Alterado em 13/01/2012, referente a tarefa 78141) * **RN02** - Exibido somente se o processo de compra for SRP. ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela ^ | br.ufrn.sipac.compras.dominio.ItemProcessoCompra | administrativo.compras.item_processo_compra | | br.ufrn.sipac.compras.dominio.ProcessoCompra | administrativo.compras.processo_compra | ===== Plano de Teste ===== Sistema: SIPAC \\ \\ Módulo: Compras/Licitação \\ \\ Link(s): Aba Licitação -> Consultas/Relatórios -> Quadro Comparativo \\ \\ Usuários: rms \\ \\ Papel que usuário deve ter: GESTOR_COMPRA, GESTOR_LICITACAO, GESTOR_RELATORIOS_COMPRAS ===== Cenários de Teste ===== * É importante que os testes sejam realizados com as duas configurações informadas abaixo: * Configuração 01: ***UTILIZA_PROTOCOLO_SIPAC** = //true//. * Configuração 02: ***UTILIZA_PROTOCOLO_SIPAC** = //false//. ===== Dados para o Teste ===== Utilizar um processo de compra: * Configuração 01: -- UTILIZANDO A BUSCA POR NÚMERO DO PROCESSO SELECT p.num_protocolo, p.ano FROM compras.processo_compra pc INNER JOIN protocolo.processo p ON (p.id_processo=pc.id_processo) INNER JOIN compras.item_processo_compra ipc ON (pc.id_proc_compra=ipc.id_processo_compra) INNER JOIN compras.item_proposta ip ON (ip.id_item_processo=ipc.id_item_proc_compra) WHERE pc.id_status <> 506 --and srp=true GROUP BY p.num_protocolo, p.ano ORDER BY p.ano DESC, p.num_protocolo ASC LIMIT 10; -- UTILIZANDO A BUSCA POR MODALIDADE SELECT pc.num_modalidade, p.ano, ml.abreviacao FROM compras.processo_compra pc INNER JOIN compras.modalidade_licitacao ml ON (pc.id_modalidade=ml.id) INNER JOIN protocolo.processo p ON (pc.id_processo=p.id_processo) INNER JOIN compras.item_processo_compra ipc ON (pc.id_proc_compra=ipc.id_processo_compra) INNER JOIN compras.item_proposta ip ON (ip.id_item_processo=ipc.id_item_proc_compra) WHERE pc.id_status <> 506 --and srp=true ORDER BY p.ano DESC, p.num_protocolo ASC LIMIT 10; * Configuração 02: -- UTILIZANDO A BUSCA POR NÚMERO DO PROCESSO SELECT pc.num_protocolo FROM compras.processo_compra pc INNER JOIN compras.item_processo_compra ipc ON (pc.id_proc_compra=ipc.id_processo_compra) INNER JOIN compras.item_proposta ip ON (ip.id_item_processo=ipc.id_item_proc_compra) WHERE pc.id_status <> 506 --and srp=true ORDER BY pc.id_proc_compra LIMIT 10; -- UTILIZANDO A BUSCA POR MODALIDADE SELECT pc.num_modalidade, substring(pc.num_protocolo,14,4), ml.abreviacao FROM compras.processo_compra pc INNER JOIN compras.modalidade_licitacao ml ON (pc.id_modalidade=ml.id) INNER JOIN compras.item_processo_compra ipc ON (pc.id_proc_compra=ipc.id_processo_compra) INNER JOIN compras.item_proposta ip ON (ip.id_item_processo=ipc.id_item_proc_compra) WHERE pc.id_status <> 506 --and srp=true ORDER BY pc.id_proc_compra LIMIT 10;