如何将SearchForm的onclick覆盖到特定的操作Sugarcrm

时间:2014-11-19 22:02:23

标签: php yui sugarcrm suitecrm

我创建了一个带动作订阅者的控制器

像这样

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'/>

但是当我点击按钮时

模块=信息&安培;行动=索引

我的操作中写了一个名为subscriber的逻辑,所以当我点击我的自定义按钮时,它应该搜索。

模块=信息&安培;行动=订户

那么如何更改点击&#34; SUGAR.savedViews.setChooser(); SUGAR.ajaxUI.submitForm(this.form);这个功能

Search with this SUGAR.ajaxUI.submitForm(document.forms[‘DetailView’]); on post

我发现了一篇与此相关的帖子,我尝试了一些像这样的SUGAR.ajaxUI.submitForm(document.forms ['SubView']);,但它没有用。

other post related to this

请任何人指导我这个????

1 个答案:

答案 0 :(得分:1)

终于得到了解决方案,所以我们尝试的是基于搜索视图上的自定义按钮,我们试图修改搜索。

所以,转到下面的搜索视图: suitecrm /定制/包含/ SearchForm / TPLS / 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()函数作为参数

它从管理员登录进行修复和重建,您可以看到更改。

希望这有助于一个人!