beim Schließen von Combit soll ein Fenster angezeigt werden, wo das Ergebnis einer SQL-Abfrage angezeigt wird.
Konkret soll die Summe der Minuten aller Aktivitäten des aktuell eingeloggten Benutzers angezeigt werden.
Die SQL-Abfrage dazu lautet wie folgt:
SELECT SUM(Activities.Duration) FROM Activities
WHERE Activities.Responsible = '%LoginName%'
AND CONVERT( date,Activities.DateTime) = CONVERT( date, GETDATE())
Ich habe gesehen das es ein Ereignis namens „Projekt wird geschlossen“ gibt.
Hier kann eine Skript ausgeführt werden, nur leider habe ich keinen Ansatz wie ich die SQL-Abfrage in ein Skript einbauen könnte.
Erster Ansatz: Sie bauen eine stored procedure, die den Wert für einen übergebenen User+Datum ermittelt und den Wert dann per RAISERROR als „Fehler“ eskaliert. Darüber gelangt der Wert dann als SQLShell.LastError.ErrorText zurück ins Script.
nResult = SQLShell.ExecuteCommandRaw("...")
If nResult = -1 Then
MsgBox SQLShell.LastError.ErrorText
Zweiter Ansatz: Sie vertagen das Thema bis Version 12 erscheint. Dort werden Sie direkt auf einem beliebigen RecordSet SQL-seitige Aggregationsfunktionen ausführen und das Ergebnis per Script abfragen und weiterverarbeiten können.
Hinsichtlich des grundsätzlichen Ansatzes sehe ich möglicherweise noch „Herausforderungen“ - das kommt jetzt ein bisschen darauf an, was im Anschluss mit dem Wert passieren wird - nämlich falls Anwender:innen combit CRM mehrmals am Tag starten und beenden, oder wenn sie 2 Instanzen von combit CRM parallel benutzen. Sie können sich auch alternativ überlegen, ob nicht besser über eine geplante Aufgabe um 23:59 eine 24h Summary Mail (z.B. Sofortbericht) an jede:n Benutzer:in, der:dir heute mind. 1 Aktivität erfasste, ausgelöst wird. Da könnte man auch schon direkt die entsprechenden Links zu den betreffenden Projekte-Datensätzen oder Kunden-Datensätzen hinterlegen, falls da noch was nachgetragen werden soll.
Ich habe in meiner alten Version noch die „Info-Zentrale“, die ich nicht aktiv nutze und die vermutlich jetzt anders heißt. Wäre es nicht möglich darauf das Ergebnis der Abfrage darzustellen, so dass der User hier nachschauen kann bevor er die Anwendung schließt?