2017-04-06 7 views
1

これはm論理フックAfter Saveです。この論理フックはローカルマシン上で完全に動作しています。
しかし、それはsandboxcopyでは機能しません。私はSugar Supportチームにこの質問をしました
彼らはSet_relationshipが機能していないことを発見しました。
しかし私の質問は、これが地元で働いているのか、それとも私が間違っているこのコードを書くための別の方法があるのですか?サンドボックスの関係が設定されていませんSugarcrm

class RHLogicHook { 

    function ReportingTeam($bean, $event, $arguments) { 

     if (isset($arguments['isUpdate']) && $arguments['isUpdate'] == false) { 
      $reporting_head = BeanFactory::retrieveBean('Contacts', $bean->contact_id_c); 
      $contact = BeanFactory::retrieveBean('Contacts', $bean->contacts_rh_reporting_head_1contacts_ida); 

      $reporting_team = new RH_reporing_team(); 
      $reporting_team->contact_id_c = $contact->id; 
      $reporting_team->save(); 
      $dataset = array(
       'contacts_rh_reporing_team_1contacts_ida' => $reporting_head->id, 
       'contacts_rh_reporing_team_1rh_reporing_team_idb' => $reporting_team->id, 
      ); 
      $reporting_team->set_relationship('contacts_rh_reporing_team_1_c', array(), false, false, $dataset); 

     } 
    } 

} 

私を助けてください。

答えて

0

上記の使用はご遠慮ください。ロードリレーションを使用してメソッドを追加します。

class RHLogicHook { 

    function ReportingTeam($bean, $event, $arguments) { 

     if (isset($arguments['isUpdate']) && $arguments['isUpdate'] == false) { 
      $reporting_head = BeanFactory::retrieveBean('Contacts', $bean->contact_id_c); 
      $contact = BeanFactory::retrieveBean('Contacts', $bean->contacts_rh_reporting_head_1contacts_ida); 

      $reporting_team = new RH_reporing_team(); 
      $reporting_team->contact_id_c = $contact->id; 
      $reporting_team->save(); 

      $GLOBALS['log']->log('zob_ms_bean ' . print_r($reporting_head, 1)); 


      if ($reporting_head->load_relationship('contacts_rh_reporing_team_1')) { 
       $reporting_head->contacts_rh_reporing_team_1->add($reporting_team->id); 
      } 
     } 
    } 

} 
+0

どのようにこの回答が間違っていますか私は完全に働いています。 –

0

場合厥あなたが簡単にあなたのコードが言及したトリック下記の生産instance.Tryに大きな動作することを確認するためにトリックを使用できるかどうかの機能のいくつかは、ブラックリストに載っている:

$ hack_function = "set_relationship ";$ reporting_team - > $ hack_function( 'contacts_rh_reporing_team_1_c'、array()、false、false、$ dataset);

これがあなたの問題を解決できることを願います。

関連する問題