Danke, das scheint das zu sein, was ich brauche. Ist das irgendwo dokumentiert? Ich habe in dieser Dokumentation nachgeschaut, aber objects_by_relation
wird dort gar nicht weiter aufgeführt.
Latest posts made by TYzer
-
RE: cmdb.objects_by_relation Archivierte Beziehungen herausfiltern
-
cmdb.objects_by_relation Archivierte Beziehungen herausfiltern
Hallo,
durch den letzten Umzug wurden vor allem viele Monitore zwischen Mitarbeitern getauscht, was auch alles in i-doit eingetragen ist. Zur Kontrolle sollen Mitarbeiter zukünftig regelmäßig selbst prüfen und bestätigen können, ob ihre zugewiesene Hardware noch aktuell ist. Wir verwenden dazu die jsonrpc.
Über cmdb.objects_by_relation bekommen wir zwar alle zugewiesenen Objekte zu einem Nutzer, aber auch jene, die ehemals zugewiesen waren und jetzt archiviert sind, weil sie jemand anderem zugewiesen sind.
disp-106
ist dem Nutzer aktuell wirklich zugeordnet,disp-053
dagegen gehört mittlerweile einem anderen Nutzer, das ist aus diesen Daten aber nicht ersichtlich."296053": { "data": { "id": 296053, "title": "disp-053 is used by Max Mustermann", "cmdb_status_title": null, "related_object": 290863, "related_title": "disp-053", "related_type": 22, "related_type_title": "Monitore", "related_cmdb_status_title": "In Betrieb", "master": 290863, "slave": 283320, "type": 60, "type_title": "Beziehungen" }, "children": false }, "303244": { "data": { "id": 303244, "title": "disp-106 is used by Max Mustermann", "cmdb_status_title": null, "related_object": 296625, "related_title": "disp-106", "related_type": 22, "related_type_title": "Monitore", "related_cmdb_status_title": "In Betrieb", "master": 296625, "slave": 283320, "type": 60, "type_title": "Beziehungen" }, "children": false }
Schaut man sich dann die Relations des betreffenden Monitors an, bekommt man ebenfalls auch beide Nutzer.
"296053": { "data": { "id": 296053, "title": "disp-053 is used by Max Mustermann", "cmdb_status_title": null, "related_object": 283320, "related_title": "Max Mustermann", "related_type": 53, "related_type_title": "Personen", "related_cmdb_status_title": "In Betrieb", "master": 290863, "slave": 283320, "type": 60, "type_title": "Beziehungen" }, "children": false }, "303378": { "data": { "id": 303378, "title": "disp-053 wird benutzt von Melanie Mustermann", "cmdb_status_title": null, "related_object": 288259, "related_title": "Melanie Mustermann", "related_type": 53, "related_type_title": "Personen", "related_cmdb_status_title": "In Betrieb", "master": 290863, "slave": 288259, "type": 60, "type_title": "Beziehungen" }, "children": false }
Die Relation IDs dürften wohl fortlaufend vergeben werden, daher ließe sich nun zwar schließen, dass der Eintrag mit der ID
303378
der aktuellere ist und296053
archiviert ist. Dennoch ist das ein API-Call mehr, der ggf. nicht notwendig wäre, wenn der erste Call bereits eindeutig mitteilen würde, ob die Relation noch aktiv oder schon archiviert ist.
Gibt es etwas, das ich übersehen habe?