You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BluePrism不同业务对象间的数据传递方法咨询

How to Pass Data Between Two Blue Prism Business Objects

Hey Dan, I’ve run into this exact cross-BO data sharing challenge before—let’s walk through the most practical ways to solve it, since Blue Prism’s business objects are intentionally encapsulated (which is why you can’t directly expose internal data items across them, and the Start/End parameters only work between a process and a BO, not BO-to-BO).

Method 1: Use Environment Variables (Quick & Simple)

This is the go-to for quick cross-BO data sharing when you don’t need a complex workflow:

  • First, create a global environment variable: Go to System > Environment Variables, add a new variable (e.g., App1_Extracted_Data) with a type matching your data (string, number, etc.).
  • In your first BO (the one reading from App 1), after extracting the data, assign it to this environment variable using a Write Environment Variable action.
  • In your second BO, use a Read Environment Variable action to pull the value from App1_Extracted_Data whenever you need it.
  • Pro tip: If you’re running multiple instances concurrently, add a unique identifier to the variable name (like including a process instance ID) to avoid overwriting data. Also, clear the variable after use to prevent stale data from being picked up by future runs.

Method 2: Use a Process as a Middle Layer (Best Practice)

Blue Prism’s core design expects processes to orchestrate business objects, so this is the most maintainable approach:

  1. Build a main process that first calls your App 1 BO:
    • In the App 1 BO’s End stage, define an output parameter (e.g., Extracted_Data) and map the internal data item holding your App 1 data to it.
    • In the main process, when you add the Navigate stage to call the App 1 BO, capture the output parameter into a process-level data item.
  2. Next, call your App 2 BO from the same process:
    • In the App 2 BO’s Start stage, define an input parameter (e.g., Data_From_App1).
    • In the process’s Navigate stage for the App 2 BO, map the process-level data item (from step 1) to this input parameter.
  • This method keeps your BOs reusable (they don’t depend on global variables) and makes the data flow clear for anyone maintaining the solution later.

Method 3: Use a Database or Work Queue (For Async Scenarios)

If your two BOs run asynchronously (e.g., App 1 data is collected now, but App 2 only needs it hours later), use persistent storage:

  • In the first BO, write the extracted data to a custom database table (using Blue Prism’s SQL actions) or add it as an item to a Work Queue.
  • In the second BO, read the data from that table or queue when it’s ready to process.
  • This approach adds auditability (you can track when data was stored and retrieved) and works well for long-running or decoupled workflows.

Key Notes to Remember

  • Never try to bypass Blue Prism’s encapsulation by accessing BO internal data items directly—this breaks the platform’s design principles and makes your solution fragile to updates.
  • The Start/End parameters on BOs are designed for process-to-BO communication only, not BO-to-BO, which is why they weren’t working for you.

内容的提问来源于stack exchange,提问作者Dan Jones

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:04:33