Protheus – Gestão de Contratos – A partir da versão 12.1.17
A rotina de Ajuste de Saldos tem o objetivo de efetuar ajustes dos saldos do contrato, suas planilhas e cronograma financeiro caso estejam divergentes com as medições realizadas.
Para utilizar a rotina acesse a rotina Ajuste de Saldos (CNTA320) e informe os parâmetros:
Ao clicar em OK o sistema irá iniciar os processos para ajuste de saldos do contrato. Somente serão alterados os contratos que possuírem divergência entre as medições.
Primeiramente o sistema irá verificar as medições já realizadas para o contrato. Após esta análise o sistema irá verificar se o saldo do item está de acordo com as medições já realizadas, se sim, nenhuma alteração é realizada, caso contrário é efetuado o ajuste.
Além dos contratos vigentes, o sistema também considera os contratos em elaboração, recalculando seus totalizadores caso exista alguma inconsistência na base de dados.
O sistema atualiza os seguintes campos para contratos vigentes:
Para contratos ainda em elaboração o sistema recalcula os campos abaixo:
|
É imprescindível a execução de um backup da base de dados antes da utilização da rotina, pois após executada não é possível retornar os registros como estavam antes. |
Por padrão a rotina processa apenas contratos com Medição Eventual igual a Não (MV_320SLD = 1), para processar contratos com Medição Eventual = Sim e Fixos configure o parâmetro MV_320SLD = 2. Para criação do parâmetro, verificar documentação da issue referente no link abaixo: 14208517 DMANMAT02-38264 DT Ajustes de Saldos de contratos eventuais |
A Rotina Schedule tem por objetivo agendar execuções de rotinas. a rotina CNTA320 também pode ser executada via Schedule.
Para que possa ser executado via Schedule, é preciso criar uma User Function que fará a chamada da rotina CNTA320 junto da função SchedDef e retornará os parâmetros corretos para que possam ser incrementadas as perguntas dentro do Schedule. |
#INCLUDE "PROTHEUS.CH"
User Function CallRot()
CNTA320()
Return
Static Function SchedDef()
Local aParam := {}
aParam := { "P",; //Tipo R para relatorio P para processo
"CNTA320",; //Pergunte do relatorio, caso nao use passar ParamDef
,; //Alias
,; //Array de ordens
"Teste Schedule CNTA320"} //Titulo - ""
Return aParam |