Bridge - Copy all attachment names to another sheet & get data from an array with a Child Workflow
This solution copies all attachment names from a source row and adds one row for each attachment name onto a target sheet. Each target row contains one attachment name and the source row primary key. The solution uses a Child Workflow to get individual data values from an array in the Parent Workflow. The solution is very detailed and should be relatively easy to replicate and modify.
Workflow summary
Provides a summary of the workflow input and output.
- Source data on source sheet
- Source data on target sheet
- Trigger is a user changes a source sheet “Status - Source” column cell to “Complete” and saves.
- Source data transfers to target data as per below.
- Multiple attachments on a source row become multiple target rows.
Smartsheet items
These are Smartsheet items for this solution.
- Bridge
- Workspace: Basic Workflows
- Parent Workflow: Copy all attachment names to another sheet
- Gets row data and determines if row data should be added to target sheet
- Triggers Child Workflow
- Child Workflow: Retrieve data from array
- Isolates attachment array data for each item and adds to target sheet
- Smartsheet
- Workspace > folder: Bridge > Basic workflow sheets
- Source sheet: Copy all attachment names to a sheet - Source
- Target sheet: Copy all attachment names to a sheet - Target
Workflow details
The details of each element in the Workflow, the element configurable values, and the value sources.
Parent workflow overview
Gets row data. If multiple attachments are present, the attachments details are stored in an array.
Child workflow overview
Repeats once for each attachment. Isolates array data and puts in on a new row on the target sheet.
Trigger element
Clicking the gear icon beside Smartsheet on the Trigger pane on the right allows adjustment of the trigger.
Get Row element
Fields, values, and sources
Value source for Get Rows “Sheet ID” and “Row ID”
Clicking “Copy Data Reference” for these items provides {{runtime.event.sheetId}} and {{runtime.event.rowId}}. Data Reference must be copied for each item.
Junction: Status – Source is Complete element
This is a Condition Junctions > Match element. It checks if the first value matches the second value.
Fields, values, and sources
Value source for Junction “First Value”
Clicking “Copy Data Reference” provides
{{states.startstate.smartsheet.get_row.row.cells.Status - Source.value}}
Child Workflow: Retrieve data from array element
Triggers Child Workflow using the Get Row – Attachment array. The Child Workflow will run one time for each data set in the Get Row – Attachment array. Each time the Child Workflow runs, it starts with the data from the array data set.
Fields, value, and sources
Value source for “Number of Runs”
Clicking “Copy Data Reference” provides
{{states.startstate.smartsheet.get_row.row.attachments}}
Value source for “Value #1”
Clicking “Copy Data Reference” provides
{{states.startstate.smartsheet.get_row.row.cells.ID - Source.value}}
Child Workflow Trigger element
Fields, values, and sources
Child Workflow Add Row element
Fields, values, and sources
Value source for “Value #1”
Clicking “Copy Data Reference” provides {{runtime.entities.ID - Source value}}
Value source for “Value #2”
Clicking “Copy Data Reference” provides {{runtime.data.name}}
Regards,
Neil Egsgard
Business Systems Architect
Southern Alberta Institute of Technology
Comments
-
@Genevieve P. , FYI for when you help people with Bridge.
-
This is incredible 🙌 🙌 🙌 🙌
Thank you for your detailed explanation!
Need more help? 👀 | Help and Learning Center
こんにちは (Konnichiwa), Hallo, Hola, Bonjour, Olá, Ciao! 👋 | Global Discussions
Categories
- All Categories
- 14 Welcome to the Community
- Smartsheet Customer Resources
- 64.1K Get Help
- 413 Global Discussions
- 221 Industry Talk
- 459 Announcements
- 4.8K Ideas & Feature Requests
- 143 Brandfolder
- 141 Just for fun
- 58 Community Job Board
- 461 Show & Tell
- 31 Member Spotlight
- 1 SmartStories
- 299 Events
- 38 Webinars
- 7.3K Forum Archives