SugarCRM 逻辑钩子从 CE 迁移到 Professional 问题
SugarCRM logic hook Migrating from CE to Professional issue
我使用的是 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-Full-7.8.2.0/custom/modules/Accounts/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-Full-7.8.2.0/custom/modules/Accounts/Ext/LogicHooks/account_hooks.php
<?php
if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
class AccountHooks{
function generateOWQ($event, $arguments){
//my logic
}
}
?>
after_ui_frame
挂钩是旧版 MVC 挂钩,不适用于 Sugar 7 中的 Accounts 模块。
正如 documentation 指出的那样:
The after_ui_frame
hook executes after the frame has been invoked and before the footer has been invoked for modules in backward compatibility mode.
(强调我的)
大多数 Sugar 7 模块,包括 Accounts,使用 Sugar 的 sidecar javascript framework 在客户端构建用户界面。
这些模块 not 运行 in backwards- c兼容模式并不调用这个钩子。只有在 URL 中带有 #bwc
的非 Sidecar 模块才可以。
根据你的逻辑必须做的事情,考虑使用不同的钩子,例如after_relationship_add
, after_retrieve
, etc.
如果您的代码还应该修改 UI,您可能必须在客户端做一些事情,例如通过 extending views.
我使用的是 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-Full-7.8.2.0/custom/modules/Accounts/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-Full-7.8.2.0/custom/modules/Accounts/Ext/LogicHooks/account_hooks.php
<?php
if (!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
class AccountHooks{
function generateOWQ($event, $arguments){
//my logic
}
}
?>
after_ui_frame
挂钩是旧版 MVC 挂钩,不适用于 Sugar 7 中的 Accounts 模块。
正如 documentation 指出的那样:
The
after_ui_frame
hook executes after the frame has been invoked and before the footer has been invoked for modules in backward compatibility mode.
(强调我的)
大多数 Sugar 7 模块,包括 Accounts,使用 Sugar 的 sidecar javascript framework 在客户端构建用户界面。
这些模块 not 运行 in backwards- c兼容模式并不调用这个钩子。只有在 URL 中带有 #bwc
的非 Sidecar 模块才可以。
根据你的逻辑必须做的事情,考虑使用不同的钩子,例如after_relationship_add
, after_retrieve
, etc.
如果您的代码还应该修改 UI,您可能必须在客户端做一些事情,例如通过 extending views.