Menu Close

Tag: #mallareddygurram

{How to } enable show emails as conversation on timeline

Hello Everyone,

Today i am going to show how to enable show emails as conversation on timeline.

Let’s get’s started.

Sign in to Sales Hub.

Click on settings and then Personalization Settings. This displays the Set Personal Options dialog box so you can use the following steps to enable the email view on timeline.

Select the Email tab.

Select the Show emails as conversation on timeline check box.

Select OK.

The email conversation view is based on the user preferences. Personal Settings are tied to the user, not the form, which means when you enable the threaded email, the setting is applied to all of your timeline views.

That’s it for today.

I hope this helps.

Malla Reddy Gurram (@UK365GUY)
#365BlogPostsin365Days

Share this:

New Microsoft Certifications Path for Power Platform and Dynamics 365

Hello Everyone,

Today i am going to show Microsoft Certification path for Power Platform and Dynamics 365.

May be you are new to Microsoft Domain or New to Power Platform or Dynamics 365 or Azure or Microsoft 365 and you would like to start your certification journey.

Then this blog is for you. Please click here to see the certification path.

That’s it for today.

I hope this helps.

Malla Reddy Gurram(@UK365GUY)

Share this:

{How to} Simplify address entry with smart autocomplete using Bing Maps Dynamics 365

Hello Everyone,

Today i am going to show how to enabel email address suggestions with smart autocomplete using Bing Maps Dynamics 365.

Let’s get’s started.

Suppose you are entering the address in the address field and you can see the suggested addresses as they type. So it minimize manual input and saving valuable time.

This leads to increased productivity, enabling users to focus on core selling tasks and customer interactions.

Also this feature enhances data accuracy by leveraging the reliable address information of Bing Maps, reducing errors and ensuring precise communication.

How do we enable it?

Open your Sales Hub and change the settings to APP SETTINGS.

Turn on the Enable address suggestions to ON AND SAVE.

This features will work on Account, Contact, Lead and within the sales insights forms.

That’s it for today.

I hope this helps.

Malla Reddy Gurram(@UK365GUY)
#365BlogPostsin365Days

Share this:

{How to} Hide + button on global ribbon menu in Dynamics 365

Hello Everyone,

Today i am going to show how to hide the global ribbon button “+” on Dynamics 365.

Let’s get’s started.

Suppose you had a requirement to hide the + sign button on Global Ribbon on Dynamics 365 from your organisation business stakeholders, then how do you do that?

Hiding the “+” (New Record) button on the global ribbon in Dynamics 365 involves modifying the Ribbon Workbench or using a Custom Javascript web resources to control the visibility of the button. Here the general steps to achieve this:

1. Access Ribbon Workbench:

Install and Open the Ribbon Workbench tool in your Dynamics 365 environment. you can find this tool in the Dynamics 365 Solutions area.

2. Select the entity:

Choose the entity for which you want to hide the “+” button in the global ribbon.

3.Edit the Ribbon:

In the Ribbon Workbench, locate the RibbonDiffXml for the entity you selected. This is where you can customize the ribbon.

4. Find the “+” Button Element:

Locate the “+” (New Record) button element in the ribbon XML. This button is typically named “Addnew” or something similar.

5. Modify the Visibility Rule:

Modify the visibility rule for the “+” button to hide it. You can use a Custom JavaScript Function or set the “CmrRule” to false. For example, you can use JavaScript like this:

In this example, you would create a JavaScript web resource

(‘your_javascript_webresource’) with a function called ‘hideAddButton’ that return ‘false’ to hide the button.

6. Publish Changes:

Save your changes in Ribbon Workbench.
Publish the customizations to make the changes effective.

7. Test:

After publishing, refresh your Dynamics 365 oganization and navigate to the entity to see if the “+” button in the global ribbon is now hidden.

Keep in mind that modifying the ribbon involves some advanced cutomization, and it’s crucial to have the necessary permissions and a good understanding of how to use Ribbon Workbench or JavaScript for this purpose. Also, make sure to back up your customizations before making changes to easily revert them if needed.

Thats it for today.

I hope this helps.

Malla Reddy Gurram(@UK365GUY)
#365BlogPostsin365Days

Share this:

{How to} lock the records listed with editable grid in a view on Dynamics 365 Sales

Hello Everyone,

Today i am going to show how to lock the fields on editable grid when on list view of the dynamics 365 sales record.

Let’s gets’s started.

Scenario:

There is a requirement to lock some of the fields which are locked at record level but they are editable when on editable grid of the dynamics 365 sales record.

So now we need to lock those locked fields on the editable grid as well. Also that lock functionality should work on all the views of the listed records.

How do you do that?

In order to achieve this functionality it is possible with Javascript.

————————————————————————————————————————-

function ShowHideTabs(executionContext, settings) {
formContext = executionContext.getFormContext();
booleanFieldValue = formContext.getAttribute(settings.booleanFieldName).getValue();

if(booleanFieldValue == null){
booleanFieldValue = false;
}else if(settings.invertBoolean == true){
// Flip boolean to other value, this can be useful for when a value needs to be disabled, but still show a tab
booleanFieldValue = !booleanFieldValue;
}
if (settings) {
for (var count = 0; count < settings.tabs.length; count++) { if (formContext.ui.tabs.get(settings.tabs[count]) != null) { formContext.ui.tabs.get(settings.tabs[count]).setVisible(booleanFieldValue); } } } } function RunOnSelectedTest(executionContext) { var selected = executionContext.getFormContext().data.entity; var Id = selected.getId(); alert(Id); } function ShowHideGrids(executionContext, settings) { formContext = executionContext.getFormContext(); booleanFieldValue = formContext.getAttribute(settings.booleanFieldName).getValue(); if(booleanFieldValue == null){ booleanFieldValue = false; } if (!booleanFieldValue) { formContext.getControl(settings.gridname).setVisible(false); }else{ formContext.getControl(settings.gridname).setVisible(true); } } function ShowHideGridsReversed(executionContext, settings) { formContext = executionContext.getFormContext(); booleanFieldValue = formContext.getAttribute(settings.booleanFieldName).getValue(); if(booleanFieldValue == null){ booleanFieldValue = false; } if (booleanFieldValue) { formContext.getControl(settings.gridname).setVisible(false); }else{ formContext.getControl(settings.gridname).setVisible(true); } } function ShowHideGridsMultiBool(executionContext, settings){ debugger; formContext = executionContext.getFormContext(); var booleanFieldValue = false; for(var count = 0; count < settings.booleanFields.length; count++){ if (formContext.getAttribute(settings.booleanFields[count]) != null) { if (formContext.getAttribute(settings.booleanFields[count]).getValue() == true){ booleanFieldValue = true; } } } if (!booleanFieldValue) { formContext.getControl(settings.gridname).setVisible(false); }else{ formContext.getControl(settings.gridname).setVisible(true); } } // New function ShowHideSection(executionContext, settings){ formContext = executionContext.getFormContext(); booleanFieldValue = formContext.getAttribute(settings.booleanFieldName).getValue(); var uiControls = formContext.ui.controls; var booleanControl = uiControls.get(settings.booleanFieldName); var booleanAttributes = booleanControl.getAttribute(); booleanAttributes.addOnChange(function(){HideSection(executionContext, settings)}) if (settings) { HideSection(executionContext, settings); } } function HideSection(executionContext, settings){ var formContext = executionContext.getFormContext(); if (settings) { if (settings.tabs.length == 1) { tabLabel = settings.tabs[0]; } if (settings.sections.length == 1) { sectionLabel = settings.sections[0]; } if (tabLabel != null && sectionLabel != null) { if(booleanFieldValue == null){ booleanFieldValue = false; } else if (settings.invertBoolean == true) { booleanFieldValue = !booleanFieldValue; } if (formContext.ui.tabs.get(tabLabel) != null) { parentLabel = formContext.ui.tabs.get(tabLabel); if (parentLabel.sections.get(sectionLabel) != null) { parentLabel.sections.get(sectionLabel).setVisible(booleanFieldValue) } } } } } function ShowHideGridOnChange(executionContext, settings) { formContext = executionContext.getFormContext(); booleanFieldValue = formContext.getAttribute(settings.booleanFieldName).getValue(); var uiControls = formContext.ui.controls; var booleanControl = uiControls.get(settings.booleanFieldName); var booleanAttributes = booleanControl.getAttribute(); booleanAttributes.addOnChange(function () { ShowHideGrids(executionContext, settings) }) if (settings) { ShowHideGrids(executionContext, settings); } } function onRecordSelect(exeContext) { //debugger; var _formContext = exeContext.getFormContext(); var disableFields = ["bam_value", "gmr_likelihoodaftermitigationpercentage", "gmr_valuepriortomitigation", "gmr_valuebestcase", "gmr_valueworstcase", "gmr_ukriskvalue", "gmr_totalcostofmitigation"]; lockFields(exeContext, disableFields); } function lockFields(exeContext, disableFields) { var _formContext = exeContext.getFormContext(); var currentEntity = _formContext.data.entity; currentEntity.attributes.forEach(function (attribute, i) { if (disableFields.indexOf(attribute.getName()) > -1) {
var attributeToDisable = attribute.controls.get(0);
attributeToDisable.setDisabled(true);
}
});
}

—————————————————————————————————————————-

Add the script to the form

Set the properties:

Then save and publish the form.

Go to the record editable grid view there you can see the locked fields on the record level will be locked in the editable grid view.

That’s it for today.

I hope this helps

Malla Reddy Gurram(|@UK365GUY)
#365BlogPostsin365Days

Share this: