{"id":109190,"date":"2018-05-02T03:00:18","date_gmt":"2018-05-02T10:00:18","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/power-apps\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/"},"modified":"2025-06-11T08:08:50","modified_gmt":"2025-06-11T15:08:50","slug":"return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method","status":"publish","type":"post","link":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/power-apps\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/","title":{"rendered":"Return an array from a SQL Stored Procedure to PowerApps (Split Method)"},"content":{"rendered":"<p><em>Author&#8217;s note: this blog has been updated with a link to the <a href=\"https:\/\/powerapps.microsoft.com\/en-us\/blog\/return-an-array-from-flow-to-powerapps-response-method\/\">Request &#8211; Response method<\/a>.<\/em><\/p>\n<p>Users who want to execute a SQL stored procedure in Flow can now send its resulting array into PowerApps. The Flow team released this new feature called\u00a0<a href=\"https:\/\/preview.flow.microsoft.com\/en-us\/blog\/return-data-to-powerapps\/\">&#8220;Respond to PowerApps&#8221;<\/a>\u00a0that now makes it easier to retrieve data than creating a custom connector.\u00a0A flow that is triggered in PowerApps can return that data into the same instance of the app.\u00a0This enables scenarios in which thousands of records can be called for viewing, editing, and shaping.\u00a0You can read more about it\u00a0<a href=\"https:\/\/preview.flow.microsoft.com\/en-us\/blog\/return-data-to-powerapps\/\">here<\/a>.<\/p>\n<p>Presently, the data that is returned can take the form of a text string, file, or email address. Directly returning an array is not among that list, but it can still be done with a workaround you&#8217;ll learn about from reading further.<\/p>\n<h2 style=\"font-style: normal; font-family: Tahoma, 'Helvetica Neue', Arial, Helvetica, sans-serif;\">The Big Idea<\/h2>\n<p>There are many other methods of returning an array to PowerApps. You could call an Azure function or an Azure Logic App through a custom connector, but those are at a high level. The method you will read about in this blog uses the Split() formula in PowerApps to parse a text string back into an array. Intermediate to advanced users may want to explore the <a href=\"https:\/\/preview.flow.microsoft.com\/en-us\/blog\/howto-upload-return-file\/\">&#8220;Request &#8211; Response&#8221;<\/a> action, which will be featured in a subsequent blog. You can now read <a href=\"https:\/\/powerapps.microsoft.com\/en-us\/blog\/return-an-array-from-flow-to-powerapps-response-method\/\">an in-depth blog about Request &#8211; Response<\/a>.<\/p>\n<p>We will be using a SQL stored procedure for our array, but you could easily substitute any other action step that produces an array into the flow. This solution makes it possible for you to revise your stored procedure query without needing to reopen and resave your app or flow.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.png\" style=\"font-weight: 400; font-style: normal; font-size: 13.008px; font-family: Tahoma, 'Helvetica Neue', Arial, Helvetica, sans-serif; width: 75%; height: 20%;\"\/><\/p>\n<p>The flow would include the following steps:<\/p>\n<ol>\n<li>Trigger the flow by clicking a button in PowerApps.<\/li>\n<li>Execute the SQL stored procedure.<\/li>\n<li>Select the desired columns for parsing later.<\/li>\n<li>Join the array into a single text string with a strategic delimiter.<\/li>\n<li>Respond to PowerApps with the text string.<\/li>\n<\/ol>\n<p>Once PowerApps receives the text string, all that remains is to parse the string back into an array using the\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/functions\/function-split\">Split() function<\/a>\u00a0and\u00a0<a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/functions\/function-table-shaping\">AddColumns()<\/a>.<\/p>\n<p>You can follow along in this blog or watch this video:<\/p>\n<p><iframe loading=\"lazy\" allowfullscreen=\"allowfullscreen\" frameborder=\"0\" height=\"315\" src=\"https:\/\/www.youtube-nocookie.com\/embed\/L4pPCDXoL7c\" width=\"560\"><\/iframe><\/p>\n<h2 style=\"font-style: normal; font-family: Tahoma, 'Helvetica Neue', Arial, Helvetica, sans-serif;\">Getting Started<\/h2>\n<p>The scenario described in this tutorial will operate on a SQL stored procedure for a narrow use case of retrieving records of data, but you are more than welcome to substitute any action that produces an array within Flow so that you can follow along: a SharePoint list, a list of documents in OneDrive, tags from Computer Vision API, etc. If you have not already done so:<\/p>\n<ul>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/sql\/relational-databases\/stored-procedures\/create-a-stored-procedure?view=sql-server-2017\">create a SQL stored procedure<\/a><\/li>\n<li><a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/connections\/connection-azure-sqldatabase\">connect SQL to PowerApps and Flow<\/a><\/li>\n<\/ul>\n<p>You may also want to preemptively decide which columns you would like to return into PowerApps if your stored procedure does not already do so.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/flow20sql.png\" style=\"font-size: 13.008px; height: 400px; width: 417px;\"\/><\/p>\n<p>This project will involve copy-pasting a formula that will be generated for you. Please download the file below to have it ready:<\/p>\n<p><a href=\"https:\/\/aka.ms\/splitarray\" rel=\"noopener\" target=\"_blank\">Formula generator app<\/a><\/p>\n<h2 style=\"font-style: normal; font-family: Tahoma, 'Helvetica Neue', Arial, Helvetica, sans-serif;\">Creating the Flow<\/h2>\n<p>You can begin by clicking &#8220;+Create from blank&#8221; button on the screen for\u00a0<a href=\"https:\/\/flow.microsoft.com\/manage\/flows\/\">My Flows<\/a>.<\/p>\n<p>1. &#8220;Trigger the flow by clicking a button in PowerApps.&#8221; As a best practice, for situations where you would want to return data from Flow to PowerApps, you may want to make it a habit to start the setup your flow with both the trigger and response for PowerApps. Think of it like the bread of a sandwich&#8211;all of the other steps are the ingredients in between. We will configure the response step later.<\/p>\n<p>From there, you would need to hover in between the steps and click the + button to create your next steps.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/powerapps20-20respond20from20flow.png\" style=\"font-size: 13.008px; width: 75%; height: 87%;\"\/><\/p>\n<p>Your two steps from PowerApps should look like this:<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/powerapps20-20respond20from20flow202.png\" style=\"font-size: 13.008px; height: 38%; width: 75%;\"\/><\/p>\n<p>2. &#8220;Execute the SQL stored procedure&#8221;<\/p>\n<p>Insert a step in between the two steps for PowerApps. Search for &#8220;stored procedure&#8221; and select the option for &#8220;SQL Server &#8211; Execute stored procedure.&#8221;<\/p>\n<p>From the dropdown menu for Procedure name, select the name of your stored procedure. Although you are not able to edit the query of the stored procedure from within Flow, you may still do so from SMSS or your SQL manager of choice without needing to redo this flow.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/blog20-20stored20proc202.png\" style=\"font-size: 13.008px; width: 75%; height: 16%;\"\/><\/p>\n<p>3. &#8220;Select the desired columns for parsing later.&#8221;<\/p>\n<p>By this step, Flow will have the data from the stored procedure in an array formatted in JSON. The purpose of this step is to limit the columns returned to those that are not complex to work within the limits of the formula generating app.<\/p>\n<p>Insert a step and search for &#8220;Data Operations &#8211; Select.&#8221;<\/p>\n<p>Click into the From field and use the dynamic content box to choose the results of the &#8220;Execute stored procedure&#8221; step.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/blog20-20stored20proc206.png\" style=\"font-size: 13.008px; width: 75%; height: 19%;\"\/><\/p>\n<p>There are two columns in the section for Map (&#8216;map&#8217; as in how do you want to map your columns): &#8220;Enter key&#8221; on the left and &#8220;Enter value&#8221; on the right.<\/p>\n<p>Click into each row in the &#8220;Enter value&#8221; column and use the dynamic content box to choose the columns you want from your stored procedure.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/blog20-20stored20proc207.png\" style=\"font-size: 13.008px; width: 75%; height: 27%;\"\/><\/p>\n<p>In the corresponding &#8220;Enter key&#8221; column, type in a column name for each column.<\/p>\n<p>4. &#8220;Join the array into a single text string with a strategic delimiter.&#8221;<\/p>\n<p>The Select step has reduced the stored procedure to a few select columns, but the data is still a table. In order to turn the table into a text string to be returned to PowerApps, we need to join each row and its column data side by side.<\/p>\n<p>The Join step will concatenate the full contents of each row side by side in a long text string. Each row in that text string is separated by a text delimiter. The image below uses &#8220;n&#8221; as its delimiter to distinguish each row, but you should use something more unique that will not conflict with the data you have.<\/p>\n<p>We need a unique and easily identifiable delimiter since we will search for it and remove it to recreate our array when we get into PowerApps.<\/p>\n<p>In the From field, use the dynamic content panel to choose the Output from the Select step. In the &#8220;Join with&#8221; field, type in a delimiter you would like to use to separate each row.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/blog20-20stored20proc204.png\" style=\"font-size: 13.008px; width: 75%; height: 23%;\"\/><\/p>\n<p>5. &#8220;Respond to PowerApps with the text string.&#8221;<\/p>\n<p>Now that all the steps in between are ready, it&#8217;s time to configure the &#8220;Respond to PowerApps&#8221; step that we had started with.<\/p>\n<p>Click the &#8220;+ Add an output&#8221; button and select Text. In the left field type in a name for this text string that you want to use to recall it in PowerApps. In the right field use the dynamic content panel to choose the Output from the Join step.<\/p>\n<p><img decoding=\"async\" alt=\"\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/blog20-20stored20proc205.png\" style=\"font-size: 13.008px; width: 75%; height: 25%;\"\/><\/p>\n<p>Give your flow a name and save it.\u00a0Our flow is ready to use!<\/p>\n<p>\u00a0<\/p>\n<h2 style=\"font-style: normal; font-family: Tahoma, 'Helvetica Neue', Arial, Helvetica, sans-serif;\">Parsing the Array in PowerApps<\/h2>\n<p>Open an existing app or create a blank one to test out your flow.<\/p>\n<p>As mentioned before, you can download an <a href=\"https:\/\/aka.ms\/splitarray\" rel=\"noopener\" target=\"_blank\">app for generating a formula<\/a> that can split the text string from Flow back into an array.<\/p>\n<ul>\n<li>Open another instance of the Power Apps Studio.<\/li>\n<li>Click File, then Open.<\/li>\n<li>Browse for the msapp file that you downloaded.<\/li>\n<\/ul>\n<p>When the app opens, fill out the text boxes with details for your app:<\/p>\n<ul>\n<li>Name of your flow: include single quotes if your flow&#8217;s name would require them.<\/li>\n<li>Name of text field returned from flow: the name of the field you chose in the last step of your flow.<\/li>\n<li>Name of variable for flow response: the name of a variable that will be receiving the string from the flow.<\/li>\n<li>Name of collection for records: the name of the collection that will be the array you use throughout the app<\/li>\n<li>Delimiter from join: the delimiter you chose for the Join step in your flow.<\/li>\n<\/ul>\n<p>Click &#8216;+ New column&#8217; to add the column names in your app. Use the drop down menu beside each column to determine its type. This tool is limited to only strings, numbers, and Boolean values.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" alt=\"\" class=\"aligncenter wp-image-12462 size-large\" height=\"296\" src=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/split_array_app-1024x578.png\" width=\"525\"\/><\/p>\n<p>A formula will be generated in the box below. Copy this formula to a button or other control in your app that will be getting data.<\/p>\n<p>The formula contains some comments, but how do you make sense of this formula?<\/p>\n<ul>\n<li>The Set() formula defines a variable to take the text string that was returned from Flow.<\/li>\n<li>The Split() part of the formula takes the text in that variable and separates a new row each time it recognizes the delimiter &#8220;n&#8221;.<\/li>\n<li>A helper column is added that parses each resulting row into a column name (key) and its contents (value). These are known as key-value pairs.<\/li>\n<li>The columns you defined look up their values from the helper column.<\/li>\n<li>Depending on the type of data for a given column, the formula adapts to validate numbers with the Value() function, or set it equal to &#8220;true&#8221; to get a Boolean value.<\/li>\n<li>The resulting array with new column names and validated data is put into a collection.<\/li>\n<\/ul>\n<h2 style=\"font-style: normal; font-family: Tahoma, 'Helvetica Neue', Arial, Helvetica, sans-serif;\">Next Steps<\/h2>\n<p>From there, you can perform all the usual actions for collections: Filter(), LookUp(), Sum(), etc. against your collection. As you can be returning tens of thousands of records that you could not do before&#8211;within a matter of seconds&#8211;the capability of passing data from Flow to PowerApps is one that enables use cases that rely on large data sets and aggregate functions.<\/p>\n<p>In the next blog post in this series, you will learn about how to use the <a href=\"https:\/\/powerapps.microsoft.com\/en-us\/blog\/return-an-array-from-flow-to-powerapps-response-method\/\">&#8220;Request &#8211; Response&#8221; method<\/a> to return an array from Flow into PowerApps, the standard approach.<\/p>\n<h2 style=\"font-style: normal; font-family: Tahoma, 'Helvetica Neue', Arial, Helvetica, sans-serif;\">Related Resources<\/h2>\n<p>Related ideas on where to apply this capability:<\/p>\n<p><a href=\"https:\/\/powerapps.microsoft.com\/en-us\/blog\/performance-considerations-with-powerapps\/\">Performance considerations with PowerApps<\/a><br \/>\n<a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/delegation-overview\">Delegation overview<\/a><\/p>\n<p>Hyperlinks used in this blog:<\/p>\n<p><a href=\"https:\/\/preview.flow.microsoft.com\/en-us\/connectors\/shared_sql\/sql-server\/\">SQL Connector<\/a><br \/>\n<a href=\"https:\/\/www.youtube.com\/watch?v=L4pPCDXoL7c\">Video tutorial<\/a><br \/>\n<a href=\"https:\/\/aka.ms\/splitarray\" rel=\"noopener\" target=\"_blank\">App for making your Split() formula<\/a><\/p>\n<p>\u00a0<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Now that you can return data from Microsoft Flow to PowerApps, how can you return a full array?<\/p>\n","protected":false},"author":111,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ms_queue_id":[],"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","_alt_title":"","ms-ems-related-posts":[],"footnotes":""},"audience":[3378],"content-type":[],"job-role":[],"product":[3473],"property":[],"topic":[3421],"coauthors":[2067],"class_list":["post-109190","post","type-post","status-publish","format-standard","hentry","audience-it-professional","product-power-apps","topic-application-modernization"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Return an array from a SQL Stored Procedure to PowerApps (Split Method) - Microsoft Power Platform Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Return an array from a SQL Stored Procedure to PowerApps (Split Method) - Microsoft Power Platform Blog\" \/>\n<meta property=\"og:description\" content=\"Now that you can return data from Microsoft Flow to PowerApps, how can you return a full array?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/power-apps\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Power Platform Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-05-02T10:00:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-11T15:08:50+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.png\" \/>\n<meta name=\"author\" content=\"Brian Dang\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Brian Dang\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/\"},\"author\":[{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/author\/brian-dang\/\",\"@type\":\"Person\",\"@name\":\"Brian Dang\"}],\"headline\":\"Return an array from a SQL Stored Procedure to PowerApps (Split Method)\",\"datePublished\":\"2018-05-02T10:00:18+00:00\",\"dateModified\":\"2025-06-11T15:08:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/\"},\"wordCount\":1624,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.png\",\"keywords\":[\"Formulas\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/\",\"url\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/\",\"name\":\"Return an array from a SQL Stored Procedure to PowerApps (Split Method) - Microsoft Power Platform Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.png\",\"datePublished\":\"2018-05-02T10:00:18+00:00\",\"dateModified\":\"2025-06-11T15:08:50+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage\",\"url\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.webp\",\"contentUrl\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.webp\",\"width\":2001,\"height\":522},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Return an array from a SQL Stored Procedure to PowerApps (Split Method)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#website\",\"url\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/\",\"name\":\"Microsoft Power Platform Blog\",\"description\":\"Innovate with Business Apps\",\"publisher\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#organization\",\"name\":\"Microsoft Power Platform Blog\",\"url\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png\",\"contentUrl\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png\",\"width\":194,\"height\":145,\"caption\":\"Microsoft Power Platform Blog\"},\"image\":{\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#\/schema\/person\/fa2df25017a214b1680fa74202b0d428\",\"name\":\"Brian Dang\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/0a514bad0a27660d898f1a8ee871c686e2dc06ae14bb9aceff03be3908521a23?s=96&d=mm&r=g07c5a0dbf4f02e2887df444f80a2a19a\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0a514bad0a27660d898f1a8ee871c686e2dc06ae14bb9aceff03be3908521a23?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0a514bad0a27660d898f1a8ee871c686e2dc06ae14bb9aceff03be3908521a23?s=96&d=mm&r=g\",\"caption\":\"Brian Dang\"},\"url\":\"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/author\/brdang\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Return an array from a SQL Stored Procedure to PowerApps (Split Method) - Microsoft Power Platform Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/","og_locale":"en_US","og_type":"article","og_title":"Return an array from a SQL Stored Procedure to PowerApps (Split Method) - Microsoft Power Platform Blog","og_description":"Now that you can return data from Microsoft Flow to PowerApps, how can you return a full array?","og_url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/power-apps\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/","og_site_name":"Microsoft Power Platform Blog","article_published_time":"2018-05-02T10:00:18+00:00","article_modified_time":"2025-06-11T15:08:50+00:00","og_image":[{"url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.png","type":"","width":"","height":""}],"author":"Brian Dang","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Brian Dang","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#article","isPartOf":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/"},"author":[{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/author\/brian-dang\/","@type":"Person","@name":"Brian Dang"}],"headline":"Return an array from a SQL Stored Procedure to PowerApps (Split Method)","datePublished":"2018-05-02T10:00:18+00:00","dateModified":"2025-06-11T15:08:50+00:00","mainEntityOfPage":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/"},"wordCount":1624,"commentCount":0,"publisher":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#organization"},"image":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage"},"thumbnailUrl":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.png","keywords":["Formulas"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/","url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/","name":"Return an array from a SQL Stored Procedure to PowerApps (Split Method) - Microsoft Power Platform Blog","isPartOf":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage"},"image":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage"},"thumbnailUrl":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.png","datePublished":"2018-05-02T10:00:18+00:00","dateModified":"2025-06-11T15:08:50+00:00","breadcrumb":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#primaryimage","url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.webp","contentUrl":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2018\/05\/stored20proc20-20flow.webp","width":2001,"height":522},{"@type":"BreadcrumbList","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/2018\/05\/02\/return-an-array-from-a-sql-stored-procedure-to-powerapps-split-method\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/"},{"@type":"ListItem","position":2,"name":"Return an array from a SQL Stored Procedure to PowerApps (Split Method)"}]},{"@type":"WebSite","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#website","url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/","name":"Microsoft Power Platform Blog","description":"Innovate with Business Apps","publisher":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#organization","name":"Microsoft Power Platform Blog","url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png","contentUrl":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png","width":194,"height":145,"caption":"Microsoft Power Platform Blog"},"image":{"@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/#\/schema\/person\/fa2df25017a214b1680fa74202b0d428","name":"Brian Dang","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/0a514bad0a27660d898f1a8ee871c686e2dc06ae14bb9aceff03be3908521a23?s=96&d=mm&r=g07c5a0dbf4f02e2887df444f80a2a19a","url":"https:\/\/secure.gravatar.com\/avatar\/0a514bad0a27660d898f1a8ee871c686e2dc06ae14bb9aceff03be3908521a23?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0a514bad0a27660d898f1a8ee871c686e2dc06ae14bb9aceff03be3908521a23?s=96&d=mm&r=g","caption":"Brian Dang"},"url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/author\/brdang\/"}]}},"bloginabox_animated_featured_image":null,"bloginabox_display_generated_audio":false,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Power Platform Blog","distributor_original_site_url":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/109190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/users\/111"}],"replies":[{"embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/comments?post=109190"}],"version-history":[{"count":9,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/109190\/revisions"}],"predecessor-version":[{"id":124682,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/109190\/revisions\/124682"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/media?parent=109190"}],"wp:term":[{"taxonomy":"audience","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/audience?post=109190"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/content-type?post=109190"},{"taxonomy":"job-role","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/job-role?post=109190"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/product?post=109190"},{"taxonomy":"property","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/property?post=109190"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/topic?post=109190"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/coauthors?post=109190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}