Type ‘System.ServiceModel.Channels.ReceivedFault’ in Assembly is not marked as Serializable : Error of Incoming/Outgoing status Failure in Email Router

Hello Everyone,

After solving my last issue on Email router in my Previous Post, when I clicked on any random user and clicked on Test Access button; I received another Error:-

Incoming Status: FailureType ‘System.ServiceModel.Channels.ReceivedFault’ in Assembly ‘System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089’  is not marked as serializable.

Outgoing Status: Failure Type ‘System.ServiceModel.Channels.ReceivedFault’ in Assembly ‘System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089’  is not marked as serializable.

I found the discussion regarding the same issue in the Forum but with no confirmed Answer. So I started following up all possible ways to come out with a definite answer.

Solution:-

The simplest of all which I did was; Under the Deployment Tab of Email Router:-

If the ‘Access Credentials’ is specified as “Local System Account”, then change it to “Other Specified” and add the Domain User Account that is part of the PrivUserGroup Security Group. (In my case I added the Administrator account which is under PrivUserGroup Security Group)

Actually the account that needs to run the Email Router Service needs to be under the PrivUserGroup Security Group. So if you specify any other Domain User Account then make sure to add it to the Member of the Security Group ‘PrivUserGroup’

The Solution explained above solved my issue and hope similarly it will be helpful for you as well. 

Thanks !!!

😀

 

The decryption key could not be obtained because HTTPS protocol is enforced, but not enabled. Enable HTTPS protocol, and try again : Error while loading data in Email Router !!!

Hello Everyone,

After configuring my VM in my windows 8.1 machine(as discussed in my Previous Post), I was trying to configure CRM to it to perform some code testing. While configuring CRM Email Router, I came across the Error when I was trying to upload the data under Tab ‘Users, Queues, and Forward Mailboxes’.

Error:- The Email Router Configuration Manager was unable to retrieve user and queue information from the Microsoft Dynamics CRM server. This may indicate that the Microsoft Dynamics CRM server is busy. Verify that URL ‘http://ashwin/crm/ ‘ is correct. Additionally, this problem can occur if specified access credentials are insufficient. To try again, click Load Data. (The Decryption key could not be obtained because HTTPS protocol is enforced, but not enabled. Enable HTTPS protocol, and try again.)

First I searched the forums in case someone has discussed regarding the same issue, and luckily I found one here.

I tried to repeat the steps mentioned in the article above:-

Step 1: Open RegEdit

Step 2: Open the Path HKLM\Software\Microsoft\MSCRM

Step 3: Create a New DWORD

Name:- DisableSecureDecryptionKey

Value data:- 1

After completing the above steps, I restarted the Email Router and tried to load the data once again.  And Bingo; it loaded the users and the Queues successfully. 

This worked for me and I hope that will be helpful for you too.

Thanks !!!

😀

Hyper-V did not find virtual machines to import from location : Hyper-V Import Virtual Machine Error !!!

Hello Everyone,

Long back I configured the Hyper-V Virtual Machine (in Windows Server 2008 R2) for my testing purpose with MS-CRM. I even exported the VM for re-importing it back to any other machine, if required in future.  And it happened multiple times when I had to re-import my VM in different machines.

But lately, when I was trying to Re-Import my same VM to my Windows 8.1 system Hyper-V it failed with the Error Message:- Hyper-V did not find virtual machines to import from location “”.

I repeated the steps to make sure I performed the import correctly:-

1> Under Actions, Select Import Virtual Machine.

An Import Virtual Machine wizard will open which will ask for the folder containing the VM to import.

2> I selected my exported VM folder.

3> When I clicked Next, the following error appeared again.

 

Quite surprisingly, I had no idea as in what went wrong with my VM !!! It worked well before and now it says it didn’t find virtual machine even-though its present right there!!!😛

Anyhow, I figured out the main reason for this error which is described same in the Forum here:-

“VM’s that are exported from Windows Server 2008 or 2008 R2 utilized the version 1 WMI namespace which resulted in a .exp file to represent the exported virtual machine.  In Windows Server 2012 we introduced a new WMI namespace (version 2 or root\virtualization\v2) which implemented a much better import/export model – allowing you to effectively just copy the virtual machine folder (with the VM’s XML configuration file inside it) as well as the VM’s VHDs and then import that directly.  

For Windows Server 2012 we maintained the version 1 WMI namespace which allowed for importing of Windows Server 2008/R2 VM’s on 2012. In Windows Server 2012 R2 we have removed the old version 1 namespace which means we can’t import virtual machines that where exported from Windows Server 2008/R2.

Ok, Now what ?  Do I need to create a new VM from the scratch ?  Not that much time buddy. So while reading other forum post I came across a line which said that it might be possible to atleast use the Virtual Hard Disk again. And it worked for me !!!🙂

Solution:-

Step 1: Start creating a New VM from scratch.

Under Actions, Select New -> Virtual Machine

A New Virtual Machine Wizard will open and walk-through the creation of new VM. Enter the Name (I gave the same name as previous one).

Step 2: Specify the Generation

I simply selected generation 1 in my case as I was restoring the virtual machine hard disk from Server 2008 R2 and don’t want to take any chances further.😉

Step 3: Assign Memory depending on your machine configuration.

As usual I assigned 4500 MB Ram so that my host OS could stay alive and perform if I had to switch through Virtual and Real quite often.

Step 4: Configure Networking

This is not a mandatory step, as Network can be configured later as well. I have written a separate Post earlier about configuring network to access Hyper-V remotely.

Step 5: Connect Virtual Hard Disk

I selected my already existing Hard Disk from the exported VM folder, clicked Next.

Step 6: Completing the New Virtual Machine Wizard

A summary of the VM to be created is showed, click Finish and you will have your VM working as before.

 

It worked out for me and I suppose it will work for you as well. Hope that will be helpful. 

Thanks !!! 

😀

 

Invalid (Created-On) Date on Notes in CRM 2013

Tags

, , , , ,

Hello Everyone,

I wanted to share this information with all that MS has finally suggested a way to resolve the issue of Invalid Created-On date on Notes Section in CRM 2013. I’ve been following up with this since quite a long time here and here.

Issue:-

I created a custom Entity “Meeting” with the Notes Section wherein the users can type the info/agenda discussed in their particular meeting which can be later mailed to all the Attendees. Same like we have MOM(Minutes of Meeting).

When I first create any Notes, it immediately notifies Created-By as ‘You’ and Created-On as ‘Just Now’

 

Later, When I refresh the same page or open the record again, it displays Created-By as same as Created-By User(CRM Admin) but Created-On as ‘Invalid Date Invalid Date’

 

Resolution:-

After following up with the same blog for some time, finally MS came up with the cause which says “the problem occurs in specific scenarios when CRM 2013 is installed on Windows 2012 (not R2) and previous version (e.g. 2008 R2 etc…) and comes from the particular platform configuration rather than from CRM”.

And the temporary resolution is provided here in their Support Blog.

I followed their 2nd approach as my Development Environment is only a stand alone system configured on Hyper-V machine. Hence the App pool is running under Network Service Account.

And the issue gets resolved with proper date and time notification.

 

Hope this will be helpful.

Thanks !!!

😀

Get HTML Color code using MS-Paint and Calculator

Tags

, , , ,

Hello Everyone,

Many a time we need the HTML Color code for our Scripts just like in my Previous post I talked about using the color in the Entity form’s Header. There are simple ways to find out the same.

1> HTML Color Picker from W3Schools :

It gives a wide variety of color codes to select from here.

2> Using Color Picker of MS-Paint :

Take the Screen shot of any Image you want in your screen or open any Image file with the desired color in your MS-Paint

Now in the above picture I needed the HTML Color code for field highlighted color so I took the Screenshot and pasted the image in MS-Paint. 

1> Select the Color Picker Tool in MS-Paint.

2> Click on the colored area which you want to code for. 

3> Your desired color will be flashed in the current Color-1 box. 

4> Select the Edit Colors button.

After you click on the Edit color button, a color box will open showing the RGB values for the current color selected. Note the following values for RGB. Here they are R-248, G-243, B-247

Now you just need to convert these values to Hexa-Decimal which can be easily done with the help of a calculator. 

1> Open the Programmer’s calculator type

2> By default Decimal is selected. Write down the RGB values one-by-one. 

3> Click on the Hex radio button and you will get the result. 

So Final HTML code for the selected Image is followed by # symbol :  #F8F3F7

Hope this post was helpful. 

Thanks !!!

😀

 

Add Color to the Entity form’s Header in the new CRM 2013 !!!

Tags

, , , , ,

Hello Everyone,

I recently came across a very nice Blog from Stephanus Natawardaja which talks to prettify the Entity forms in CRM 2013. I am writing this blog to share with all and remind myself the steps I followed up to use the steps mentioned in his post on Multiple-Forms of an Entity.

In one of my Previous blog I talked about switching to Multiple Forms based on their record values saved to their particular Form-types. Similarly for one of my project, I created different forms for Contact Entity namely Doctors, Patients and Associates.  I used the same steps mentioned and first created 3 CSS Webresources with the following scripts using 3 different color code:-

.ms-crm-ListArea { border: 1px solid #999; width: auto !important; }
.ms-crm-Form-SubGrid-Layout-Lite { background: #F3F3F4; padding-top: 2px; border: 1px solid #999; border-bottom: 1px solid #ccc; }
#formHeaderContainer { border-top: 1px dotted #999; background: #FF8080; border-bottom: 1px dotted #999 !important; padding-left: 5px; padding-right: 5px; }

Kindly follow up my Next Blog to easily find the Color code for your selected color.

Then I created another JScript Webresource with the following code:-

function LoadCSS(path) {
debugger;
 var head = document.getElementsByTagName('head')[0];
 var link = document.createElement('link');
 link.rel = 'stylesheet';
 link.type = 'text/css';
 link.href = path;
 link.media = 'all';
 head.appendChild(link);
}
function pagetype() {
var item = Xrm.Page.ui.formSelector.getCurrentItem();
itemLabel = item.getLabel();
//alert(itemLabel);
debugger;
var formType= Xrm.Page.ui.getFormType();
if(formType == 1)
{
if (itemLabel == "Patients")
{
Xrm.Page.getAttribute('new_contacttype').setValue(1) ;
LoadCSS("WebResources/new_ColorRed");
}
if (itemLabel == "Doctors")
{
Xrm.Page.getAttribute('new_contacttype').setValue(2) ;
LoadCSS("WebResources/new_ColorGreen");
}
if (itemLabel == "Associates")
{
Xrm.Page.getAttribute('new_contacttype').setValue(3) ;
LoadCSS("WebResources/new_ColorBlue");
}
}
else{
if (Xrm.Page.getAttribute('new_contacttype').getText() == "Patients" )
{
 if (itemLabel != "Patients")
 {
 //load Information form
 var items = Xrm.Page.ui.formSelector.items.get();
 for (var i in items)
 {
 var form= items[i];
 var formId = form.getId();
 var formLabel = form.getLabel();
//Check condition either on ID or Label from Form
 if (formLabel == "Patients")
{ 
 //alert(formId );
 //alert(formLabel);
 form.navigate();
 } 
 }
 } 
LoadCSS("WebResources/new_ColorRed");
}
else if (Xrm.Page.getAttribute('new_contacttype').getText() == "Doctors" )
{
 if (itemLabel != "Doctors")
 {
 //load Ashwani form
 var items = Xrm.Page.ui.formSelector.items.get();
 for (var i in items)
 {
 var form= items[i];
 var formId = form.getId();
 var formLabel = form.getLabel();
//Check condition either on ID or Label from Form
 if (formLabel == "Doctors")
{ 
 //alert(formId );
 //alert(formLabel);
 form.navigate();
 } 
 }
 } 
LoadCSS("WebResources/new_ColorGreen");
}
else if (Xrm.Page.getAttribute('new_contacttype').getText() == "Associates" )
{
 if (itemLabel != "Associates")
 {
 //load Ashwin form
 var items = Xrm.Page.ui.formSelector.items.get();
 for (var i in items)
 {
 var form= items[i];
 var formId = form.getId();
 var formLabel = form.getLabel();
//Check condition either on ID or Label from Form
 if (formLabel == "Associates")
{ 
 //alert(formId );
 //alert(formLabel);
 form.navigate();
 } 
 }
 } 
LoadCSS("WebResources/new_ColorBlue");
}
}
}

Following this, I added the JScript webresource on all the 3 forms and called up the function pagetype on On-Load.

The results were as expected and following were the changes:-

  • Change in the Background color for the Form Header.
  • Highlight the Border of the Subgrid along with its Header color.

Contact form for Doctors :-

 

Contact Form for Patients :- 

 

Contact Form for Associates :- 

 

Thanks !!!

🙂

 

Open-Source Office Suite #Apache-OpenOffice & #LibreOffice

Tags

, , , , , ,

Hello Everyone,

I want to share this little but very informative knowlegde with all regarding the Open-Source Office Suite.

Recently I had a requirement in one of my client side, where they wanted to use the open source office suite for a specific group of users. Actually they want to save the license cost of MS office for the users(esp. the field users) who doesn’t have much varied use of Office products. So, they wanted to ensure that the product which they use must be compatible with MS-Office as in when they exchange the files with their managers.

From Wiki I came to know all about their history here. From my further searching from Wiki & different other blogs I figured out that presently two different open source office suits are popular:-

1>  Apache OpenOffice

  •     Their latest version got released last month (29/April/2014) which can be downloaded from here.

More info about this latest release of this product can be found here.

It says :-you can open and edit all Microsoft Office documents with OpenOffice. There are no compatibility problems. In fact, the only problem you might encounter is a missing font from Microsoft. It’s one for which OpenOffice will provide a simple replacement. But apart from that, documents open and are edited smoothly.

There is also an article published which even favors in the usage of Apache OpenOffice instead of MS-Office for couple of reasons more. Take a look here.

2> LibreOffice

  •    Their Stable version(4.1.6) can be downloaded from here.

They are in process to release their latest version(4.3.0), which is currently under testing phase. RC version has been released.

For the latest news, we can tune in for their official blog here.

There is a very interesting document in wiki which compares the features between the LibreOffice & MS-Office here.

No doubt that the coming release of LibreOffice is going to be the best ever but for the time being I’ve tested the Apache OpenOffice on my Server and works perfectly fine.

Hope that was informative. Would like to hear more from you guys on your experiences with the Open-Source Office Suite, so that it can be beneficial for the community in coming days.

Regards

Configure Remote Desktop connection to Hyper-V Virtual Machine

Tags

, , ,

Hello Everyone,

This is one necessary things which needs to be configured everytime a Hyper-V Virtual Machine is configured on a new system. I am writing this to remind myself of the steps needed for the same.

Currently I’m having windows server 2008 both as my host and virtual machine. Reason being I need to maintain different environment for different versions of CRM.

Ok, now there are two ways to bring the Virtual system on Remote Desktop:-

1>

a> On the virtual machine open Remote Settings:

My Computer -> Properties -> Remote Settings

Select the Allow Connection option as shown in the above image.

b> Now, we need to open the firewall for Remote Desktop:-

Move to Start -> Control Panel -> Windows Firewall -> Allowed a Program or Feature through Windows Firewall

Check the boxes next to Remote Desktop.

Now after you Restart the System, you can take the Virtual Machine on remote through the Computer Name. In my case it was like “Ashwin”.

2>

Create two different types of network connection in your virtual machine(i.e. Internal and External)

I have my Hyper-V with a virtual Machine named “Ashwin CRM”.  Select Virtual Network Manager.

Under New Virtual Network, Add an External network.

I named the External Network as “Ashwani External Network” with connection type as External. Click Apply.

You might get an warning regarding network connectivity.

I clicked ok and applied for the changes.

Similarly, Add an Internal Network.

I named this network as “Ashwin Internal Network” with connection as Internal.

Add both the networks under the Settings of the Virtual Machine.

After this in the host system, you will find both the networks. Under External network, select its sharing with the Internal network.

After sharing the network in host machine, you will see the below changes on network in the virtual machine.

You need to change the TCP/IPV4 configuration to obtain IP address Automatically.

Just the same like the image below.

After making the mentioned changes, the DNS will be changed to 192.168.137.1 and the IP will change something to 192.168.137.XXX

Now this fixed IP can be used to take the system on Remote everytime you log on to virtual system.

Hope this will be helpful to others as well.

Thanks !!!

😀

 

Found my 3rd BUG in CRM 2013 !!! this.get_editView() is null or not an object : Error during jScript Controls.clearOptions() in CRM 2013

Tags

, , , , , , ,

Hello Everyone,

This was the third consecutive BUG which I faced in the last few weeks back-to-back. In one of my Previous Blog I discussed about the Dependent PickList / OptionSet solution provided in MSDN which could be very useful and was working fine with my Contacts entity.

I actually wanted to replicate the same functionality within Cases too so that during selection of Customer the Service Representative must be aware of the respective Customer Category and Sub-Category as well. I followed the exact same steps and configured properly the Dependent Picklist Solution. When I first opened the new case then it worked fine as expected.

But after saving the values under Category and Sub-Category when I reopened the case; then it showed an error popping up on the screen saying:-

For a second I thought I might have missed something, so rechecked all the settings but all were configured perfectly as described in MSDN. For a detailed description I opened the same under I.E. and found out a different error screen popping up on the screen:-

Error:- ‘this.get_editView()’ is null or not an object.

 

I then made up my mind to get deeper into the issue and check for the real cause. I used the debugger and found out that the jScript “Controls[0].clearOption()” was actually throwing the error

 

I went more deeper into this and it took me to “this.get_editView().get_editElement().children().remove()”. I Added “this” under the Watch to keep up with the changes.

 

Next time when I went a step more into this, it was actually trying to return the value under this.$4_0.  But the value was actually null, hence was the Error message:-  ‘this.get_editView()’ is null or not an object.

Now this ($4_0) came out from nowhere; No idea as what was happening since last couple of weeks between CRM and Me.  😛

I Google out about this Issue and figured out that I was not the only one facing this Issue. The same issue has been discussed over here as well.

Now since my deliverable timeline was very narrow; so I had to find out a way to get this working again. I did some RnD with this for couple of hours and figured out a nice workaround.

Workaround:- Somehow the Child-field control was missing the value under ($4_0) hence I captured the field control once again under a variable and called the clearOptions() method on the freshly captured control. And guess what, It actually worked !!!😀

Result:- I used the debugger again and found out; this time the value existed for $4_0 on freshly captured Control.

I have logged this Issue under Microsoft Connect. If you are also facing same or came across similar Issue then request to kindly vote for it on the link provided below.

https://connect.microsoft.com/dynamicssuggestions/feedback/details/862355/this-get-editview-is-null-or-not-an-object-error-during-jscript-controls-clearoptions-in-crm-2013

Finally after 3 Months conversation with MS, they have agreed that its a BUG !!!

 

Now till the time it gets freezes by Microsoft, I guess this workaround will save a lot of time.

Hope this was Helpful.

Thanks !!!

😀

 

Found another Bug in CRM 2013 !!! CheckBox visibility is not getting Hidden in Forms when a concurrent Manual Save is done after opening any record.

Tags

, , , , , , ,

Hello Everyone,

Few Weeks Back, I just figured something unusual happening with the form customization related to CheckBox. Later Microsoft confirmed it as a BUG.

Issue: If you have a Boolean field with type CheckBox defined in a section and you want to hide it with either a Business Rule or Jscript on onLoad Event of the Form, at first onLoad of the form it hides the CheckBox but then the concurrent manual Save brings it Back, violating the Business Rule !!!

1> I configured the below Business Rule to Hide the CheckBox:-

2> The Business Rule seems to be working fine on the Form Load as the CheckBox is Hidden:-

3> But soon after you click the Save button Manually, the CheckBox Reappears violating the Business Rule !!!

 

This issue is only with the CheckBox, rest RadioButton and List works Fine.

Also a point to note: if in a Tab you have multiple Sections and under each section you have a CheckBox then the CheckBox in last section only gets visible on manual Save, rest all remains Hidden.

I’m working on a specific design with the CheckBox included and design gets distorted with this issue.

I’ve logged this Issue on Microsoft Connect here. Request you all to check and vote for it  on the link provided below if you are also facing the same behavior.

https://connect.microsoft.com/dynamicssuggestions/feedback/details/845615/bug-checkbox-visibility-is-not-getting-hidden-in-forms-when-a-concurrent-manual-save-is-done-after-opening-any-record

Till Microsoft gets back on this Issue in more Detail to a Resolution, as a workaround: use other format for the Boolean field like Radio-Buttons or Lists.

Hope this will be Helpful.

Thanks !!!

😀