2017-02-14 1 views
2

J'essaie de récupérer des données à partir des rapports "Opportunités".Sugarcrm pendant la génération de rapports récupérer des données à partir de champs connexes

Ceci est mon scénario: Module d'opportunité, le champ sales_person est un champ réalisé à partir du module users.

Dans Bids modules J'ai un champ relate avec des opportunités.

Lors de la génération de rapports, j'essaie de récupérer le nom sales_person dans les opportunités. Mais il ne figure pas dans le champ Bids rapport field_lists.

Mon dictionnaire Bids

'opportunity_id_c' => array(
      'required' => false, 
      'name' => 'opportunity_id_c', 
      'vname' => 'LBL_OPPORTUNITY_OPPORTUNITY_ID', 
      'type' => 'id', 
      'reportable' => true, 
      'calculated' => false, 
      'len' => 36, 
      'size' => '20', 
     ), 
     'opportunity' => array(
      'required' => false, 
      'source' => 'non-db', 
      'name' => 'opportunity', 
      'vname' => 'LBL_OPPORTUNITY', 
      'type' => 'relate', 
      'reportable' => true, 
      'unified_search' => false, 
      'merge_filter' => 'disabled', 
      'len' => '255', 
      'size' => '20', 
      'id_name' => 'opportunity_id_c', 
      'ext2' => 'Opportunities', 
      'module' => 'Opportunities', 
      'rname' => 'name', 
      'quicksearch' => 'enabled', 
      'studio' => 'visible', 
     ), 

Relation:

$dictionary['Opportunity']['fields']['opportunities_procurements'] = [ 
    'name' => 'opportunities_procurements', 
    'type' => 'link', 
    'relationship' => 'opportunities_procurements', 
    'module' => 'Procurement', 
    'bean_name' => 'Procurement', 
    'source' => 'non-db', 
    'vname' => '', 
]; 

$dictionary['Opportunity']['relationships']['opportunities_procurements'] = [ 
    'lhs_module' => 'Opportunities', 
    'lhs_table' => 'opportunities', 
    'lhs_key' => 'id', 
    'rhs_module' => 'Procurement', 
    'rhs_table' => 'procurement', 
    'rhs_key' => 'opportunity_id_c', 
    'relationship_type' => 'one-to-many', 
]; 

C'est ce que j'ai essayé: j'ai essayé de créer un champ opportunity similaire dans le module d'enchères nommé opportunity_sales_user et dans le dictionnaire au lieu de 'rname' => 'name', J'utilise 'rname' => 'sales_person', mais je n'ai pas obtenu les données car l'enregistrement sales_person est lié.

Je n'ai pas pu récupérer les valeurs Reports.

Comment puis-je créer une relation complète afin que je puisse obtenir la valeur sales_person dans la génération de rapports Bids?

Répondre

0

Je suis face même problème, donc, je choisis d'écrire une simple requête SQL

global $db; 
     $query = "Your Sql to get Reports"; 
     $re = $db->query($query); 
     $data = ''; 
     while ($row = $db->fetchByAssoc($re)) { 
      your code 
     } 
+0

où avez-vous écrit? – TomPHP

+0

si vous le faites en dashlet, alors vous devez créer des dashlets personnalisés –