RosettaCodeData/Task/Object-serialization/Cache-ObjectScript/object-serialization-2.cos

26 lines
535 B
Plaintext

Class Serialize.Worker Extends Employee
{
Method %OnNew(ByRef pId As %Integer = 0, pDepartment As %String, pName As %String, pHourlyPay As %Numeric) As %Status
{
Do ..HourlyPaySet(pHourlyPay)
Quit ##super(.pId, pDepartment, pName)
}
Method Print()
{
Do ##super()
Write "- Hourly Pay: ", $FNumber(..HourlyPayGet(), ",", 2), !
Quit
}
Method HourlyPaySet(pHourlyPay As %Numeric) As %Status [ ServerOnly = 1 ]
{
Set i%HourlyPay=$Select(pHourlyPay<0: 0, 1: pHourlyPay)
Quit $$$OK
}
Property HourlyPay As %Numeric [ Private ];
}