Wartungsliste auf Dashboard?
-
Hallo,
hat jemand eine Idee, wie ich eine Liste aller Objekte für die aktuell eine Wartung "aktiv" ist, auf dem Dashboard anzeigen kann?
Gruß
Stephan -
Hi, am besten geht das über einenn report. Den kannste dann auf dem dashboard anzeigen lassen
-
@middend
Hi,
das hatte ich mir auch überlegt. Aber wo finde ich denn die notwendigen Kategorien?
Irgendwie sehe ich in der Liste weder unter Global oder Spezifisch etwas, das mit Wartung zu tun haben könnte. -
Hi Stephan,
hast Du einen Wartungsvertrag ? Dafür musste dir vermutlich entweder selbst oder mit Hilfe des Supports ein SQL Statement zusammenbauen (lassen). Es gibt sonst für die Wartung nur ne View.... -
Hi
Die Wartung ist ja (soweit ich das verstehe) kein Attribut des Objekts, sondern Information, die extra in dem AddOn gepflegt wird. Die Kategorie ist dann nur eine Art View auf diese Daten.
Evtl. musst Du also den Report in SQL selber zusammenbauen (wie es auch die View im Report Manager macht).
Auf den ersten Blick würde ich mir die isys_maintenance Tabellen genauer anschauen.
Grüße
Leo -
Hallo zusammen,
ich hatte tatsächlich gerade erst eine ähnliche Anfrage gesehen und habe kurzerhand etwas runtergeschrieben - einen "offiziellen" Report gibt es hierfür leider nicht - diese funktionieren nämlich tatsächlich nur auf Basis von Kategoriedaten.
Deswegen muss man sich das mittels SQL selbst zusammenschustern:
SELECT obj_main.isys_obj__id AS '__id__', j2.isys_obj_type__title AS 'LC__REPORT__FORM__OBJECT_TYPE###0_1', obj_main.isys_obj__title AS 'LC__UNIVERSAL__TITLE###0_1', j1.isys_cmdb_status__title AS 'LC__UNIVERSAL__CMDB_STATUS###0_1' FROM isys_obj AS obj_main INNER JOIN isys_cmdb_status AS obj_main_status ON obj_main_status.isys_cmdb_status__id = obj_main.isys_obj__isys_cmdb_status__id LEFT JOIN isys_cmdb_status AS j1 ON j1.isys_cmdb_status__id = obj_main.isys_obj__isys_cmdb_status__id LEFT JOIN isys_obj_type AS j2 ON j2.isys_obj_type__id = obj_main.isys_obj__isys_obj_type__id INNER JOIN isys_maintenance_2_object ON isys_maintenance_2_object__isys_obj__id = obj_main.isys_obj__id INNER JOIN isys_maintenance ON isys_maintenance__id = isys_maintenance_2_object__isys_maintenance__id WHERE ( (NOW() BETWEEN isys_maintenance__date_from AND isys_maintenance__date_to) OR (CAST(NOW() AS DATE) BETWEEN CAST(isys_maintenance__date_from AS DATE) AND CAST(isys_maintenance__date_to AS DATE)) ) ORDER BY j2.isys_obj_type__title DESC
Dieser Report stellt alle Objekte dar, die sich "Heute" in Wartung befinden. Man kann die notwendigen Bedingungen eigentlich an alle möglichen Reports knüpfen, dafür müssen nur die folgenden "JOIN" Zeilen ergänzt werden:
INNER JOIN isys_maintenance_2_object ON isys_maintenance_2_object__isys_obj__id = obj_main.isys_obj__id INNER JOIN isys_maintenance ON isys_maintenance__id = isys_maintenance_2_object__isys_maintenance__id
Und natürlich auch die Bedingung:
WHERE ( (NOW() BETWEEN isys_maintenance__date_from AND isys_maintenance__date_to) OR (CAST(NOW() AS DATE) BETWEEN CAST(isys_maintenance__date_from AS DATE) AND CAST(isys_maintenance__date_to AS DATE)) )
VG Leo
-
@LFischer
Hallo Leo,vielen lieben Dank für die Mühe, die Du Dir gemacht hast.
Ich werde mir das die Tage einmal genau ansehen. Meine SQL Kenntnisse sind zwar begrenzt, aber das sollte ich schaffen. Dann kann ich sogar die anzeigen, die ab zwei Tagen in der Zukunft in Wartung sein werden und die bis zwei Tage in der Vergangenheit in Wartung waren.
Gruß
Stephan