====== Liquidar Empenho em Lote ====== Esta operação é utilizada pelos gestores do orçamento das unidades. Liquidar um empenho é a mesma coisa que zerar os saldos dos sub-empenhos. Este caso de uso tem como finalidade controlar os saldos dos empenhos e sub empenhos. Para maiores informações sobre empenhos, vide o [[desenvolvimento:especificacoes:sipac:orcamentario:negocio|Documento de Negócio do Sistema de Controle Orçamentário]]. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: SIPAC → Orçamento → Aba Movimentações → Empenho → Liquidação Pagamento -> Liquidar Empenho em Lote. == Passo 1 == O usuário informa o **número do documento do empenho** a ser liquidado. == Passo 2 == O sistema exibe então os seguintes dados do empenho: * **__Empenho__:** Formato - 9.../AAAA. Tipo - TEXTO. * **__Gestora__:** Formato - () Tipo - TEXTO. * **__Data__:** Tipo - DATA. * **__Processo__:** Formato - 99999.999999/AAAA-99. Tipo - TEXTO. ([[#principais_regras_de_negócio|RN01]]) * **__Programa de Trabalho Resumido__:** Tipo - TEXTO. * **__Natureza de Despesa__:** Tipo - TEXTO. * **__Fonte de Recurso__:** Tipo - TEXTO. * **__Esfera__:** Tipo - TEXTO. * **__Plano Interno__:** Tipo - TEXTO. * **__Modalidade__:** Tipo - TEXTO. * **__Credor__:** Tipo - TEXTO. * **__Observações__:** * **__Total do Empenho__:** Tipo - NUMÉRICO. * **__Saldo do Empenho__:** Tipo - NUMÉRICO. * **__Valor Anulado__:** Tipo - NUMÉRICO. * **__Valor Reforçado__:** Tipo - NUMÉRICO. * **__Valor Cancelado__:** Tipo - NUMÉRICO. * **__Registrado por__:** Formato - () Tipo - TEXTO. Exibe os seguintes dados dos Centros de Custos * **__Centro de Custo__:** Formato - () Tipo - TEXTO. * **__Valor__:** Tipo - NUMÉRICO. * **__Saldo__:** Tipo - NUMÉRICO. Existe a opção de //Visualizar todas as liquidações já realizadas para este empenho// e então solicitará os dados da liquidação do empenho. * **__Opções de Liquidação__:** Tipo - TEXTO. Opções: 'Vinculado a Requisição' ou 'Outros'. Caso seja escolhida a opção 'Vinculado a Requisição' o usuário tem aopção de 'Associar Requisição ao Empenho'. Para associar uma requisição ao empenho, o usuário informa os seguintes dados: ([[#principais_regras_de_negócio|RN 21]]) * **Número:** Tipo - NUMÉRICO. * **Ano:** Tipo - NUMÉRICO, Formato: AAAA. * **Tipo:** Tipo - TEXTO. * **Centro de Custo:** Tipo - TEXTO. E então o sistema exibe os seguintes dados: * **__Requisição__:** Tipo - TEXTO, Formato - 9…/AAAA. Tipo - TEXTO. * **__Valor da Requisição__:** Tipo NUMÉRICO. * **__Valor Contigenciado__:** Tipo NUMÉRICO. O usuário tem a opção de remover a requisição associada. O sistema solicita os dados da liquidação: * **Modalidade**: Tipo - TEXTO. Opção: 'PROCESSO' ou 'DEVOLUÇÃO'. ([[#principais_regras_de_negócio|RN02]]) * **Processo de Outra Instituição?**: Tipo - LÓGICO. Pode ser 'SIM' ou 'NÃO'. ([[#principais_regras_de_negócio|RN11, RN14, RN15 e RN17]]) * **Processo:** TIPO - NUMÉRICO, FORMATO - 99999.999999/AAAA-99, Entrada de Dados: (radical.número/ano-dv) ([[#principais_regras_de_negócio|RN12, RN13, RN16]]) * **Favorecido:** Tipo AUTOCOMPLETE, formato: , Entrada de dados: NOME, CPNJ ou CPF. * **Categoria de Despesa:** Tipo - TEXTO. ([[#principais_regras_de_negócio|RN05]]) * **Data:** Tipo - DATA. * **Valor (R$):** Tipo NUMÉRICO. ([[#principais_regras_de_negócio|RN03]]) * **Número da Ordem Bancária:** Tipo - NUMÉRICO. * **Data da Ordem Bancária:** Tipo - DATA. * **Observações:** Tipo - TEXTO. O usuário tem a possibilidade de adicionar 'Ordens Bancárias'. Para isso, o sistema requisita os seguintes dados: * **Número da Ordem Bancária:*** Tipo - NUMÉRICO. Formato: 9…/AAAA. * **Data da Ordem Bancária:*** Tipo - DATA. Formato: dd/mm/AAAA. * **Valor (R$):*** Tipo - NUMÉRICO. * **Observações:** Tipo - TEXTO. O usuário confirma e o sistema exibe a listagem com as ordens bancárias anexadas: ^ Ordens Bancárias Vinculadas a Liquidação ^^^^^ ^ Número ^ Data ^ Obsevações ^ Status ^ Valor ^ | 9999 | dd/mm/aaaa | | | | | ... | ... | ... | ... | ... | Para cada linha da tabela existe a possibilidade de alterar ou remover ordem. O sistema lista as ''Ordens Bancárias Vinculadas ao Processo Informado'', mostrando os mesmos dados da tabela anterior. O usuário tem a opção de anexar essas ordens a liquidação. O usuário tem a opção de adicionar Tributos. Para isso, o sistema requisita os seguintes dados: * **Tipo do Tributo:*** Tipo - TEXTO, Opções: ''DAR'', ''DARF'' ou ''GPS''. * **Número do Tributo:*** Tipo - NUMÉRICO. * **Data do Tributo:*** Tipo - DATA. * **Valor Total do Tributo(R$)** Tipo - NUMÉRICO. * **Observações** Tipo - TEXTO. O sistema exibe os tributos adicionados. ^ Tributos Vinculados a Liquidação ^^^^^ ^ Número/Ano ^ Tipo do Tributo ^ Data do Tributo ^ Valor do Tributo ^ | 9999/AAAA | | dd/mm/aaaa | R$ 9.999,99 | | ... | ... | ... | ... | Para cada linha da listagem o usuário tem a opção de alterar e/ou remover tributo. O sistema lista as ''Tributos Vinculados a Liquidação'', mostrando os mesmos dados da tabela anterior. O usuário tem a opção de anexar esses tributos a liquidação. O usuário anexa a liquidação e o sistema exibe a listagem com todas as liquidações anexadas: ^ Liquidações Anexadas ^^^^^ ^ Unidade do Empenho ^ Data ^ Tipo ^ Processo ^ Valor ^ | | dd/mm/aaaa | | 99999.999999/AAAA-99. | R$ 9.999,99 | ^ Requisições Associadas ^^^^^ ^ Descrição ^ Centro de Custo ^ Valor ^ Valor a Liquidar(R$) ^^ | | | 9.999,99 | 9.999,99 || | ... | ... | ... | ... || ^ Ordens Bancárias Vinculadas a Liquidação ^^^^^ ^ Número ^ Data ^ Observações ^ Status ^ Valor (R$) ^ | 99999 | dd/mm/aaaa | | | 9.999,99 | | ... | ... | ... | ... | ... | ^ Tributos Vinculados a Liquidação ^^^^^ ^ Número/Ano ^ Tipo do Tributo ^ Data do Tributo ^ Valor (R$) ^^ | 999/AAAA | | dd/mm/aaaa | 9.999,99 || | ... | ... | ... | ... | | O usuário clica em ''Liquidar'' e o sistema realiza a liquidação de todas as liquidações anexadas. O sistema exibe as seguintes informações no formato de comprovante: * **Número do Empenho:** Formato - 9.../AAAA. Tipo - TEXTO. * **PTRES:** Tipo - TEXTO. * **Natureza de Despesa:** Tipo - TEXTO. * **Fonte de Recurso:** Tipo - TEXTO. * **Esfera:** Tipo - TEXTO. * **Plano Interno:** Tipo - TEXTO. * **Usuário Cadastrador:** Tipo - TEXTO. ^ Liquidações Anexadas ^^^^^ ^ Unidade do Empenho ^ Data ^ Tipo ^ Processo ^ Valor ^ | | dd/mm/aaaa | | 99999.999999/AAAA-99. | R$ 9.999,99 | ^ Requisições Associadas ^^^^^ ^ Descrição ^ Centro de Custo ^ Valor ^ Valor a Liquidar(R$) ^^ | | | 9.999,99 | 9.999,99 || | ... | ... | ... | ... || ^ Ordens Bancárias Vinculadas a Liquidação ^^^^^ ^ Número ^ Data ^ Observações ^ Status ^ Valor (R$) ^ | 99999 | dd/mm/aaaa | | | 9.999,99 | | ... | ... | ... | ... | ... | ^ Tributos Vinculados a Liquidação ^^^^^ ^ Número/Ano ^ Tipo do Tributo ^ Data do Tributo ^ Valor (R$) ^^ | 999/AAAA | | dd/mm/aaaa | 9.999,99 || | ... | ... | ... | ... | | Existe a possibilidade de imprimir este comprovante, clicando em //**Imprimir Comprovante **// O caso de uso é encerrado. ===== Principais Regras de Negócio ===== * **RN01** - Caso a opção Processo de Outra Instituição seja selecionada, o processo não será validado, ou seja, não irá verificar se está cadastrado na base do Protocolo e as serão buscadas apenas as ordens bancárias que tenham processos de outras instituições; * **RN02** - Caso a modalidade de Liquidação de empenho escolhida seja de processo, o saldo do empenho será dimuido assim como o saldo do sub empenho da unidade interessada. Caso seja escolhida a modalidade de liquidação de devolução os saldos serão somados. * **RN03** - O valor da liquidação obrigatoriamente deve ser maior que zero. * **RN04** - O empenho não pode ter sido anulado. * **RN05** - VALOR DA LIQUIDAÇÃO: * O valor da liquidação não pode ultrapassar o valor do saldo do empenho. * O valor da liquidação não pode ultrapassar o valor do saldo do sub empenho da unidade interessada. * **RN06** - Caso seja escolhida a opção de realizar a liquidação de empenho associado a uma requisição, esta operação só poderá ser realizada sobre empenhos estimativos/globais. * **RN07** - O empenho deve possuir saldo maior que zero. * **RN08** - Os sub empenhos do empenho selecionado devem possuir a mesma natureza de despesa da requisição. * **RN09** - Para realizar uma liquidação para uma unidade debitada é necessário que exista no empenho um sub empenho para a unidade central de empenho. * **RN10** - Caso um empenho seja ordinário, só poderá ser liquidado totalmente. Não é possível fazer uma liquidação parcial sobre o mesmo. * **RN11** - Caso o parâmetro UTILIZA_PROTOCOLO_SIPAC esteja false, o campo **Processo de Outra Instituição?** não será exibido. * **RN12** - Caso o parâmetro UTILIZA_PROTOCOLO_SIPAC esteja true, ao informar o **Processo**, o sistema irá verificar a base dos processos. * **RN13** - Caso o parâmetro UTILIZA_PROTOCOLO_SIPAC esteja false, ao informar o **Processo**, o sistema não irá considerar a base dos processos. * **RN14** - Caso o campo **Processo de Outra Instituição?** seja 'NÃO' e o processo contenha ordens bancárias associadas ao processo, estas serão exibidas após o campo **observação**. * **RN15** - Caso o campo **Processo de Outra Instituição?** seja 'NÃO' e o processo não contenha ordens bancárias associadas ao processo, será solicitado após o campo **observação** as informações de //**Número da Ordem Bancária**// e a //**Data da Ordem Bancária**// * **RN16** - Quando o parâmetro UTILIZA_PROTOCOLO_SIPAC estiver configurado como //false// o campo **Processo** é solicitado de forma única utilizando uma máscara no formato 99999.999999/9999-99, ao contrário da situação que o parâmetro esteja configurado como //true//, onde o campo **Processo** é solicitado ao usuário de forma separada, sendo necessário ser informado para cada campo os dados radical, número, ano e digito verificador do processo. * **RN17** - Caso o campo **Processo de Outra Instituição?** seja 'SIM' o campo **Processo** será solicitado em apenas um campo, onde exigirá a formatação completa do número do processo. FORMATO: 99999.999999/999-99 (radical.número/ano-dv). * **RN18** - A requisição informada não pode está associada a outras liquidações do(s) empenho. (Adicionado em 13/07/2011 referente a tarefa 66587) * **RN19** - A soma dos Tributos mais a Ordem Bancária não pode ser superior ao valor da Liquidação; * **RN20** - Caso seja uma requisição de solicitação de materia em um registro de preço, e o processo associado a esta requisição possua pelo menos 1 item com o status cancelado ou pendente, não será possível realizar a liquidação. * **RN21** - Caso a opção escolhida seja ''Vinculado a Requisição'' e o tipo do empenho seja ordinário, o sistema permite anexar uma ou mais requisições. Caso o tipo do empenho seja diferente de ordinário o sistema só permite anexar uma requisição. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sipac.orcamento.movimentacoes.dominio.Lancamento | administrativo.sco.lancamento | | br.ufrn.sipac.orcamento.movimentacoes.dominio.OrdemBancaria | administrativo.sco.ordem_bancaria | | br.ufrn.sipac.orcamento.movimentacoes.dominio.Empenho | administrativo.sco.empenho | | br.ufrn.sipac.orcamento.movimentacoes.dominio.OrdemBancariaLancamento | administrativo.sco.ordem_bancaria_lancamento | | br.ufrn.sipac.orcamento.movimentacoes.dominio.SubEmpenho | administrativo.sco.sub_empenho | | br.ufrn.sipac.orcamento.movimentacoes.dominio.Tributo | administrativo.sco.tributo | | br.ufrn.sipac.orcamento.movimentacoes.dominio.TributoLancamento | administrativo.sco.tributo_lancamento | ====== Plano de Teste ====== Sistema: SIPAC Módulo: Orçamento Link(s): Aba Movimentações → Empenho → Liquidação → Liquidar Empenho em Lote Usuário: * larrubia2: Executor do Orçamento Global * seocchla01: Executor do Orçamento * raiula: Executor Convênio Papel que usuário deve ter: ScoPapeis.EXECUTOR_ORCAMENTO, ScoPapeis.EXECUTOR_ORCAMENTO_GLOBAL,ScoPapeis.EXECUTOR_CONVENIO ===== Cenários de Teste ===== * Realizar a liquidação para unidade pagadora e que o sub empenho da unidade central de empenho possua um ou mais reforços, verificando a consistência dos saldos das células orçamentárias. Para Verificar os dados das células orçamentárias utilizar o relatório Menu SCO -> Relatórios -> Saldos -> Saldo Orçamentário por Unidade. ===== Dados para o Teste ===== * Para obtermos os dados necessários para a realização do teste desse caso de uso devemos buscar esse dados em SCO -> Consultas -> Empenho -> Empenho. Devem ser utilizados apenas empenhos que não estejam finalizados. * Para obter os dados para requisições consulte SCO > Relatórios > Requisições/Documentos de Resumo para Empenhos > Requisições Empenhadas * Consulta que exibe os os empenhos estimativos e globais não anulados que possuem requisições associados e que não foram liquidados totalmente: select distinct cod_empenho, subreq.id_requisicao, subreq.tipo_requisicao from sco.empenho e join sco.sub_empenho sub using (id_empenho) join sco.sub_empenho_requisicao subreq on (subreq.id_sub_empenho = sub.id_sub_empenho) join sco.lancamento l on (sub.id_sub_empenho = l.id_sub_empenho) where e.ano = :ano and e.id_unidade_gestora = :gestora and e.anulado = false and e.saldo > 0 * Para obter os dados da requisição para dar inicio ao fluxo quando escolhida a opção **Vinculado a requisições**, o testador deve ir ao caso de uso: * SIPAC > Orçamento > Requisições > requisições > Consultar Requisição, onde o status da requisição seja **enviada**. * Consulta que exibe os empenhos ordinários não anulados que possuem requisições associados e que não foram liquidados totalmente: select distinct cod_empenho from sco.empenho e join sco.sub_empenho sub using (id_empenho) join sco.sub_empenho_requisicao subreq on (subreq.id_sub_empenho = sub.id_sub_empenho) join sco.lancamento l on (e.id_empenho = l.id_empenho) where e.ano = :ano and e.id_unidade_gestora = :gestora and e.anulado = false and e.saldo > 0 Onde ano é o :ano do empenho e :gestora é a unidade gestora do empenho. Consulta que traz as unidades gestoras select * from unidade where categoria = 1 and tipo = 2