94 Tuesday, December 27, 2016 |
Suresh Maurya
Dynamics CRM Consultant at IBM

Form events in MS CRM?

  • OnLoad Event
    • The OnLoad event occurs after the form has loaded.
    • It cannot prevent the window from loading.
    • Use the OnLoad event to apply logic about how the form should be displayed, to set properties on fields, and interact with other page elements.
  • OnSave Event
    • The OnSave event occurs when:
    • The user clicks the Auto save button button in the lower right corner of the form, even when there is no changed data to be saved.
    • Code executes the Xrm.Page.data.entity.save method, even when there is no changed data to be saved.
    • The user navigates away from the form and there is unsaved data in the form.
    • With auto-save is enabled, 30 seconds after data has changed and there is unsaved data in the form.
    • Code executes the Xrm.Page.data.save method and there is unsaved data in the form.
    • Code executes the Xrm.Page.data.refresh method passing a true value as the first parameter and there is unsaved data in the form.
  • Field OnChange Event
    • The OnChange event occurs when:
    • The data in a form field has changed and focus is lost.
    • Radio buttons or check boxes clicked.
    • Calling Xrm.Page.data.entity attribute.fireOnChange method.
    • The OnChange event does not occur if the field is changed programmatically using the setValue method. If you want call attribute.fireOnChange method.
  • Tab TabStateChange Event
    • The TabStateChange event occurs when the DisplayState of the tab changes due to user interaction or when the setDisplayState method is applied in code.
    • Use this event when you wish to change the src property of an IFRAME within the tab.
    • If you set the IFrame src property in the OnLoad event for an IFRAME within a collapsed tab, the value will be overwritten when the tab is expanded.
  • IFRAME OnReadyStateComplete Event
    • The OnReadyStateComplete event indicates that the content of the IFRAME has loaded and can be accessed in code.
    • Use this event when referencing IFRAME controls within your scripts.
  • Lookup Control PreSearch Event
    • The lookup control has a PreSearch event that occurs just before the control launches a dialog to search for records.
    • There is no UI to set event handlers for this event.
    • You must use the addPreSearch and removePreSearch methods on the lookup control to add or remove event handlers for this event.
  • OnProcessStatusChange Event
    • This event occurs when the status of a process instance changes.
    • Use the Xrm.Page.data.process.addOnProcessStatusChange method to add event handlers for this event
    • and the Xrm.Page.data.process.removeOnProcessStatusChange method to remove them.
  • OnStageChange Event
    • This event occurs when the user clicks the Next Stage or Move to previous stage buttons in the user interface
    • or when a developer uses the Xrm.Page.data.process.moveNext or Xrm.Page.data.process.movePrevious methods.
    • You can’t cancel the stage change using code in a handler for this event.
  • OnStageSelected Event
    • This event occurs when a stage of a business process flow control is selected.
    • You can’t cancel the stage selection using code in a handler for this event.
  • Knowledge Base Search Control Events
    • The knowledge base search control can only be added to forms for organizations that has the knowledge management feature enabled. This control has two events (OnResultOpened and OnSelection) that developers can programmatically assign event handlers to.
  • Subgrid OnLoad event
    • Subgrids load asynchronously from the form so you can’t reliably get access to the data in the subgrid in the form OnLoad event. But you can set an event handler for the OnLoad event of the subgrid.
    • This event will occur each time the data in the grid is refreshed, this includes when users sort the columns of the grid.
  • Editable Grid Events
    • OnRecordSelect
      • The OnRecordSelect event occurs when a single row (record) is selected in the editable grid. This event won't occur if a user selects different cells in the same row, or selects multiple rows.
    • OnChange
      The OnChange event occurs when a value is changed in a cell in the editable grid and the cell loses focus. This event can also occur when an attribute value is updated using the setValue method.
    • OnSave
      • The OnSave event occurs before sending the updated information to the server, and when any of the following occurs:
        There is a change in the record selection.
        The user explicitly triggers a save operation using the editable grid’s save button.
        The user applies a sort, filter, group, pagination, or navigation operation from the editable grid while there are pending changes.

Disassociate Records In Microsoft Dynamics CRM Using Early Bound

disassociate Method

To disassocite records in Microsoft Dynamics CRM use IOrganizationService.Associate(entityName, Guid, Relationship, EntityReferenceCollection) method.

Parameters

Name Type Comment
entityname String Entity logical name
guid Guid The ID of the record to which the related records are associated.
relationship Guid The name of the relationship to be used to create the link.
relatedEntities Guid A collection of entity references (references to records) to be associated..

Output

Void

This method is implemented by OrganizationService class and OrganizationServiceContext generated in previous chapter.

Using Early Bound 

Following example demonstarates how to disassociate a contact with three accounts in Microsoft Dynamics CRM using early bound

C#

// Associate the accounts to the contact record.

// Create a collection of the entities that will be 
// associated to the contact.
EntityReferenceCollection relatedEntities = new EntityReferenceCollection();
relatedEntities.Add(new EntityReference(Account.EntityLogicalName, _account1Id));
relatedEntities.Add(new EntityReference(Account.EntityLogicalName, _account2Id));
relatedEntities.Add(new EntityReference(Account.EntityLogicalName, _account3Id));

// Create an object that defines the relationship between the contact and account.
Relationship relationship = new Relationship("account_primary_contact");


//Associate the contact with the 3 accounts.
_service.Associate(Contact.EntityLogicalName, _contactId, relationship,
    relatedEntities);

Console.WriteLine("The entities have been associated.");

//Disassociate the records.
_service.Disassociate(Contact.EntityLogicalName, _contactId, relationship,
    relatedEntities);

[Job] - Microsoft : Sr. Support Engineer-Microsoft Dynamics CRM

Company: Microsoft

Location: Las Colinax (TX), United States

As a Microsoft Dynamics CRM Support Engineer (SE), you are a technical leader and will be driving the discovery of potentially unique solutions for each customer situation as part of a team. We’ll provide you with abundant resources, including training, advanced diagnostic tools, the Microsoft Dynamics CRM product group, and the experience of tenured engineers around you. You will also have the opportunity to collaborate and help your colleagues by sharing the results of your investigation. In this professional role, your contribution and overall impact is self-directed and the opportunities are plentiful.

Troubleshooting at this level is not scripted. You will be responsible to resolve potentially unique solution for each of your customer’s situations. During the course of troubleshooting, you may uncover software defects and have opportunities to improve the customer experience as well as to influence the current and future design of Microsoft Dynamics CRM by working directly with the product team. Our continuous learning environment expects that you will develop ever increasing depth skills as a subject matter expert. You will become the world’s best in your area of expertise.

This position will require you to work a rotational On-Call schedule. You may have the opportunity for some occasional domestic and or international travel.

Responsibilities:
Be part of a team and develop your skills as you solve complex technical issues in Microsoft Dynamics CRM.
Manage relationships with your customers and provide technical documentation for the troubleshooting steps.
Report software bugs and be an advocate for product improvement using customer suggestions.
Develop specialized expertise by supporting Microsoft Dynamics CRM. Document your knowledge and share that knowledge with others.
Use tools for debugging and root cause analysis.
Provide in-depth technical support for customer service delivery via telephone, written correspondence, or electronic service regarding technically complex, escalated problems.
Engage and collaborate with other Microsoft groups, including escalation teams and the development team, in gaining resolution to critical, complex issues.
Provide exceptional customer service in politically charged environments.
Represent Microsoft professionally in customer and partner onsite visits, where travel may be required.
Create advanced online technical content including Knowledge Base articles, training documents, blogs, etc.
Participate in planned team-wide shift rotations to cover business needs, including 24x7 “On-Call” responsibilities and extended (evening shift).
Present technical content to various audiences including customers, partners, and internal stakeholders.

Qualifications
Strong customer service, accurate and logical problem solving, and communication skills, plus the ability to work in a team environment.
Experience in creating technical documentation and sharing knowledge with others through training delivery and mentoring.
Strong debugging skills desired but not required, e.g. ability to read and analyze network traces, fiddler, SQL trace, etc.
Good knowledge of Microsoft SQL.
Excellent Communication Skills - spoken and written English (including technical writing).
Passion for lifelong learning and personal and professional development.
Three or more year’s industry experience with Microsoft stack technologies.
Current Microsoft IT Certification preferred (Ex. MCSE, MCSA, MCSD, MCTS (Dynamics CRM)
Exposure and experience working with customers on Microsoft Cloud products such as Azure, Office 365, or Microsoft CRM is preferred but not required.
Programming skills are useful but not required, preferably in C
Degree in Management Information Systems, Computer Science, Computer Information Systems, Computer Engineering (preferred)

Microsoft Dynamics CRM 2013 Business Process Overview

Control Tower for CRM User Adoption

When companies contact us to help them solve their end user adoption problems, of course we try to understand the scope of the problem right away. Unfortunately many (most?) companies can't even quantify exactly how many users utilize the system on a daily, weekly, monthly basis. The CRM administrators are stuck tracking down rumors and myths about their system usage, and these half-truths make the research nearly impossible. Even worse, the administrators can't even quantify whether or not any changes they make to improve the system really improve end user adoption! To help solve these problems, we built our proprietary Azure-hosted application Control Tower that accurately measures and quantifies end user adoption on a day-by-day basis. By deploying Control Tower in your Microsoft Dynamics CRM deployment, you have the objective data you need to measure and drastically improve your end user adoption.

What is meant by web resources and how it is maintain in CRM?

  1. Is a virtual file that are stored in the Microsoft Dynamics CRM database and that you can retrieve by using a unique URL address.
  2. Used to extend the Microsoft Dynamics CRM web application such as html files, JScript, and Silverlight applications.
  3. Use web resources in form customizations, the SiteMap, or the application ribbon because they can be referenced by using URL syntax.
  4. Are stored in Microsoft Dynamics CRM and are solution components, they can be easily exported and installed to on-premises and online and office outlook online and offline.
  5. Web resources are limited to static files or files that are processed in the browser and not in server like asp.net page.
  6. Web resources are only available by using the Microsoft Dynamics CRM web application security context.
  7. The maximum size of files that can be uploaded is determined by the Organization.MaxUploadFileSize property in system settings and default is : 5 MB.
  8. 10 Types (HTML, CSS, Java script, XML, XAP, XSL stylesheet, image (ico, gif, jpg, png).
  9. References that use the $webresource directive in SiteMap or ribbon commands will establish dependencies.

IFD for Microsoft Dynamics CRM 2011

This video covers the end-to-end process for configuring IFD which includes:

  1. Installing AD FS 2.0
  2. 2. Configuring the AD FS 2.0 federation server
  3. 3. Managing certificates
  4. 4. Configuring Dynamics CRM 2011 for claims-based authentication and IFD
  5. 5. Creating the relying party trust for CRM and configuring the claims rules on AD FS 2.0

You can find a white paper covering this information here:

Microsoft TechNet: http://go.microsoft.com/fwlink/?LinkID=212715

Microsoft Download Center: http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=3621

Quick Tips for CRM for Tablets

Microsoft Dynamics CRM 2013 for Tablets - Customizations

Customization Toolkit Overview - Microsoft Dynamics CRM 2011

This video is an overview of how to customize Dynamics CRM 2011. The video goes through a design scenario that demonstrates how to configure the forms, fields, views, charts and dashboards.

Dynamics CRM 2011 - Driving Sales Productivity

Demonstration of how Microsoft Dynamics CRM 2011 can be used to drive sales productivity.