3
我试图在SugarOS 6中创建一个自定义字段来存储中间名。在Studio中设计和实现EditView中的字段非常简单。但是当我在DetailView(即称呼+名字+中间名+姓氏)中显示连接名称部分时,我被卡住了。SugarCRM:编写自定义中间名字段
通过糖论坛got me to this thread觅食,其中描述了可以完成的方式。我已经以Sugar逻辑钩子的形式实现了那里给出的代码,该逻辑钩子利用在加载记录时调用的钩子后的after_retrieve钩子。
这里是我的钩代码:
$hook_array['after_retrieve'] = Array();
$hook_array['after_retrieve'][] = array(
100,
'set_full_name',
'custom/modules/Leads/leads_custom_logic.php',
'LeadsCustomLogic',
'setFullName'
);
而这里的是被调用的函数:
function setFullName(&$focus, $event, $arguments) {
$name = $focus->salutation . ' ' .
$focus->first_name . ' ' .
($focus->middle_name_c ? ($focus->middle_name_c . ' ') : '') .
$focus->last_name;
$focus->name = $name;
$focus->full_name = $name;
// echo $focus->full_name;
}
的钩和被调用代码似乎正常工作,如果我去掉最后一行(回声)全名被转储到屏幕上(无论这个函数被调用)。但是,它不会显示实际上应该在哪里出现的地方,即DetailView屏幕中出现全名的行。
任何想法?
感谢, 平方公尺Ë
这是一个很酷的快速修复。谢谢:)但我正在寻找一种方式,通过$ bean-> full_name(对于Leads)将产生所有3个字段的连接结果。我追溯到include/SugarObjects中的Person类的名为_create_proper_name_field()的例程。我试图找出一种安全地重写此例程的方法,因为这样做会反映出Sugar中所有可能视图的变化。 – 2010-11-26 02:20:07