Skip to main content
Headshot of article author Greg Lindhorst

Welcome the SetFocus function to Canvas apps!  You’ve got data to enter.  Get it done fast by having the app position the cursor in the input field where we should begin.  And when you go to validate, the app can take you directly to the offending entry, even if it scrolled off screen.

» Read more
Headshot of article author Greg Lindhorst

Welcome the With function to Canvas apps!  You can now simplify large formulas by dividing them into named sub-formulas, eliminate redundant sub-formulas, and easily work with functions that return records.  All while staying declarative and automatically responding to dependency changes.

» Read more
Headshot of article author Greg Lindhorst

Explore relationships, option sets, and other Common Data Service features with the Northwind Traders sample solution, recreated from the famous Microsoft Access sample. Detailed instructions are included for building the canvas app from scratch, explaining how to easily work with Many-to-one and One-to-many relationships between entities.

» Read more
Headshot of article author Greg Lindhorst

Introducing the JSON function for generating JavaScript Object Notation (JSON) within a canvas app. Use it to share data with systems and APIs that require JSON. You can also this function to encode and export images in base64 for the first time. And we also added two small features: #rrggbbaa notation and Color.Transparent.

» Read more
Headshot of article author Greg Lindhorst

Nobody wants to lose unsaved changed.  And yet there are many ways to exit a canvas app while still in a dirty state, from closing the browser tab to swiping back to the list of apps on the phone. Now there is a way to prevent losing unsaved changes.  The App object has two new […]

» Read more
Headshot of article author Greg Lindhorst

Canvas apps now fully support CDS time zone independent fields.  In the CDS preview connector we had blocked them until they were working properly.  All the work required has now been completed and fully deployed. Our mission was simple: Canvas and Model-driven apps should show and edit date/time values in the same manner.  Entering a […]

» Read more
Headshot of article author Greg Lindhorst

Common Data Service polymorphic lookups are now available from canvas apps.  You can now: Access, set, and filter on the Owner field of any record. Access and set the Company Name field (a Customer data type) of the Contacts entity. Access and set the Regarding field of activity entities such as Faxes, Phone Calls, Email Messages, […]

» Read more
Headshot of article author Greg Lindhorst

A quick note on two bite size features. Have you ever wondered why the Navigate function requires the second argument?   For example: Navigate( Screen2, None ) Why not just default the second argument?  Transitions can make for a more engaging user experience but most folks don’t use them. Yeah, we wondered that too.  With the […]

» Read more
Headshot of article author Greg Lindhorst

Lots of debuggers allow you to see the value of an expression simply by selecting it in the source.   You’ll recognize an example immediately: Wouldn’t it be great if Canvas apps had this same facility?  Imagine: Think about the implications. You don’t need to flip to the File menu and then navigate to the collection […]

» Read more
Headshot of article author Greg Lindhorst

This has to be one of the smallest features ever shipped.  We’ve modified the behavior of one character, and it is a small character at that.  But I think you will agree that it will have a major impact on your work. See if you can spot the difference.  Last week: This week: Did you […]

» Read more