BL.Derde.KlantSpecifiek
1
%RegisteredObject,DOM.VKP.VerkoopPrijsAPI
right
DOM.VKP.KortingService
ProductID:%String,BasisPrijs:%Float,BerekeningsSpecificatie:DOM.PM.Maatwerk.Calc.Common.BerekeningsSpecificatie
DOM.VKP.info.VerkoopPrijsInfo
= ? AND Tag is null")
Do ResultSet.Execute(ProductID,KlantNr,BerekeningsSpecificatie.GeefPersonality().%Id(),BerekeningsSpecificatie.GeefBerekenDatum(),BerekeningsSpecificatie.GeefBerekenDatum())
Set VerkoopPrijzen = ..GeefVerkoopPrijzen(ResultSet)
}
Else
{
Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.GeneralErrorException).%New("Geen datum of tag meegegeven in de berekeningsspecificatie"))
}
If ($IsObject(VerkoopPrijzen))
{
If (VerkoopPrijzen.HeeftOverridePrijs()) Set BasisPrijs = VerkoopPrijzen.GeefOverridePrijs()
Set VerkoopPrijsBerekening = VerkoopPrijzen.GeefBerekening()
}
ElseIf (BerekeningsSpecificatie.GeefPersonality() = ##class(DOM.common.VanHoeckeVoorHaluxPersonality).Instance())
{
Set VerkoopPrijsBerekening = ##class(DOM.VKP.impl.VanHoeckeVoorHaluxBerekening).%New()
}
ElseIf (BerekeningsSpecificatie.GeefPersonality() = ##class(DOM.common.VanHoeckePersonality).Instance())
{
Set VerkoopPrijsBerekening = ##class(DOM.VKP.impl.VanHoeckeBerekening).%New()
}
Quit VerkoopPrijsBerekening.GeefVerkoopPrijsInfo(ProductID, BasisPrijs, BerekeningsSpecificatie)
]]>
ResultSet:%ResultSet
1
DOM.VKP.impl.VerkoopPrijzen