Проблемы с получением CRM 4.0 для отправки электронной почты с помощью API ... Пожалуйста, помогите! - PullRequest
3 голосов
/ 25 февраля 2011

Я пытаюсь заставить CRM мелодраматически отправлять электронную почту из приложения .Net C #. Я думаю, что я близко, но я продолжаю получать ошибку:

0x80040203 Невозможно создать группу действий: должно присутствовать поле partyid или addressused. Платформа

Вот мой код:

private static void sendCrmEmail()
    {
    try
    {
      //Set up the service
      CrmService crmservice = GetCrmService(OrganisationName, ServerAddress);

      Guid emailID = new Guid();

      // Create a FROM activity party for the email
      activityparty fromParty = new activityparty();
      fromParty.partyid = new Lookup();
      fromParty.partyid.type = EntityName.systemuser.ToString();
      fromParty.partyid.Value = new Guid("275462F3-1E73-DF11-828B-0050568F1812");


      //Create a TO activity party for email
      activityparty toParty = new activityparty();
      fromParty.partyid = new Lookup();
      fromParty.partyid.type = EntityName.contact.ToString();
      fromParty.partyid.Value = new Guid("81AEDF3D-E040-E011-9DA2-000C29E4BD21");  

      // Create an email message.
      email email = new email();

      // Set email properties
      email.to = new activityparty[] { fromParty };
      email.from = new activityparty[] { toParty };
      email.subject = "subject";
      email.description = "body";

      CrmBoolean direction = new CrmBoolean();
      direction.Value = true;
      email.directioncode = direction;

      TargetCreateEmail targetCreate = new TargetCreateEmail();
      targetCreate.Email = email;

      CreateRequest request = new CreateRequest();
      request.Target = targetCreate;

      CreateResponse response = (CreateResponse)crmservice.Execute(request);
      emailID = response.id;

    }
    catch (System.Web.Services.Protocols.SoapException ex)
    {
      Console.WriteLine(ex.Detail.InnerText);
    }


}

1 Ответ

2 голосов
/ 25 февраля 2011

Ваш toParty блок просто сбрасывает fromParty. Это должно выглядеть так:

//Create a TO activity party for email
activityparty toParty = new activityparty();
toParty.partyid = new Lookup();
toParty.partyid.type = EntityName.contact.ToString();
toParty.partyid.Value = new Guid("81AEDF3D-E040-E011-9DA2-000C29E4BD21");
...