TBeVacationBusinessController
TBeVacationBusinessController
Die Klasse TBeVacationBusinessController stellt Funktionen zur Ermittlung von Urlaubs-Informationen für BDE-Personen bereit.
Funktionen
Funktion | Parameter | Beschreibung |
---|---|---|
CbCreateVacationInfoMemTable Erstellt eine MemTable mit der benötigten Struktur für CbCalcVacationInfosForUsers() | aOwner:O | Owner auf welchem die MemTable erstellt werden soll |
CbCalcVactionInfo Ermittelt für eine Person deren Urlaubs-Informationen | aPersNo:N | Personal-Nummer |
CbCalcVactionInfoForDate Ermittelt für eine Person zum übergebenen Zeitpunkt deren Urlaubs-Informationen | aPersNo:N | Personal-Nummer |
aDate:D | Datum für welches die Urlaubs-Informationen ermittelt werden sollen | |
CbCalcVacationInfosForUsers Ermittelt für mehrere Personen die Urlaubs-Informationen und stellt diese in einer MemTable zur Verfügung | aMemTable:O | MemTable |
aOnlyPersNos:C | per '/' getrennte Liste von Personal-Nummern für welche die Informationen ermittelt werden sollen. Leere Eingabe entspricht allen Personen | |
aIgnorePersNos:C | per '/' getrennte Liste von Personal-Nummern für welche KEINE Informationen ermittelt werden sollen. | |
aDate:D | Datum für welches die Urlaubs-Informationen ermittelt werden sollen |
Beispiel
|oDM, oVacationBC, oVacationInfo, oMemTable|
oDM := CreateObject('TBeDbGet'),
oVacationBC := CreateObject('TBeVacationBusinessController'),
startseq
oVacationBC.CbDataModule := oDM,
// Urlaubs-Information für User 2 ermitteln
oVacationInfo := oVacationBC.CbCalcVactionInfo(2),
startseq
writeln('Urlaub für dieses Jahr: ' + Str(oVacationInfo.CbTotalDays) + ' (Resturlaub vom letzten Jahr ' + Str(oVacationInfo.CbRemainingDaysFromLastYear) + ' Tag/e)'),
writeln('Resturlaub für dieses Jahr: ' + Str(oVacationInfo.CbRemainingDays)),
writeln('Bereits genommener Urlaub: ' + Str(oVacationInfo.CbConsumptDays)),
writeln('Bereits geplanter Urlaub: ' + Str(oVacationInfo.CbScheduledDays)),
always
Destroyobject(oVacationInfo),
stopseq,
// Urlaubs-Information für Benutzer 1 bis 9 ermitteln
oMemTable := oVacationBC.CbCreateVacationInfoMemTable(oDM),
startseq
oVacationBC.CbCalcVacationInfosForUsers(oMemTable, '1/2/3/4/5/6/7/8/9', '', Now()),
Browse(, oMemTable),
always
DestroyObject(oMemTable),
stopseq,
always
DestroyObject(oVacationBC),
DestroyObject(oDM),
stopseq,