Creación de registros con relación One-to-Many

回答済み Creación de registros con relación One-to-Many

  • 2009년 11월 9일 월요일 오후 6:28
     
     
    Hola amigos,

    Mi pregunta es la siguiente, estoy iniciandome en la parte de programación con dynamics crm 4.0, tengo Entidad 1 y Entidad 2, existe una relación de 1 a muchos de Entidad 1 a Entidad 2.

    Mi problema es el siguiente, usando c# creo registros del tipo Entidad 2, lo que necesito es que estos registros estén relacionados con un registro de tipo Entidad 1, no encuentro la forma de hacerlo, no se con que clase apoyarme para realizar esto.

    He tratado con la clase AssociateEntitiesRequest, pero esta solo funciona pra relaciones Many-to-Many y la relación que tengo es One-to-Many.

    Cualquier aporte me sería de gran ayuda.

    Desde ya muchas gracias!!!

모든 응답

  • 2009년 11월 9일 월요일 오후 8:18
     
     답변됨
    Lo acabo de resolver, es muy simple, aunque me llevo un buen de tiempo, falta de experiencia :P.

    La Entidad 2 contiene un atributo de lookup hacia la Entidad 1, de tal forma que yo puedo hacer lo siguiente:


    //Creamos un registro del tipo Entidad 2
    DynamicEntity e2 = new DynamicEntity();
    e2.Name = "Entidad2";

    //creamos un objeto de tipo Lookup
    //al valor para el lookup debe de ser el Guid que tenga el registro del tipo Entidad1
    Lookup lk = new Lookup();
     lk.Value = new Guid("C813F897-31C3-DE11-8302-000C29CEB6FD");

    //finalmente se genera la relación asigando el valor del lookup que generamos al atributo e1id que es un atributo de lookup hacia Entidad1
    e2["e1id"] = lk;


    Y con eso hemos creado una relación One-to-many.


    Espero a alguien le ayude.


    Saludos!!

  • 2009년 11월 9일 월요일 오후 9:57
    중재자
     
     
    Exactamente, los campos de tipo "referencia" son los "lookups".
    De todos para todo este tipo de cosas te recomiento tenre siempre a mano la SDK de CRM 4.0:
    http://www.microsoft.com/downloads/details.aspx?FamilyID=82E632A7-FAF9-41E0-8EC1-A2662AAE9DFB&displaylang=en

    un saludo,
  • 2009년 11월 9일 월요일 오후 10:59
     
     
    Lo tengo instalado, ya que es de la instalación del sdk de donde tomo las dll's para poder desarrollar.

    Ahora trabajaré sobre la asignación de registros a equipos de trabajo, si tienen algo al respecto les agradecería me compartieran un ejemplo.

    Saludos y gracias amigos!!.
  • 2009년 11월 10일 화요일 오후 3:04
    중재자
     
     답변됨

    Hola y45h1r0Medallas del usuario,
    ten cuidado con eso, ya que solo se pueden asignar registros a usuarios y no a equipos de trabajo.
    Con los equipos lo unico que puedes hacer es "Compartir" registros

    un saludo

  • 2009년 11월 10일 화요일 오후 5:31
     
     
    Hola Demian,

    Efectivamente no se puede, intenté hacerlo por mera curiosidad y me lanza una excepción indicandome que no existe el usuario con el id que proporcioné y pues nunca lo encontrará puesto que busca usuarios con el id proporcionado  cuando yo le había proporcionado un id de equipo.

    Consideraré la compartición de registros en lugar de la asignación.

    Saludos!!
  • 2010년 2월 24일 수요일 오후 11:40
     
     
    Hola que tal y45h1r0

    Al igual que tú cuando escribiste este post apenas estoy entrando en el mundo de CRM, y efectivamente tengo un requerimiento One-To-Many en el que quiero asignarle muchos PAGOS a un CLIENTE.

    Estoy creando una pagína custom de ASP para mostrar en CRM, y debo mostrar todos esos PAGOS de CLIENTE,

    Quisiera hacerte las siguientes preguntas:

    1) Las entidades  1 y 2 las creaste primero en CRM luego las manipulaste desde C#? ó las creaste en C# mediante código?

    2) Sería mucho pedir si tienes un segmento de código que me pudieras proporcionar como ejemplo? Te lo agradecería muchisimo.


    Saludos y gracias!