Dynamic Data allows users to push information from one to many by easily managing updates in one central place, and update multiple documents. If you have the same data points in multiple files that need to be updated, Dynamic Data removes the manual update of each file.
Keys to Success
- Save time updating data points across multiple pieces of content
- Give end users the most up to date content
- Use Dynamic Data in combination with Document Builder to further enhance the customer experience by including placeholders that can be customized
Before Getting Started
Dynamic Data has three key components:
- Source Document: This is typically an spreadsheet with data, charts or tables - or a presentation or document that contains pages with source data (example: Disclosures)
- Placeholders: These are specifically formatted strings of characters that specify the source document and what aspect of the source document to bring in
- Template Document: These documents contain placeholders that will get replaced when either the template is uploaded or when the source is updated
Dynamic Data Features
- Using Salesforce as a source to place data, tables and charts into files
-
Using a spreadsheet as a source to place data, tables and charts into files
-
Using a document or presentation as a source to place pages or slides into files
-
Placeholder syntax for spreadsheets, presentations or documents, images
Using Salesforce as a source to place data, tables and charts into files
Part 1: Prepare your spreadsheet source file to pull data and construct the chart
{datasource=salesforce,query=(SELECT StageName, sum(Incremental_Annualized__c) IncrementalARR FROM Opportunity GROUP BY StageName),refresh=daily,output=A3}

- datasource=salesforce: this is a signal to the system to go query Salesforce. In the future we can add other data sources
- query=... : this is the SOQL query that grabs data out of Salesforce. This specific query grabs data from the Opportunity object.
- refresh=daily: the query will be refreshed every night. Eventually we will support other options like hourly.
- output=C1: dump the output starting at cell A3.


Part 2 create the PowerPoint
For the second part, we create the PowerPoint presentation to pull the chart from Excel. For this, we've created a PowerPoint that uses our Dynamic Data capability to pull the Excel chart. The slide that pulls our chart in is very simple:
We upload this into Mediafly and wait for processing to complete. When it's done, we get the latest data, automatically pulled from Salesforce and placed into this chart!
Using a spreadsheet as a source to place data, tables and charts into files
Prepare your spreadsheet source file with the desired data points, charts or table
Upload the spreadsheet to Mediafly and locate the file ID
Next, create your template file that will contain the placeholders related to the source document
To create a placeholder for a chart from your source file, enter a text using the following format: {datasource=FileID,ChartName} where file ID is the ID from Mediafly and the chart name is from the source spreadsheet. Example: {datasource=75230721d2a1466c85ee39361908c4feproduct886604,GlobalWealthFund}
Once you add your placeholders, upload the template document to Mediafly
When viewing the document, all the placeholders will be replace with the values from the spreadsheet
Using a document or presentation as a source to place pages or slides into files
Prepare your source document or presentation
Upload the file to Mediafly and locate the file ID
Next, create your template file that will contain the placeholders related to the source document
To create a placeholder for the content from your source file, enter a text using the following format: {datasource=FileID} where file ID is the ID from Mediafly. Example: {datasource=75230721d2a1466c85ee39361908c4feproduct886604}
Once you add your placeholders, upload the template document to Mediafly
When viewing the document, all the placeholders will be replace with the values from the source document
Using an image as a source to place into files
Upload the image to Mediafly and locate the file ID
Next, create your template file that will contain the placeholders related to the source document
To create a placeholder for the content from your source file, enter a text using the following format: {datasource=FileID} where file ID is the ID from Mediafly. Example: {datasource=75230721d2a1466c85ee39361908c4feproduct886604}
Once you add your placeholders, upload the template document to Mediafly
When viewing the document, all the placeholders will be replace with the values from the source image
Placeholder Syntax
Spreadsheets
If you want to bring Excel data, charts, and tables into a PowerPoint or Word document:
- The syntax for the placeholders is: {Item ID,Selector}
- Item ID is the identifier for your Excel spreadsheet.
- Selector points to the data you want to select in your spreadsheet.
- Be sure that you don’t have any spaces after the starting { and before the ending }, or between the Item ID, the comma, or the Selector.
- Selector Types
- Cell number/name/range
- Examples
- Cell number, e.g. C1
- Cell name, e.g. LastUpdated
- Examples
- Sheet number/name
- Example, if you want cell B2 from Sheet 2, you need to provide Sheet=2,Cell=B2 otherwise the value from cell B2 on Sheet 1 will be selected. Sheet numbers start at 1. By default, the first sheet will be chosen if the sheet selector is not included
- Lookup selector
- Lookup selector is structured like this: lookup(value, match range, index range)
- value: the value to look up. For example, if my value is Alice, the system will look up the value Alice in the match range. Value can be wrapped by quotes if desired
- match range: the range of cells to try to find value. This can be a cell range (e.g. C1:C8, or C:C) or a named range (e.g. EmployeeNames). If the value is found within the match range, the index into the match range is then used to extract the value in the index range
- index range: extract the value for this placeholder from this range. This can be a cell range (e.g. D1:D8, or D:D) or a named range (e.g. EmployeeSalary). The length of this range should match the length of the match range range. The index from the match range is applied to this index range, and the value of that cell is then replaced into the placeholder.
- Cell number/name/range
Presentations or Documents
If you want to bring PowerPoint slides or a whole PowerPoint deck (e.g. disclosure/required items slides) into the template PowerPoint deck; or Word pages or whole document into the template Word document:
-
The syntax for the placeholders is: {Item ID,Selector[optional]}
-
Item ID is the identifier for your source PowerPoint or Word document.
-
Selector is an OPTIONAL parameter that points to the pages that you want to bring in. If you don’t specify it, the system will bring in all slides from the source PowerPoint/Word into the template PowerPoint/Word doc.
-
-
Be sure that you don’t have any spaces after the starting { and before the ending }, or between the Item ID, the comma, or the Selector.
-
Note that this syntax will fully replace the page on which the placeholder is specified. So, please don’t place any other text or placeholders on a page where this kind of placeholder is used.
Images
If you want to bring images into the template PowerPoint deck or Word document:
-
The syntax for the placeholders is: {Item ID}
-
Item ID is the identifier for your image
-
-
Be sure that you don’t have any spaces after the starting { and before the ending }, or between the Item ID, the comma, or the Selector
- Selector Types
- page=Page number expressed as a range. This is the specific page or set of pages that you wish to bring into the template presentation. Pages can be indicated one at a time, separated by commas, or a whole range can be indicated as [start page]-[end page]. For example, 1 brings in page 1; 1,3 brings in pages 1 and 3; 1-3,5 brings in pages 1,2,3 and 5.
- Example
- {datasource=fcfc9285b1ca4a53aa2e87f0ef097077product23700} This will replace the current page with all pages of the specified item.
- {datasource=fcfc9285b1ca4a53aa2e87f0ef097077product23700,page=1} This will replace the current page with page 1 of the specified item.
Frequently Asked Questions
Question: I get an error processing email. What did I do wrong? Answer: Be sure to verify that a) your selector has no spaces anywhere except in the name of the Sheet or Chart where applicable. Notably, make sure there are no spaces before or after the sheet or chart names, and no spaces before or after the commas. And verify that b) any double quotes are not turned into smart quotes/fancy quotes, which is something that PowerPoint and Word likes to do.
Question: Will Dynamic Data work if the spreadsheet and PowerPoint/Word doc live in different folders? Answer: Yes.
Question: Will Dynamic Data work if the source and template files are in different Mediafly environments? Answer: No.
Question: What combination of source file types and template file types work together? Answer: Today, we support:
- PowerPoint source slides that are brought into a PowerPoint template deck
- Word source pages that are brought into a Word template doc
- Excel source data that is brought into PowerPoint template decks or Word template docs
Question: Can I use a Word document or PowerPoint deck (not Excel) as the source document? Answer: Yes.
Question: Will this work with Google Sheets and Google Slides? Answer: Mostly. Google Sheets and Slides documents get ingested into Mediafly as PowerPoint and Excel, so the system mostly works as expected. One known issue: when exporting Google Sheets to Excel, charts do not export at all. This is an issue with Google Sheets; if that is resolved, then replacing chart placeholders with Dynamic Data will begin to work after that
Question: The original PowerPoint or Word doc I uploaded has selectors in it. Am I able to download that original version out of Airship or Viewer? Answer: Yes. In Viewer, If you open the source file, then navigate to File > View Details, and scroll to the bottom. Provided you have sufficient rights to download the source, you will see "Dynamic Data template" at the bottom. Tap on that, and you can download the source template.
Question: Will using Dynamic Data increase the processing time for documents? Answer: Yes. We've seen that processing time is 2x-3x as long for a document with placeholders than one without.
Question: Do I need access to the source file when I upload a template file? Answer: No. Currently, if you upload a template file that has placeholders referenced in any source file in your environment, they will be replaced.
Question: If the placeholder is in the Slide Master/Header/Footer, will it be correctly replaced? Answer: Yes. Dynamic Data will replace the placeholder even in those locations. This is especially useful if, for example, your slide template has a disclosure slide or a copyright year on every page via the Slide Master.
Question: Can I use Dynamic Data with Document Builder? Answer: Yes. If you have a slide or slides with both Dynamic Data and Document Builder placeholders, Mediafly will replace your Dynamic Data placeholders first, then prompt the user to replace Document Builder placeholders. Furthermore, when the source document changes, all Document Builder-assembled documents will update as well, automatically.
Comments
0 comments
Please sign in to leave a comment.