Zum Inhalt springen

Beschreiben Sie die Objektkomponente des Jitterbit Connector SDK

Übersicht

Die Beschreiben-Objektkomponente kann überall dort verwendet werden, wo ein Benutzer Eingaben für eine Abfrage bereitstellen muss. Trotz ihres Namens ist sie speziell dafür konzipiert, Such- oder Abfrageparameter zu erhalten. In vielen Implementierungen sind die Standardwerte der Komponente ausreichend. Es ist erforderlich, dass ein oder mehrere Schritte mit einer List Object Komponente davor stehen:

Describe Object Component

Komponentenmerkmale

Die Beschreiben-Objektkomponente umfasst integriertes Verhalten zum Suchen, Aktualisieren, Spezifizieren und Testen von Abfragen:

  • Suchleiste: Benutzer können ein Schlüsselwort eingeben und die Felder filtern.
  • Aktualisieren: Ein Klick ruft Daten vom Connector ab und aktualisiert die Liste der Felder.
  • Offenlegungstriangle: Ein Klick klappt die Liste der Felder ein und aus.
  • Alle auswählen: Ein Klick wählt alle Felder aus und ab.
  • Abfrage testen: Sendet die Abfrage an den Connector und zeigt die zurückgegebenen Daten an.
  • Seiten: Benutzer können Limit und/oder Offset-Bedingungen angeben und auf Anwenden oder Entfernen klicken, um diese Bedingungen hinzuzufügen oder zu entfernen.
  • Bedingungen: Standardmäßig werden Operatoren bereitgestellt, mit der Option, zusätzliche vom Entwickler angegebene Operatoren hinzuzufügen. Sobald ein Objekt: Feld und Operator ausgewählt und ein Wert angegeben ist, kann der Benutzer auf Hinzufügen klicken oder Alle entfernen verwenden, um die Operatoren zu löschen. Siehe Filterbedingungen für Details.
  • Filterbedingungen: Wenn der tableMode für die Komponente true ist, können Filter mit einer Table component hinzugefügt werden.

Das Ergebnis der Komponente ist eine Abfragezeichenfolge, die dann vom Connector verwendet werden kann.

Komponentens JSON

{
    "name": "query:describe-object",
    "type": "pagination",
    "children": [
        {
            "name": "describe-object",
            "type": "describe-object",
            "use": {
                "ui": {
                    "pageTitle": "Build Your Query",
                    "description": "Fields To Retrieve",
                    "additionalOperators": [
                        {
                            "value": "IN ??",
                            "name": "In",
                            "description": "",
                            "type": "string",
                            "placeholder": "('value1', 'value2', ...)"
                        }
                    ],
                    "disableQuery": false,
                    "hideQuery": false,
                    "tableMode": true
                }
            },
            "widgetHint": "component:connector/describe-object",
            "validators": [
                {"name": "required"}
            ]
        }
    ]
}

In dem JSON, das das describe-object beschreibt, können folgende Eigenschaften konfiguriert werden:

  • type: Der Typ der Describe-Objekt-Komponente muss "describe-object" sein.
  • pageTitle: Optionaler Text, der über der Komponente angezeigt wird. Wenn nicht definiert, wird der Standardtext Build Your Query verwendet.
  • description: Optionaler Text, der über der Liste der Felder angezeigt wird. Wenn nicht definiert, wird der Standardtext Fields to retrieve verwendet.
  • additionalOperators: Optionale Liste von Operatoren, die zum Standardset von Operatoren hinzugefügt werden sollen. Siehe Zusätzliche Operatoren für Details.
  • disableQuery: Wenn true (Standard), ist die Bearbeitung der Abfragezeichenfolge deaktiviert.
  • hideQuery: Wenn true, wird die Abfragezeichenfolge nicht angezeigt. Der Standardwert ist false und die Abfragezeichenfolge wird angezeigt.
  • tableMode: Wenn true, werden die Filterbedingungen in einer Tabelle mit einer Tabellenkomponente angezeigt. Der Standardwert ist false und die Bedingungen werden mit Dropdown-Menüs angezeigt. Siehe Filterbedingungen für Details.

An Bedingungen Anführungszeichen hinzufügen

Die Komponente kann dynamisch konfiguriert werden, um Anführungszeichen zu verwenden, wenn die Abfragezeichenfolge erstellt wird.

Dies wird implementiert, indem zwei Eigenschaften zu dem Endpunkt hinzugefügt werden:

  • quoteValue: Ein versteckter Wert in den Endpunkt-Eigenschaften, der auf den entsprechenden Wert gesetzt werden soll, der beim Abgrenzen von Anführungszeichen verwendet wird. Typischerweise wird dies auf das doppelte Anführungszeichen " gesetzt.
  • caseSensitive: Eine Checkbox (boolean) Eigenschaft in den Endpunkt-Eigenschaften mit einem entsprechenden Anzeigenamen. Wenn auf true gesetzt, wird das quoteValue-Zeichen verwendet, um Anführungszeichen zu den Parametern einer Abfrage hinzuzufügen.

Beispiel-JSON, das diese beiden Eigenschaften zeigt:

{
  "endpoint": {
    "name": "Example Connector",
    "displayName": "Example Connector Endpoint",
    "icon": "/assets/images/example.svg",
    "properties": [
      . . .
      {
        "name": "quoteValue",
        "hidden": true,
        "defaultValue": "\""
      },
      {
        "name": "caseSensitive",
        "displayName": "Use double quotations (\") for connector identifiers",
        "type": "boolean",
        "defaultValue": true,
        "validators": [
          {
            "name": "required"
          }
        ]
      },
      . . .

Wenn die Komponente die Abfragezeichenfolge erstellt, verwendet sie die Einstellungen von quoteValue und caseSensitive, um die Abfragezeichenfolge zu konstruieren.

Filterbedingungen

Im Rahmen der Standardkonfiguration des Components werden Operatoren für Filterbedingungen und die Funktionalität zu deren Festlegung bereitgestellt. In vielen Fällen wird dies ausreichend sein. Diese Standardoperatoren stehen für Filterbedingungen zur Verfügung:

Name Standardausdruck
Equals = ??
Not Equals != ??
Like LIKE '??'
Starts With LIKE '??%'
Ends With LIKE '%??'
Contains LIKE '%??%'
Less Than < ??
Less or Equal <= ??
Greater Than > ??
Greater or Equal >= ??

In diesen Ausdrücken wird ?? durch den rechten Wert ersetzt, der dem Operator übergeben wird.

Zusätzlich zu den Anpassungen, die im Component JSON verfügbar sind, können zusätzliche Operatoren erstellt und hinzugefügt werden.

Zusätzliche Operatoren

Zusätzliche Operatoren können definiert und zur adapter.json hinzugefügt werden, um die Standardliste der Operatoren zu erweitern. Um einen weiteren Operator hinzuzufügen, fügen Sie ihn wie in diesem Beispiel zur JSON hinzu:

"additionalOperators": [
    {
        "value": "IN ??",
        "name": "In",
        "description": "",
        "type": "string",
        "placeholder": "('value1', 'value2', ...)"
    }
],

Wo:

  • value: Das Muster, das vom Operator beim Erstellen der Abfrageanweisung verwendet wird. ?? wird durch vom Benutzer bereitgestellte Werte ersetzt.
  • name: Der Name, der für den Operator im Menü Operator des Integration Studio angezeigt wird.
  • description: Eine Beschreibung des Operators, die im UI des Integration Studio beim Überfahren als Tooltip angezeigt wird. Wenn leer, wird stattdessen der name als Tooltip verwendet.
  • type: Der Typ der Werte (Felder), die der Operator akzeptiert.
  • placeholder: Ein String mit Platzhaltertext, der in das Feld value eingesetzt wird und das Ergebnis im UI des Integration Studio im Feld Wert angezeigt wird.

Wenn ein Operator keinen rechten Wert benötigt, können Sie rightOperandNotRequired auf true setzen, um anzugeben, dass ein Wert nicht erforderlich ist, und einen entsprechenden Platzhalter bereitstellen. Zum Beispiel:

"additionalOperators": [
    {
        "value": "IS NULL",
        "name": "Is Null",
        "description": "",
        "type": "string",
        "placeholder": "This operator does not require a value.",
        "rightOperandNotRequired": true
    }
],