Tuesday, March 24, 2015

Show Parent and child together..MS CRM view sorting without column in view

MS CRM allows view to be sorted by columns which are in view only.. but some time we don't want to show column in view but want to sort view by that column.


I have a situation in contact view.. I have contacts who has child contact records and in view I want to show parent and child contact records together.




For this I added one column in contact entity - Contact number (text), and I am numbering contacts are like
1. Parent - 01
   Child 1 - 011, child 2 - 012
2. Parent 02
   Child 1 - 021, child 2 - 022, Child 3 - 023

I added this contact number column in my view and then able to sort as per requirement.



But customer don't want to see the contact number column in grid, but wants the same sorting..

To achieve this I exported contact entity customization. and looked into Saved query for this view.
Saved query has layout xml and fetchxml.

First I removed Contact number column from layout xml.

<layoutxml >
  <grid name="resultset" object="2" jump="fullname" select="1" icon="1" preview="1">
    <row name="result" id="contactid">
      <cell name="new_contactnumber" width="300" / >
      <cell name="fullname" width="300" / >
      <cell name="emailaddress1" width="150" / >
      <cell name="parentcustomerid" width="150" / >
      <cell name="telephone1" width="125" / >
    </row>
  </ grid>

</ layoutxml>

Then I looked at fetch xml, it has order node..

<fetchxml>
  <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
    <entity name="contact">
      <attribute name="fullname" / >
      <attribute name="parentcustomerid" / >
      <attribute name="telephone1" / >
      <attribute name="emailaddress1" / >
      <order attribute="fullname" descending="false" / >
      <filter type="and">
        <condition attribute="ownerid" operator="eq-userid" / >
        <condition attribute="statecode" operator="eq" value="0" / >
        <condition attribute="createdon" operator="today" / >
      </filter>
      <attribute name="new_contactnumber" / >
      <attribute name="contactid" / >
    </entity>
  </ fetch>

</ fetchxml>

I changed this order node as

      <order attribute=" new_contactnumber " descending="false" / >

Saved customization and imported back to CRM.. and Published customization..
Now my view is  showing same sorting and no contact number column in it..




No comments:

Post a Comment