Linha de Produto: | Microsiga Protheus® | ||||
Segmento: | Serviços | ||||
Módulo: | Gestão de Contratos | ||||
Rotina: |
| ||||
Parâmetro(s): | PARAMIXB[1] | ||||
Ponto de Entrada: | CN121VLC | ||||
| Versão: | Protheus 12.1.16 |
Descrição: | Ponto de Entrada desenvolvido para permitir modificar a base de cálculo da caução durante uma medição | ||||
Eventos: | Na função da rotina CNTA121 | ||||
Programa Fonte: | CNTA121.prw | ||||
Função: | Cn121VlrMd() | ||||
Retorno: |
|
#include "tlpp-core.th"
#INCLUDE "Protheus.ch"
#INCLUDE "FWMVCDEF.CH"
User Function CN121VLC() As Numeric
Local oModel := PARAMIXB[1] As Object
Local oModelCND := oModel:GetModel("CNDMASTER") As Object
Local nValorLiquido := oModelCND:GetValue('CND_VLLIQD') As Numeric
Local nTotalBPedido := oModelCND:GetValue('CND_VLBPED') As Numeric
Local nTotalMPedido := oModelCND:GetValue('CND_VLMPED') As Numeric
Local nTotDescMedicao := oModelCND:GetValue('CND_DESCME') As Numeric
Local nTotAdiantamento := oModelCND:GetValue('CND_TOTADT') As Numeric
Local nVlPrevisto := oModelCND:GetValue('CND_VLPREV') As Numeric
Local nTipoContrato := IIf(Cn121RetSt('COMPRA',0,, oModelCND:GetValue('CND_CONTRA')),1,-1) As Numeric
Local nTotCaucao := 0 As Numeric
//nTotCaucao := nValorLiquido + ((nTotalBPedido - nTotalMPedido) * nTipoContrato) - nTotDescMedicao - nTotAdiantamento // Lógica padrão
nTotCaucao := nValorLiquido + ((nTotalBPedido - nTotalMPedido) * nTipoContrato) - nTotDescMedicao - (nTotAdiantamento + nVlPrevisto/2)
Return nTotCaucao |