September 23, 2021

Introducing Co-Presence in Power Automate

Overview

Microsoft recently rolled out a prominent feature which is “Co-Presence” functionality in Power Automate. Most of the time, when we are working with multiple developers on the same Flow, we are unaware of who is editing the Flow? With this new feature, now we can track all the persons who are editing the Flow in real-time. 

If multiple users make changes to the flow simultaneously, Power Automate detects conflicts during the Flow save operation and presents appropriate options to the user to minimize conflicts. So, let’s get started!

Step 1:

We have one Power Automate Flow which is shared with Dhruvin and Shriraj.


Step 2:

Dhruvin and Shriraj both have opened the Flow in Edit Mode.

Step 3:

Dhruvin can see Shriraj’s avatar as “Co-Presence”.

Step 4:

Now, let’s make some changes with Shriraj’s account and Save the Flow. The changes will be saved!

Step 5:

Let’s make some changes to Dhruvin’s account. 

Try to save the changes. This will pop up with the following screen.

Now, let’s try to understand the options provided here!
  • Discard your changes: This will discard Dhruvin’s changes and keep Shriraj’s changes as is.
  • Save a copy of your changes: This will save a Copy of my changes as a separate flow and appear in My Flow section.
  • Overwrite other people’s changes: This will keep Dhruvin’s changes and discard Shriraj’s changes.

Conclusion:

This is how the Co-Presence feature will work in Power Automate. Isn’t that cool? Happy Automation!!!

If you have any questions you can reach out our SharePoint Consulting team here.

September 16, 2021

Power Apps Validation Tip - End Date and time should be greater than Start Date and time

Overview:

We implemented several Power Apps forms for a consulting firm based out of Alpharetta, Georgia, United States. We came across a scenario to validate Start Date & End Date in one of the forms. In this article, we will talk about how we can apply DateTime validation in our Power Apps Form. Most of the time, we need to implement, one most common validation in Power Apps where End DateTime must be greater than Start DateTime. How can we apply that validation? Let’s see!

We have the following form in our Power Apps. We want to validate, check-out time should be greater than check-in time! So, how can we achieve this?


Step 1:

Please check the Datacard for Check-In and Check-Out time.

Step 2:

Add the following line of code on below highlighted controls! Need to add the same code on all following controls!

 If(  
   Or(  
     IsBlank(  
       DateValue2.SelectedDate + Time(  
         Value(HourValue2.Selected.Value),  
         Value(MinuteValue2.Selected.Value),  
         0  
       )  
     ),  
     IsBlank(  
       DateValue1.SelectedDate + Time(  
         Value(HourValue1.Selected.Value),  
         Value(MinuteValue1.Selected.Value),  
         0  
       )  
     )  
   ),  
   Set(  
     IsEndDateValid,  
     true  
   ),  
   DateDiff(  
     DateValue1.SelectedDate + Time(  
       Value(HourValue1.Selected.Value),  
       Value(MinuteValue1.Selected.Value),  
       0  
     ),  
     DateValue2.SelectedDate + Time(  
       Value(HourValue2.Selected.Value),  
       Value(MinuteValue2.Selected.Value),  
       0  
     ),  
     Minutes  
   ) > 0,  
   Set(  
     IsEndDateValid,  
     true  
   ),  
   Set(  
     IsEndDateValid,  
     false  
   )  
 )  

Step 3:

Set Validation message
 If(!IsEndDateValid, "√čnd Date Time should be greater than Start Date Time")  

Step 4:

Set Visible property for an Error message.

Step 5:

Prevent form for submitting an invalid entry by setting up the below condition for “OnSave”. If you are using a standalone Canvas app, then you need to write the same code on your button click!

Step 6:

Change "OnNew" Property of form. If you are using a standalone Canvas app, then you need to write the same code on the New button of the form!
 NewForm(SharePointForm1);Set(IsEndDateValid,true)  

Step 7:

Save and Publish form!

Conclusion:

This is how we can simply apply end DateTime validation for Power Apps! Happy Power Apping!

If you have any questions you can reach out our SharePoint Consulting team here.

September 2, 2021

Everything you should know about Microsoft Viva

Overview:

When we heard the word “Microsoft Viva” for the first time, the question arises in our mind that, what do we mean by Viva? How Microsoft Viva is useful to us to achieve our business scenarios and business goals? We will talk about all these important things in detail throughout this session! Microsoft Viva comes up with four different Viva products which help us to build an Employee Experience Platform and Ecosystem. Now, the question arises, what do we mean by Employee Experience Platform (EXP)? 

Employee Experience Platform (EXP):

Employee Experience Platform is described as bringing together all useful tools for employee communications, wellbeing, learning, and knowledge discovery into one package! 
Microsoft Viva comes up with the same thing with four amazing Microsoft Viva Products! Now, let’s see how these viva products are helpful!
  1. Viva Topics: Responsible for knowledge and expertise
  2. Viva Insights: Responsible for employee productivity and wellbeing
  3. Viva Connections: Responsible for employee engagement and communication
  4. Viva Learning: Responsible to make learning a natural part of your day
Now, let’s check each Viva product in detail!

Viva Topics:

  • Topics turn content to Knowledge using M365, Graph, and AI to organize content into Topic Pages which can be easily discoverable from other M365 Products.
  • Examples:
    • New Employee Onboarding
    • Different Verticals like
      • Science & Space
      • Construction
      • Education
      • Healthcare

Viva Insights:

  • Viva Insights delivers Data-Driven and Privacy Protected Insights and recommendations that help individuals and teams to improve their product and wellbeing.
  • Viva Insights surfaces the data using Exchange Online, Teams, and My Analytics.
  • Viva Insights provides three types of Viva Insights:
    • Individual/Personal
    • Manager Insights
    • Leader Insights

Viva Connections:

  • Viva connections boost Employee Engagement.
  • Viva connections provide a curated, company-branded experience that brings together relevant news, conversations, and resources in the apps and devices you use every day.

Viva Learning:

  • Viva Learning makes learning a natural part of your day. 
  • All your learning content is available in one place in Microsoft Teams.
  • Microsoft has collaborated with other content providers like Microsoft Learn, Skillsoft, LinkedIn Learning, Pluralsight, and many more!

We at Binary Republik conducted a webinar on Microsoft Viva. Here’s the entire recording for the same webinar! 

Chapters of the webinar:

  • What is Microsoft Viva?
  • Four Pillars of Microsoft Viva
  • Get Started with Microsoft Viva Topics
  • Get Started with Microsoft Viva Insights
  • Get Started with Microsoft Viva Connections
  • Get Started with Microsoft Viva Learning

Recording of the session:


Conclusion:

This is how we can leverage the Microsoft Viva capabilities in actual business scenarios! It’s really useful to make a better Employee Experience Platform and Ecosystem.

If you have any questions you can reach out our SharePoint Consulting team here.

August 26, 2021

Overview on adding custom columns in Azure Cosmos DB

Introduction

We recently implemented a console application for a Postal and Parcel company based out of Melbourne, Victoria, Australia. In this, we have to store the user's login track details to a Cosmos DB. So we needed to add few custom columns in the Azure Cosmos DB container to store this type of information.


In this blog, we will look into the overall structure of the Cosmos DB container and we will be creating few custom columns also.

Solution

  • The Cosmos DB is a schema-free and unstructured database. It means that we can store data without considering its format.
  • The Cosmos DB has tables as containers for the database.
  • The container stores data in JSON format. So, we can store JSON objects as an item in the container of Cosmos DB. 
  • We can add any number of custom columns and their values as a JSON property.
  • The Cosmos DB container requires only one mandatory property it's the Item ID ("id"). and the Item ID is a not null and unique field. It has 255 characters limit.

Creating an item with custom columns

First, we need to pass a JSON format object to create a new item as shown below. 

 {    

   "id": "1",    

   "User name": "Aniket Chauhan",    

   "Email Address": "aniket.chauhan@binaryrepublik.com",    

   "Logged Date Time": "2021-07-09T09:07:19.2825515Z",    

}   

Now when we save this new item it will be stored with some system-generated fields as shown below. 


Here, the User name, Email Address, and Logged Date Time properties are custom columns.
When we create an item in the cosmos DB container it generates 5 extra properties.
  1. _rid: The resource ID (_rid) is a unique identifier that is used internally for navigation and placement of the resource.
  2. _self: It is the unique addressable URI for the item.
  3. _etag: Entity tag(_etag) used for optimistic concurrency control.
  4. _attachments: It specifies the addressable path for the attachment resource.
  5. _ts: It stores the timestamp of the last update of the item.
Note: We can also pass the GUID for the "id" field as per our requirement.

Conclusion

This is how we can add custom columns in Cosmos DB. Hope this helps, good day!


If you have any questions you can reach out our SharePoint Consulting team here.

August 5, 2021

How to add user to Office 365 Group using Power Automate?

Overview:

We recently implemented an application on Power Platform for a consulting firm based out of Alpharetta, Georgia, United States. We came across a scenario to add the user to Office 365 Group using Power Automate. So, how can we achieve this requirement? Let's get started.

Step 1:

Create Power Automate flow and search for “Office 365 Groups”.
 

Step 2:

From, action choose “Add member to group”.
 

Step 3:

It will ask for following two parameters:
Group ID = It will show all groups available to your Office 365 account.
User Principal Name  = We need to provide user name to be added to the group.
 


Step 4:

Run the Power Automate flow and check the result.
The user has been added to Office 365 Group.
 

Conclusion:

This is how we can simply add user to Office 365 groups! Happy Automation!

If you have any questions you can reach out our SharePoint Consulting team here.

July 22, 2021

How to apply styles dynamically In SPFx web part?

Introduction:

We implemented an intranet portal for a Real Estate Agency based out of Bellevue, Washington, United States. We came across a requirement to apply styles dynamically in the custom SPFx webpart based on the color selected in the property panel of the SPFx webpart. Let's see how this functionality can be achieved.

Requirement:

We need to apply the color of text based on the color selected in the property panel. In the property panel, we have added a textbox, where users can add a color code or a color name that they want as the text color.

Implementation:

We have applied the class name for the div where we are showing texts. In the CSS file, we need to define the color of the text using variables. 

The CSS will be as below:
 .ProjectTitle{  
      color: var(--projectTitleColor);  
 }  

And our HTML will be as below:
 <div className="ProjectTitle">  
      Intranet Portal       
 </div>  

As we can see, in the CSS we have used a variable for applying the color. Now we will assign the value to this variable. First, we will get the value from the text box of the property panel as below:
 var colorName = this.props.TextColor;  

Now we will use colorName variable, to assign a color to the style’s variable. 
 let div = document.createElement('style');  
 div.innerHTML = ':root {-- projectTitleColor: ' + colorName + ' }';  
 document.getElementsByTagName('head')[0].append(div);  

So here we created a new element for style and appended this element in the head element of the page.
Whatever value we assign to the variable – projectTitleColor, it will assign to the color style in the CSS file. Here in this example, we have used a CSS file, but you can also use the same steps for SCSS file as well.

Conclusion:

This is how we can apply dynamic styles. Hope this helps you!

If you have any questions you can reach out our SharePoint Consulting team here.

July 15, 2021

How to download the InfoPath form template (XSN file) when the Library/List contains more than 5000 items?

Introduction

We implemented the migration of the InfoPath forms from SharePoint On-Premises to the SharePoint Online environment for a Postal and Parcel company based out of Melbourne, Victoria, Australia.  The first step towards migration is to download the XSN file and then we can update it as per SharePoint Online version. We can download the XSN file from SharePoint Designer but when we have more than 5000 items the SharePoint Designer does not let us navigate to the directory where the InfoPath form is stored.


So in this blog, we will learn about how to download the InfoPath form template (XSN file) when the library/List has more than 5000 items. 

Scenario 

  • When we have to modify an InfoPath Form of a SharePoint list/library we download the InfoPath Form Template (XSN file) using SharePoint Designer. 
  • We modify that file in InfoPath Designer and then we republish it to the SharePoint List/Library. 

Issue 

  • In such situation,  when we try to navigate to the InfoPath form directory we face the restriction of SharePoint Designer as shown below. 

Solution 

    • To resolve this issue, we used a different approach to download the InfoPath form template (XSN file). 

    Steps to download the InfoPath form template (XSN file)

    Step 1:

    First, open the List/Library settings from where we need the InfoPath Form (XSN file) as shown below 


    Step 2:

    • In the "Settings" click on the “Advance Settings” tab as shown below. 


    Step 3:

    • Now, Select “No” in the “Allow management of content types?” option. 
    • When we choose this option, the “Edit Template” option will appear after the Template URL as shown below. 


    By clicking on the “Edit Template”, the InfoPath form template (XSN file) will be downloaded and will be opened in the InfoPath Designer directly. 


    Conclusion

    This is how we can download the InfoPath form template (XSN file). Hope this helps you.


    If you have any questions you can reach out our SharePoint Consulting team here.