P: Derived Attributes
Derived Attributes von Klassen mit "P"
Leistung & CRM
Budget & Teilprojekt
Fremdkosten
Ressourcen & Projektplanung
Business Intelligence
Erzeugt: 24.11.2006
Aktualisiert: 10.12.2019
|
Waehrung bei Projektbearbeiter hinzugefügt.
Eine Auflistung aller Derived Attributes finden Sie im Artikel Derived Attributes.
- erstellt: DateTime.wird auf dieser Ebene nicht verwendet. Statt dessen muss auf
CreationDateTime
zugegriffen werden.
- geaendert: DateTime.wird auf dieser Ebene nicht verwendet. Statt dessen muss auf
ModifiedDateTime
zugegriffen werden.
- whereClause: VtcString
-
- Formatiert die Datumsabfrage gemäss Usereingaben.
- minuten: integer.Berechnet die Differenz zwischen von und bis eines Präsenzeintrags in Minuten: = Round((bis - von) * 60 * 24)
-
- AllePhasen: ObjectList.
- Gibt alle Phasen UND alle Subphasen von Phasen des Projekts zurück.
- Dieses Member ist ab Vertec 6.3 nicht mehr derived, sondern persistent.
- AuslagenWeiterleiten: boolean.
- 1.
xAuslagenWeiterleiten
, falls gesetzt.
- 2. sonst: falls
Rechnungsadresse
vorhanden, Weiterleiten
von dort nehmen:Rechnungsadresse.AuslagenWeiterleiten.AsBoolean;
- 3. sonst: false.
- Auslagetypen: ObjectList.Liste von allen aktiven Auslagetypen, die auf den aktuellen Projekttyp passen.
- DatenbankFibu: VtcString.
xDatenbankFibu
ist gesetzt: Projekt hat einen eigenen Datenbank-Pfad angegeben. Nehme diesen.
- sonst: Hole den Wert vom Projekttyp.
- falls auch da nicht gefunden: Hole den Wert aus den System-Property:TProperty.PropertyByName(
DatenbankFibu
).AsString
- sonst: Leerstring.
- DebitorKonto: VtcString.
xDebitorKonto
, falls gesetzt.
- sonst: vom Projekttyp
- DebiKondition: ObjectReference.
- xDebiKondition, falls gesetzt
- sonst kunde.xDebiKondition, falls gesetzt
- sonst vom projekttyp.xDebiKondition, falls gesetzt
- sonst Systemeinstellung.
- dokpfad: VtcString.
- wenn xDokPfadgesetzt:
- ist der Pfad absolut, wird er so verwendet
- sonst: RootDokPfad (Dokumentenpfad in Systemeinstellungen) + xDokpfad.
- wenn xDokPfadnicht gesetzt:
- wenn Projekt-Dokumentenpfad in Systemeinstellungen gesetzt:
- ist der Pfad absolut, wird er so verwendet
- sonst: RootDokPfad + Projekt-Dokumentenpfad
- wenn Projekt-Dokumentenpfad nicht gesetzt:
- Illegale Characters werden durch '-' ersetzt.
- ErtragsKontoAuslagen: VtcString.
- 1.
xErtragsKontoAuslagen
, wenn gesetzt. Sonst:
- 2. Von Projekttyp holen
- ErtragskontoLeistungen: VtcString.
- 1.
xErtragskontoLeistungen
, wenn gesetzt. Sonst:
- 2. Von Projekttyp holen
- ErtragskontoSpesen: VtcString.
- 1.
xErtragskontoSpesen
, wenn gesetzt. Sonst:
- 2. Von Projekttyp holen
- ExtAdressName: VtcString.
- Gibt den AdressNamen der externen Adresse, falls eine angehängt ist (ExtAdressReferenz).
- Falls es keine externe Adresse hat: Leerstring.
- ExtAdressText: VtcString.
- Gibt den AdressText der externen Adresse, falls eine angehängt ist (ExtAdressReferenz).
- Falls es keine externe Adresse hat: Leerstring.
- KundenAdressName: VtcString.
- Falls Kunde angegeben, den Namen von dort nehmen:Kunde.AsString
- sonst: ExtAdressName.AsString
- sonst: Leerstring.
- KundenAdressText: VtcString.
- 1. Falls
Kunde
gesetzt, den Adresstext von dort nehmen: Kunde.Adresstext.AsString
.
- 2. sonst: ExtAdresstext.AsString
- 3. sonst: Leerstring.
- LeistSums: ObjectList.Die Berechnung dieser Summenliste ist von verschiedenen Werten auf Leistung, Phase und Rechnung abhängig. Attributes von denen die Summen abhängen:Leistung: MinutenInt, xMinutenExt, AnsatzKosten, xWertExt, WertInt, pauschal, IsStueckLeistung, VerrMinutenExt, VerrWertExt, Projekt, Phase, RechnungPhase: verrechenbar, pauschal, abgeschlossen, PlanWertExtRechnung: Rabatt, RabattProzent, RabattBetrag
- LoginFibu: VtcString.
xLoginFibu
ist gesetzt: Projekt hat einen eigenen Datenbank-Pfad angegeben. Nehme diesen.
- sonst: Hole den Wert vom Projekttyp
- falls auch da nicht gefunden: Hole den Wert aus den System-Property:TProperty.PropertyByName(
LoginFibu
).AsString
- sonst: Leerstring.
- MWSTCodeLeistungen: VtcString.
- Wenn es einen
MWSTTypLeistungen
angehängt hat, nehne den Code von diesem.TMWSTTyp(MWSTTypLeistungen.BoldObject).Code.AsString
- MWSTCodeSpesen: VtcString.
- Wenn es einen
MWSTTypSpesen
angehängt hat, nehne den Satz von diesem:TMWSTTyp(MWSTTypSpesen.BoldObject).Code.AsString
- MWSTSatzLeistungen: VtcCurrency.
- Wenn es einen
MWSTTypLeistungen
angehängt hat, nehne den Satz von diesem:TMWSTTyp(MWSTTypLeistungen.BoldObject).Satz.AsCurrency
- MWSTSatzSpesen: VtcCurrency.
- Wenn es einen
MWSTTypSpesen
angehängt hat, nehne den Satz von diesem:TMWSTTyp(MWSTTypSpesen.BoldObject).Satz.AsCurrency
- MWSTTypAuslagen: ObjectReference.
- 1.
xMWSTTypAuslagen
, falls gesetzt
- 2. Sonst vom Projekttyp holen, falls gesetzt
- 3. Muss den MWST-Typ übers Sytem holen. Je nach Einstellungen im Attr. MWST:
- Normal: PropertyByName(
MWSTTypAuslagenNormal
)
- Export: PropertyByName(
MWSTTypAuslagenExport
)
- Keine: PropertyByName(
MWSTTypAuslagenKeine
)
- 4. Falls jetzt noch kein MWST-Typ gefunden, werfe eine Exception.
- MWSTTypLeistungen: ObjectReference.
- 1.
xMWSTTypLeistungen
, falls gesetzt
- 2. Sonst vom Projekttyp holen, falls gesetzt
- 3. Muss den MWST-Typ übers Sytem holen. Je nach Einstellungen im Attr. MWST:
- Normal: PropertyByName(
MWSTTypLeistungenNormal
)
- Export: PropertyByName(
MWSTTypLeistungenExport
)
- Keine: PropertyByName(
MWSTTypLeistungenKeine
)
- 4. Falls jetzt noch kein MWST-Typ gefunden, werfe eine Exception.
- MWSTTypSpesen: ObjectReference.
- 1.
xMWSTTypSpesen
, falls gesetzt
- 2. Sonst vom Projekttyp holen, falls gesetzt
- 3. Muss den MWST-Typ übers Sytem holen. Je nach Einstellungen im Attr. MWST:
- Normal: PropertyByName(
MWSTTypSpesenNormal
)
- Export: PropertyByName(
MWSTTypSpesenExport
)
- Keine: PropertyByName(
MWSTTypSpesenKeine
)
- 4. Falls jetzt noch kein MWST-Typ gefunden, werfe eine Exception.
- PasswordFibu: VtcString.
xPasswordFibu
ist gesetzt: Projekt hat einen eigenen Datenbank-Pfad angegeben. Nehme diesen.
- sonst: Hole den Wert vom Projekttyp
- falls auch da nicht gefunden: Hole den Wert aus den System-Property:TProperty.PropertyByName(
PasswordFibu
).AsString
- sonst: Leerstring.
- Personenkonto: VtcString.
- 1.
xPersonenkonto
, falls gesetzt. Sonst:
- 2. wenn
xRechnungsadresse
zugeordnet ist und diese ein Personenkonto hat:= xRechnungsAdresse.PersonenKonto.AsString
- 3. wenn
Kunde
zugeordnet und dieser ein Personenkonto hat:= TAdresseintrag(kunde).Personenkonto.AsString
- 4. Sonst: Leerstring.
- PlanAuslagenWert: VtcCurrency.
- 1.
xPlanAuslagenWert
, falls gesetzt. Sonst:
- 2. summiert
PlanAuslagenWert
auf allen angehängten Phasen.
- 3. Falls keine Phasen definiert sind: 0.
- PlanKostenAuslagen: VtcCurrency.
- 1.
xPlanKostenAuslagen
, falls gesetzt. Sonst:
- 2. summiert
PlanKostenAuslagen
auf allen angehängten Phasen.
- 3. Falls keine Phasen definiert sind: 0.
- PlanKostenLeistung: VtcCurrency.
- 1.
xPlanKostenLeistung
, falls gesetzt. Sonst:
- 2. summiert
PlanKostenLeistung
auf allen angehängten Phasen.
- 3. Falls keine Phasen definiert sind: 0.
- PlanKostenSpesen: VtcCurrency.
- 1.
xPlanKostenSpesen
, falls gesetzt. Sonst:
- 2. summiert
PlanKostenSpesen
auf allen angehängten Phasen.
- 3. Falls keine Phasen definiert sind: 0.
- PlanMinutenInt: integer.
- 1.
xPlanMinutenInt
, falls gesetzt. Sonst:
- 2. summiert
PlanMinutenInt
auf allen angehängten Phasen.
- 3. Falls keine Phasen definiert sind: 0.
- PlanSpesenWert: VtcCurrency.
- 1.
xPlanSpesenWert
, falls gesetzt. Sonst:
- 2. summiert
PlanSpesenWert
auf allen angehängten Phasen.
- 3. Falls keine Phasen definiert sind: 0.
- PlanWertExt: VtcCurrency.
- 1.
xPlanWertExt
, falls gesetzt. Sonst:
- 2. summiert
PlanWertExt
auf allen angehängten Phasen.
- 3. Falls keine Phasen definiert sind: 0.
- Projekttyp: ProjektTyp (Valueset).
- Rechnungsadresse: ObjectReference.Bestimmt Rechnungsadresse (vor allem für Adresssynchronisation mit Buchhaltung):
xRechnungsadresse
, falls gesetzt.
- Sonst:
kunde
.
- RechnungsAdressText: VtcString.
ExtAdressText.AsString
, falls vorhanden.
- Sonst: Rechnungsadresse, nehme default adresstext:Defaultadresse.AdressText.AsString
- RechnungsBriefanrede: ObjectReference.
- Ist Externe Adresse zugeordnet (ExtAdressText.AsString <> ''): nehme das im Link-Interface als
Briefanrede
definierte String-Objekt.
- sonst auf der Rechnungsadresse:rechnungsadresse.Briefanrede.AsString
- RechnungsGrussformel: VtcString.
- Ist Externe Adresse zugeordnet (ExtAdressText.AsString <> ''): nehme das im Link-Interface als
Grussformel
definierte String-Objekt.
- sonst auf der Rechnungsadresse:rechnungsadresse.Grussformel.AsString
- Spesentypen: ObjectList.Liste von allen aktiven Spesentypen, die auf den aktuellen Projekttyp passen.
- SumAuslagenWert: VtcCurrency.
- summiert
WertExt
von allen offenen und verrechneten Auslagen.
- SumKostenAuslagen: VtcCurrency.Summiert
WertKosten
von allen offenen und verrechneten Auslagen des Projekts.
- sumKostenSpesen: VtcCurrency.
- summiert
WertKosten
von allen offenen und verrechneten Spesen.
- SumLeistungWertInt: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
- summiere
WertIntOffen
+ WertIntVerrechnet
auf allen LeistSums.
- sonst: summiere
WertInt
von allen Leistungen, die auf einer Rechnung sind (egal ob verrechnet oder nicht).
- SumLeistungWertKosten: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
- summiere
WertKostenVerrechnet
+ WertKostenOffen
auf allen LeistSums.
- sonst:
WertKosten
auf den offenen und verrechneten Leistungen summieren.
- SummeOffeneLeistungen: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
- summiere
WertExtOffen
auf allen LeistSums.
- sonst: summiere
WertExt
von allen offenen Leistungen.
- SummeOffeneSpesen: VtcCurrency.
- summiert
WertExt
von allen offenen Spesen.
- SummeOffeneVorschuesse: VtcCurrency.
- Summe
BetragOffen
von allen Vorschüssen
- SumMinutenInt: integer.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
- summiere
MinutenIntOffen
+ MinutenIntVerrechnet
auf allen LeistSums.
- sonst: summiere
MinutenInt
von allen offenen und verrechneten Leistungen.
- SumSpesenWert: VtcCurrency.Summiert
WertExt
von allen offenen und verrechneten Spesen.
- SumSpesenWertRech: VtcCurrency.
- summiere
WertExt
von allen Spesen, die auf einer Rechnung sind (egal ob verrechnet oder nicht).
- SumWertExt: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
- summiere
WertExtOffen
+ WertExtVerrechnet
auf allen LeistSums.
- sonst: summiere
WertExt
von allen offenen und verrechneten Leistungen.
- SumWertExtRech: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
- summiere
WertExtOffen
+ WertExtVerrechnet
auf allen LeistSums.
- sonst: summiere
WertExt
von allen Leistungen, die auf einer Rechnung sind (egal ob verrechnet oder nicht).
- Taetigkeiten: ObjectList.Liste von allen aktiven Tätigkeiten, die auf den aktuellen Projekttyp passen.
- UseDebitoren: boolean.Attribut wird nicht mehr verwendet.
- VorschussKonto: VtcString.
- 1.
xVorschussKonto
, wenn gesetzt. Sonst:
- 2. Vom Projekttyp holen.
- Zahlungstyp: ObjectReference. Das Objekt ist vom Typ Zahlungstyp.
- 1. xZahlungstyp, wenn gesetzt, sonst:
- 2. Zahlungstyp vom Projekttyp.
- BeschaeftigungsGrad: float.
- 1. Wenn
xWochensollzeit
oder xWtage
gesetzt sind, wird der Beschaeftigungsgrad berechnet:
- Berechnet den Wert als Verhältnis zwischen WochenSollzeit und Property Wochensollzeit:
WochenSollzeit / globWochenSollZeit * 100
- falls ausrechnen nicht möglich, weil Property nicht gesetzt: 100.
- 2. sonst:
xBeschaeftigungsgrad
, falls vorhanden.
- 3. sonst: 100.
- BriefName: VtcString.
xBriefname
, falls gesetzt. Sonst:
- falls kein xBriefname, dann ist es Stringrep(3) = externer Name: GetStringRepresentation(3)
- ErfProjekte: ObjectList.Gibt die Projekte zurück, auf denen dieser Bearbeiter Leistungen erfassen darf.
- Ist die Systemeinstellung
Bearbeiter muessen bei Projekt zugeordnet werden
auf 'JA':
- nehme alle aktiven Projekte der Liste
bearbProjekte
.
- sonst: alle Projekte.
- RootEintraege: ObjectList.Liste aller Root-Objekte, die der angemeldete Benutzer sehen kann.
- SortierteJahre: ObjectList.
- Gibt die BearbeiterJahre aus
jahre
sortiert nach Jahr zurück.
- TagesSollZeit: integer.
- Waehrung: ObjectReference.
- 1.
xWaehrung
, falls gesetzt
- 2. sonst Leitwährung
- WochenSollZeit: integer.
- 1. Wenn
xWTage
gesetzt ist: Tagessollzeiten summieren.
- 2.
xWochensollzeit
, falls vorhanden.
- 3. Wochensollzeit wird berechnet:Wert aus Property 'WochenSollZeit' * BeschaeftigungsGrad / 100
Die folgenden Attribute werden auf der Klasse BearbeiterJahr
berechnet. Für die Werte hier auf dem Projektbearbeiter wird jeweils das entsprechende Jahr genommen:
- WTage: VtcString.
- UeberzeitSaldo: integer.
- UeberzeitSaldo1,..., UeberzeitSaldo12: integer.
- Ferien: integer.
- Feriensaldo: integer.
- FerienSaldo1,..., FerienSaldo12: integer.
- Gemeinkosten: VtcCurrency.
- Lohn: VtcCurrency.
LinkKlasse zwischen Projekten und Berichten.
- BerichtName: VtcString.
- StringRepresentation des Berichts, der über den Link
berichte
angehängt ist.
- Ertragskonto: VtcString.
- Eintrag ist verrechnet: verrErtragskonto.
- Eintrag ist offen: Konto wird berechnet:
- xErtragskonto.
- Ertragskonto des Bearbeiters.
- Ertragskonto des Typs.
- Ertragskonto der Phase
- Ertragskonto des Projekts.
- Ertragskonto des Projekttyps
- Ertragskonto der Systemeinstellungen. Dies wird jedoch von den Subklassen des ProjektEintrags (Leistungen, Spesen, Auslagen) erledigt.
- Kostenstelle: VtcString.
- Eintrag ist verrechnet: verrKostenstelle.
- Eintrag ist offen: Konto wird berechnet:
- xKostenstelle.
- Kostenstelle des Bearbeiters.
- Kostenstelle des Typs.
- Kostenstelle der Phase
- Kostenstelle des Projekts.
- Konnte nichts ermitteln: Leerstring.
- Kurs: float.Kurs zur Leitwaehrung berechnen
- wenn 'Waehrung angegeben ist:
- berechnet den Kurs von dieser Währung zur Leitwährung.
- sonst: 1.
- LohnArt: VtcString.
- Wenn
Typ
angegeben ist:Typ.LohnArt.AsString
- sonst: Leerstring.
- MWSTBetrag: VtcCurrency.
- Wird auf den Subklassen AuslageBase und Leistung berechnet.
- MWSTCode: VtcString.
- Eintrag ist verrechnet:
verrMWSTCode
.
- Eintrag ist offen:
- wenn es einen
MWSTTyp
zugeordnet hat, nehme den Code
von diesem.
- MWSTSatz: VtcCurrency.
- Eintrag ist verrechnet:
verrMWSTSatz
.
- Eintrag ist noch offen, berechne den MWST-Satz aus dem MWST-Typen.
- MWSTTyp: ObjectReference.MWST-Typ dieses Projekteintrags. Reihenfolge der Berechnung:
- xMWSTTyp <> nil.
- MWSTTyp des Bearbeiters <> nil.
- MWSTTyp des ProjektEintragsTypes <> nil.
- MWSTTyp des Projekts.
- Werfe eine Exception, falls der MWSTTyp nicht berechnet werden kann.
Der MWST-Typ wird immer berechnet, auch nach der Verrechnung. Die derr. Attr. MWSTSatz
und MWSTCode
beziehen ihre Werte nach der Verrechnung nicht mehr von MWSTTyp, sondern von den internen Werten verrMWSTSatz und verrMWSTCode.
- PhasenLookup: ObjectList.
- Hat es ein Projekt?
- Hole auf diesem Projekt alle Phasen für den angegebenen User.
- PhasenLookupRestricted: ObjectList.
- Hat es ein Projekt?
- Hole auf diesem Projekt alle Phasen, die zum angegebenen
Typ
und dem angegenen User passen.
- TypText: VtcString.Gibt den Text des Typs zurück, in der Projekt-Sprache.
- Wenn es einen Typ und ein Projekt hat:
- Typ.Text in der Projekt.Sprache
- sonst: Leerstring.
- UmrechnungsDatum: DateTime.
- Nehme das Datum des Eintrags als Default:= Datum.AsDateTime
Subklassen können diese Methode "überschreiben", wenn sie damit nicht einverstanden sind (geschieht bei VerrechneteLeistung).
- Verrechnet: boolean.Wird auf den Subklassen
Spesen
, OffeneAuslage
, VerrechneteAuslage
und Leistung
berechnet.
- Waehrung: ObjectReference.
- Bei offenen Projekteinträgen ist die Währung die Währung des Projektes:= GetProjekt.Waehrung.
- sonst: nil.
- WertExt: VtcCurrency.
- Wird auf den Subklassen
AuslageBase
, Auslage
, OffeneLeistung
und VerrechneteLeistung
berechnet.
- WertExtLW: VtcCurrency.
- wenn
Waehrung
angegeben ist:
- 'WertExt wird in Leitwährung umgerechnet
- sonst:
WertExt
.
- ArtikelNr: VtcString.Wird auf den Subklassen
AuslageBaseTyp
und Taetigkeit
berechnet.
- Aktiv: boolean.
- Auslagen: ObjectList.
- Liste von allen offenen und verrechneten Auslagen der Phase.
- AuslagenWeiterleiten: boolean.
xAuslagenWeiterleiten
, falls gesetzt.
- Sonst: bei Projekt nachschauen. Falls Projekt vorhanden:
AuslagenWeiterleiten
des Projekts.
- Sonst: false.
- AuslageTypenLookup: ObjectList.
- Wenn es ein Projekt hat, nimm alle aktiven Auslagetypen, die zum Projekttyp des Projekts passen.
- EndDatum: DateTime.
xEndDatum
, falls gesetzt.
- Sonst: berechne EndDatum aus EndDaten von TaetigkeitphaseLinks:
- Hole die Liste von allen angehängten taetigkeitphaseLink und nehme das jüngste
EndDatum
auf diesen Links, das es hat.
- wenn es keine Enddatümer hat: SetToNull.
- Leistungen: ObjectList.
- Liste von allen offenen und verrechneten Leistungen der Phase.
- maxPlanWertLeist: VtcCurrency.
xmaxPlanWertLeist
, falls vorhanden.
- sonst: summiere
maxPlanWertLeist
von allen Subphasen.
sonst: 0.
- maxPlanWertSpesen: VtcCurrency.
xmaxPlanWertSpesen
, falls vorhanden.
- sonst: summiere
maxPlanWertSpesen
von allen Subphasen.
sonst: 0.
- minPlanWertLeist: VtcCurrency.
xminPlanWertLeist
, falls vorhanden.
- sonst: summiere
minPlanWertLeist
von allen Subphasen.
- minPlanWertSpesen: VtcCurrency.
xminPlanWertSpesen
, falls vorhanden.
- sonst: summiere
minPlanWertSpesen
von allen Subphasen.
sonst: 0.
- PlanAuslagenWert: VtcCurrency.
xPlanAuslagenWert
, falls vorhanden.
- sonst: summiere
PlanAuslagenWert
von allen Subphasen.
sonst: 0.
- PlanKostenAuslagen: VtcCurrency.
xPlanKostenAuslagen
, falls vorhanden.
- sonst: summiere
PlanKostenAuslagen
von allen Subphasen.
sonst: 0.
- PlanKostenLeistung: VtcCurrency.
xPlanKostenLeistung
, falls vorhanden.
- sonst: summiere
PlanKostenLeistung
von allen Subphasen.
sonst: 0.
- PlanKostenSpesen: VtcCurrency.
xPlanKostenSpesen
, falls vorhanden.
- sonst: summiere
PlanKostenSpesen
von allen Subphasen.
sonst: 0.
- PlanMinutenInt: integer.
xPlanMinutenInt
, falls vorhanden.
- sonst: summiere
PlanMinutenInt
von allen Subphasen.
sonst: 0.
- PlanSpesenWert: VtcCurrency.
xPlanSpesenWert
, falls vorhanden.
- sonst: summiere
PlanSpesenWert
von allen Subphasen.
sonst: 0.
- PlanWertExt: VtcCurrency.
xPlanWertExt
, falls vorhanden.
- sonst: summiere
PlanWertExt
von allen Subphasen.
sonst: 0.
- Spesen: ObjectList.
- Liste von allen offenen und verrechneten Spesen der Phase.
- SpesenTypenLookup: ObjectList.
- Wenn es ein Projekt hat, nimm alle aktiven SpesenTypen, die zum Projekttyp des Projekts passen.
- SumAuslagenWert: VtcCurrency.
- summiere
WertBudget
auf allen Auslagen, und zähle SumAuslagenWert
von den Subphasen dazu.
- SumAuslagenWertInt: VtcCurrency.
- summiere
WertInt
auf allen Auslagen, und zähle SumAuslagenWertInt
von den Subphasen dazu.
- SumKostenAuslagen: VtcCurrency.
- summiere
WertKosten
auf allen Auslagen, und zähle SumKostenAuslagen
von den Subphasen dazu.
- SumKostenLeistung: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
leistsums
Attribute von Projekt holen.
- summiere
WertKostenOffen
+ WertKostenVerrechnet
auf allen LeistSums.
- sonst:
WertKosten
der offenen und verrechneten Leistungen auf der Phase summieren, und die SumKostenLeistung
auf den Subphasen dazuzählen.
- SumKostenSpesen: VtcCurrency.
- summiere
WertKosten
auf allen Spesen, und zähle SumKostenSpesen
von den Subphasen dazu.
- SumLeistungWertInt: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
leistsums
Attribute von Projekt holen.
- summiere
WertIntVerrechnet
+ WertIntOffen
auf allen LeistSums.
- sonst:
WertInt
der offenen und verrechneten Leistungen auf der Phase summieren, und die SumLeistungWertInt
auf den Subphasen dazuzählen.
- SumMinutenInt: integer.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
leistsums
Attribute von Projekt holen.
- summiere
MinutenIntOffen
+ MinutenIntVerrechnet
auf allen LeistSums.
- sonst:
MinutenInt
der offenen und verrechneten Leistungen auf der Phase summieren, und die SumMinutenInt
auf den Subphasen dazuzählen.
- SumMinutenIntOffen: integer.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
leistsums
Attribute von Projekt holen.
- summiere
MinutenIntOffen
auf allen LeistSums.
- sonst:
MinutenInt
der offenen Leistungen auf der Phase summieren, und die SumMinutenIntOffen
auf den Subphasen dazuzählen.
- SumSpesenWert: VtcCurrency.
- summiere
WertExt
auf allen Spesen, und zähle SumSpesenWert
von den Subphasen dazu.
- SumSpesenWertInt: VtcCurrency.
- summierte
WertInt
von allen Spesen und den Spesen der angehängten Subphasen.
- SumSpesenWertRech: VtcCurrency.
- Falls Phase pauschal:
- Wenn es eine Rechnung hat, den Pauschalwert verwenden:= PlanSpesenWert
- sonst: Pauschalphase ohne Rechnung -> 0
- Falls Phase nicht pauschal:summiere
WertExt
von allen Spesen, die auf einer Rechnung sind (egal ob verrechnet oder nicht), und zähle SumSpesenWertRech
von allen Subphasen hinzu.
- SumWertExt: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
leistsums
Attribute von Projekt holen.
- summiere
WertExtOffen
+ WertExtVerrechnet
auf allen LeistSums.
- sonst:
WertExt
der offenen und verrechneten Leistungen auf der Phase summieren, und die SumWertExt
auf den Subphasen dazuzählen.
- SumWertExtOffen: VtcCurrency.
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
leistsums
Attribute von Projekt holen.
- summiere
WertExtOffen
auf allen LeistSums.
- sonst:
WertExt
der offenen Leistungen auf der Phase summieren, und die SumWertExtOffen
auf den Subphasen dazuzählen.
- SumWertExtRech: VtcCurrency.
- Falls Phase pauschal:
- Wenn es eine Rechnung hat, den Pauschalwert verwenden:= PlanWertExt
- sonst: Pauschalphase ohne Rechnung -> 0
- Falls Phase nicht pauschal:
- Wenn Systemeinstellung "Für Summenattribute beschleunigte Summierung verwenden" (nur Versionen vor 6.0) auf
JA
dann:
leistsums
Attribute von Projekt holen.
- summiere
WertExtOffen
+ WertExtVerrechnet
auf allen LeistSums.
- sonst: summiere
WertExt
der offenen und verrechneten Leistungen, die auf einer Rechnung sind, und zähle die SumWertExtRech
auf den Subphasen dazu.
- StartDatum: DateTime.
xStartDatum
, falls gesetzt.
- Sonst: berechne Startdatum aus Startdaten von TaetigkeitphaseLinks:
- Hole die Liste von allen angehängten taetigkeitphaseLink und nehme das älteste
StartDatum
auf diesen Links, das es hat.
- wenn es keine Startdaten hat: SetToNull.
- TaetigkeitenLookup: ObjectList.
- Wenn es ein Projekt hat, nimm alle aktiven Taetigkeiten, die zum Projekttyp des Projekts passen.
- verrechnet: boolean.
- 1. Hat es eine verrechnete Parentphase:parentphase.verrechnet.AsBoolean;
- 2. Nur Pauschalphase kann von sich aus verrechnet sein: Wenn
pauschal
oder pauschalSpesen
oder pauschalAuslagen
, dann gilt:
- wenn es eine Rechnung hat und diese verrechnet ist, gilt: true.
- In allen anderen Fällen: false.
Bei den derived Attributes auf Projekttyp handelt es sich um cascading Attributes. Alle haben ein dazugehöriges x-Attribute. Wenn der Wert auf Projekttyp nicht gesetzt ist, dann wird er aus den Systemeinstellungen genommen.
Das Projekt verwendet die Werte vom Projekttyp. Die Attribute sind die folgenden, die Systemproperties heissen normalerweise gleich wie das Attribut (ausser bei Mwsttyp):
- ErtragsKontoLeistungen
- ErtragsKontoSpesen
- ErtragsKontoAuslagen
- DebitorKonto
- VorschussKonto
- MwstTyp (-> Property MWSTTypDefault)
- DebiKondition
- DatenbankFibu
- LoginFibu
- PasswordFibu