Freigabe für Leistungerfassung

In Vertec gibt es die Möglichkeit, Leistungen periodenweise freizugeben. Dies erleichtert die Übersicht bei der Rechnungsstellung, da sichtbar wird, ob alle Leistungen bereits erfasst wurden. Ausserdem kann die Erfassung von Leistungen (Spesen und Auslagen) im angegebenen Zeitraum gesperrt werden, sobald dafür eine Freigabe besteht.

Für die Freigaben gibt es einen Linktyp Bearbeiter – Freigaben. Dieser ist standardmässig inaktiv. Wenn Sie mit Freigaben arbeiten möchten, können Sie diesen Linktyp auf aktiv stellen.

Freigaben werden direkt auf dem Bearbeiter erfasst über Neu > Freigabe. Es öffnet sich folgende Eingabemaske:

Ist in den Systemeinstellungen > Projekt/Mandat die Option Sperren durch Benutzer-Freigaben aktiviert, ist die Erfassung von neuen Leistungen, Spesen und Auslagen, welche in der Periode der Freigabe liegen, gesperrt, sobald der Bearbeiter ein Häkchen bei Freigegeben durch Bearbeiter setzt.

Jeder Freigabe kann ein zweiter Bearbeiter zugeordnet werden, die sogenannte Fremdperson. Ist diese zugeordnet, kann sie das Häkchen bei Freigegeben durch Fremdperson setzen. Diese Option kann beispielsweise durch den Teamleiter verwendet werden, um die Leistungserfassung der Teammitglieder freizugeben.

Freigaben sind eigenständige Objekte in Vertec. Somit können sie in Ordnern und Listen angezeigt und gefiltert werden. Man könnte zum Beispiel bei allen Teamleitern einen Ordner anzeigen, in dem die Freigaben von Teammitgliedern angezeigt werden, welche der Teamleiter noch freigeben muss. Oder in einem Ordner alle Bearbeiter anzeigen, die an einem bestimmten Datum noch keine Freigabe gemacht haben. So kann ein Workflow aufgebaut werden für das Controlling der Leistungserfassung.

Zugriff via OCL

Freigaben sind Objekte des Typs Freigabe (UserEintrag) und haben folgende Attribute:

  • von: Date
  • bis: Date
  • bearbeiter: Projektbearbeiter
  • freigabeSelbst: Boolean
  • freigabeSelbstDatum: DateTime
  • anderer: Projektbearbeiter
  • freigabeAnderer: Boolean
  • freigabeAndererDatum: DateTime

Auf dem Projektbearbeiter kann man über eigeneFreigaben bzw. fremdFreigaben auf die Freigaben zugreifen.

Freigabeordner - Workflowbeispiele

Bearbeiter, welche keine Freigabe mit bis-Datum per Stichtag haben

  • SQL-Ordner
  • Klasse: Projektbearbeiter
  • Abfragefelder: Stichtag (Datum)
  • Expression Firebird:
    bold_id NOT IN (SELECT bearbeiter FROM freigabe WHERE ((CAST(bis as Date) = CAST('\1' as Date))))
  • Expression MSSQL-Server:
    bold_id NOT IN (SELECT bearbeiter FROM freigabe WHERE CAST(bis as date) = CAST(CAST('\1' as datetime) as date))

Ordner auf dem Teamleiter, in welchem die Freigaben von Teammitgliedern angezeigt werden, welche der Teamleiter noch freigeben muss

  • Wrapper-Link-Typ
  • Expression:
    team->select(aktiv).eigenefreigaben->select(freigabeselbst and (not freigabeanderer))->select(anderer = self)

    Constraint, der sicherstellt, dass die Fremdperson (falls gesetzt) der Teamleiter (falls gesetzt) ist

    • OCL-Expression:
      if ((anderer->notempty) and (bearbeiter.teamleiter->notempty)) then anderer = bearbeiter.teamleiter else 1 = 1 endif

      Spaltenexpressions auf Bearbeiterlisten

      • Bis wann hat der Bearbeiter seine Leistungen selber freigegeben: eigenefreigaben->orderby(bis)->last.bis
      • Datum der letzten eigenen Freigabe gemäss bis-Datum: eigenefreigaben->orderby(bis)->last.freigabeselbstdatum
      • Periode der letzten eigenen Freigabe gemäss bis-Datum: if eigenefreigaben->size>0 then eigenefreigaben->orderby(bis)->last.von.asstring + ' - ' + eigenefreigaben->orderby(bis)->last.bis.asstring else '' endif

      OCL-Expressions

      • Alle Freigaben, die von der Fremdperson noch nicht freigegeben sind: freigabe->select(not freigabeanderer)

      16.07.2012 | 20.11.2013: Bearbeiter, welche keine Freigabe mit bis-Datum per Stichtag haben: Expression nach Firebird und MSSQL-Server aufgeteilt, Expression Firebird vereinfacht.
      Produktlinien: Expert
      Module: Leistung & CRM