tags:

views:

138

answers:

1

Hi there,

I'm trying to convert an order and orderdetail lines to a custom entity and its child lines using InitializeFromRequest using the code below:

public void Convert(Guid FromEntityId, string FromEntityName, string ToEntityName)
    {
        try
        {
            // Set up the CRM Service.
            CrmService _service = GetCrmService();

            InitializeFromRequest req = new InitializeFromRequest();
            req.EntityMoniker = new Moniker(); // this is the very thing that does the job.

            req.EntityMoniker.Id = FromEntityId;
            req.EntityMoniker.Name = FromEntityName;
            req.TargetEntityName = ToEntityName;  //contact for our example req.

            req.TargetFieldType = TargetFieldType.ValidForCreate;
            InitializeFromResponse rps = (InitializeFromResponse)_service.Execute(req);
            //now the lead is converted to a contact, and you can see it in contacts.
            Guid entityId = _service.Create(rps.Entity);
            lblMsg.Text = "Done ID:" + entityId.ToString();
        }            
        catch (System.Web.Services.Protocols.SoapException se)
        {
            lblMsg.Text = "soap:" + se.Detail.InnerText;
        }
        catch (Exception ex)
        {
            lblMsg.Text = ex.Message;
        }

    }

Now i am able to get a custom entity created but all the attributes are empty despite me setting the mapping fields in the realtionship.

Any ideas on what i am missing or doing wrong?

Thanks in advance Andrew

A: 

You need to set ReturnDynamicEntities = true when converting an standard entity to a custom one.