Duet Enterprise Feature Pack 1.0 – Profile Based Forms & Aggregated Business Calendar configuration
As part of Duet Enterprise Feature Pack 1.0 we have shipped two features for Time Management scenarios on SharePoint. They are the Profile Based Forms & Aggregated Business Calendar. In this blog I would take you through the various configurations needed to get your Time Management scenarios up and running. We would proceed with the understanding that all the BCS model files and SharePoint solutions are deployed without any issues.
For profile based forms to work, all the user accessing the site should have their Active Directory profile synced into SharePoint user profile. Once this is done, the next job would be to sync the ERP CATS profile to be synced onto the SharePoint. That can be achieved by following the below mentioned steps:
- Go to the User Profile service in Central Administration by following the below links
2. Select “Configure Synchronization Connections” options as shown below.
3. Click on the create new connection and select a BCS connection option.
4. Setup the BCS connection as shown below.
Click on “OK”
5. Now we need to create a custom user profile property to store the profile value. For this again navigate the User Profile services as shown in Step 1 and select Manage User Property.
6. Click on New Property
7. Please setup the new property as shown below.
With this our Sync setup is complete.
The next step would be to annotate the TIME BCS model to tell the UserProfile feature which hide for which profile. This had to be done in TIME model alone and that too for specific finder method only.
Let me walk you through the annotation:
- Profile Field that we created in the above step to hold the cats profile value should be mentioned in the model at the entity level. This would tell UserProfile feature the name of the property to check in the UserProfile store for the cats profiles
2. In specific finder method we need to annotate every field that we need to hide for a particular profile as shown
There are couple of point worth mentioning here:
- We can annotate the fields with <Key>=<Value> pair. In the example above my profile key CVR has the value ESS_01 , ESS , ESS_02 . Both Key and value together become the annotation.
- We can simultaneously annotate the field with multiple key=value pair as shown. Each combination needs to be separated by semicolon (;).
We can annotate as many fields as we want in the specific finder. If a field is not annotated, then by default that field will be shown for every profile.
Now, to make the above mentioned activity of annotating the models little easier we have already shipped a report that will do this job for you. To run this ABAP report logon to the Gateway system and follow the following steps.
Please note it would change the TIME model that is stored in the MIME. So it would ask you to create some transport request. So you should have rights to create transport request on the gateway system.
Once this is done you can download the model from the BDC Browser tool (T Code:: /iwtng/bdc_browser) and deploy it onto the SharePoint
Now we need to logon to the SharePoint site with Admin Credentials follow the below mentioned steps::
1. 1. Activate Features
a. Activate Aggregate Business Calendar Feature
- Open the site collection under the webapp on which you deployed the OBAExtensions.wsp Activate Aggregate calendar feature under site
- Click Site Actions -> Site Settings
- Click Site Collection Administration -> Site collection features
Activate Aggregated Business Calendar feature Feature.
b. Activate Profile Based Forms Feature
If you have deployed obaextensionsSDK.wsp, “Sample Profile based” feature will be installed in MOSS farm. This feature defines new list schema for Time Management Virtual List and customizes Create, Edit and View forms for Time Management. To activate this sample feature,
Go to your site where you have created Time Management Virtual List.
- Click Site Actions -> Site Settings
- Click Site Collection Administration -> Manage Site features
b. Activate Sample profile based list feature
If you want to do user profile based form customizations on VirtualLists other than Time Management, you have to create new list schema and list instance for you Virtual List and write your own custom feature to deploy custom list template. Steps to write your feature and to install it can be found here.
Follow the step as mentioned above to activate your feature.
2. Add Aggregate Calendar Webpart to the page
Create a site under site collection or you can use an existing site as well.
Add a web part Page to the site Click Site Actions -> More Options…
Select Web Part Page and create the web part page from one of the templates
Click Add a Web Part in one of the zones in web part page
Select Aggregated Business Calendar Webpart under Business Data category and click Add
3. Add Data Sources
- Go the site where ‘Aggregate Business Calendar’ is stapled
ii. Open web part editor control settings, by clicking over ‘Edit Webpart’.
iii. Check 2 drop down lists – One showing already existing calendars and other one showing available types of calendar which can be added.
iv. There are 3 types of data sources which can be added to the Webpart and a maximum of 4 data sources can be added.
v. To add Time Management first we need to create an external list. If we have activated the profile bases feature, it would create an external list for us.
vi. Once we have the external list ready we can choose a new “Business Calendar” as shown below
vii. After clicking the add button , please fill in the title , description and colour coding as per your wish and from the drop down select the Time Management list (from previous steps) as shown below.
viii. Choose the view if you multiple views defined on the list and then click on “Save” button.
With this our Profile Based forms and Aggregated Business Calendar should be ready. Please note any external content type which is mapped to Outlook “Appointment” type would be available for mash up on the Aggregated Business Calendar but the profile based forms are built for only Time Management scenario.
Hope this blog helps you configure your Time Management scenario.