{"id":107,"date":"2018-03-26T04:29:26","date_gmt":"2018-03-26T11:29:26","guid":{"rendered":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/power-apps\/new-feature-error-handling-and-writing-null-values-to-databases\/"},"modified":"2025-06-11T08:09:19","modified_gmt":"2025-06-11T15:09:19","slug":"new-feature-error-handling-and-writing-null-values-to-databases","status":"publish","type":"post","link":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/power-apps\/new-feature-error-handling-and-writing-null-values-to-databases\/","title":{"rendered":"New Experimental Feature: Error Handling and Writing Null values to databases"},"content":{"rendered":"<p><strong>What a great last few days for PowerApps!<\/strong>\u00a0 I hope you have been enjoying the announcements in the <a href=\"https:\/\/powerusers.microsoft.com\/t5\/PowerApps-Community-Blog\/PowerApps-Spring-Update-Blog-Bundle\/ba-p\/100580\">Spring Update Blog bundle<\/a>.\u00a0 Have you seen <a href=\"https:\/\/www.linkedin.com\/feed\/update\/urn:li:activity:6382350714949246978\">Satya\u2019s video<\/a>? <\/p>\n<p>This blog doesn\u2019t quite rise to the level of those others.\u00a0 It is more a statement of direction then a cool demo, although I do have one \u201ccrowd goes wild\u201d moment below.\u00a0 Many of you will yawn.\u00a0 But for some this will be a big deal because PowerApps can now write Null values to databases.<\/p>\n<h1>Experimental Features<\/h1>\n<p>But before I launch into the good stuff, let\u2019s talk about Experimental features and what that means. <\/p>\n<p>Today under the File menu, App settings, you will find \u201cExperimental features.\u201d\u00a0 It states that these features might change, break, or disappear at any time.\u00a0 We mark features in this manner when:<\/p>\n<ul>\n<li>We literally want to experiment.\u00a0 We\u2019d like the space to try out different designs, learn, iterate, and we\u2019d like to do so with your feedback too.\n<li>We want to roll out changes but we aren\u2019t completely sure of our design and the impact it may have on existing apps.\u00a0 Again your feedback is critical.\n<li>We aren\u2019t done with the feature but there is value in getting a partial solution to you. <\/li>\n<\/li>\n<\/li>\n<\/ul>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"496\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"772\"\/><\/a><\/p>\n<p>All of these reasons apply in the case of Error handling.\u00a0 Adding error handling is a large, pervasive change that could impact your apps in ways we can\u2019t foresee, yet there is value in getting the ability to write Nulls to you now.\u00a0 So we are going to keep the feature turned off for both old and new apps, and allow those of you who want to play with it and desire its benefits to opt-in.\u00a0 We\u2019ll keep improving the feature on our end and listening to your feedback. <\/p>\n<p>We\u2019ll let you know when we think we are done and are ready for more widespread usage.\u00a0 The description says we will be turning this feature on for all apps in September.\u00a0 We are actually going to remove that language as we aren\u2019t sure about the timeline.\u00a0 We do plan to eventually turn this on for everyone, without a switch, but only when the time is right.\u00a0 This feature will not just disappear.<\/p>\n<p>You will also notice that the \u201cData row limit for non-delegable queries\u201d feature is here.\u00a0 This feature is not experimental \u2013 we are done with it, it is here to stay, and you can you depend on it.\u00a0 This was merely a convenient place to put the setting.\u00a0 In the next few months we will be reorganizing these settings to better reflect the difference between Experimental and \u201cfinished\u201d app settings.<\/p>\n<h1>Handling Errors<\/h1>\n<p>It is no secret that PowerApps is inspired by Excel.\u00a0 But there is one aspect of Excel that PowerApps had not embraced: error handling.\u00a0 In Excel, one can write <a href=\"https:\/\/support.office.com\/en-us\/article\/IFERROR-function-C526FD07-CAEB-47B8-8BB6-63F3E417F611\">IfError<\/a>( &lt;value&gt;, &lt;value if error&gt; ) for which PowerApps had no equivalent.\u00a0 Errors in PowerApps would result in a simple Blank (or Null) value.\u00a0 Which caused issues because Blank values are legitimate non-error values in most databases.\u00a0 As a result, you could not write a Null value to SQL Server.<\/p>\n<p>I\u2019m using past tense intentionally.\u00a0 <strong>I\u2019m pleased to announce that PowerApps can now differentiate an error from a Blank and can write Null values to databases.<\/strong><\/p>\n<p>We have a small number of sources for errors at present.\u00a0 Division by zero, converting non-numbers to numbers, Text function usage with an invalid locale string.\u00a0 We are retrofitting some of the other functions to also return errors, such as Patch.\u00a0 This is partially why this is still an experimental feature \u2013 we aren\u2019t done.<\/p>\n<p>To ease the transition, errors operate like Blank values in most contexts.\u00a0 For example, <a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/functions\/function-isblank-isempty\">IsBlank<\/a><strong> <\/strong>will return <em>true<\/em> for them.\u00a0 They do not display as #DIV\/0!, #Error, or other representation as they do in Excel or other products, at least not yet.\u00a0 To detect an error, you need to use the new PowerApps\u2019 IfError function.<\/p>\n<h2>IfError( <em>value<\/em>, <em>value-if-error<\/em>, \u2026 )<\/h2>\n<p>This function is very similar to the Excel function of the same name, extended to support multiple fallback values.\u00a0 <a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/functions\/function-iferror\">IfError<\/a> evaluates its arguments in order and returns the first one that is not an error.\u00a0 IfError can be used to replace an error value with a valid value, such as in this example:<\/p>\n<blockquote>\n<p><strong>IfError( 1\/0, 2 )<\/strong><\/p>\n<\/blockquote>\n<p>returns the value 2, since 1\/0 results in a division by zero error.<\/p>\n<h2>ShowError( <em>message<\/em> )<\/h2>\n<p>If you detect an error, it is often nice to tell the user about it.\u00a0 <strong><a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/functions\/function-showerror\">ShowError<\/a><\/strong> will display a notification across the top of the app\u2019s screen, as a popup, just like system errors are displayed.<\/p>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/63aeecff-41bd-47ba-ba14-94ed98c417d9.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"224\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/63aeecff-41bd-47ba-ba14-94ed98c417d9.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"721\"\/><\/a><\/p>\n<p>Combined with IfError, this function can be used to report a problem to the user:<\/p>\n<blockquote>\n<p><strong>IfError( Value( \u201cnot-a-number\u201d), ShowError( \u201chey, that\u2019s not a number\u201d ) )<\/strong><\/p>\n<\/blockquote>\n<h2>Writing Nulls<\/h2>\n<p>Being able to handle errors is great.\u00a0 But here\u2019s the real payoff.\u00a0 Now that PowerApps can differentiate a Blank (Null) from an error, PowerApps can now write Null values to SQL Server.<\/p>\n<p>Take for example the Product table from Adventure Works, with lovely Null values for Size and Weight for the helmets:<\/p>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/5f0437f6-45ce-4956-855b-0e90e86ad2f7.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"124\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/5f0437f6-45ce-4956-855b-0e90e86ad2f7.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"614\"\/><\/a><\/p>\n<p>Let\u2019s build an App from Data for this table and edit the size and weight for the Sport-100 Helmets, Red:<\/p>\n<p><a href=\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-content\/uploads\/2024\/06\/14e1b71d-675e-4c86-8c14-1555cd4061bb.png\"><img loading=\"lazy\" decoding=\"async\" a=\"\" border=\"0\" height=\"598\" lt=\"image\" src=\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-content\/uploads\/2024\/06\/14e1b71d-675e-4c86-8c14-1555cd4061bb.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"ima\nge\" width=\"336\"\/><\/a><\/p>\n<p>Sure enough, that works great:<\/p>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/9a71e26c-48c3-42c1-90e8-dd6636d919cb.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"123\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/9a71e26c-48c3-42c1-90e8-dd6636d919cb.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"612\"\/><\/a><\/p>\n<p>But, you know on second thought, we\u2019re really not sure about that Weight.\u00a0 We should clear that information out.\u00a0 Let\u2019s make that change in PowerApps:<\/p>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/7a75af60-c476-435a-a236-4e56126c9b05.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"566\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/7a75af60-c476-435a-a236-4e56126c9b05.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"320\"\/><\/a><\/p>\n<p>Without turning on the error handling feature, it will seem like this app doesn\u2019t work at all.\u00a0 You can\u2019t seem to clear the Weight.\u00a0 Internally, PowerApps thinks the empty Weight is a Null value, which it thinks is an error, and it doesn\u2019t even attempt to write this to SQL Server.<\/p>\n<p>But with error handling enabled it works.\u00a0 The Null is properly differentiated from an error and is written to the database.\u00a0 And the <strong>crowd goes wild<\/strong> when they see a Null value written to a SQL table by PowerApps:<\/p>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/07f23f07-3e6a-4318-a751-c855c8cc4645.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"125\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/07f23f07-3e6a-4318-a751-c855c8cc4645.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"614\"\/><\/a><\/p>\n<h2>Empty strings vs. Blank (Null) values<\/h2>\n<p>Now, let\u2019s get tricky.\u00a0 Clear the Size field as well and try to save that to the database:<\/p>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/ff03f597-8a34-42f5-a9d1-fe0fe89bbaba.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"123\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/ff03f597-8a34-42f5-a9d1-fe0fe89bbaba.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"612\"\/><\/a><\/p>\n<p>Wait a minute, the Size isn\u2019t yellow and doesn\u2019t say Null?\u00a0 Could it be that we stored an empty string in the SQL table?\u00a0 For many of you a little voice just screamed \u201cNoooo!!\u201d inside your head.<\/p>\n<p>Ah, this is an old argument.\u00a0 There are two camps for how \u201cempty\u201d text fields should be stored:<\/p>\n<ul>\n<li>It is an empty string, an actual string with zero length that contains no characters.\u00a0\n<li>It is a Blank (Null) value, distinct from a string.\u00a0 Similar to a Boolean that can be only True or False, in addition a third possible value of Null is possible. <\/li>\n<\/li>\n<\/ul>\n<p>For the most part, the Text Input control will return an empty string if no characters are within it.\u00a0 This is consistent with other PowerApps controls that return valid, non-Blank values if they can.\u00a0 There are exceptions where it will return a Null today that we we will be fixing in the weeks ahead.\u00a0 For those who favor empty strings, the output from the Text Input can be stored directly.<\/p>\n<p>If you prefer to store Null values, you will need to convert the empty string returned by the Text Input control into a Null.\u00a0 The easiest way to do this is by using the formula <strong>Coalesce( TextInput.Text, Blank() )<\/strong>.\u00a0 <a href=\"https:\/\/docs.microsoft.com\/en-us\/powerapps\/maker\/canvas-apps\/functions\/function-isblank-isempty\">Coalesce<\/a> uses the same test as IsBlank: it is looking for either an empty string or a Null value.\u00a0 A great place for this conversion is the Update property on data cards in the form which you can apply today by unlocking the card:<\/p>\n<blockquote>\n<p><strong>DataCard.Update = Coalesce( TextInput.Text, Blank() )<\/strong>. <\/p>\n<\/blockquote>\n<p>In fact, that\u2019s exactly the change I made to my app, resulting in the following and we are finally back to where we started:<\/p>\n<p><a href=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/142510f7-3b46-4bce-9ebc-d122092b6bc8.png\"><img loading=\"lazy\" decoding=\"async\" alt=\"image\" border=\"0\" height=\"124\" src=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/142510f7-3b46-4bce-9ebc-d122092b6bc8.png\" style=\"border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; margin: 0px; display: inline; padding-right: 0px; border-top-width: 0px\" title=\"image\" width=\"614\"\/><\/a><\/p>\n<p>Why didn\u2019t we need do this for Weight?\u00a0 Because it is a numeric field that only has one possible representation for the \u201cempty\u201d state: Null.<\/p>\n<p>Since we believe most people prefer to store Null values in databases we will be changing the data cards for new apps to do this conversion by default.\u00a0 Which moving forward puts the onus on those who prefer empty strings to remove this conversion if that is what they prefer.\u00a0 This change hasn\u2019t happened yet, it will be coming in the weeks ahead.<\/p>\n<p>So, here\u2019s a recap, for string fields only:<\/p>\n<ul>\n<li>If you prefer Nulls:\n<ul>\n<li>Text Input control will return an empty string \u201c\u201d.\u00a0 You will need to convert this to a Null with <strong>DataCard.Update = Coalesce( TextInput.Text, Blank() ) <\/strong>before writing to the database.\n<li>In a few weeks, we will have done this conversion for you for new apps and fields. <\/li>\n<\/li>\n<\/ul>\n<li>If you prefer empty strings:\n<ul>\n<li>You won\u2019t want the conversion, now or in the future.\u00a0 The Text Input control is doing what you want and can be written to the database directly.\n<li>In a few weeks, you will need to unlock the data cards and remove the conversion we will be inserting automatically.\u00a0 If there are enough empty string people out there, we can look at adding an easier way to remove the conversion. <\/li>\n<\/li>\n<\/ul>\n<\/li>\n<\/li>\n<\/ul>\n<h2>Wouldn\u2019t it be great\u2026<\/h2>\n<ul>\n<li>Wouldn\u2019t it be great if the Patch function would return an error instead of a Null when there is a problem writing data?\u00a0\n<li>Wouldn\u2019t it be great if there was an Error object that you could look at inside an IfError to get more details about the error?\n<li>Wouldn\u2019t it be great if there was an OnError event at the app level to catch errors across the app, so that you can globally suppress the ones you don\u2019t care about and still show a message for the ones you do? <\/li>\n<\/li>\n<\/li>\n<\/ul>\n<p>These are all on the drawing table and more.\u00a0 We\u2019re only beginning this journey.<\/p>\n<h1>Your feedback<\/h1>\n<p>As always, we deeply appreciate your feedback.\u00a0 Adding error and Null handling to an existing product is not a small or isolated change \u2013 we need your help to get it right.\u00a0 Please let us know what you think, offer any suggestions, and report any problems you run into.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>You can now capture errors, display custom error notifications, and most importantly write Null values to databases.  This is an experimental feature that you will need to opt-in to as we continue improving this feature over the months ahead.<\/p>\n","protected":false},"author":86,"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":[3424],"job-role":[],"product":[3473],"property":[],"topic":[],"coauthors":[2104],"class_list":["post-107","post","type-post","status-publish","format-standard","hentry","audience-it-professional","content-type-news","product-power-apps"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>New Experimental Feature: Error Handling and Writing Null values to databases - 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:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"New Experimental Feature: Error Handling and Writing Null values to databases - Microsoft Power Platform Blog\" \/>\n<meta property=\"og:description\" content=\"You can now capture errors, display custom error notifications, and most importantly write Null values to databases. This is an experimental feature that you will need to opt-in to as we continue improving this feature over the months ahead.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/power-apps\/new-feature-error-handling-and-writing-null-values-to-databases\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Power Platform Blog\" \/>\n<meta property=\"article:published_time\" content=\"2018-03-26T11:29:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-11T15:09:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png\" \/>\n<meta name=\"author\" content=\"Greg Lindhorst\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Greg Lindhorst\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/\"},\"author\":[{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/author\/greg-lindhorst\/\",\"@type\":\"Person\",\"@name\":\"Greg Lindhorst\"}],\"headline\":\"New Experimental Feature: Error Handling and Writing Null values to databases\",\"datePublished\":\"2018-03-26T11:29:26+00:00\",\"dateModified\":\"2025-06-11T15:09:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/\"},\"wordCount\":1712,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png\",\"keywords\":[\"Formulas\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/\",\"url\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/\",\"name\":\"New Experimental Feature: Error Handling and Writing Null values to databases - Microsoft Power Platform Blog\",\"isPartOf\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png\",\"datePublished\":\"2018-03-26T11:29:26+00:00\",\"dateModified\":\"2025-06-11T15:09:19+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage\",\"url\":\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png\",\"contentUrl\":\"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"New Experimental Feature: Error Handling and Writing Null values to databases\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#website\",\"url\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/\",\"name\":\"Microsoft Power Platform Blog\",\"description\":\"Innovate with Business Apps\",\"publisher\":{\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cm-edgetun.pages.dev\/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:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#organization\",\"name\":\"Microsoft Power Platform Blog\",\"url\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png\",\"contentUrl\":\"https:\/\/cm-edgetun.pages.dev\/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:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#\/schema\/person\/dbd4cb8af4503e696f240353831f05d4\",\"name\":\"Greg Lindhorst\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/d2e26bc357423265c4eeeb6a4ed51bd71fb29b8eced3e31f4bc1ccd5bedaf80f?s=96&d=mm&r=g0133d144d5ed416197bd3b29ccd9a59c\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/d2e26bc357423265c4eeeb6a4ed51bd71fb29b8eced3e31f4bc1ccd5bedaf80f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/d2e26bc357423265c4eeeb6a4ed51bd71fb29b8eced3e31f4bc1ccd5bedaf80f?s=96&d=mm&r=g\",\"caption\":\"Greg Lindhorst\"},\"url\":\"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/author\/gregli\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"New Experimental Feature: Error Handling and Writing Null values to databases - 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:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/","og_locale":"en_US","og_type":"article","og_title":"New Experimental Feature: Error Handling and Writing Null values to databases - Microsoft Power Platform Blog","og_description":"You can now capture errors, display custom error notifications, and most importantly write Null values to databases. This is an experimental feature that you will need to opt-in to as we continue improving this feature over the months ahead.","og_url":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/power-apps\/new-feature-error-handling-and-writing-null-values-to-databases\/","og_site_name":"Microsoft Power Platform Blog","article_published_time":"2018-03-26T11:29:26+00:00","article_modified_time":"2025-06-11T15:09:19+00:00","og_image":[{"url":"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png","type":"","width":"","height":""}],"author":"Greg Lindhorst","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Greg Lindhorst","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#article","isPartOf":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/"},"author":[{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/author\/greg-lindhorst\/","@type":"Person","@name":"Greg Lindhorst"}],"headline":"New Experimental Feature: Error Handling and Writing Null values to databases","datePublished":"2018-03-26T11:29:26+00:00","dateModified":"2025-06-11T15:09:19+00:00","mainEntityOfPage":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/"},"wordCount":1712,"commentCount":0,"publisher":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#organization"},"image":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage"},"thumbnailUrl":"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png","keywords":["Formulas"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/","url":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/","name":"New Experimental Feature: Error Handling and Writing Null values to databases - Microsoft Power Platform Blog","isPartOf":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage"},"image":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage"},"thumbnailUrl":"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png","datePublished":"2018-03-26T11:29:26+00:00","dateModified":"2025-06-11T15:09:19+00:00","breadcrumb":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#primaryimage","url":"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png","contentUrl":"https:\/\/pwrappscdn.azureedge.net\/mediahandler\/blog\/media\/PowerApps\/blog\/30b9ac9e-99f3-403e-8230-c3d488a11a04.png"},{"@type":"BreadcrumbList","@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/2018\/03\/26\/new-feature-error-handling-and-writing-null-values-to-databases\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/"},{"@type":"ListItem","position":2,"name":"New Experimental Feature: Error Handling and Writing Null values to databases"}]},{"@type":"WebSite","@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#website","url":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/","name":"Microsoft Power Platform Blog","description":"Innovate with Business Apps","publisher":{"@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cm-edgetun.pages.dev\/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:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#organization","name":"Microsoft Power Platform Blog","url":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-content\/uploads\/2020\/03\/Microsoft-Logo-e1685482038800.png","contentUrl":"https:\/\/cm-edgetun.pages.dev\/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:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/#\/schema\/person\/dbd4cb8af4503e696f240353831f05d4","name":"Greg Lindhorst","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d2e26bc357423265c4eeeb6a4ed51bd71fb29b8eced3e31f4bc1ccd5bedaf80f?s=96&d=mm&r=g0133d144d5ed416197bd3b29ccd9a59c","url":"https:\/\/secure.gravatar.com\/avatar\/d2e26bc357423265c4eeeb6a4ed51bd71fb29b8eced3e31f4bc1ccd5bedaf80f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d2e26bc357423265c4eeeb6a4ed51bd71fb29b8eced3e31f4bc1ccd5bedaf80f?s=96&d=mm&r=g","caption":"Greg Lindhorst"},"url":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/author\/gregli\/"}]}},"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:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/107","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/users\/86"}],"replies":[{"embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/comments?post=107"}],"version-history":[{"count":1,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/107\/revisions"}],"predecessor-version":[{"id":131100,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/posts\/107\/revisions\/131100"}],"wp:attachment":[{"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/media?parent=107"}],"wp:term":[{"taxonomy":"audience","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/audience?post=107"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/content-type?post=107"},{"taxonomy":"job-role","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/job-role?post=107"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/product?post=107"},{"taxonomy":"property","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/property?post=107"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/topic?post=107"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/cm-edgetun.pages.dev\/en-us\/power-platform\/blog\/wp-json\/wp\/v2\/coauthors?post=107"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}