Results 1 to 10 of 10

Thread: Compartir campos entre modulos

  1. #1
    vinfo is offline Sugar Community Member
    Join Date
    Oct 2009
    Posts
    49

    Default Compartir campos entre modulos

    Buen día, es posible compartir campos entre varios modulos??
    Ejemplo:
    Al crear una cuenta, tengo el campo Pais para ingresar, quisiera que este campo País se compartiera en cascada con otros modulos como.
    -Contactos= Al crear un contacto de dicha cuenta, este contacto herede el campo País que tenga la cuenta
    - Ventas= Al crear una venta, esta herede el país de la cuenta.

    La idea es no tener que crear el mismo campo país en cada modulo, si no que sea heredado del modulo cuentas donde yo lo requiera.

    Espero me haya hecho entender.

  2. #2
    Angel's Avatar
    Angel is offline Sugar Community Member
    Join Date
    Jul 2005
    Location
    Los Angeles
    Posts
    4,813

    Default Re: Compartir campos entre modulos

    No se pueden compartir campos a traves de multiple modulos. La unica manera de hacer esto es usando un logic hook o algo parecido para copiar los datos automaticamente cuando se graba la informacion.
    Regards,

    Angel Magaña
    Co-Author: Implementing SugarCRM 5.x (Packt Publishing -- Sept. 2010)
    Blog: http://cheleguanaco.blogspot.com.
    Twitter: @cheleguanaco.

    ________
    | Projects: |_____________________________________
    |
    | CandyWrapper (.NET Wrapper for SugarCRM SOAP API). Source now available on GitHub!
    | GoldMine to SugarCRM Express Conversion. Latest: 1.0.1.7 (Nov. 3, 2009)
    | CRM SkyDialer (Skype Integration). Latest: 1.0.2 (Feb. 17, 2010)
    | Round Robin Leads Assignment
    | Phone Number Formatter
    | CaseTwit (Twitter Integration)
    ______________________________________________

  3. #3
    JackPK's Avatar
    JackPK is offline Sugar Community Member
    Join Date
    Mar 2010
    Location
    Guadalajara, Jalisco. Mexico
    Posts
    67

    Default Re: Compartir campos entre modulos

    Hola,

    Tal como dice Angel, seria necesario programar un Loogic hook de manera que, al crear algun registro a partir de una cuenta, se hiciera en primera instancia un acomprobacion de que la cuenta padre tiene capturada la informacion a compartir (en este caso, el campo Pais).

    Si, en el caso de que el campo Pais fuera obligatorio, entocnes se podria esconder del formulario de captura y hacer que el hook insertara la informacion directamente a la base de datos dentro de la tupla del nuevo registro.

    La ventaja de usar el logic hook, es que puedes pasar varios campos compartidos, pero seria necesario establecer esos campos dentro del Padre como obligatorios para tener esa certeza de que el sistema tendra informacion para compartir.

    Aqui estamos si neecsitas ayuda con el Hook.

    Saludos y espero podamos ayudar a tu problema
    Jose A. Fuentes
    IT Specialist, Project Manager & SugarCRM Consultant
    Querétaro | Querétaro | Mexico
    p: +52 442-364-7187
    e: jafu.85@gmail.com

  4. #4
    morita is offline Junior Member
    Join Date
    Jul 2011
    Posts
    7

    Default Re: Compartir campos entre modulos

    Quote Originally Posted by JackPK View Post
    Hola,

    Tal como dice Angel, seria necesario programar un Loogic hook de manera que, al crear algun registro a partir de una cuenta, se hiciera en primera instancia un acomprobacion de que la cuenta padre tiene capturada la informacion a compartir (en este caso, el campo Pais).

    Si, en el caso de que el campo Pais fuera obligatorio, entocnes se podria esconder del formulario de captura y hacer que el hook insertara la informacion directamente a la base de datos dentro de la tupla del nuevo registro.

    La ventaja de usar el logic hook, es que puedes pasar varios campos compartidos, pero seria necesario establecer esos campos dentro del Padre como obligatorios para tener esa certeza de que el sistema tendra informacion para compartir.

    Aqui estamos si neecsitas ayuda con el Hook.

    Saludos y espero podamos ayudar a tu problema
    Saludos, compañeros.
    Tengo la misma necesidad que vinfo, y no sé cómo programar el Loogic Hook. Veo en mis archivos del crm que tengo creado uno en cada /custom/modules.. y en cada uno pone:

    // Do not store anything in this file that is not part of the array or the hook version. This file will
    // be automatically rebuilt in the future.

    No sé si los puedo tocar, si tengo que hacer uno nuevo, y cómo se programan. También he revisado el post al que el compañero garciasanchezdaniel nos redireccionaba en otro post: logic hooks | code.irontec.com: el blog de recortes de código PHP y más de Irontec: Internet y Sistemas sobre GNU/Linux y no sé elegir el evento adecuado: Sugar DeveloperZone - SugarCRM Developer Documentation, Sugar Documentation

    Una manita me echan? Muy agradecida!
    Saludos

  5. #5
    garciasanchezdaniel's Avatar
    garciasanchezdaniel is offline Sugar Community Member
    Join Date
    Aug 2011
    Location
    Spain
    Posts
    404

    Default Re: Compartir campos entre modulos

    Quote Originally Posted by morita View Post
    Saludos, compañeros.
    Tengo la misma necesidad que vinfo, y no sé cómo programar el Loogic Hook. Veo en mis archivos del crm que tengo creado uno en cada /custom/modules.. y en cada uno pone:

    // Do not store anything in this file that is not part of the array or the hook version. This file will
    // be automatically rebuilt in the future.

    No sé si los puedo tocar, si tengo que hacer uno nuevo, y cómo se programan. También he revisado el post al que el compañero garciasanchezdaniel nos redireccionaba en otro post: logic hooks | code.irontec.com: el blog de recortes de código PHP y más de Irontec: Internet y Sistemas sobre GNU/Linux y no sé elegir el evento adecuado: Sugar DeveloperZone - SugarCRM Developer Documentation, Sugar Documentation

    Una manita me echan? Muy agradecida!
    Saludos
    Hola morita, ¿qué es lo que necesitas hacer exactamente? qué módulos son y qué campos los que quieres copiar.
    Saludos
    Daniel

  6. #6
    morita is offline Junior Member
    Join Date
    Jul 2011
    Posts
    7

    Default Re: Compartir campos entre modulos

    Quote Originally Posted by garciasanchezdaniel View Post
    Hola morita, ¿qué es lo que necesitas hacer exactamente? qué módulos son y qué campos los que quieres copiar.
    Saludos
    Daniel
    Gracias Daniel!
    Estoy con el sugarcrm 6.2.1

    Desde Cuentas, en su módulo de Contactos, creo uno nuevo, y el campo de "phone work" de la Cuenta se copia automáticamente al Contacto que estoy creando. Me gustaría que pasara lo mismo con otros campos, en concreto con la ciudad.

    Necesito lanzar campañas destinadas a los contactos, segmentadas por ciudades. Lo que estoy haciendo ahora es ordenar por número de teléfono, y gracias al comienzo del número, sé a qué ciudad pertenece, pero esa es una solución muy poco fina, un "apaño de andar por casa"...

    Si se copia el teléfono, cómo podrá copiarse también la ciudad?

    Yendo a Herramientas de desarrollo, en "Estudio", consulto los campos de Accounts y Contacts, y el campo de "phone work" no tienen la misma LABEL, así que me resulta un misterio saber cómo se copian si sus labels no son las mismas..

    Gracias, saludos!

  7. #7
    garciasanchezdaniel's Avatar
    garciasanchezdaniel is offline Sugar Community Member
    Join Date
    Aug 2011
    Location
    Spain
    Posts
    404

    Thumbs up Re: Compartir campos entre modulos

    Quote Originally Posted by morita View Post
    Gracias Daniel!
    Estoy con el sugarcrm 6.2.1

    Desde Cuentas, en su módulo de Contactos, creo uno nuevo, y el campo de "phone work" de la Cuenta se copia automáticamente al Contacto que estoy creando. Me gustaría que pasara lo mismo con otros campos, en concreto con la ciudad.

    Necesito lanzar campañas destinadas a los contactos, segmentadas por ciudades. Lo que estoy haciendo ahora es ordenar por número de teléfono, y gracias al comienzo del número, sé a qué ciudad pertenece, pero esa es una solución muy poco fina, un "apaño de andar por casa"...

    Si se copia el teléfono, cómo podrá copiarse también la ciudad?

    Yendo a Herramientas de desarrollo, en "Estudio", consulto los campos de Accounts y Contacts, y el campo de "phone work" no tienen la misma LABEL, así que me resulta un misterio saber cómo se copian si sus labels no son las mismas..

    Gracias, saludos!
    Hola morita, tienes que programar el archivo /modules/Contacts/Contact.php de manera que copie también el campo ciudad de Cuenta. ¿Puedes escribir aquí el código de tu archivo Contact.php, o en su lugar adjuntar el fichero?
    Saludos

  8. #8
    morita is offline Junior Member
    Join Date
    Jul 2011
    Posts
    7

    Default Re: Compartir campos entre modulos

    Quote Originally Posted by garciasanchezdaniel View Post
    Hola morita, tienes que programar el archivo /modules/Contacts/Contact.php de manera que copie también el campo ciudad de Cuenta. ¿Puedes escribir aquí el código de tu archivo Contact.php, o en su lugar adjuntar el fichero?
    Saludos
    Ahaaamm, es esto que sigue, que hay que hacer lo mismo con el campo que quiero?:

    PHP Code:
    function get_list_view_data($filter_fields = array()) {
            global 
    $system_config;
            global 
    $current_user;

            
    $this->_create_proper_name_field();
            
    $temp_array $this->get_list_view_array();
            
    $temp_array['NAME'] = $this->name;
            
    $temp_array['ENCODED_NAME'] = $this->name;

            if(isset(
    $system_config->settings['system_skypeout_on'])
                && 
    $system_config->settings['system_skypeout_on'] == 1)
            {
                if(!empty(
    $temp_array['PHONE_WORK'])
                    && 
    skype_formatted($temp_array['PHONE_WORK']))
                {
                    
    $temp_array['PHONE_WORK'] = '<a href="callto://'
                        
    $temp_array['PHONE_WORK']. '">'
                        
    $temp_array['PHONE_WORK']. '</a>' ;
                }
            } 
    Adjunto el archivo completo. Muy agradecida con la ayuda que me estás prestando!
    Attached Files Attached Files

  9. #9
    garciasanchezdaniel's Avatar
    garciasanchezdaniel is offline Sugar Community Member
    Join Date
    Aug 2011
    Location
    Spain
    Posts
    404

    Wink Re: Compartir campos entre modulos

    Hola morita, en la línea 159, en la función Contact(), podrías recoger el dato que necesitas, mediante una consulta a tu base de datos. Sería algo parecido a esto:
    PHP Code:
    function Contact() {
            
    parent::Person();//Esta línea ya estaba
                    
    global $db;//La variable $db para conectar con la base de datos
                    //Ahora trato de coger el campo 'ciudad' de la tabla 'cuentas' que coincide con el id del registro en el que estoy
            
    $res $db->query("SELECT ciudad FROM cuentas WHERE id = {$_REQUEST['cuentas_id']}");
                 if((
    $row=$db->fetchByAssoc($res))!=null){
                
    $this->ciudad $row['ciudad']; //Aquí se hace la asignación realmente, la copia del campo ciudad de la tabla cuentas en el campo ciudad de contactos
            
    }    

    Es un poco lioso, pero es fácil.
    Prueba un poco ese código y me comentas qué no entiendes.
    Suerte
    Daniel

    NOTA:Para saber qué nombre tienen los campos realmente, utiliza el navegador firefox, y descárgate el complemento firebug

  10. #10
    morita is offline Junior Member
    Join Date
    Jul 2011
    Posts
    7

    Default Re: Compartir campos entre modulos

    Quote Originally Posted by garciasanchezdaniel View Post
    Hola morita, en la línea 159, en la función Contact(), podrías recoger el dato que necesitas, mediante una consulta a tu base de datos. Sería algo parecido a esto:

    Es un poco lioso, pero es fácil.
    Prueba un poco ese código y me comentas qué no entiendes.
    Suerte
    Daniel
    Perfecto, lo probaré y te digo qué tal, pero pinta bastante asequible. Muchas gracias!

    NOTA:Para saber qué nombre tienen los campos realmente, utiliza el navegador firefox, y descárgate el complemento firebug
    Sí, lo conozco, uso el firebug, gracias de nuevo!

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Relacionamento entre módulos
    By jacimarjunior in forum Portugese
    Replies: 0
    Last Post: 2011-03-15, 03:22 PM
  2. Eliminar una Relacion entre modulos
    By arturonegron in forum Español
    Replies: 4
    Last Post: 2009-03-30, 12:36 PM
  3. Campos Entre Módulos
    By Guariniello in forum Portugese
    Replies: 2
    Last Post: 2009-02-06, 01:38 PM
  4. Relacionamento entre dois módulos
    By jorgeluiz in forum Portugese
    Replies: 6
    Last Post: 2008-11-07, 09:15 AM
  5. Relacionamento entre modulos criados
    By lucasfurumoto in forum Portugese
    Replies: 0
    Last Post: 2008-02-08, 09:55 AM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •