量变到质变的查询的WHERE子句是很容易的,但如果你想改变选择和这是一个更大的问题。
两种方式来实现这一目标是:
1)创建一个Contact.php create_new_list_query()函数(模块核心类)
function create_new_list_query()
{
$return_array = Array();
$return_array['select'] = "SELECT DISTINCT bean_id ";
$return_array['from'] = " FROM `email_addr_bean_rel` as a, (select .email_address_id from contacts R INNER JOIN email_addr_bean_rel S ON R.id = S.bean_id and S.bean_module='contacts' and S.deleted=0 group by S.email_address_id having count(S.email_address_id)>1) as Dup ";
$return_array['where'] = " where Dup.email_address_id=a.email_address_id and a.bean_module='contacts' and a.deleted=0 ";
$return_array['order_by'] = "";
return $return_array['select'] . $return_array['from'] . $return_array['where']. $return_array['order_by'];
}
您可以将它们添加到选择的显示领域select和listviewdefs.php
$listViewDefs ['Contacts'] =
array (
'bean_id' => array (
'width' => '15%',
'label' => 'LBL_ID',
'default' => true,
),
);
当心这种行为将严重改变你的联系人模块,如果你愿意,你原来的行为事后
2回还原所有更改)的更好的方式是创建一个自定义模块,同样的变化:1)