Lade...
 

CX_SCHEDULE - Termin

CX_SCHEDULE

Klassenhierarchie
Beschreibung:

Mit einem Objekt dieser Klasse kann ein Termin verwaltet werden.

Diese Klassen sind zeitgebundene Container, sie beschreiben 
termingebundene Vorgänge. Sie kennen daher die Zeitdimension
und können in dieser hierarchisieren und organisieren.

Mit einem CX_SCHEDULE beschreibt man
etwas, was zu einem bestimmten DAYTIME passiert ist, passieren 
soll oder wird. Mit CX_SCHEDULED_TRANSACTION kann direkt eine
Transaktion angegeben werden. CX_CALENDAR trägt der Tatsache Rechnung, 
dass periodische oder zeitlich andauernde Vorgänge in sich unterteilbar
sind, daher auch zeitliche Sub-Vorgänge beinhalten können.


CX_SCHEDULE
Zeitlicher Vorgang. scheduleTypeEnum bestimmt Typ (abgleichen mit Typ
HOLIDAY, VACATION, ... in cxbsystm !).

Der zeitliche Zustand des Vorganges wird in scheduleStatusEnum gehalten.

dayTime bestimmt die zeitliche Dimension des Vorganges.

links dazu da, um den gleichen Eintrag von verschiedenen Objekten
gemeinsam führen zu können. (z.B. Workgroup-Period(Kalender))


CX_CALENDAR
Mittels mainPeriod und subPeriods Hierarchisierung eines Kalenders.
Insbesondere für Geschäftsperioden. Wenn mainPeriod == NULL, dann oberste
"Verwaltungs"-Periode, dann auch dayTime = NULL.

CX_ACCOUNT_PERIOD
Periodenabhängige Nummern, Journalseiten (eventuell auch in ACCOUNT_DOMAIN),
Journalsaldo, etc.


CX_STATE_PERIOD
monitors und controls (??)


CX_SCHEDULED_TRANSACTION
Einerseits um best. Transaktionen zur zukünftigen Abarbeitung in einem
Kalender festzuhalten, zum anderen um durchgeführte Transaktionen terminlich
geordnet führen zu können


OFFEN:
======

GenerateSubPeriods(durationUnit, classID): 
Einsetzen Wochen unterhalb von Monaten. Automatisches Drüber/Druntersetzen
von Perioden, z.B. Quartale einsetzen nachdem Monate bereits eingesetzt
wurden.
LookUpDate(date) führt dazu, dass 1. Eintrag (zB Januar) nicht erscheint.
Wahrscheinlich CX_SPAN_DATE::Compare() falsch !


GEÄNDERT
==
termEnum -> scheduleTypeEnum
termStatusEnum -> scheduleStatusEnum
periods -> links

 

Code-Beispiel:
...
Methodenverzeichnis (MDI)
Funktion MA* Parameter Rückgabe Kurzbeschreibung
After   OBJECT, INTEGER OBJECT Test, ob dieser Termin nach einem anderen liegt
Before   OBJECT, INTEGER OBJECT Test, ob dieser Termin vor einem anderen liegt
Comprise   OBJECT OBJECT Prüfen, ob ein Datum im Termin enthalten ist
EarliestTerm   INTEGER OBJECT Prüfen des Datums des Termins
Encompassed   OBJECT INTEGER "Enthalten in"-Test
EndTerm     OBJECT Ende des Termins
LatestTerm   INTEGER OBJECT Prüfen des Datums des Termins
Predecessor   COLLECTION, INTEGER OBJECT Sucht aus einer Menge von Terminen den Vorgänger zum angegebenen Termin
SanityCheck     INTEGER Prüfung auf Konsistenz des Objektes
SetTermStatus   INTEGER   Status des Termins setzen
StartTerm     OBJECT Beginn des Termins
Successor   COLLECTION, INTEGER OBJECT Sucht aus einer Menge von Terminen den Nachfolger zum angegebenen Termin
ClassFilter   STRING, INTEGER OBJECT Dieses Objekt, wenn es einer bestimmten Klasse entspricht
Deleted     INTEGER Objekt als gelöscht markiert?
Description     STRING Bezeichnung dieses Objektes
GetDomain     INTEGER Domain dieses Objektes
GetSiblings     COLLECTION Alle Siblings dieses Objektes
GetSiblings2     COLLECTION Alle Siblings dieses Objektes
GetSlotEntries     VECTORject> Rückgabe von internen Informationen zu Slots
LastUpdate     OBJECT Datum des letzten Schreibzugriffs
LastUser     INTEGER User, der zuletzt schreibend auf das Objekt zugegriffen hat
Link   OBJECT   Dieses Objekt in die Liste der Objekte mit Gültigkeit einfügen
NextValidObject     OBJECT Zeitlich nachfolgendes Gültigkeitsobjekt
PreviousValidObject     OBJECT Zeitlich vorangehendes Gültigkeitsobjekt
RestrictedValidity *     Gültigkeitsbereich eingeschränkt?
SetDomain   INTEGER, INTEGER   Domain setzen
ShortName     STRING Kurzbezeichnung dieses Objektes
Siblings *     Objekte mit Gültigkeit
SpanDateValidity *     Gültigkeitsspanne
string   INTEGER CX_STRING Liefert die String-Darstellung des Objektes
UniqueID     STRING Inhalt des festen Datenfeldes "uniqueID"
Unlink       Dieses Objekt aus der Liste der Objekte mit Gültigkeit entfernen
Unlink2       Dieses Objekt aus der Liste der Objekte mit Gültigkeit entfernen
Valid   OBJECT INTEGER Gültigkeit prüfen
ValidSince     OBJECT Beginn der Gültigkeitsspanne
ValidToday     INTEGER Heute gültig?
ValidUntil     OBJECT Ende der Gültigkeitsspanne
VerifySiblings     INTEGER Ring der Austauschobjekte prüfen

* MA = Member-Access-Funktion,
grau unterlegt = geerbte Funktion

 

Datenverzeichnis (DDI)
Datenfeld Typ Referenz-Klasse I* Kurzbeschreibung
scheduleStatusEnum ENUMCHAR     Status:
0 = angelegt
1 = wartend
2 = gestartet
3 = unterbrochen
4 = beendet
5 = aufgehoben
6 = archiviert
scheduleType INTEGER     Termintyp (Flagkombinationen möglich):
0x01 = Termin
0x02 = Gedenktag
0x04 = Feiertag
0x08 = Ferien
0x10 = Periode
0x20 = Abrechnungsjahr
term POINTER CX_TERM   Ein Termin
uniqueID STRING   * Eindeutiger Schlüssel
validity POINTER CX_VALIDITY   Gültigkeitszeitraum des Objektes

* I = Indizierbares Datenfeld,
grau unterlegt = geerbtes Datenfeld

 

Verwendung in AppsWH
Modul Kurzbeschreibung
salebase.mod Verkaufswaren Basismodul
saleedt.mod Verkaufswaren Editiermodul