我正在使用SugarCRM 6.8 CE,我的逻辑钩子按预期工作。但是,当我切换到SugarPro-Full-7.8.2.0时。逻辑挂钩根本不起作用。我正在关注文档http://support.sugarcrm.com/Documentation/Sugar_Developer/Sugar_Developer_Guide_7.8/Architecture/Logic_Hooks/。我的代码如下:
SugarPro-全7.8.2.0 /定制/模块/账户/ logic_hooks.php
<?php
$hook_array['after_ui_frame'] = Array();
$hook_array['after_ui_frame'][] = Array(2, 'After Relationship Add','custom/Extension/modules/Accounts/Ext/LogicHooks/account_hooks.php','AccountHooks','generateOWQ');
?>
SugarPro-全7.8.2.0 /定制/模块/账户/外部/ LogicHooks / account_hooks.php
<?php
if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
class AccountHooks{
function generateOWQ($event, $arguments){
//my logic
}
}
?>
答案 0 :(得分:3)
after_ui_frame
挂钩是遗留的MVC挂钩,不适用于Sugar 7中的 Accounts 模块。
正如documentation所指出的那样:
after_ui_frame
挂钩在调用帧之后和调用页脚之前执行以便向后兼容模式下的模块。
(强调我的)
大多数Sugar 7模块(包括 Accounts )使用Sugar的sidecar javascript framework来构建客户端的用户界面。
那些模块不在 b 确认 w ards- c ompatiblity模式下运行不> em>调用此钩子。只有其网址中包含#bwc
的非边车模块。
根据你的逻辑必须做的事情,考虑使用不同的钩子,例如after_relationship_add
,after_retrieve
,etc.
如果您的代码也应该修改UI,您可能必须在客户端执行操作,例如extending views。