CRM Javascript RetrieveMultiple from M:M entity - javascript

I need to retrieve fields from all related records into a parent entity. I have got it working in a 1:M relationship, however I can't figure out how to get it working for a M:M relationship, because there is no relationship ID. I need to complete this through javascript. Can anyone help me out?

I'm not sure what version of (presumably) Microsoft Dynamics CRM you are using. I am going to assume you are using 2011. I'm also not fully clear on what you are specifically trying to acheive, but maybe this will help.
CRM 2011 provides an OData endpoint. This blog posting by Mark Kovalcson describes how it can be used.
To get the name and post code of an Account, you would use something like this as your select query:
http://crmserver/MyOrgName/XRMServices/2011/OrganizationData.svc/AccountSet(guid'5B19D04F-C48E-E111-92D4-00155D107003')?$select=Name,Address1_PostalCode
If you wanted to see all instances of child records via the N:N relationship with leads (called accountleads_association) you would use:
http://crmserver/MyOrgName/XRMServices/2011/OrganizationData.svc/AccountSet(guid'5B19D04F-C48E-E111-92D4-00155D107003')/accountleads_association
You can combine the two by using the $expand query option:
http://crmserver/MyOrgName/XRMServices/2011/OrganizationData.svc/AccountSet(guid'5B19D04F-C48E-E111-92D4-00155D107003')$select=Name&$expand=accountleads_association
More details on OData query options here

In order to do this I used an IFRAME and displayed the data through the IFRAME instead pulling CRM information through the query.

Related

In Dynamics CRM, How can I update the CreatedOn date?

Has anyone had success updating the CreatedOn field in CRM? How can I do this? I've seen a few vague posts saying to use a pre-sync operation, but it'd be helpful to have more information than that.
Any help would be greatly appreciated. Thanks!
It's little tricky.
CreatedOn is system generated field, if you want to preserve the value from some legacy system, then pass the legacy value in overriddencreatedon field. CRM knows you want to put this overriddencreatedon field value in system generated CreatedOn field instead.
This has to be done before DB transaction, and only platform can do that. You can do this with code solution: Pre-operation plugin or no-code solution using CRM import.
PRESERVE OR OVVERRIDE CREATEDON, CREATEDBY, MODIFIEDON, MODIFIEDBY FIELDS
Refer Byron Community Answer
If data is already in CRM, then you have to copy/re-import the new data, at the same time deactivating the old records. You cannot simply update this field in client side (javascript).

What's the equivalent of this function to update a subscription and account info in Recurly JS?

I contacted Recurly and they don't want to offer any support on this.
I need to know the objects specific format otherwise Recurly will bounce if any extra data is sent or if you don't have the exact arguments for the query (which are different for each function).
Ruby:
subscription = Recurly::Subscription.find('uuid')
subscription.update_attributes(
:plan_code => 'silver',...
PHP, Pyton, XML = (also in the docs)
NodeJS = ?????????? (we have no clue)
Much thanks!!!
PS. This is the response I got from Recurly,
Hi Turk, Thank you for your note. Understanding of the question is
whether there is a Javascript equivalent for updating billing
information. The only supported options we can offer are as follows:
- using the Recurly.js V3 form (https://docs.recurly.com/js/), to create new accounts, add billing info, and create a subscription
- update billing info through the API's. (https://dev.recurly.com/docs/lookup-an-accounts-billing-info)
I hope this is helpful. Thank you again. Regards,
Ian Recurly Support
PSS. I also tried to contact their technicians via IRC - irc://chat.freenode.net:+6697/recurly but no luck again.
Recurly.js is Recurly's name for a front-end web technology that enables the merchant to easily build their subscription checkout and accept payments. Using this library, merchants can tokenize payment information, display price/tax previews, and validate customer inputs. Because it is client-side, it can NOT be used to create or modify accounts, subscriptions, transactions, etc.
In order to perfrom CRUD operations in Recurly, you must use its RESTful Web Services API, either directly or through one of the provided wrappers (in PHP, Ruby, Python, and C#.NET). Recurly itself does not provide a supported API wrapper for NodeJS, although a 3rd-party one exists and has been used successfully. This library contains functions to update an existing account and update an existing subscription.
To update account '1234', you would use:
recurly.accounts.update('1234', {email: 'fake#test.com'}, function(res){
console.log(res['data']);
})
The second argument to this function is a JSON representation of the values that are changing. Available parameters are listed here.
To update subscription '32d7e59b0def37ddfabbd54d1296145b', you would use:
recurly.subscriptions.update('32d7e59b0def37ddfabbd54d1296145b', { quantity: 5 }, function(res){
console.log(res['data']);
})
The second argument to this function is a JSON representation of the values that are changing. Available parameters are listed here.
-Charlie (Sales Engineer # Recurly)

CRM2011 check if notes on custom form contains data via JavaScript

Hi peeps on stackoverflow,
Product: CRM2011, should be latest roll-up
I'm currently trying to get the following to Work:
- A custom CRM form has been made. This form contain the 'Notes' tab. I would like to dynamically 'expand' this IF and only IF the 'Notes' tab contains notes data. I'm trying to do this through JavaScript loaded into 'Form Libraries'. I can easily 'expand' the notes field but I'm having serious trouble determining if the 'Notes' tab contains notes data.
I can understand that accessing the 'notes' data through the DOM is not a good idea so I've tried through XRM. Looked through https://msdn.microsoft.com/en-us/library/gg334351(v=crm.5).aspx to see my options. But I can't seem to get to one where I can access 'notes' and base the expansion of the notes field on if there is data or not in 'notes'.
Is this possible? I'm looking forward to hear from you and thank you very much.
Notes are their own entity type, entity logical name is Annotation, that is why you won't find the notes data within Xrm.Page. I'm making some assumptions here, but if you've set up this custom entity to follow standard conventions, any notes on that record will be separate Annotation records with a reference to the custom entity record. using the sdk.jquery.js script provided with the SDK you can do a query on Annotation records that reference the record you are currently on. That would be a supported way to determine if the record has notes. Using the OrganizationData.svc endpoint you would have an OData query that looks something like this
AnnotationSet?$filter=ObjectId/Id eq guid'34d19133-c0ec-e311-b39c-6c3be5bd2b14'
The guid value there would be the guid of the record you are currently on, which if you haven't already acquired within your script, you can get it pretty easily with something like this
window.parent.Xrm.Page.data.entity.getId().substring(1, 37)
or without the window.parent prefixing it

How to retrieve Business Component rows in SIebel Open UI PM?

How can I get field values of BC from Presentation Model in Siebel Open UI?
I was trying:
SiebelApp.S_App.Model.GetBusObj("").GetBusComp("")
but Model is not recognized. I also tried creating model with GetModel() function, but it didn't succeed.
If you need to access any BC in the Active View,you can do that via the Get method of the PM, eg: GetRecordSet will give you an array of variables.
See this example to see how you
can GetFieldValue
If you need to access some other BCs not in the activeView, you have to go via eScript BS. This is kind of a security layer, even the older Browser script system had this limitation.
As I researched in oracle support there is no way to directly access repository objects via PM. We should create Business Service to deal with this part.
BusCom has several method to work on business layer in OpenUI.
few Examples are as below.
BusCom = this.GetPM().Get("BusCom")
pm.Get("GetBusComp").GetBusObj()
pm.Get("GetBusComp").GetName();
pm.Get("GetBusComp").GetFieldMap()
pm.Get("GetBusComp").GetNumRows() // NumberOfRecords
pm.Get("GetBusComp").GetParentBusComp().GetName()
You can not access records of other business component using OpenUI.
OpenUI is for current View and available business components.
if you want to retrieve current row then you can use getrecordset or showselection.

Dynamics 2013: Filtered Lookup showing only related entities

In dynamics crm 2013 I want to provide paypal data for individual contacts.
I have a paypalAccount entity, which can be set in a lookup on the contact form.
Now I want to filter the lookup on the contact form, to only display paypal accounts which where ever assigned to this contact.
I do not want the user to see thousands of unrelated paypal accounts when trying to select a different one for a specific user.
You can pre-filter your lookup. There are some standard ways to do this, but you can also use FetchXml. A nice article can be found here.
You must implement a 1:N relationship between these entities. Then that entity just see related entities.

Categories