locked
View Opportunity emails through the Opportunity form Navigation pane RRS feed

  • Question

  • Is there a way to view emails from the Opportunity Navigation pane.  Currently the customization for the email relationship does not allow emails to be displayed in the pane.  This is my attempt to be able to display the from / to fields.

    Thanks

    CRM 4.0 for Outlook

    Sunday, November 21, 2010 7:35 PM

Answers

  • You can't do that because CRM doesn't have engines to do it. If you want to have this element at navigation - you can develop custom ASP.Net page which will use script from my first answer and using customization of ISV.Config - place it to form navigation elements.

    Microsoft CRM Freelancer

    My blog (english)
    Мой блог (русскоязычный)
    • Proposed as answer by Neil BensonMVP, Moderator Monday, November 22, 2010 2:29 PM
    • Marked as answer by Jim Glass Jr Monday, November 22, 2010 6:44 PM
    • Unmarked as answer by J Wagner Tuesday, November 23, 2010 6:26 PM
    • Marked as answer by J Wagner Thursday, November 25, 2010 2:05 AM
    Monday, November 22, 2010 5:36 AM
    Moderator

All replies

    • Proposed as answer by Amreek Singh Monday, November 22, 2010 3:15 AM
    • Unproposed as answer by J Wagner Monday, November 22, 2010 4:54 AM
    • Marked as answer by Jim Glass Jr Monday, November 22, 2010 6:44 PM
    • Unmarked as answer by J Wagner Tuesday, November 23, 2010 6:25 PM
    Sunday, November 21, 2010 8:18 PM
    Moderator
  • Thanks for your response.  The links you mentioned refer to the use of Tabs.  I would like to view emails using the navigation pane.  eg. under History.  Since the email relationship to Opportunities is already setup, why can't I just add that associated view to the Opportunity form navigation pane?    
    Monday, November 22, 2010 3:17 AM
  • You can't do that because CRM doesn't have engines to do it. If you want to have this element at navigation - you can develop custom ASP.Net page which will use script from my first answer and using customization of ISV.Config - place it to form navigation elements.

    Microsoft CRM Freelancer

    My blog (english)
    Мой блог (русскоязычный)
    • Proposed as answer by Neil BensonMVP, Moderator Monday, November 22, 2010 2:29 PM
    • Marked as answer by Jim Glass Jr Monday, November 22, 2010 6:44 PM
    • Unmarked as answer by J Wagner Tuesday, November 23, 2010 6:26 PM
    • Marked as answer by J Wagner Thursday, November 25, 2010 2:05 AM
    Monday, November 22, 2010 5:36 AM
    Moderator
  • Andriy, I tried your suggestion, changed the ISV.Config file, that works well.  When I click the navigation element, it appears with the following message:

    Server error 404 - File or Directory not found.

    I added the asp page in the UserDefined folder.  Any ideas what I need to do to fix this?  I tried renaming the asp page to aspx with the same result.  (Don't know exactly what the difference is, need to do some reading on this)   

    <ImportExportXml version="4.0.0.0" languagecode="1033" generatedBy="OnPremise">
      <Entities>
      </Entities>
      <Roles>
      </Roles>
      <Workflows>
      </Workflows>
      <IsvConfig>
        <configuration version="3.0.0000.0">
          <Root>
          </Root>
          <!-- Microsoft Customer Relationship Management Entities (Objects) -->
          <Entities>
            <Entity name="opportunity">
              <NavBar ValidForCreate="1" ValidForUpdate="1">
                <NavBarItem Icon="/_imgs/ico_16_138.gif" PassParams="1" Client="all" AvailableOffline="false" Url="/UserDefined/New_OpportunityEmails.asp" Id="navemailopport">
                  <Titles>
                    <Title LCID="1033" Text="E-mails" />
                  </Titles>
                </NavBarItem>
              </NavBar>
            </Entity>
          </Entities>
          <ServiceManagement />
        </configuration>
      </IsvConfig>
      <EntityMaps />
      <EntityRelationships />
      <Languages>
        <Language>1033</Language>
      </Languages>
    </ImportExportXml>

    My asp Page:

    <html>
    <HEAD>
    <% string val = Request.QueryString["id"]; %>
    <script language="javascript">
    function OnCustomGridReady()
    {
     if( document.getElementById('resultFrame').readyState != 'complete' )
     return;
     
     if(document.getElementById('resultFrame').parentNode!= null){
     document.getElementById('resultFrame').parentNode.style.margin = "0px";
     document.getElementById('resultFrame').parentNode.style.overflow = "auto";
     }
    }
    </script>
    
    </HEAD>
    <BODY onload ="resultRender.submit()">
    <FORM id=resultRender action=/AdvancedFind/fetchData.aspx method=post target=resultFrame>
    <INPUT type=hidden value='
    <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
    <entity name="email">
    <attribute name="subject"/>
    <attribute name="statecode"/>
    <attribute name="from"/>
    <attribute name="to"/>
    <attribute name="regardingobjectid"/>
    <attribute name="prioritycode"/>
    <attribute name="actualend"/>
    <attribute name="actualstart"/>
    <attribute name="scheduledend"/>
    <attribute name="createdby"/>
    <attribute name="messageid"/>
    <order attribute="actualend" descending="true"/>
    <filter type="and">
    <condition attribute="regardingobjectid" operator="eq" uitype="opportunity" value="<%=val %>" />
    </filter>
    </entity>
    </fetch>' name=FetchXml>
    <INPUT type=hidden value='
    <grid name="resultset" object="4202" jump="subject" select="1" preview="1" icon="1">
    <row name="result" id="messageid">
    <cell name="subject" width="250"/>
    <cell name="statecode" width="100"/>
    <cell name="from" width="150"/>
    <cell name="to" width="150"/>
    <cell name="regardingobjectid" width="150"/>
    <cell name="prioritycode" width="150"/>
    <cell name="scheduledend" width="150"/>
    <cell name="actualend" width="75"/>
    <cell name="actualstart" width="75"/>
    <cell name="createdby" width="140"/>
    </row>
    </grid>' name=LayoutXml>
    <INPUT type=hidden value=email name=EntityName>
    <INPUT type=hidden value={default view id} name=DefaultAdvFindViewId>
    <INPUT type=hidden value={new view id} name=ViewId>
    <INPUT type=hidden value=4230 name=ViewType>
    <INPUT type=hidden value=actualend name=SortCol>
    <INPUT type=hidden value=true name=SortDescend>
    </FORM>
    <iframe id="resultFrame"
     name="resultFrame"
     src="about:blank"
     onreadystatechange="OnCustomGridReady();"
     width="100%"
     height="100%"
     scrolling="yes">
    </iframe>
    
    </BODY>
    </html>
    
    Thanks.
    Tuesday, November 23, 2010 6:43 PM
  • Figured it out.  It couldn't find the AdvancedFind/fetchData.aspx page.  Change reflected in above code.

     

    Thursday, November 25, 2010 2:04 AM