Вам нужно будет изменить запрос представления списка и логи выборки данных c. Для получения дополнительной справки просмотрите следующие сведения:
Только для просмотра списка : custom/modules/MODULE_NAME/views/view.list.php
и следующий код помощи:
require_once('include/MVC/View/views/view.list.php');
class MODULE_NAMEViewList extends ViewList {
function listViewProcess() {
global $current_user;
$this->params['custom_where'] = ' AND module_name.name = "test" ';
parent::listViewProcess();
}
}
Для списка и всплывающего окна (оба) :
Вам необходимо изменить функцию logi c внутри create_new_list_query
, которая фактически готовит запрос. Некоторые модули переопределяют его на уровне компонента (например, см. modules/Leads/Lead.php
).
Если вы хотите переопределить его безопасным способом обновления, то создайте файл в пользовательском каталоге, например: custom/modules/Leads/Lead.php
, а затем расширьте его из класса базового компонента следующим образом:
<?php
if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
require_once('modules/Leads/Lead.php');
class CustomLead extends Lead {
function create_new_list_query($order_by, $where,$filter=array(),$params=array(), $show_deleted = 0,$join_type='', $return_array = false,$parentbean=null, $singleSelect = false, $ifListForExport = false)
{
// Code from create_new_list_query in and then modify it accordingly.
}
}
Зарегистрируйтесь новый класс bean в этом месте: custom/Extension/application/Ext/Include/custom_leads_class.php
и регистрационный код будет выглядеть следующим образом:
<?php
$objectList['Leads'] = 'Lead';
$beanList['Leads'] = 'CustomLead';
$beanFiles['CustomLead'] = 'custom/modules/Leads/Lead.php';
?>