我正在自定義SugarCRM。在某些時候,我需要在用戶創建記錄時將一些自定義值存儲到數據庫。我試圖使用觸發器,但它不符合要求。所以我需要用PHP代碼編寫。Sugarcrm,在保存記錄時編寫自定義代碼
我的問題是,在哪裏寫這段代碼。
我正在自定義SugarCRM。在某些時候,我需要在用戶創建記錄時將一些自定義值存儲到數據庫。我試圖使用觸發器,但它不符合要求。所以我需要用PHP代碼編寫。Sugarcrm,在保存記錄時編寫自定義代碼
我的問題是,在哪裏寫這段代碼。
在模塊的保存操作中使用邏輯掛鉤(after_save或before_save,例如)。
創建自定義/模塊/ Mymodule中一個logic_hooks.php/
<?
$hook_array = Array();
$hook_array['after_save'] = Array();
$hook_array['after_save'][] = Array(
0,
'myName',
'custom/modules/myModule/logic_hooks/file.php',
'myClass',
'myMethod'
);
?>
創建/自定義/模塊/ Mymodule中file.php/logic_hooks/
<?php
class myClass{
function myMethod(&$bean, $event, $arguments){
// Do something with $bean (e.g. store the custom DB value)
}
}
?>
欲瞭解更多信息,請參閱:this link。
確保your_php_file.php可以由apache執行。這可能是或可能是拼寫錯誤?看看你的apache日誌文件中是否有任何東西。
我試過這樣,保存時會自動加載logic_hooks.php,但不會調用myMethod函數。我已經給出了正確的路徑,但存儲在/ custom/modules/CV_Customer_Visits文件夾中 – AjayR
我認爲它應該是一個相對路徑,所以'/ custom/modules/CV_Customer_Visits/your_php_file.php'應該通過'custom/modules/CV_Customer_Visits/your_php_file .php' –
我想知道,在糖中使用這些鉤子方法定義了一些Feed的代碼。當我用一個新函數在該文件中編寫我的代碼時,它正在正確執行。但是,當我改變同一個文件的位置,它不工作(我也改變了鉤子調用相應的路徑) – AjayR