O processo de Aprovação de Títulos é todo configurado através de três propriedades definidas no x-class de títulos:
exigeAprovacaoManual
permiteBaixaParcialDeAprovados
tipoDeAprovacao
A propriedade exigeAprovacaoManual tem valor default false, isso significa que todos os títulos que são criados serão aprovados e desaprovados automaticamente. As demais propriedades só fazem sentido serem utilizadas se a propriedade exigeAprovacaoManual for true.
No momento que definimos na classe do titulo que a propriedade exigeAprovacaoManual = true, precisamos também definir se será permitida a baixa parcial de títulos aprovados através da propriedade permiteBaixaParcialDeAprovados. A propriedade tipoDeAprovacao é utilizada para definir até quando um titulo aprovado pode ser baixado, temos as seguintes opções para tipos de aprovação:
Baixar até data de previsão;
Baixar somente na data de previsão;
Baixar superior a data de previsão;
As classes de títulos que tem a propriedade exigeAprovacaoManual = true , devem preencher corretamente também a propriedade permiteBaixaParcialDeAprovados de acordo com as regras da empresa.
A propriedade tipoDeAprovacao tem como valor default null, deve ser utilizada para estabelecer até que dia o título aprovado pode ser baixado.
Temos 3 comportamentos para a propriedade tipoDeAprovacao, como pode ser observado a seguir:
tipoDeAprovacao = TipoDeAprovacaoDeTitulo.BAIXA_ATE_DATA_DE_PREVISAO, significa que a data de emissão da movimentação de disponíveis deve ser inferior ou igual a data de previsão do titulo.
tipoDeAprovacao = TipoDeAprovacaoDeTitulo.BAIXA_SOMENTE_NA_DATA_DE_PREVISAO, significa que a data de emissão da movimentação de disponíveis deve ser igual a data de previsão.
tipoDeAprovacao = TipoDeAprovacaoDeTitulo.BAIXA_SUPERIOR_A_DATA_DE_PREVISAO, significa que a data de emissão da movimentação de disponíveis deve ser superior ou igual a data de previsão.
No momento da criação dos títulos que podem ser através de pedidos, baixas ou novo com baixa automática, se na classe do título que está sendo criado a propriedade exigeAprovacaoManual = true, o título será criado com os campos APROVACAO e APROVADOR com valor null. A aprovação desses títulos deve acontecer no process de Títulos.
Não será permitido a edição de pedidos que tenham títulos aprovados, os títulos devem ser desaprovados antes da edição.
No processo de Negociação Financeira é validado se os títulos envolvidos na negociação tiverem exigeAprovacaoManual = true, e estiverem com os campos Aprovação e Aprovador preenchidos, caso contrário, não poderá ser gravada a negociação.
Os novos títulos gerados através da negociação são criados com os campos Aprovação e Aprovador preenchidos apenas se a propriedade exigeAprovacaoManual = false.
O processo de Devolução de Títulos não valida a propriedade de aprovação de títulos. Isso quer dizer que independente do que estiver configurado na classe de títulos, o titulo poderá ser devolvido. Porém a exclusão da devolução valida se o campo aprovação do título gerada na devolução estiver preenchido, ou seja, para conseguir excluir a devolução, o seu títulos deve estar desaprovado.
No processo de Títulos podemos visualizar a data de Previsão que é preenchida com o mesmo valor da data de correção. Essa data é utilizada para previsão da baixa do titulo.
Ao utilizar a action Aprova todos os campos do titulo ficam readOnly, para que possa ser alterada qualquer informação, deve ser utilizada a action Desaprova. Lembrando que os títulos que tem a propriedade exigeAprovacaoManual = false, ao serem abertos, são desaprovados automaticamente. Caso seja efetuada a baixa de um titulo com a propriedade exigeAprovacaoManual = false, no momento da gravação o titulo ele será aprovado automaticamente.