- Überblick
- Python-Funktionen
- Bereitstellen und ausführen
Deklarieren Sie eine Orchestrator- oder Integration Service-Ressource inBindings.json, Überprüfen Sie, ob sie während einer lokalen Ausführung aufgelöst wird, und stellen Sie sicher, dass sie mandantenübergreifend erneut zuordenbar ist.
bindings.json wird manuell verwaltet: uipath init erstellt die Datei mit der erforderlichen Struktur, wenn sie fehlt, und lässt eine vorhandene Datei unverändert. Deklarieren Sie eine Bindung für jede Plattformressource, die Ihre Funktion erreicht, sodass die Ressource neu zugeordnet werden kann, wenn das Paket in einem anderen Mandanten ausgeführt wird. Den zugrunde liegenden Lösungsmechanismus finden Sie unter Ressourcenbindungen.
Voraussetzungen
- Ein mit
uipath newerstelltes Python-Funktionsprojekt. - Eine authentifizierte Sitzung, eingerichtet mit
uipath auth. - Die Ressource ist bereits in dem Mandanten vorhanden, für den Sie entwickeln.
- Die UiPath CLI (
uip) wird für die Verbindungssuche in Schritt 1 installiert.
Deklarieren Sie eine Verbindungsbindung
-
Rufen Sie die Verbindungs-ID aus dem Integration Service ab:
uip is connections list uipath-microsoft-outlook365uip is connections list uipath-microsoft-outlook365 -
Öffnen Sie
bindings.jsonam Projektstamm. -
Fügen Sie einen Eintrag zum
resources-Array hinzu und verwenden Sie die Verbindungs-ID sowohl fürkeyals auch fürConnectionId.defaultValue:{ "resource": "connection", "key": "<connection-id>", "value": { "ConnectionId": { "defaultValue": "<connection-id>", "isExpression": false, "displayName": "Microsoft Outlook 365 Connection" }, "Connector": { "defaultValue": "uipath-microsoft-outlook365", "isExpression": false, "displayName": "Connector" } }, "metadata": { "Connector": "uipath-microsoft-outlook365", "UseConnectionService": "True", "BindingsVersion": "2.2" } }{ "resource": "connection", "key": "<connection-id>", "value": { "ConnectionId": { "defaultValue": "<connection-id>", "isExpression": false, "displayName": "Microsoft Outlook 365 Connection" }, "Connector": { "defaultValue": "uipath-microsoft-outlook365", "isExpression": false, "displayName": "Connector" } }, "metadata": { "Connector": "uipath-microsoft-outlook365", "UseConnectionService": "True", "BindingsVersion": "2.2" } } -
Deklarieren Sie dieselbe ID wie eine Konstante auf Modulebene in Ihrer Funktion und übergeben Sie sie an den SDK-Aufruf:
OUTLOOK_CONNECTION_KEY = "<connection-id>" conn = sdk.connections.retrieve(OUTLOOK_CONNECTION_KEY)OUTLOOK_CONNECTION_KEY = "<connection-id>" conn = sdk.connections.retrieve(OUTLOOK_CONNECTION_KEY) -
Führen Sie die Funktion lokal aus:
uipath run main -f input.jsonuipath run main -f input.json
Ergebnis
Das Ausführungsprotokoll enthält eine Zeile pro deklarierter Bindung:
No resource overwrite matched for connection key='connection.<connection-id>' on retrieve
No resource overwrite matched for connection key='connection.<connection-id>' on retrieve
Diese Zeile bestätigt, dass die Überschreibungssuche ausgeführt wurde und auf die Entwurfszeit-ID zurückgegriffen wurde, was lokal das erwartete Ergebnis ist, da keine Mandantenzuordnung vorhanden ist. Wenn die Zeile eine andere ID als die in bindings.json benennt, stimmen die Codekonstante und die Bindung nicht überein.
Das Deklarieren von Bindungen für andere Ressourcentypen folgt demselben Muster mit einer anderen value -Form. Assets, Buckets, Warteschlangen, Prozesse, Apps und Indizes verwenden name und folderPath anstelle von ConnectionId und ihr key verbindet die beiden mit einem Punkt.
Legen Sie die Bindung über Mandanten hinweg erneut zuordenbar fest
-
Registrieren Sie das Funktionsprojekt in einer Lösung:
uip solution project add ./my-solution/my-functionuip solution project add ./my-solution/my-function -
Synchronisieren Sie die Ressourcenliste der Lösung mit den deklarierten Bindungen des Projekts:
uip solution resource refreshuip solution resource refresh -
Überprüfen Sie die resultierende Ressourcenliste:
uip solution resource list --source localuip solution resource list --source local
Ergebnis
Jede deklarierte Bindung wird in der lokalen Ressourcenliste der Lösung angezeigt. Die Bereitstellung ordnet jeden Eintrag einer Ressource im Zielmandanten zu, sodass dasselbe Paket für die eigene Verbindung des Mandanten ausgeführt wird. Informationen zum Verpacken und Veröffentlichen der Lösung finden Sie unter uip solution pack.
Eine Bindung, die im Zielmandanten nicht zugeordnet ist, schlägt den Auftrag nicht fehl. Der Aufruf greift auf den Bezeichner zur Entwurfszeit zurück. Stellen Sie also sicher, dass jede Bindung in der Ressourcenzuordnung des Zielmandanten angezeigt wird, bevor Sie eine Lösung fördern.
Nächste Schritte
- Eine Integration Service-Aktivität aufrufen – verwenden Sie eine deklarierte Verbindung, um einen Connector-Vorgang zu erreichen.
- Verpackung und Veröffentlichung – Stellen Sie die Funktion in Orchestrator bereit.