Community

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Users
    • Search

    Zugriff auf Dialog+ Listen über API

    Entwicklung
    4
    7
    1494
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      schultzg last edited by

      Hallo,
      ich versuche gerade eine Bestands(web-)anwendung von Ihrem eigenen DB-Backend auf eine Benutzerdefinierte Kategorie in i-doit abzubilden.

      Dazu muss ich die Einträge aus einer selbsterstellten Dialog+ Liste per API abfragen um die Auswahl in besagter Anwendung darzustellen.

      Wo sehe ich die "property" Eigenschaft meiner eigenen Dialog+ Liste, die für den API-Call benötigt wird?

      Beste Grüße,
      Gordon Schultz

      F 1 Reply Last reply Reply Quote 0
      • F
        franknagel @schultzg last edited by

        Unter Verwaltung an der Stelle, wo die Benutzerdefinierte Kategorie erstellt wurde, gibt es unten eine Button "Technische Konfiguration anzeigen". Da sollte die notwendige Information drin stehen. Ich selbst habe noch Dialog+ Felder mittels API bearbeitet, aber dieser Beitrag deutet an, dass dort einiges an Bugs lauern kann.

        1 Reply Last reply Reply Quote 0
        • S
          schultzg last edited by

          Die Infos sind mir auch bekannt. Mit Hilfe dieser ist es auch kein Problem Daten über das API in die Kategorie zu schreiben.
          Allerdings brauche ich dafür eine Referenz auf die Möglichen Optionen der Dialog+ Liste, also die ID der Information, die eingetragen werden soll. Daran scheitere ich momentan.

          Jetzt könnte ich diese Info, da sie relativ statisch ist, in der Legacy-Anwendung auch statisch hinterlegen. Das bedeutet aber, dass ich bei einer Änderung der Listenoptionen, konret heim hinzufügen bzw. entfernen, an 2 Stellen aktiv werden muss.

          Bei Built-In Dialog+ Listen gelingt das Abfragen auch problemlos. Die Doku gibt das ja entsprechende Beispiele. Eine Alternative wäre noch, die Daten direkt per SQL aus der Datenbank abzugreifen. Aber das würde ich gerne vermeiden wollen.

          Beste Grüße,
          Gordon Schultz

          1 Reply Last reply Reply Quote 0
          • jsemere
            jsemere last edited by

            Hallo

            um die Einträge der Drop-Down Liste lesen zu können, musst du zunächst per API die Methode cmdb.dialog.read nutzen. Damit erhältst du eine Liste der Einträge + id. Danach kannst du die Dialog-Admin Werte per cmdb.category.update an der benutzerdefinierten Kategorie ändern.

            Viele Grüße,

            Jakob Semere
            Team Lead Service Management
            Webseite: https://www.becon.de
            img

            S 1 Reply Last reply Reply Quote 0
            • S
              schultzg @jsemere last edited by

              @jsemere
              Hi und danke, aber das ist mir soweit klar und bekannt. Die Methode cmdb.dialog.read benötigt den Parameter "property". Mir ist es bisher noch nicht gelungen, diesen zu für meine Liste zu erkennen.

              Beste Grüße,
              Gordon Schultz

              1 Reply Last reply Reply Quote 0
              • jsemere
                jsemere last edited by jsemere

                Hallo schultzg,

                in der aktuellen Version können die Listen für die benutzerdefinierte Kategorie nicht ausgelesen werden. Ich würde dir empfehlen, diesen Feature hier zu platzieren.

                Viele Grüße,

                Jakob Semere
                Team Lead Service Management
                Webseite: https://www.becon.de
                img

                1 Reply Last reply Reply Quote 0
                • bheisig
                  bheisig i-doIT Team last edited by

                  Hallo zusammen,

                  benutzerdefinierte "Dialog+"-Attribute sollten sich problemlos via API auslesen lassen. Hier ein Beispiel, das mit unserer Online Demo funktioniert:

                  Request:

                  {
                      "version": "2.0",
                      "method": "cmdb.dialog.read",
                      "params": {
                          "category": "C__CATG__CUSTOM_FIELDS__CLIENT",
                          "property": "f_popup_c_1499071800714",
                          "apikey": "c1ia5q",
                          "language": "en"
                      },
                      "id": 1
                  }
                  

                  Response:

                  {
                      "jsonrpc": "2.0",
                      "result": [
                          {
                              "id": "19",
                              "const": "",
                              "title": "New"
                          },
                          {
                              "id": "20",
                              "const": "",
                              "title": "Used"
                          },
                          {
                              "id": "21",
                              "const": "",
                              "title": "Leased"
                          },
                          {
                              "id": "22",
                              "const": "",
                              "title": "Bring Your Own Device (BYOD)"
                          }
                      ],
                      "id": 1
                  }
                  

                  Den nötigen Wert für property erhält man über "Verwaltung > CMDB Einstellungen > Benutzerdefinierte Kategorien > KATEGORIE-NAME > Technische Konfiguration anzeigen".

                  Ähnliches gilt für Attribute vom Typ "Dialog+ (Mehrfachauswahl)".

                  Getestet mit i-doit pro 1.10.2 und API Add-on 1.9.1

                  Viele Grüße
                  Benjamin

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post