How to build a Workspace in MS Dynamics 365 FO
Dynamics 365 Finance and Operations provides different options to navigate different pages. Workspace is one of those features provided by Microsoft to present and view the information. Workspace provides overview of your business processes at one central location.
In this blog I will go through the steps to create workspaces and use filters on them.
Steps to Create Custom Workspace:
1- Create project in Visual Studio.
2- Add new form in project.
3- Right click on Design node and apply ‘Workspace Tabbed’ pattern.
4- Create New Tab ‘Workspace Tab’.
5- Inside ‘Workspace Tab’ create Group and apply pattern ‘Filters and toolbars – Inline’.
6- Inside ‘Workspace Tab’, create new Tab ‘Panaroma’.
7- ‘Panaroma’ Tab contains 3 Tab pages.
‘TileContainer’ to display counts on Tile.
‘TabbedListSection’ to display data in Workspace.
‘Links’ to display related links in workspace
8- Add filter in filters group. WorkspaceTab => WorkspaceFiltersGroup => FiltersGroup => ContractIdFilter
9- Provide datasource to filter.
10- Right click project => Add new Item => Tile
Set Type property to Count and Query to ‘uerLicensor30daysExpiryQuery’ (creating in step#11).
11- Right click project => Add new Item => Query
Override Init method of Query and apply code on which you want to display data count on tile.
In my case I want to display contracts expiring in next 30 days
12- Create new Form and apply pattern ‘Form Part Section List’.
13- Add New new Group ‘HeaderGroup’ and apply pattern ‘Filters and Toolbar-inline’.
14- If you want to apply any filter you can use button group inside this group.
15- Add new Grid in this form.
16- Add new NavigationList Menu button and in MenuItem property provide menu Item of any form that you want to open. Step#16 is for click option in Step#15. In step#15 when you click to any option it will redirect to form that we mentioned in step #16 through menuItem.
17- Bind Grid (created in step#15) with DataSource and set the DefaultAction property to Menu Button created in Step#16.
18- Create Display MenuItem ‘uerLicensor30DaysExpiry’ and bind Form ‘uerLicensor30DaysExpiry’ created in step#12 and bind Query ‘uerLicensor30daysExpiryQuery’ created in step# 11.
19- Go back to form created in step#2. Control Tab => Worskpace Tab => Panaroma => TileContainer => Add new Tile Button and in Tile property provide tile created in step# 10.
20- Make sure TileContainer have the following fields
21- Inside TabbedList => MainTab => Add new tab ‘ContractsList30days’ => Add new Form Part ‘ContractListPart’ and set MenuItemName property to ‘uerLicensor30DaysExpiry’ (Created in step#18)
22- If you want to add some Links to your workspace, you can add links in Links Tab inside Panaroma => Links
23- As we need to Filter data and filter is found on WorkspaceFrom (created on step#2) and filtered data is found at form created on step#12.
24- Create interface ‘uerLicensorICollectionManagerWorkspace’.
25- Open form (created in step#2) and implement uerLicensorICollectionManagerWorkspace and SysIFilterProvider interfaces and complete their methods
26- Override Init method
27- Add modified method of Licensee field
28- Open form ‘uerLicensor30DaysExpiry’ (created in step#12) and implement ‘SysIFilterEventHandler’ interface
29- Complete ‘OnFilterChanged’ method of SysIFilterEventHandler’ method, override init method and get Licnesee Id from parent form.
30- Add execute method of form DataSource
31- Build project.
32- Right click form created in step#2 and set as statrtup project and run Visual Studio.
Comments
Post a Comment