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

Pregunta
-
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!!!
Respuestas
-
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!!
- Propuesto como respuesta Atilio jueves, 25 de febrero de 2010 10:48
- Marcado como respuesta Giorgio Garcia-AgredaModerator lunes, 4 de octubre de 2010 9:09
-
Hola y45h1r0
,
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- Marcado como respuesta Giorgio Garcia-AgredaModerator lunes, 4 de octubre de 2010 9:09
Todas las respuestas
-
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!!
- Propuesto como respuesta Atilio jueves, 25 de febrero de 2010 10:48
- Marcado como respuesta Giorgio Garcia-AgredaModerator lunes, 4 de octubre de 2010 9:09
-
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, -
-
Hola y45h1r0
,
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- Marcado como respuesta Giorgio Garcia-AgredaModerator lunes, 4 de octubre de 2010 9:09
-
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!! -
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!