none
Microsoft Dynamics CRM 4.0 RRS feed

  • Pregunta

  • Hola..

    Tengo instalado un CRM 4.0 Professional, necesito traer datos de otra aplicacion, tengo una base de datos en foxpro 7, necesito que algunos datos de cierta tabla se pase de forma automaticamente en la base de CRM(SQL server 2008), es posible hacer esto de forma automatica?

    Ejemplo:

    BD Foxpro

       Campo Nombre= Pedro

     

    BD CRM

       Campo Nombre (Contacto)=Pedro

     

    ESTO ES POSIBLE?

    jueves, 25 de marzo de 2010 22:24

Respuestas

  • Hola Ediss.

     

    Mil disculpas por contestar tan tarde. Bueno en ese caso lo que yo haría sería un servicio windows. Pero antes de todo, tú necesitas que la actualización sea inmediata?, es decir, cuando cambio el registro Pedro Perez en Fox de forma inmediata debería de actualizar en CRM?,

    Si no te importara que la actualización sea cada dia o incluso cada 1,2,3 o más horas lo que yo haría es... cuando se genera una registro o se actualiza dicho registro en FOX se debería de crear "algo" - no sé cómo se manejaría en Fox esto - para que me lo pase a una bbdd intermedia, si fuera sql sería mucho mejor, programaría un SSIS para y lo ejecutaría cada 1,2,3 .. o más horas. Pero como diferenciar si es un registro nuevo o no?, bueno lo que podrías hacer es crear un campo en contacto o cuenta o en la entidad que tu quieras grabar esos datos y guardar ahí el ID que tiene el registro en FOX cuando trates de ingresar ese registro primero deberías de consultar ese campo, si existe obtienes el GUID que te genera automáticamente CRM y lo actualizas, en caso el ID de FOX no exista se deberá de crear.

    Bueno si no crees que es buena forma el ID de FOX, también podrias probar con el DNI o algún campo que nunca se repetirá en los registros.

     

    Espero haberme explicado bien,

     

    Saludos

     

    Ati

     

    • Propuesto como respuesta Atilio martes, 30 de marzo de 2010 15:32
    • Marcado como respuesta Jimmy LarrauriModerator viernes, 19 de noviembre de 2010 16:47
    domingo, 28 de marzo de 2010 19:26

Todas las respuestas

  •  

    Hola Edis,

    Te comento que lo que indicas, no es posible viendole desde una forma soportada.

    Tienes que hacer uso de los servicio web para migrar los datos a la solución Microsoft Dynamics CRM 4.0 ,

    Mira este ejemplo que puede amoldarse a lo que necesitas , te enseña como migrar datos haciendo uso de un proceso ETL al Dynamics CRM 4.0.

    http://crm4-migration.blogspot.com/2008/12/automatizacin-de-migracin-en-crm-40.html

    Espero que te ayude.

     


    Jimmy Larrauri http://jimmylarrauri.blogspot.com
    viernes, 26 de marzo de 2010 4:26
    Moderador
  • Hola Ediss

    Yo no estoy muy de acuerdo con Jimmy en este punto. Es decir, si existe una forma soportada para hacer lo que tu nos estas comentando.

    No confundamos, usar los servicios web del crm, es desarrollar de forma soportada. Para lo que tu quieres hacer to encuentro algunas formasme explico :

     

    1- Si la bbdd me dejara un archivo excel,csv o etc se podría programar un servicio window y programarlo para que se ejecute cada cierto tiempo.

    2- Que te dejen un archivo y con SSIS y los servicios web actualizar y crear los registros en CRM.

    Ahora cual es la ventaja de uno y de otro, pues te doy mi punto de vista.

    Al hacer un servicio web, hay una desventaja, se tiene que desarrollar y esto no es tan intuitivo que digamos. Ademas se debe de crear un instalador y ver cual son los requisitos que necesitas este y etc etc etc - tuve algunos problemas antes con este bendito servicio window, el y yo estamos peleados :D -

     

    Ahora SSIS tiene una desventaja, que si utilizas 2005 este no puede hacer llamadas a servicios web y para solucionar esto se debe de crear una dll y ponerla en la GAC. -lo cual no es tu caso porque utilizas sql 2008 y SSIS ya te permite hacer referencias -. Lo bueno de SSIS es que es muy intuitivo y es fácil de instalar y configurar los JOBS de trabajo.

    Sobre la obtención de la data ya se un servicio windows (C# o WB) o SSIS se puede conectar a cualquier fuente de datos, oracle, foxpro , db2, as, sqp etc etc etc etc

     

    Ahora cual utilizar, pues yo me guió mucho por la cantidad de datos, la ventana de tiempo con el que cuentas para hacer la creación o actualización. Si es mucha data a migrar y tienes poco tiempo anda por SSIS pero si son pocos datos y mucho tiempo pues desarrolla tu servicio. 

    Te dejo algunos link que te hablan sobre SSIS y CRM

    http://blogs.msdn.com/crm/archive/2008/05/07/integrating-crm-using-sql-integration-services-ssis.aspx

    y claro 

    http://atiliorosas.blogspot.com/2009/01/integration-services-y-microsoft-crm.html

    http://atiliorosas.blogspot.com/2009/02/insertando-incident-con-ssis-no.html

     

    Ten mucho cuidado lo que si no esta soportado es el ingreso de los registro de forma directa - sin la utilizacion de los servicios web - a la base de datos del crm.

     

    Bueno espero que mi testimonio te ayude en algo. :D. Nos cuentas como te ha salido todo.

     

    Salu2

     

    Atilio

     

     

     

     

    • Propuesto como respuesta Atilio martes, 30 de marzo de 2010 15:32
    viernes, 26 de marzo de 2010 8:37
  •  

    Completamente de acuerdo mi pana Atilin, probablemente no entendiste bien a lo que me refería de no soportada, lo decía por el hecho de que a través de syntax transact sql se hagan inserciones sobre alguna tabla del DYnamics CRM,  a eso me refería con lo No soportado.

    Y mostrando el ejemplo que hizo Ediss, necesita una forma de como migrar la información y una manera de hacerla es la expuesta en mi post o las tuyas que son muy buenas.

     

    Saludos

     


    Jimmy Larrauri http://jimmylarrauri.blogspot.com
    viernes, 26 de marzo de 2010 15:44
    Moderador
  • Hola Atilio.

     

    Me gusta tu respuesta, pero que pasaria en el caso de que no quisiera migrar un registro nuevo, si no el de actulizar un registro en crm, es decir que yo tengo el mismo registro en crm y en foxpro.

     

    Ejemplo:

    Tengo un contacto con los siguientes datos  en foxpro:

    Nombre             Direccion                          Correo electronico

    Pedro Perez       Calle 5 de Abril No 43        pedro@correo.com

     

    Tengo el mismo  contacto con los siguientes datos  en crm:

    Nombre             Direccion                          Correo electronico

    Pedro Perez       Calle 5 de Abril No 43        pedro@correo.com

     

    Si el contacto me actualiza su cuenta de correo a pperez@correo.com, este valor debe estar actualizado para el registro Pedro Perez en las dos base de datos(Foxpro y CRM).

    Para no actulizar este valor de un solo campo primero en foxpro y luego en crm de forma manual, es posible que si yo ingreso este valor en foxpro de forma manual dicho valor se actulice para ese registro en CRM de forma automatica, sin que el usuario de CRM deba hacerlo?

     

    Un saludo

     

     

     

    viernes, 26 de marzo de 2010 15:59
  • Hola Ediss.

     

    Mil disculpas por contestar tan tarde. Bueno en ese caso lo que yo haría sería un servicio windows. Pero antes de todo, tú necesitas que la actualización sea inmediata?, es decir, cuando cambio el registro Pedro Perez en Fox de forma inmediata debería de actualizar en CRM?,

    Si no te importara que la actualización sea cada dia o incluso cada 1,2,3 o más horas lo que yo haría es... cuando se genera una registro o se actualiza dicho registro en FOX se debería de crear "algo" - no sé cómo se manejaría en Fox esto - para que me lo pase a una bbdd intermedia, si fuera sql sería mucho mejor, programaría un SSIS para y lo ejecutaría cada 1,2,3 .. o más horas. Pero como diferenciar si es un registro nuevo o no?, bueno lo que podrías hacer es crear un campo en contacto o cuenta o en la entidad que tu quieras grabar esos datos y guardar ahí el ID que tiene el registro en FOX cuando trates de ingresar ese registro primero deberías de consultar ese campo, si existe obtienes el GUID que te genera automáticamente CRM y lo actualizas, en caso el ID de FOX no exista se deberá de crear.

    Bueno si no crees que es buena forma el ID de FOX, también podrias probar con el DNI o algún campo que nunca se repetirá en los registros.

     

    Espero haberme explicado bien,

     

    Saludos

     

    Ati

     

    • Propuesto como respuesta Atilio martes, 30 de marzo de 2010 15:32
    • Marcado como respuesta Jimmy LarrauriModerator viernes, 19 de noviembre de 2010 16:47
    domingo, 28 de marzo de 2010 19:26