UiPath Documentation
functions
latest
false
函数用户指南
  • 概述
    • 关于函数
  • Python 函数
    • 入门指南
    • 构建 Python 函数
    • 访问平台服务
    • 资源绑定
    • 声明资源绑定
    • 调用 Integration Service 活动
    • 追踪和可观察性
    • 测试和调试
  • 部署并运行
重要 :
请注意,此内容已使用机器翻译进行了本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。

声明资源绑定

在绑定.json 中声明 Orchestrator 或 Integration Service 资源,请验证此问题是否可在本地运行期间解析,并使其可在租户之间重新映射。

bindings.json手动维护uipath init :在不存在所需结构的情况下,将创建具有所需结构的文件,并保持现有文件不变。为函数到达的每个平台资源声明一个绑定,以便当包在另一个租户中运行时重新映射资源。有关其背后的解决机制,请参阅资源绑定

先决条件

  • 使用 uipath new 创建的 Python 函数项目。
  • uipath auth 建立经过身份验证的会话。
  • 您开发的租户中已存在该资源。
  • 已安装 UiPath CLI (uip),用于步骤 1 中的连接查找。

声明连接绑定

  1. 从 Integration Service 中检索连接 ID:

    uip is connections list uipath-microsoft-outlook365
    uip is connections list uipath-microsoft-outlook365
    
  2. 在项目根目录打开 bindings.json

  3. 使用 resourceskey 的连接 ID 向 ConnectionId.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"
      }
    }
    
  4. 在函数中将相同的 ID 声明为模块级常量,并将其传递给 SDK 调用:

    OUTLOOK_CONNECTION_KEY = "<connection-id>"
    
    conn = sdk.connections.retrieve(OUTLOOK_CONNECTION_KEY)
    OUTLOOK_CONNECTION_KEY = "<connection-id>"
    
    conn = sdk.connections.retrieve(OUTLOOK_CONNECTION_KEY)
    
  5. 在本地运行函数:

    uipath run main -f input.json
    uipath run main -f input.json
    

结果

运行日志中,每个声明的绑定包含一行:

No resource overwrite matched for connection key='connection.<connection-id>' on retrieve
No resource overwrite matched for connection key='connection.<connection-id>' on retrieve

该行确认覆盖查找已运行并回退到设计时 ID,这是本地的预期结果,因为不存在租户映射。如果该行命名的 ID 与 bindings.json 中的 ID 不同,则代码常量和绑定不一致。

备注:

声明其他资源类型的绑定遵循相同的模式,但使用不同的 value 形状。资产、存储桶、队列、流程、应用程序和索引使用 namefolderPath,而不是 ConnectionId,并且其 key 使用点将两者连接。

使绑定可在租户之间重新映射

  1. 在解决方案中注册函数项目:

    uip solution project add ./my-solution/my-function
    uip solution project add ./my-solution/my-function
    
  2. 从项目声明的绑定中同步解决方案的资源列表:

    uip solution resource refresh
    uip solution resource refresh
    
  3. 查看生成的资源列表:

    uip solution resource list --source local
    uip solution resource list --source local
    

结果

每个已声明的绑定都将显示在解决方案的本地资源列表中。部署会将每个条目映射到目标租户中的资源,因此同一包将针对该租户自己的连接运行。有关打包和发布解决方案的信息,请参阅uip solution pack

警告:

未在目标租户中映射的绑定不会导致作业失败。调用将回退到设计时标识符,因此在推广解决方案之前,请验证每个绑定是否都显示在目标租户的资源映射中。

后续步骤

  • 先决条件
  • 声明连接绑定
  • 结果
  • 使绑定可在租户之间重新映射
  • 结果
  • 后续步骤

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新