Erstellen von Posts mit der Dynamics CRM-Web-API
Eine Post-Entität https: //msdn.microsoft.com/en-us/library/mt607553.asp) kann nicht mit der Dynamics CRM 2016 Online-Web-API erstellt werden.
Diese Payload sollte einen Beitrag auf @ erstellePOST /api/data/v8.1/posts
{
"text": "Test Single Post",
"source": 1,
"type": 7
}
(Quelle 1 ist ein automatischer Beitrag, Typ 7 ist ein Statusbeitrag)
Aber es gibt zurück:
{
"error":
{
"code":"",
"message":"An unexpected error occurred.",
"innererror"
{
"message":"An unexpected error occurred..."
}
}
}
Das Senden derselben Nutzlast mit nur "Text" schlägt ebenfalls fehl.
Bitte beachten Sie, dass die Entität Post keine einwertigen Navigationseigenschaften hat https: //msdn.microsoft.com/en-us/library/mt607553.aspx#bkmk_SingleValuedNavigationPropertie) Damit kann ich die zugehörige Entität (Kontakt, Konto usw.) festlegen.
Zum Beispiel Erstellen einer Task-Entität https: //msdn.microsoft.com/en-us/library/mt607619.asp) funktioniert gut aufPOST /api/data/v8.1/tasks
{
"subject": "Test Single Task",
"description": "Test One Description of Task",
"[email protected]": "/contacts(<someguid>)",
"scheduledend": "2016-07-21T12:11:19.4875892Z"
}
Es scheint mir, dass Post so etwas wie @ aussetzen soll[email protected]
, aber es funktioniert nicht.
In diesem Kontext können Sie einen Post über den SOAP-Endpunkt und das SDK erstellen:
var result = Client.getOrganizationService().Create(new Post
{
Text = post.text,
RegardingObjectId = new EntityReference(
entityName,
Guid.Parse(post.regarding_guid)
)
});
Hat jemand ein funktionierendes Beispiel für einen Beitrag, der über die Web-API erstellt wurde? Ist dies eine Lücke in der Dynamics CRM-Web-API?
Es sieht nicht so aus, als ob dies in den Einschränkungen aufgeführt ist:https: //msdn.microsoft.com/en-us/library/mt628816.asp
AKTUALISIERE
Es scheint, dass die nachgeordnete Entität der Ort ist, an dem der Link zum Kontakt / Konto erstellt werden soll. Dies kann durch Abfragen gezeigt werden:
/posts?$filter=postregardingid/regardingobjectid_contact/contactid eq <someguid>
Allerdings funktioniert ein "deep insert" wie so nicht:
{
"text":"sometext",
"postregardingid":
{
"[email protected]":"/contacts(someguid)"
}
}
Die Antwort ist
Kann keine untergeordneten Entitäten vor übergeordneten Entitäten erstellen.