Integrando Microsoft CRM en nuestras aplicaciones Web

Vamos a ver como podemos integrar CRM en nuestras aplicaciones Web utilizando el SDK que nos brinda, que para este caso utilizaremos la fachada de Servicios Web, que en este caso son 2:

Crm Web Service

Metadata Web Service

Nosotros vamos a trabajar con el primero, que nos pemite obtener entidades, crearlas, actualizarlas, borrarlas y realizar consultas XML, que esto lo veremos en otra ocasión.

Lo primero que tenemos que saber es la URL del Web Service de CRM, algo como:

http://servidor:puerto/mscrmservices/2006/crmservice.asmx

y agregarla a nuestra aplicación. Una vez que pongamos la URL nos aparecerá la siguiente información:

crmsdkwebreference

Como podemos observar, nos muestra los métodos que soporta y una pequeña descripción sobre los mismos. Añadimos finalmente la referencia y ya estamos listos para picar algo de código.

En el ejemplo que es muestro a continuación, vamos a recuperar los datos de un cliente particular concreto. Antes de llamar la método que nos devolverá la entidad, es necesario presentar las credenciales al Servicio Web para que sepa quienes somos y nos permita ejecutar la consulta sino recibiremos un 401 Unauthorized...

protected void Page_Load(object sender, EventArgs e)
{
    CrmService service = new CrmService();
 
    string domain       = "xxxxxxxxx";
    string userName     = "xxxxxxxxx";
    string password     = "xxxxxxxxx";
    string authScheme   = "Negotiate";
 
    CredentialCache credentialCache = new CredentialCache();
    NetworkCredential credential = new NetworkCredential(userName, password, domain);
    credentialCache.Add(new Uri(service.Url), authScheme, credential);
 
    service.Credentials = credentialCache;
    service.PreAuthenticate = true;
 
    contact clienteParticular = 
        (contact)service.Retrieve(EntityName.contact.ToString(), 
                                  new Guid("366deebb-8bcd-dc11-9bd4-0017a4a78956"), 
                                  new AllColumns());
 
    txtFirstName.Text = clienteParticular.firstname;
    txtLastName.Text = clienteParticular.lastname;
    txtTelephone.Text = clienteParticular.telephone1;
}

Al principio puede resultar confuso sino se conoce CRM, sobre todo su modelo de entidades, pero una vez que entendemos un poquillo estos conceptos no cuesta muho empezar a atacarlo.

En el siguiente artículo vamos a ver comor realizar consultas más complejas :)

Saludos

Published 2/4/2008 12:58 por Luis Ruiz Pavón
Archivado en: ,,
Comparte este post:
http://geeks.ms/blogs/lruiz/archive/2008/04/02/integrando-crm-en-nuestras-aplicaciones-web.aspx

Comentarios

# re: Integrando CRM en nuestras aplicaciones Web

Espero que poner la contraseña en texto plano dentro de la función sólo sea por motivos ilustrativos y no lo tengas por costumbre :P

Saludo!

Wednesday, April 02, 2008 9:02 PM por Vargas

# re: Integrando CRM en nuestras aplicaciones Web

Pues efectivamente no!!! como tampoco suelo poner ese tipo de código en el Load de la página...

Como podrás observar es un ejemplo rápido y sencillo, como bien dices ilustrativo ;)

Salu2

Thursday, April 03, 2008 12:30 PM por Luis Ruiz Pavón

# re: Integrando CRM en nuestras aplicaciones Web

Hola, estuve viendo el articulo, y no me queda muy claro cuando nombras el CRM si estas hablando de un componente a desarrollar o si se trata de un componente ya existente (como por ejemplo un Microsoft Dynamics CRM).

Supongo que se trata de un componente, porque hablas de "entender su modelo de entidades" cosa que da a entender que es algo ya creado. Entonces la pregunta seria ¿Con que CRM estas trabajando?.

Salu2

Thursday, April 03, 2008 11:08 PM por Pablo

# re: Integrando CRM en nuestras aplicaciones Web

Tienes toda la razón, la verdad es que no he especificado pero es Microsoft Dynamics CRM.

Salu2

Friday, April 04, 2008 1:38 PM por Luis Ruiz Pavón

# re: Integrando Microsoft CRM en nuestras aplicaciones Web

Hola Luis, este post es del 2 de abril...  donde está el siguiente, donde ibas a explicar consultas más complejas???

Gracias!

Wednesday, October 22, 2008 7:53 PM por Jordi

# re: Integrando Microsoft CRM en nuestras aplicaciones Web

Lo siento Jordi :( pero es que no tengo ni para respirar.

Espero retomar esto en breve ;)

Thursday, November 06, 2008 4:37 PM por Luis Ruiz Pavón

# Programacion de un crm en web

Hola me llamo luis y tengo que realizar un CRM basado en web, me podrian dar una idea de como programarlo.

yo pienso yavascript y jsp, pero desconozco la verdad de crm, apenas estoy comenzando a investigar de que se trata.

tengo 3 meses xfa denme una idea de como hacerlo grax

les dejo mi correo para cualquier informacion

salu2

grax!!!!!

metwo507@hotmail.com

Thursday, July 15, 2010 6:38 PM por Luis Erbin

# re: Integrando Microsoft CRM en nuestras aplicaciones Web

Hola Luis Erbin:

Prueba Splendid CRM:

http://www.splendidcrm.com/

Un saludo

Monday, July 19, 2010 5:01 PM por Luis Ruiz Pavón