Der Chatbot hilft Ihnen bei Fragen rund um das Produkt und die Anpassbarkeit der Software. Wie bei allen AI-generierten Daten sollten die Antworten bei kritischen Informationen verifiziert werden. Nehmen Sie dafür gerne Kontakt mit uns auf. Weitere Informationen zur Verarbeitung der Chat-Daten bieten wir auf der Datenschutzseite.
Die besten Antworten liefert der Chatbot, wenn Ihr Input möglichst viele Informationen enthält. Zum Beispiel:
«Welche Apps stehen im Vertec Cloud Abo zur Verfügung?»
Das Script zeigt in einer Messagebox an, auf welcher Ebene der Stundensatz der aktuellen Leistung berechnet wurde
Standard
|
Expert
CLOUD ABO
|
ON-PREMISES
Leistung & CRM
Budget & Teilprojekt
Fremdkosten
Ressourcenplanung
Business Intelligence
Erstellt: 22.09.2014
Aktualisiert: 14.07.2020
|
Script ersetzt. Berücksichtigt nur noch aktive BearbeiterPhaseLinks analog Businesslogik.
Inhalt
Zeigt in einer Messagebox an, auf welcher Ebene der Stundensatz der aktuellen Leistung berechnet wurde. Basiert auf der Prioritätenliste gemäss Artikel Das Tarifsystem.
Version
Alle Vertec Versionen
Ausführen
Auf einer einzelnen Leistung (offen oder verrechnet)
# coding: windows-1252
#
#---Bezeichnung: Ebene Stundensatz anzeigen
# Klassen: Leistung
# CondExpression:
# ObjectScript: Y
# ContainerScript: N
# EventType: Kein
# EventClass:
# EventMembers:
# ExtendedRights: N
#---Zeigt an auf welcher Ebene der Stundensatz
#---einer Leistung berechnet wird.
#---2014-09-18, FG: erstellt.
#---2014-09-22, FG: Formatierung angepasst(Leerschläge bei der Aufzählung).
#---2014-10-29, FG: bei der Tariftabelle ansatzKosten geändert in ansatzExt
# Version = 102
#
import vtcapp
# zeigt eine MessageBox mit Kennzeichnung auf der
# Prioritätsstufe
def showPriority(stufe):
msg = "1. Priorität: Tätigkeit auf Phase"
if stufe == 1:
msg += "\t\t<----"
msg += "\n2. Priorität: Bearbeiter auf Phase"
msg += "\n\t1. Explizit gesetzter Ansatz"
if stufe == 2:
msg += "\t\t<----"
msg += "\n\t2. Gesetzte Stufe"
if stufe == 3:
msg += "\t\t<----"
msg += "\n3. Priorität: Vorgabe auf Phase"
if stufe == 4:
msg += "\t\t<----"
msg += "\n4. Priorität: Bearbeiter auf Projekt"
msg += "\n\t1. Explizit gesetzter Ansatz"
if stufe == 5:
msg += "\t\t<----"
msg += "\n\t2. Gesetzte Stufe"
if stufe == 6:
msg += "\t\t<----"
msg += "\n5. Priorität: Vorgabe auf Projekt"
if stufe == 7:
msg += "\t\t<----"
msg += "\n6. Priorität: Vorgabe auf Projekttyp"
if stufe == 8:
msg += "\t\t<----"
msg += "\n7. Priorität: Tariftabelle"
if stufe == 9:
msg += "\t\t<----"
msg += "\n8. Priorität: Vorgabe auf Bearbeiter"
if stufe == 10:
msg += "\t\t<----"
msg += "\n 9.Priorität: 0.00"
if stufe == 11:
msg += "\t\t<----"
vtcapp.msgbox(msg)
# gibt die Tariftabelle einer Leistung zurück
def getTariftabelle(leistung):
if leistung.typ:
for obj in leistung.typ.tarife:
if obj.waehrung == leistung.waehrung:
# Tariftabelle gefunden
return obj
for obj in leistung.waehrung.tarife:
if not obj.taetigkeit:
# Tariftabelle gefunden
return obj
return None
def main():
leistung = argobject
# Wenn eine Phase zugewiesen ist
if leistung.phase:
# 1. Priorität: Tätigkeit auf Phase
if leistung.typ and leistung.eval("phase.taetigkeitphaselink->select(name=self.typ.code).ansatzExt->first"):
showPriority(1)
return
# 2.1 Priorität: Bearbeiter auf Phase -> Explizit gesetzter Ansatz
if leistung.eval("phase.bearbeiterPhasen->select(aktiv)->select(bearbeiter=self.bearbeiter).ansatzext->first"):
showPriority(2)
return
# 2.2 Priorität: Bearbeiter auf Phase -> Gesetzte Stufe
if leistung.eval("phase.bearbeiterPhasen->select(aktiv)->select(bearbeiter=self.bearbeiter).bearbeiterstufe->first"):
showPriority(3)
return
# 3. Priorität: Vorgabe auf Phase
if leistung.phase.ansatzext:
showPriority(4)
return
# Wenn ein Projekt zugewiesen ist
if leistung.projekt:
# 4.1 Priorität: Bearbeiter auf Projekt -> Explizit gesetzter Ansatz
if leistung.eval("projekt.bearbeiterlinks->select(bearbeiter=self.bearbeiter).ansatzext->first"):
showPriority(5)
return
# 4.2 Priorität: Bearbeiter auf Projekt -> Gesetzte Stufe
if leistung.eval("projekt.bearbeiterlinks->select(bearbeiter=self.bearbeiter).bearbeiterstufe->first"):
showPriority(6)
return
# 5. Priorität: Vorgabe auf Projekt
if leistung.projekt.ansatzext:
showPriority(7)
return
# 6. Priorität: Vorgabe auf Projekttyp
if leistung.projekt.typ.ansatzext:
showPriority(8)
return
# 7. Priorität: Tariftabelle
# Tariftabelle finden via Typ
tariftabelle = getTariftabelle(leistung)
if tariftabelle:
# Ansatz in Tariftabelle suchen
for obj in tariftabelle.ansaetze:
if (obj.tarifstufe == leistung.projekt.tarifstufe) and (obj.bearbeiterstufe == leistung.bearbeiter.stufe):
# Ansatz gefunden
if obj.ansatzext:
showPriority(9)
return
# 8. Priorität: Vorgabe auf Bearbeiter
if leistung.bearbeiter.ansatzext:
showPriority(10)
return
# 9. Priorität: 0.00
showPriority(11)
main()