Duplicate detection on client side not working in CRM 2016 - popup

I'm working with CRM 2016 on prem. I have 2 customs entites, let's call them custA and custB. CustA has a 1:N relationship with custB. So when adding existing custB's to custA in CRM 2011, if I was creating a duplicate (adding a record that I'd already added) I got a popup telling me I'm trying to create a duplicate. In CRM 2016 I don't get this pop at all. It won't allow me to create the duplicate, but I don't get the popup. Any idea's if this is something that can be fixed via configuration or is client side notification removed in CRM 2016 altogether?

This was moved to the Alternate Keys feature. See how to create keys via customizations here
You can use that to check duplicate records and also even from the SDK, which is handy when you need to Integrate data from external systems too.

Related

MS Dynamics: retrieve the schema of entities to use it in SOAP?

I'm trying to add some entities via a SOAP client, to MS Dynamics (online). My client is not a Microsoft client.
Do you know a way to retrieve the schema of Entities like Account, Prospect etc... I would like to know how . I really need to know it , for integration with different installations of Dynamics.
I'd like to know the fields and when to put a String a Boolean etc.
I use a Demo instance of MS CRM online, from scratch, I did not change anything
Thanks!!
You can get metadata about an entity or just one attribute on an entity by using a request. Here is a link to an example
http://msdn.microsoft.com/en-us/library/gg594428.aspx
If you are looking to retrieve this information programmatically then follow Kevin Ross's answer above.
If you want to browse this information you can use the SDK Metadata Browser solution.
The Dynamics CRM Metadata Browser is in the SDK (SDK\Tools\MetadataBrowser). You can download the SDK from http://www.microsoft.com/en-us/download/details.aspx?id=40321.
Follow the README.DOCX that is in the SDK\Tools\MetadaraBrowser and you'll be able to see all the information necessary for manually building your SOAP calls.
Here is what it looks like:

How to register plugin step through CRM 2011 application

Is there any way to register plugin step through CRM 2011 application? I mean that, I have an entity. I want each record of this entity (on create) registers a plugin step.
Any help would be appreciated.
In CRM 2011 all plugin registration information is stored in dedicated entities
Register Plug-ins Programmatically
The key entity types used to register plug-ins and images are: PluginAssembly , PluginType , SdkMessageProcessingStep , and SdkMessageProcessingStepImage . The key entity types used to register custom workflow activities are PluginAssembly and PluginType . Use these entities with the create, update, retrieve, and delete operations. For sample code showing the use of these classes, see the Plug-in Registration tool source code. >>Source<<
You need to create new SdkMessageProcessingStep record with correct registration information (register one step manually to check what information has been inserted to table)
No, you need to use the plugin registration tool.
Using the Plug-in Registration Tool for Microsoft Dynamics CRM 2011 and Microsoft Dynamics CRM Online.

Microsoft Dynamics CRM 2011 create quote product records with Workflow

I have created a dialog that creates a quote in CRM 2011 Online and now I am trying to have a child process start another dialog to fill that quote with quote products. Sadly quote products does not initially appear in the drop down of entities that can be created within a workflow/dialog.
Does anyone know how to create a quote product from a dialog?
Unfortunately Dialogs & Workflows cannot create Quote Products (nor invoice/order/opportunity products). This has been the case since the early days and is still the case with CRM 2011.
I've been told it's due to the heavy logic that is triggered upon save of these records (rolling up totals to the parent record etc) however I struggle to see why this prevents workflows from automatically creating this data. It's something that I hope is fixed in the next major version of CRM.
As an alternative, if you use a tool like Scribe to import the data (assuming you calculate the header fields yourself) everything works just fine.
To address this limitation in CRM we have built a custom workflow step that enables you to create quote products, as well as opportunity products, orders products and invoice products. The workflow step is very easy to install, just import the managed solution and you're ready to create your dialogs and workflows. You can download the solution from our web site. There you'll also find all the documentation you need. To get a free demo license (valid for a month), send us an email.
We have created a solution with a workflow that creates order products, opportunity, quote and invoice products as well.
http://www.cartagena.no/#!mscrm-addons/l2y55
Andreas, Cartagena

Set server URL for an SSRS linked to report in CRM

I am working with CRM 2011 and a SSRS 2008 R2. Each are located on different servers and are set up so that each one can be deployed from Dev servers to Production servers without causing problems to the other.
In CRM I am linking all the SSRS reports by using a URL. (Report Type: Link to Web Page). My goal is to have the SSRS URL change in CRM depending on which server CRM is deployed to.
For example:
Dev Server
SSRS Server - http://DevSSRSserver
CRM Report URL - http://DevSSRSserver/ReportServer/Pages/ReportViewer.aspx?MyReport&rs:Command=Render
Production Server
SSRS Server - http://ProductionSSRSserver
CRM Report URL - http://ProductionSSRSserver/ReportServer/Pages/ReportViewer.aspx?MyReport&rs:Command=Render
Can anybody point me into the right direction so that I can change a Report URL to a different server name depending on the server CRM is being deployed to? I'm very new to CRM and any help at all will be greatly welcomed.
Thanks,
Shane
There's a couple ways you can address this:
1) If the CRM/SSRS servers are in different network environments; you can just use DNS aliases in each respective environment to control what report server you want to link to. Its not clear in your statement above if you have these server pairs in a different network or if they are on the same network and just different servers.
2) Use features of the SDK -- and write code to search for/iterate over report items in the report entity. Replace the server portion of the URL and save the entity back to the server.
3) One thing I haven't tried before but may be appealing is to use the Export/Import features native to CRM to Export the list of reports you want to alter to Excel, edit them, and Reimport. I'm the least sure of this approach. I've noticed that unlike other entities, Reports has the "Download Template for Entity" option greyed out. (Its seen under the "Import Data" button on the ribbon control) This means you may have to do a little more work to do the import, but it may still be a better fit than the two options above. Certainly -- its better than hand editing each individual one.
From
http://msdn.microsoft.com/en-us/library/gg309480.aspx
Create a hidden parameter of type string in the report that has the name CRM_URL. For more information about adding parameters, see Use Parameters in Reports. When the report is run, this parameter is automatically set to the Web address of Microsoft Dynamics CRM.
Hope that helps!
Ryan

Can you get notes and tasks from Exchange with VB.NET?

I'm currently looking into expanding a project to include the syncing of notes and tasks from a web application with exchange/Outlook.
Though at the moment, this is only an idea.
Unfortunately for me, it's the first time I've considered doing any form of Exchange integration at all from any application.
So I'm wondering, is what I've set out to do even possible?
I'll most likely be using ASP.NET MVC 2, .NET 4 and Exchange 2003.
The old way to do it would be to use Outlook Interop to automate Outlook to get access to the data. However, this isn't the neatest way of doing things, and you almost certainly wouldn't want to do it on a server.
The new way of doing it is using Exchange Web Services, you can find an article here about it, but I'm not sure if they're supported on Exchange 2003...