Breaking news from around the world
Get the Bing + MSN extension
Now Available in Community - MBAS 2019 Presentation Videos
Catch the most popular sessions on demand and learn how Dynamics 365, Power BI, PowerApps, Microsoft Flow, and Excel are powering major transformations around the globe. | View Gallery
2019 release wave 2 Discover the latest updates to Dynamics 365Release overview guides and videos Release Plan | Early Access Availability
Ace your Dynamics 365 deployment with packaged services delivered by expert consultants. | Explore service offerings
Connect with the ISV success team on the latest roadmap, developer tool for AppSource certification, and ISV community engagements | ISV self-service portal
The FastTrack program is designed to help you accelerate your Dynamics 365 deployment with confidence.
FastTrack Program | Finance TechTalks | Customer Engagement TechTalks | Talent TechTalks | Upcoming TechTalks
The Business Inbox in Outlook is one of the features that differentiates Dynamics 365 Business Central from other ERP products. There are two options for customizing or extending the Outlook add-in experience for Business Central:
In Part 1 of this two-part series, we discussed the first option of creating your own custom add-in, including an overview of the add-in architecture. In this blog post (Part 2), we’ll explore the second topic of customizing the Business Inbox in Outlook by creating AL extensions that modify the existing pages.
One of the items discussed in Part 1’s architectural overview that is particularly relevant to today’s topic is that the Outlook add-in for Business Central uses the standard Outlook extensibility model to surface Business Central functionality. This means, fundamentally, that an Outlook add-in is a frame in Outlook that loads some web page. In our case, that web page happens to be the Dynamics 365 Business Central web site. The Business Central web client is dynamically rendered in the Outlook add-in frame in a format streamlined for the experience.
This is great for the customization experience because it’s the same Business Central web client being rendered in Outlook that is rendered in the browser. This means that any extensions or customizations to the page that show in the web client will also show in the Outlook add-in, with a couple of notable differences that will be described heretofore.
We’ll use the Customer Rewards sample extension to illustrate the customization experience. You can find information on this sample extension and how to create it in the Building Your First Sample Extension with Extension Objects, Install Code, and Upgrade Code article on the Business Central documentation site. This walks you through the steps of creating a sample extension that adds a “Reward ID” field and “Rewards” action to the ribbon on the Customer Card, among a few other objects.
A unique aspect of how the Business Inbox in Outlook is rendered is the dashboard view for the customer, vendor, and contact cards. Rather than displaying the full card details, a dashboard overview of the business contact is displayed by default. This default view is rendered by displaying a stylized view of the FactBox information that displays on the right side of the card in the web client.
To illustrate this, consider the Customer Rewards sample extension. With this extension, the Reward ID field is added to the General section of the details on the Customer Card, as shown in the screenshot above. To view this field in the Outlook add-in, you would click the Toggle Details icon on the action ribbon of the add-in to show the customer details. The added Reward ID field will display here.
To get a field to display in the dashboard view, it needs to be added to the FactBox section of the card. On the Customer Card, there is an Office Customer Details section of the FactBox area that displays only if the client is the Outlook add-in. Adding the field to the Office Customer Details page will make the field display in the Outlook add-in.
Here is an example of the AL code you would use to add the “Reward ID” field to the dashboard in the Outlook add-in for the Customer Rewards sample extension.
The field then displays on in the dashboard view for the customer in the Outlook add-in.
For the three primary business contact types handled by the Outlook add-in (customer, vendor, and contact), these are the pages you would add a field to in order to get the field to display in the dashboard view of the add-in:
A second unique aspect of how the Business Inbox in Outlook is rendered is that only promoted actions are displayed on the action menu (ellipses icon) in the add-in. For actions to be available in the add-in, you just need to set the Promoted property to true, and select a promoted category where you want the action to display.
In this example, Category9 is the promoted Customer category on the Customer Card. The action displays in the Customer section of the action card in the add-in.
That’s it! This is a fairly simple example of just adding a field and an action to the Customer Card in the Outlook add-in, but provides an illustration of what you can do with AL extensions to customize the add-in experience. You can make the customizations as simple or complex as you need them to be.
Have ideas for some cool on changes you would like to see in the Business Inbox in Outlook? Feel free to toss them out in the comments below.
Get a list of all posts in the Holiday count down series here: https://community.dynamics.com/business/b/financials/archive/2018/11/28/counting-down-to-the-holidays-with-daily-blogs
@Mohana Yadav - the default add-in (Contact Insights) is set to always open the customer card for your Outlook contact. If you want to open something like the job list, I would recommend writing your own add-in, similar to what is described in part 1 of this blog post. You will then create your own "Host Type" (found in the URLs within the manifest). Make it unique, something that describes the scenario that you want your add-in to address. You would then write a handler codeunit for this host type. Within it, it would need an event subscriber to the event "OnGetExternalHandlerCodeunit" from the Office Management codeunit. This subscriber would set the handler codeunit to be itself essentially, and then you could write logic within the OnRun trigger to launch a specific page or do some other action.
How to run other pages like job list etc?
Though I used page.run job list in part 1, it is always running customer details only
Business Applications communities