Importsatzmodus des Webservice
Wenn eine SOAP-Nachricht einen Datensatz in eine Importsatztabelle einfügt und für diese Tabelle kein Importsatz im Status „Wird geladen“ vorhanden ist, wird ein neuer Importsatz erstellt, wobei der Modus auf „ Synchron“ festgelegt ist.
Ein Importsatz mit dem Modus „ Synchron “ wandelt die Daten um, sobald er eingefügt wird (sofern die Transformationszuordnung bereits vorhanden ist). Dieser Importsatz hat auch den Standardstatus Wird geladen. Standardmäßig werden alle synchronenImportsätze um Mitternacht automatisch in „Verarbeitet“ geändert. Daher wird bei einer neuen Einfügung in dieselbe Tabelle ein neuer synchroner Importsatz erstellt.
| Modus | Status | Funktion |
|---|---|---|
| Asynchron | Wird geladen | Die Datentransformation erfolgt nicht automatisch und sofort. Die der Importsatzzeile hinzugefügten Daten haben den Status „Ausstehend“. Die Transformation kann geplant oder manuell ausgeführt werden, wenn der Status in „ Geladen“ geändert wird |
| Asynchron | Geladen | Markiert den Abschluss des Datenladens. Die Datentransformation kann jetzt geplant oder manuell erfolgen. |
| Synchron | Wird geladen | Die Datentransformation erfolgt automatisch und sofort, wenn Daten in die zugehörige Importsatzzeile eingefügt werden. |
| Synchron | Geladen | Wenn neue Daten in diesen zugehörigen Importsatz eingefügt werden, wird ein neuer Importsatz mit dem Modus „ Synchron “ und dem Status „ Laden “ erstellt. Wenn Sie den Status in „ Geladen “ ändern, können Sie angeben, dass ein neuer synchroner Importsatz für die nächste Importsatz-Zeileneinfügung erstellt (und sofort transformiert) werden soll. |
Steuern des Einfügeverhaltens
In Importsätzen, die ein oder mehrere zusammengefügte Felder angeben, werden Datensätze mit einem übereinstimmenden zusammengefügten Wert seriell (einzeln) von der Quell- in die Zieltabelle umgewandelt, um Duplikate zu vermeiden.
In Importsätzen, die kein Zusammenfügungsfeld angeben, werden Datensätze gleichzeitig transformiert. Sie können dieses Verhalten mit der Eigenschaft glide.import_set_insert_serialized_when_no_coalesce steuern.
Die Systemeigenschaft glide.import_set_insert_serialized.<table name> steuert, wie die Instanz Datensätze aus Webserviceaufrufen in eine bestimmte Importsatztabelle einfügt. Bei „wahr“ verhindert diese Eigenschaft, dass identische gleichzeitige Einfügungen doppelte Datensätze erstellen, indem die Datenbank-Einfügevorgänge serialisiert werden. Wenn für eine Zieltabelle keine Zusammenfügungsfelder in einer Transformationszuordnung definiert sind, legen Sie diese Eigenschaft auf „falsch “ fest, um die Leistung des Webdienst-Importsatzes zu verbessern.
Standard-SOAP-Antwort
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><SOAP-ENV:Body><insertResponse><sys_id>fa648f5f0a0a0b2b0048e7012448b8f1</sys_id><table>incident</table><display_name>number</display_name><display_value>INC10014</display_value><status>inserted</status></insertResponse></SOAP-ENV:Body></SOAP-ENV:Envelope>
| Feld | Beschreibung |
|---|---|
| sys_id | Die Sys_id des resultierenden Datensatzes, der erstellt oder geändert wurde |
| Tabelle | Der Tabellenname der betroffenen Tabelle. Im Falle eines asynchronen Aufrufs wäre der Tabellenname die Importsatztabelle, z. B. imp_notification für die Importsatztabelle des Webservice für Benachrichtigungen |
| display_name | Der Name des Felds, das als Anzeigefeld für den erstellten oder geänderten Datensatz festgelegt ist |
| display_value | Der Wert des Felds, das als Anzeigefeld festgelegt ist. Das Anzeigefeld für die Incident -Tabelle ist beispielsweise das Feld Nummer, und ein Beispielwert wäre INC10001 |
| status | Ein Zeichenfolgenwert, der die Aktion angibt, die als Ergebnis des Webserviceaufrufs aufgetreten ist und sich auf den Datensatz bezieht, der durch die sys_id und die Tabellenfeldwerte definiert wird
|
| status_message | Dieser Wert wird in den Wert übersetzt, der im Feld „ Kommentar “ der Importsatzzeile zu finden ist, und enthält normalerweise Informationen im Zusammenhang mit dem Statuswert, z. B. „Keine Feldwerte geändert“ bei Status „Ignoriert“ Wenn Sie diesen Wert auf einen anwenderdefinierten Zeichenfolgenwert festlegen, enthält die SOAP-Antwort ein optionales Feld „status_message“, das zurückgegeben wird. |
| error_message | Die Nachricht, die sich auf den Status eines Fehlersbezieht. Wenn ein Fehler auftritt, führt das Festlegen dieses Werts auf einen anwenderdefinierten Zeichenfolgenwert dazu, dass die SOAP-Antwort ein optionales Feld „error_message“ enthält, das zurückgegeben wird |
Die SOAP-Antwort anpassen
Es ist möglich, andere als die in der WSDL angegebenen Informationen aufzunehmen, indem der Inhalt von status_message mit dem Transformationsskript überschrieben wird.