Rules –> Performance –> Simulate Modem SpeedsIt works very well for testing loadingscreens, progressbars, uploads and so on.
cheers
---
Update 2015-11-04
Scott Hanselman also wrote a nice post about this topic incl. integrated Chrome feature (Link).
Rules –> Performance –> Simulate Modem SpeedsIt works very well for testing loadingscreens, progressbars, uploads and so on.
In the latest documentation you can find the document
Using jQuery with Microsoft Dynamics CRM 2013.docx
In this, Microsoft describes the prefered usage of jQuery in the Microsoft Dynamics CRM context.
Usage in HTML Webresources
Microsoft: When creating user interfaces with HTML web resources we highly recommend that you also use jQuery. It provides many benefits in creating pages that support multiple browsers that it is practically a necessity.
So this is fine and i think everyone is doing this right now.
Usage in Entity-Forms
Microsoft: However, when creating form scripts we do not recommend that you use jQuery. To enforce business logic in forms we provide objects in the Xrm.Page and Xrm.Utility namespaces that you use to apply your business logic within the form. We do not support referencing or manipulating the DOM (including styles) for our pages in any way. …
Ok, i have done this in the past and i don’t want to miss a lot of the jquery functions (ajax….) in the future too. So to make sure you don’t run into big issues try the following.
Microsoft: We reserve the right to restructure or rename DOM elements in our pages at any time without notice. If your code has dependencies on any objects defined in the DOM and these objects are reorganized or renamed your code will break.
1: my$ = jQuery.noConflict(true);2: my$.trim(" some text with space ");
Cheers
The new version of Microsoft Dynamics CRM includes a feature called Custom Actions. In this post I want to show the process of creating an Action in the CRM UI and access it over a Console Application.
The Problem to solve:
Create a Custom Action, that creates a task or a phonecall for an existing account record, based on the “Industry” Optionset. It should also be possible to add the description of the task in the Request.
1. Create the Custom Action
In this example we create the action in the CRM UI. It is also possible to create it in Code (only OnPremise).
Accounting –> Create PhoneCall
Others –> Create Task
2. Execute the Custom Action
For executing the Request i have created a Console Application. You can check the sources of my PluginQuickDeploy-Project when you need support creating it.
Executing Accounting-Case:
1: private static void ExecuteCustomActionAccounting()
2: { 3: IOrganizationService service = GenerateService();4: Entity account = new Entity("account");
5: account.Attributes.Add(new KeyValuePair<string, object>("name",
6: string.Format("Account generated at {0}", DateTime.Now.ToShortTimeString())));
7: account.Attributes.Add(new KeyValuePair<string, object>("industrycode",
8: new OptionSetValue(1)));
9: Guid accountId = service.Create(account); 10: 11: OrganizationRequest req = new OrganizationRequest("new_CreateSalesActivities");
12: EntityReference accountReference = new EntityReference("account", accountId);
13: req.Parameters.Add(new KeyValuePair<string, object>("Target", accountReference));
14: req.Parameters.Add(new KeyValuePair<string, object>("Description", "Text from Request"));
15: 16: OrganizationResponse resp = service.Execute(req); 17: }Executing Default-Case:
1: private static void ExecuteCustomActionDefault()
2: { 3: IOrganizationService service = GenerateService();4: Entity account = new Entity("account");
5: account.Attributes.Add(new KeyValuePair<string, object>("name",
6: string.Format("Account generated at {0}", DateTime.Now.ToShortTimeString())));
7: Guid accountId = service.Create(account); 8: 9: OrganizationRequest req = new OrganizationRequest("new_CreateSalesActivities");
10: EntityReference accountReference = new EntityReference("account", accountId);
11: req.Parameters.Add(new KeyValuePair<string, object>("Target", accountReference));
12: req.Parameters.Add(new KeyValuePair<string, object>("Description", "Text from Request"));
13: 14: OrganizationResponse resp = service.Execute(req); 15: }3. Testing
After execution of the both requests, a phonecall is generated and attached to the first account, a task is generated and attached to the second account. The description is passed by the request.
Created Call:
Additional Information - Output Parameters
It is also possible to retrieve information from the custom action. Therefore you have to define Output-Parameters and set them in the rule wizard. In this example the Custom Action returns the Entity Reference of the created task.
The feature is very interesting and i look forward to use it in one of my next projects (lets hope CRM 2013 will be available and stable soon).
cheers
Custom Actions are a feature shipped with CRM 2013. The easiest way to explain the feature (for developers) is:
“You are able to create your own OrganizationRequest”
It is possible to use the CRM UI for creating an “Action” or you can write Code that creates a custom Action.
Key Points (SDK)
This feature will reduce plugin code in the future, because it is possible to encapsulate a sequence of operations in one request.
cheers