Как переопределить щелчок для SearchForm для конкретного действия Sugarcrm

я создал контроллер с подписчиками действий

как это

class LeadsController extends SugarController
{
public function action_subscriber()
{
$this->view = 'sub';
}
}

и я добавил кнопку, названную как подписчики в моей форме поиска

теперь нажмите на эту кнопку, если я хочу, чтобы поиск происходил, поэтому я звоню SUGAR.savedViews.setChooser (); SUGAR.ajaxUI.submitForm (this.form); это две функции в SearchFormGeneric.tpl

<input tabindex='2' title='go_select' id='go_select_b' ondblclick="SUGAR.savedViews.setChooser(); SUGAR.ajaxUI.submitForm(this.form);" class='button' type='button' name='subscriber' value='Subscriber'/>

но когда я нажимаю на кнопку, она собирается

модуль = Ведет&Действие = индекс

моя логика написана в действии, называемом подписчиком, поэтому, когда я нажимаю на свою пользовательскую кнопку, она должна искать с помощью.

модуль = Ведет&действие = абонент

так, как я могу изменить действие при нажатии кнопки «SUGAR.savedViews.setChooser (); SUGAR.ajaxUI.submitForm (this.form); эта функция

Поиск с помощью этого SUGAR.ajaxUI.submitForm (document.forms [‘DetailView’]); на почте

я нашел один пост, связанный с этим, и я попробовал что-то вроде этого SUGAR.ajaxUI.submitForm (document.forms [‘SubView’]);;, но это не сработало.

другой пост, связанный с этим

пожалуйста, кто-нибудь может направить меня на это ????

2

Решение

наконец, мы нашли решение, поэтому то, что мы пытались использовать, было основано на пользовательской кнопке в представлении поиска, мы пытались изменить поиск.

Итак, перейдите к поиску просмотра под:
suitecrm / пользовательские / включить / SearchForm / ВДУ / SearchFormGeneric.tpl

и добавить кнопку

{if $module eq 'o_order'}
<input tabindex='2' title='Subscribers' id='get_report' onclick ="SUGAR.ajaxUI.submitForm(this.form);" class='button' type='submit' name='button' value='Subscribers'/>
{/if}

и поместите условие в метод, в котором мы генерируем список на основе условия поиска

перейдите по адресу: suitecrm / custom / modules / o_order / views / view.list.php

функция, которая генерирует данные списка на основе запроса, это listViewProcess ()

    public function listViewProcess()        // genrating listview
{
$this->processSearchForm();
$this->lv->searchColumns = $this->searchForm->searchColumns;
if(!$this->headers)
return;
if(empty($_REQUEST['search_form_only']) || $_REQUEST['search_form_only'] == false){
$this->lv->ss->assign("SEARCH",true);
$this->lv->setup($this->seed, 'include/ListView/ListViewGeneric.tpl', $this->where, $this->params);
$savedSearchName = empty($_REQUEST['saved_search_select_name']) ? '' : (' - ' . $_REQUEST['saved_search_select_name']);
$configObject = new Configurator();
$configObject->loadConfig();
$configObject->config['save_query'] = 'no';
$configObject->saveConfig();
echo $this->lv->display();
if($_REQUEST['button']=='Subscriber'){
$this->getpdf($this->where);
}
}
}

поэтому мы передаем условие поиска функции getpdf () в качестве параметра

Вот и все, что нужно сделать, восстановить и восстановить из входа администратора, и вы можете увидеть изменения.

надеюсь, это поможет кому-то!

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]