Monday, 26 February 2018

Allowing users to see a lookup field as a dropdown field in Dynamics Portals

21:53 Posted by Benitez Here , , , No comments
End user experience for Dynamics Portals is key for making Dynamics Portals feel less like Dynamics 365 and more like an actual portal. Errr, does this makes sense? Hopefully it does.

One of the end user experiences that can be changed in a supported manner is the display of a Lookup field in Dynamics Portals. When you configure an Entity Form or a Web Form Step that has a Lookup field, it behaves like the following.


Not a problem but put yourself in a Dynamics Portals end users' shoes:

If I only see eight values, why can't I just select it in two clicks? 
Why do I have to see this pop up window and then select the value from this list? 
Oh... what does this search field do?

Exactly. By default since there is a Lookup field on the Entity Form or Web Form Step, it will behave similar to the Dynamics 365 out-of-the-box functionality of a Lookup field. As a Dynamics 365 user you would be familiar with this layout. As a Dynamics Portals end user this would be unfamiliar.

The Lookup functionality for Dynamics Portals is valid when there's a large volume of records/information for an end user to select but when there is only a few to select from, it's over kill to display the Lookup. Keep it simple for the end user.

What can you do to make this end user experience better? Take a look at my vlog to learn more.

Web Form Metadata

Yeah, it's my favourite. You would have guessed it from my previous vlogs as I've shared a couple of tricks with Web Form Metadata.

To make a Dynamics 365 lookup field appear as a dropdown field for a Dynamics Portals Entity Form or Web Form Step,
  • Create a Metadata record
  • Set the Type to Attribute
  • Select the Dynamics 365 lookup field
In the Control Style section, there is a field called "Style." In this field there is an option you can select called "Render Lookup as Dropdown."


Select this option and away you go.

Gotcha

If you are using Filtered Lookups in your Dynamics Portals Entity Form or Web Form Step I'm afraid this option is not valid. The field in Dynamics Portals will display all values instead of conforming to the Dynamics 365 behaviour of Filtered Lookups.

Summary

By using Web Form Metadata you can change how an end user interacts with a Dynamics 365 lookup field by displaying it as as a dropdown field in Dynamics Portals. You're keeping the end user experience simple in the scenario where there isn't a large volume of values (records) to select.

Hope you enjoyed this tip.

Till next time.

Monday, 19 February 2018

Increasing the field label length beyond the 100 characters limit in Dynamics Portals

22:00 Posted by Benitez Here , , , No comments
Dynamics Portals surfaces Dynamics 365 entity forms that are linked to a Dynamics Portals Entity Form or Web Form Step. Whatever you configure in the Dynamics 365 entity form will show on Dynamics Portals. Therefore you are abiding to the Dynamics 365 configuration principles.

By default the field label in Dynamics 365 fields is limited to 100 characters including spaces. This is true however as seen in my previous vlog, there's some nifty tricks you can do with Dynamics Portals. 

This time round I'm sharing with you all on how you can increase the field label length in Dynamics Portals without being in conflict of the Dynamics 365 field label limit of 100 characters. 


Show me this magic

Web Form Metadata! I love this feature of Dynamics Portals. There's different things you can do by applying Web Form Metadata to a Dynamics Portals Entity Form or Web Form Step.

To change a field label of a Dynamics 365 field for a Dynamics Portals Entity Form or Web Form Step, 
  • Create a Metadata record
  • Set the Type to Attribute
  • Select the field of the label you want to increase 

In the "Label" section this is where you can insert your long field label that is beyond the 100 character limit.


Once you update the value for the Dynamics 365 field using the Web Form Metadata, the text entered will appear in Dynamics Portals. You won't cross paths with the default Dynamics 365 behaviour of  the 100 characters limit in field labels.


Summary

Web Form Metadata will allow the length of a field label to be increased for a Dynamics Portals Entity Form or a Web Form Step. You simply select the field that needs to have an increased field label and away you go!!! Awesome sauce.

Till next time, toodles.

Tuesday, 13 February 2018

Allowing users to click on a hyperlink and more with helper text in Dynamics Portals

22:00 Posted by Benitez Here , , , No comments
Ever wanted to display helper text in Dynamics Portals with a hyperlink to either a document stored online or to a different web page that may list the terms and conditions to users?

If the answer is Yes, you have come to the right place.

What is helper text?

I didn't know the official terminology until I Googled it one day and sure enough I found a website with design guidelines that described what I was looking for as "helper text." It's text that is usually displayed by a field to help the user understand what they need to enter in the field.

Can I do this in Dynamics Portals?

You most certainly can my grasshopper. There's no need to use content snippets and then modifying the template for the form to display the content snippet by the field. Well you could but it's more time consuming and general rule of thumb is to work with what's available out-of-the-box if you can.

In my vlog I show you how to achieve displaying a clickable hyperlink to a user in Dynamics Portals.

What are the configuration steps?

Create a Web Form Metadata record against the Entity Form or Web Form Step that is displaying the fields to the user in Dynamics Portals. You want to select "Attribute" as the Type value. Then proceed in selecting the field for the helper text.


Scroll down till you see the Description/Instructions section.
  • The Position field outlines where the helper text is going to display against the field. I personally like "Above the field" as it looks better than the other two options.
  • The Use Attribute's Description Property field should be set to No otherwise it will use the description entered in the field in the field customization settings.
  • The Description is where you enter in your text.


If you enter in text, that's fine. Your text will show as required.

A more common scenario is providing a hyperlink for the Dynamics Portals users to click on for additional information that cannot be displayed on the form. An example is a link to terms and conditions. If you want to enter in a hyperlink for users to click on, simply use HTML to do so. 

Example I used in the vlog is:

Click <a href="https://docs.microsoft.com/en-au/dynamics365/">here</a> for full terms and conditions.

When you refresh your web page of the form, you'll see the helper text displayed.

Hold on...

If you use this HTML it will open the target URL in the current browser tab which is not ideal as the user needs to remain in the Dynamics Portals form.


Recommendation

The HTML that should be used in the following as seen in my vlog. You need the highlighted yellow part:

Click <a href="https://docs.microsoft.com/en-au/dynamics365/" target="_blank">here</a> for full terms and conditions.

Quick question - how come this Dynamics 365 field supports HTML?

If you look closely at the field, it's not actually a standard Dynamics 365 field. Our friends at Dynamics Portals have used iframes in some of the records to allow more functionality beyond a standard Dynamics 365 field.

Other HTML that can be used to change the appearance

The following is what I went through in the vlog that is supported in Dynamics Portals
  • Centered Text
  • Right Align Text
  • Left Align Text
  • Bold Text
  • Italics Text
  • Underline Text
  • Bold, Italics and Underline Text
  • Change The Font Size
  • Change The Font Colour
  • Bullet Points
  • Numbered Points
  • Ping Pong Style Marquee
  • Marquee That Scrolls Left
  • Marquee That Scrolls Right
  • Marquee That Scrolls Up
  • Marquee That Scrolls Down
  • Emojis - check out Megan's blog post if you haven't already done so
  • Rainbow
  • ASCII Art - I showed a bunny :)
  • GIF
Now you do need to be practical about what you display. GIF, ASCII Art or Marquees is probably not appropriate (well in a live/production environment ;) ). You get the idea though, if you know HTML you can manipulate the appearance of what's entered as helper text.

I'm not a HTML guru, I had Google help me with some of the HTML above.

Marquee was a personal favourite of mine when I learnt simple HTML back in high school ages ago so it made the cut.


Summary

Displaying helper text is supported and 100% configurable using a Web Form Metadata record of type "attribute." You don't need to do any additional development to provide this functionality, it's supported with Dynamics Portals already.

I hope you enjoyed the vlog. I had a lot of fun with it.

Till next time, toodles.

Monday, 29 January 2018

Hiding the Sign In with External Account option for users in Dynamics Portals

21:38 Posted by Benitez Here , , , , No comments
Dynamics Portals is pre-configured when provisioned. Not all features will be used or is needed by users. One of these features is the ability to log in with an external account.


The supported external accounts are
  • Azure AD
  • Facebook
  • LinkedIn
  • Microsoft
  • Twitter
At the time of writing this, Google is not supported. It was supported but currently not at the moment.


Anyways, back to it - there have been a couple of Microsoft Community Forum posts that have asked how to remove the Sign In with External Account option.
The comments recommend updating the CSS. From the comments, it's apparent that it's troublesome to get the CSS right for it to not show.

In the second forum post there's a comment from Shan McArthur in reference to the ability to hide it as a result of the July 2017 release.

It's not clear what the steps are if you go to docs.microsoft and not many people know that it is configurable which is what I share with you in this Quick Tip vlog.

What do I need to configure?

Site Settings in Dynamics Portals "is a configurable, named value that is used by website code to modify the behavior or visual style of the portal," click here for the source.

Basically a super user or administrator can update values in a Dynamics 365 record and the Dynamics Portal code will use the value entered as the code references the value in the record.

For the External Login features, they are configurable from Site Setting records. There's two site settings that need to be updated to False (assumption is that you have not enabled the other external accounts such as Facebook).

Authentication/Registration/AzureADLoginEnabled - this is the Azure AD option.



Authentication/Registration/ExternalLoginEnabled - this is for all External Accounts

What next?

If you clear the Dynamics Portals cache as seen in my vlog, it's still going to display.

What you need to do is is navigate to the Dynamics Portals admin centre and in Portal Actions, you want to select "Restart Portal." Make sure you perform this outside of office hours or in a period when you know users will not be using Dynamics Portals.


Wait a few minutes and when you go back to the Sign In web page, you'll see that the External Account option is no longer visible. Awesome sauce!


Summary

Dynamics Portals was designed to be configurable. In the past the only valid solution was to update the CSS to hide the Sign In With External Account but since the July 2017 release, it's now configurable. Don't go changing the CSS!!!

I'm sharing this because it is simple, takes less time and is the proper way to hide the Sign In with External Account. If you do apply these steps, do Like or Comment or even give me a shout out on Twitter so that I know you successfully did it without the pain of updating the CSS :)

Help me spread the word by sharing this among the Dynamics 365 community since this is not well known yet.

Till next time, Toodles.

Wednesday, 24 January 2018

Allowing users to self register in Dynamics Portals

07:21 Posted by Benitez Here , , , No comments
Hey Dynamics 365'ers, this is a follow-on from my previous vlog post where I showed how to enable a calendar for users on Dynamics Portals. The next step is allowing users to self register for the event they have selected from the calendar which is what I go through in this vlog.

Steps

The following is what I applied as seen in my vlog. It doesn't take that long to configure.

1. Create a custom entity for the registration

In my last vlog I showed that I used a custom entity called Event where these records were displayed in a Calendar style. This time you need another custom entity that will represent the user registrations. I created a custom entity called Event Registration and created a dedicated form for the portal. The key here is to have a lookup to the Event custom entity and a lookup to the Contact entity.


This form will be used by a Dynamics Portals Entity Form record.

2. Add the custom entity as a sub-grid

For users to be aware that they have registered for the event, I added a sub-grid to the Event form that is used by the Calendar in Dynamics Portals.

3. Create an additional Entity Form action

In the Dynamics Portal Event Entity Form record, you want to add the "Create Related Record" action and in here this is where you can select the custom entity created earlier - Event Registration, this is #1 in the screenshot below.


Next step is to define the relationship which is the Event lookup field (#2 in screenshot).

As a prerequisite to this action, you need to create a Dynamics Portals Event Registration Entity Form record that will be displayed as a modal when the user click on the Add Register button (#3 in screenshot). This is the dedicated Event Registration form for Dynamics Portals that I created in Step 1 above.

The Target Type is Entity Form (#4 in screenshot) and in the last step (#5 in screenshot) you will need to give the action a label so that it will appear as a button to the user.

4. Time to test

Clear the cache and simply click on the Register button. The modal will appear and fill in the fields before submitting the form.

5. What it looks like in Dynamics 365

The Event Registration record will be associated to the Event and the Contact. When you view the Event, you'll be able to see the associated Event Registrations. For the purpose of this vlog I navigated to the Event Registration Associated View. I didn't add a sub-grid in the Main form.

When you open the Event Registration record, you'll see the details of what the user entered through Dynamics Portals.

Summary

By using a combination of Entity List and Entity Form with an additional action, you can create a simple event self registration process. This is for a single event, this quick tip does not cater for a conference style registration process where there are parallel sessions or limited registrations per event.

As mentioned in my last vlog post, there is Marketing for Dynamics 365 which will have preconfigured event capabilities including Dynamics Portals. Currently it is in Preview mode. This option does cater for conference style events so keep your eyes posted on what's coming.

Till next time. Toodles.

Monday, 15 January 2018

Allowing users to see a Calendar in Dynamics Portals

21:55 Posted by Benitez Here , , , , No comments
Currently the Event Management features that were previously available in Adxstudio Portals is not available for Dynamics Portals. Through an entity list there is a feature that can be enabled to display the entity list as a Calendar which is what I walk through in this vlog.

Enabling Calendar in Entity List

In my vlog I use the scenario of registering an event to attend to in Westoros. The entity list I created is based on the custom Event entity I created. Scroll down in the entity list till you get to the Calendar View tab. 


In this tab this is where you can configure your entity fields in the Entity Field Mappings section. The fields that you want to select in the desired entity must be of the following type:
  • Start Date and End Date must be Date and Time fields
  • Summary, Description and Location must be Single Line of Text fields
  • Organizer must be a Lookup field
  • Is All Day must be a Two Option field
The next section to configure is Settings. In here you can define the following
  • Initial View - this is how the records are presented in a visual date format. You have Year, Week, Month and Day to choose from
  • Time Zone Display Mode - this is whether the record is presented in the user's local time zone or a Specific Time Zone. 
  • Display Time Zone - this must be populated if a specific time zone was selected
  • Style - this is the visual format of the calendar where it can be displayed as a full calendar or a summarized list of record with a smaller calendar
Once you have set configured the Entity Field Mappings and Settings, time to clear your portal cache and see it take effect. Ta da. No code required. Awesome sauce.

Going one step further

For those of you who want to change the look and feel of the calendar, please refer to Colin's blog posts 
OK so there is another offering where you can have a portal preconfigured purely for the purpose of marketing which you can read about it here.

It is currently in preview and is not available yet to the general public. You can wait for this to become available however I am not 100% sure what the pricing will be and whether it can be included in a current Customer Engagement subscription.

Summary

It is possible to show a calendar in Dynamics Portals through Entity Lists. To extend the out-of-the-box functionality, Colin's blog posts (see above links) outlines how JSON or XML can be referenced by liquid templates and how an iCalendar can be downloaded.

If you are going to have a go with this out-of-the-box, you do need to have the administration web role so that you can clear the cache and review your configurations.

Till next time, toodles.

Tuesday, 9 January 2018

Vlog Blooper Reel

22:21 Posted by Benitez Here , , , No comments
Happy New Year to 2018!

Here's a blooper reel I put together.


Vlogging can be hard at times as you're simultaneously thinking about your next steps/clicks that you're going to show and discussing it while being recorded. There's times where I will accidentally slip up on camera which you don't normally see! But I still love it #vloglife

I'll be posting a new Dynamics Portals vlog next week so make sure you've subscribed to my YouTube channel to get instant notification when I've published a new vlog.

For some other humour, check out Ben Hosk's funny video.