<div dir="ltr">Thanks Istavan,<div><br></div><div>List view search and Sort are both Ajax operations.I would suggest you have a look and debug under List.js of /vtiger_root/layouts/vlayout/modules/Vtiger/resources/List.js</div>
<div><br></div><div>Function to look out for:</div><div>getListViewRecords<br></div><div>registerHeadersClickEvent<br></div><div>registerListSearch<br></div><div><br></div><div>Check for what is the return of<font face="arial narrow, sans-serif"><font color="#ff0000">  </font><span style="white-space:pre-wrap"><font color="#ff0000">jQuery("#module").val()  </font><font color="#000000">on the list view of your module.</font></span></font></div>
<div><br></div><div>Regards,</div><div>Rishab</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Aug 6, 2014 at 7:19 PM, Holbok István <span dir="ltr"><<a href="mailto:holbok@gmail.com" target="_blank">holbok@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  

    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>Hi Rishab,<br>
      <br>
      Your last email helps much.<br>
      Debugging the function getTemplatePath($templateName,$module)  in
      /vtiger_root/includes/runtime  I have realized that in case of <b>sort
        by or search clicking</b> to the header the <b>$module variable
        is <font color="#cc0000">empty</font></b>, in other case the
      $module variable contains the CustomModule name.<br>
      My ListViewContents.tpl is attached and also attached the
      MyMultiselectField.php<br>
      <br>
      It looks like the variable <b>$MODULE_NAME</b>  in the
      ListViewContents.tpl is unset after clicking to the listview
      header search or sort_by.<br>
      <br>
      I uses parent (e.g. vtiger) <b>list.php</b> to prepare the data
      for the template.<br>
      <br>
      <div>Regrads:<br>
        <b>István</b><br>
        <br>
        <br>
      </div>
      2014.08.06. 14:30 keltezéssel, Rishab K írta:<br>
    </div><div><div class="h5">
    <blockquote type="cite">
      <div dir="ltr"><span style="font-family:arial,sans-serif;font-size:13px">I tried to
          reproduce this on my instance in both cases(search and sort)
          the template location I get is </span>
        <div style="font-family:arial,sans-serif;font-size:13px">
          <br>
        </div>
        <div style="font-family:arial,sans-serif;font-size:13px"><font color="#ff0000"><b><span>/var/www/vtiger_root/includes/runtime/../../layouts/vlayout//modules/CustomModule/uitypes/MyCustomMultiSelectFieldSearchView.tpl</span></b></font></div>

        <div style="font-family:arial,sans-serif;font-size:13px"><b style="color:rgb(255,0,0)"><br>
          </b></div>
        <div style="font-family:arial,sans-serif;font-size:13px"><b style="color:rgb(255,0,0)"><br>
          </b></div>
        <div style="font-family:arial,sans-serif;font-size:13px">
          <font color="#000000">In viewer.php under
            /vtiger_root/include/runtime in
            function getTemplatePath($templateName,$module) look for
            what is the path returned.</font></div>
        <div style="font-family:arial,sans-serif;font-size:13px">
          <b style="color:rgb(255,0,0)"><br>
          </b></div>
        <div style="font-family:arial,sans-serif;font-size:13px"><font color="#000000">Can you share your ListViewContents.tpl and
            MyCustomMultiselectField.php</font></div>
      </div>
      <div class="gmail_extra">
        <br>
        <br>
        <div class="gmail_quote">On Wed, Aug 6, 2014 at 4:07 PM, Holbok
          István <span dir="ltr"><<a href="mailto:holbok@gmail.com" target="_blank">holbok@gmail.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div text="#000000" bgcolor="#FFFFFF">
              <div>Hi Rishab,<br>
                <br>
                It was exactly done before my letter.<br>
                And today morning I went through again all the steps.<br>
                <br>
                And it works, except by clicking search or sort on the
                header of the listview table.<br>
                <br>
                At the normal list view vtiger uses the overrided
                Function getListSearchTemplateName() from the
                /modules/CustomModule/uitypes/MyCustomPicklist.php<br>
                It is easy to control turning on the debug function and
                putting a $log->debug('I am here :-) '); row to the
                function overrided Function getListSearchTemplateName().<br>
                <br>
                When I am going to the listview the call of overrided
                Function getListSearchTemplateName() happened and it
                return the necessary 
                'uitypes/MyMultiSelectFieldSearchView.tpl' string, and
                it parsed well.<br>
                <br>
                When I am clicking to<b> a header field to sort by
                  record_id</b>, the call of overrided Function
                getListSearchTemplateName() happened again and it return
                the necessary 
                'uitypes/MyMultiSelectFieldSearchView.tpl' string as
                well, but in this case the <b>string parsed wrong</b>
                and vtiger looks for the template in the Vtiger
                directory instead of the CustomModule layout directory.<br>
                It is also checked. Copying the template from the
                CustomModule layout directory to the Vtiger layout
                directory the error message did not appear.<br>
                <br>
                So there should be a directory parse bug inside
                somewhere.<br>
                <br>
                regards:<br>
                Istvan<br>
                <br>
                <div><br>
                  <br>
                </div>
                2014.08.06. 11:10 keltezéssel, Rishab K írta:<br>
              </div>
              <div>
                <div>
                  <blockquote type="cite">
                    <div dir="ltr"><span style="font-family:arial,sans-serif">I meant in
                        your case Override the Function </span><span style="font-family:arial,sans-serif"><font color="#ff0000"><b>getListSearchTemplateName()</b></font> </span><span style="font-family:arial,sans-serif">of
                        /layouts/vlayout/uitypes/Base.</span><span style="font-family:arial,sans-serif">php in </span><br>
                      <div><span style="font-family:arial,sans-serif">your</span></div>
                      <div><span style="font-family:arial,sans-serif"><br>
                        </span></div>
                      <div><b><span style="font-family:arial,sans-serif;color:rgb(255,0,0)">/modules/CustomModule/uitypes/</span><span style="font-family:arial,sans-serif"><br>
                          </span></b></div>
                      <div><font color="#ff0000"><span style="font-family:arial,sans-serif"><b><br>
                            </b></span></font></div>
                      <div><font color="#ff0000"><span style="font-family:arial,sans-serif"><b>or
                              add </b></span></font></div>
                      <div><font color="#ff0000"><span style="font-family:arial,sans-serif"><b><br>
                            </b></span></font></div>
                      <div><font face="arial, sans-serif" color="#ff0000"><b>
                            <div>public function
                              getListSearchTemplateName() {</div>
                            <div>         return 'uitypes/<span style="font-family:arial"><span style="font-family:arial,sans-serif">MyMultiSelectFieldSearchView.tpl</span></span>
                              <div style="display:inline!important">';</div>
                            </div>
                          </b></font><font face="arial, sans-serif">
                          <div style="color:rgb(255,0,0)"> <b>    }</b></div>
                          <div style="color:rgb(255,0,0)"><br>
                          </div>
                          <div><font color="#000000">In
                              your MyCustomPicklist.php under </font></div>
                          <div><font color="#000000"><br>
                            </font></div>
                          <div><span style="color:rgb(255,0,0)"><b>/modules/CustomModule/uitypes/</b></span><font color="#000000"><span style="font-size:15px"><br>
                              </span></font></div>
                        </font></div>
                      <div class="gmail_extra"><br>
                        <br>
                        <div class="gmail_quote">On Wed, Aug 6, 2014 at
                          1:06 PM, Holbok István <span dir="ltr"><<a href="mailto:holbok@gmail.com" target="_blank">holbok@gmail.com</a>></span>
                          wrote:<br>
                          <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
                            <div text="#000000" bgcolor="#FFFFFF">
                              <div>Dear Rishab,<br>
                                <br>
                                Thank you very much for the support.<br>
                                May my English was not enough good to
                                explain my findings.<br>
                                <br>
                                I am using overrided <b>ListViewContents.tpl</b>
                                under
                                /layouts/vlayout/modules/CustomModule/
                                and the template works well.<br>
                                I have just included a line before the
                                red below:
                                <div><br>
                                  <br>
                                  <div>
                                    <div>{<b><font color="#ff0000">include
file=vtemplate_path($FIELD_UI_TYPE_MODEL->getListSearchTemplateName(),$MODULE_NAME</font></b>)</div>
                                    <div>                   
                                      FIELD_MODEL= $LISTVIEW_HEADER
                                      SEARCH_INFO=$SEARCH_DETAILS[$LISTVIEW_HEADER->getName()]
                                      USER_MODEL=$CURRENT_USER_MODEL}</div>
                                  </div>
                                  <br>
                                </div>
                                {$FIELD_UI_TYPE_MODEL->getListSearchTemplateName()} 

                                to write out to the screen the template
                                names used in different column.<br>
                                <br>
                                In the custom multipicklist column was
                                listed the right template name: <b>uitypes/MyMultiSelectFieldSearchView.tpl</b><br>
                                And this template name is defined by the
                                .../modules/CustomModule/uitypes/MyMultipicklist.php 

                                with overriding the Function <b>getListSearchTemplateName()</b>
                                for that uitype only.<br>
                                <br>
                                The template name is OK, vtiger find in
                                any case the <b>right template name</b>,
                                but in sort and search vtiger looking
                                for this right name in the wrong
                                directory.<br>
                                <br>
                                I did the suggested ovveride in the
                                modules/Vtiger/uitypes/Base.php ->
                                modules/CustomModule/uitypes/Base.php<br>
                                <br>
                                BUT when clicking to the listview header
                                to sort the columns e.g. by Record Label
                                the too same error appeared.<br>
                                <br>
                                The vtiger looking for the right
                                template name in the incorrect
                                directory.<br>
                                The right directory will be: <b>.../layouts/vlayout/modules/CustomModule/uitypes/</b><br>
                                <br>
                                vtiger looking for the right template
                                name in the <b>.../layouts/vlayout/modules/Vtiger/uitypes/</b><br>
                                <br>
                                So overriding the Function <b>getListSearchTemplateName()</b>
                                in the modules/Vtiger/uitypes/Base.php
                                is not a right solution.<br>
                                Even the Function <b>getListSearchTemplateName()</b>
                                in the
                                modules/Vtiger/uitypes/Multipicklist.php
                                is already overrided in it works -
                                generates the right name.<br>
                                <br>
                                My opinion is that the
                                .../modules/Vtiger/models/ListView.php
                                fails inside the function
                                getListViewHeaders() or in function
                                getListViewEntries($pagingModel).<br>
                                query_generator or listview_controller <br>
                                <br>
                                Do the these entities manipulate the
                                templates somewhere?<br>
                                <br>
                                <br>
                                <div>Regards:<br>
                                  <b>István</b><br>
                                  <br>
                                  <br>
                                  <br>
                                </div>
                                2014.08.06. 8:30 keltezéssel, Rishab K
                                írta:<br>
                              </div>
                              <div>
                                <div>
                                  <blockquote type="cite">
                                    <div dir="ltr">
                                      <div> <br>
                                      </div>
                                      <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span style="font-family:arial,sans-serif;font-size:13px"></span><span style="font-family:arial,sans-serif;font-size:13px">It


                                          indicates the sort_by and
                                          search javascript functions on
                                          the listview screen use a
                                          hardcoded path to the
                                          templates and did not use the
                                          callback to the CustomModule
                                          directory.</span><span style="font-family:arial,sans-serif;font-size:13px"><br>
                                        </span><span style="color:rgb(204,0,0);font-family:arial,sans-serif;font-size:15px">Unable


                                          to load template file '</span><b style="color:rgb(204,0,0);font-family:arial,sans-serif;font-size:15px">modules/Vtiger/uitypes/MyMultiSelectFieldSearchView.tpl</b><span style="color:rgb(204,0,0);font-family:arial,sans-serif;font-size:15px">'
                                          in '</span><b style="color:rgb(204,0,0);font-family:arial,sans-serif;font-size:15px">modules/</b><b style="color:rgb(204,0,0);font-family:arial,sans-serif;font-size:15px"><b><b>CustomModule</b></b>/ListViewContents.tpl</b><span style="color:rgb(204,0,0);font-family:arial,sans-serif;font-size:15px">'</span></blockquote>

                                      <div><br>
                                      </div>
                                      <div>Istavan,</div>
                                      <div><br>
                                      </div>
                                      <div>The template name of
                                        ListViewSearch and Sort is not
                                        hard coded.</div>
                                      <div><br>
                                      </div>
                                      <div>In ListViewContents.tpl under
/layouts/vlayout/modules/Vtiger/ </div>
                                      <div>around line 80,81</div>
                                      <div><br>
                                      </div>
                                      <div>
                                        <div>{<b><font color="#ff0000">include
file=vtemplate_path($FIELD_UI_TYPE_MODEL->getListSearchTemplateName(),$MODULE_NAME</font></b>)</div>
                                        <div>                   
                                          FIELD_MODEL= $LISTVIEW_HEADER
                                          SEARCH_INFO=$SEARCH_DETAILS[$LISTVIEW_HEADER->getName()]

USER_MODEL=$CURRENT_USER_MODEL}</div>
                                      </div>
                                      <div><br>
                                      </div>
                                      <div>The above line marked in red
                                        loads the Template file for the
                                        respective FieldUitype.</div>
                                      <div><br>
                                      </div>
                                      <div>So in your case Override the
                                        Function <b>getListSearchTemplateName()


                                        </b>of
                                        /layouts/vlayout/uitypes/Base.php</div>
                                      <div>to serve your purpose. </div>
                                      <div>Please review.</div>
                                      <div><br>
                                      </div>
                                      <div>Regards,</div>
                                      <div>Rishab</div>
                                    </div>
                                    <div class="gmail_extra"><br>
                                      <br>
                                      <div class="gmail_quote">On Mon,
                                        Aug 4, 2014 at 10:08 PM, Holbok
                                        István <span dir="ltr"><<a href="mailto:holbok@gmail.com" target="_blank">holbok@gmail.com</a>></span>
                                        wrote:<br>
                                        <blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
                                          <div text="#000000" bgcolor="#FFFFFF"> Dear
                                            vtiger Team,<br>
                                            <br>
                                            As per Rishab's suggestion
                                            of 07/22 I have created a
                                            custom UIType (special
                                            multiselect picklist) for my
                                            custom module.<br>
                                            <br>
                                            I have created:<br>
                                            <b>.../layouts/vlayout/modules/CustomModule/uitypes/MyMultiSelectFieldSearchView.tpl</b>  



                                            and<br>
                                            <b>.../layouts/vlayout/modules/CustomModule/uitypes/MyMultiPicklist.tpl</b>  



                                            and did the necessary
                                            modification for my
                                            purposes.<br>
                                            <br>
                                            I have also created the
                                            necessary service files:<br>
                                            <b>.../modules/</b><b><b>CustomModule</b>/uitypes/MyMultipicklist.php</b> 
                                            and<br>
                                            <b>.../modules/</b><b><b><b>CustomModule</b></b>/models/Field.php</b> 
                                            to serve the template with
                                            data.<br>
                                            <br>
                                            The class <b>CustomModule</b><b>_Field_Model</b>
                                            extends <b>Vtiger_Field_Model</b>
                                            and class <b>CustomModule</b><b>_MyMultipicklist_UIType</b>
                                            extends <b>Vtiger_Base_UIType</b>
                                            .<br>
                                            <br>
                                            With rewriting the display
                                            related methods in the above
                                            mentioned 2 classes the
                                            custom UIType field started
                                            work in my custom module.<br>
                                            The listview, the detailvew
                                            and the editview also showed
                                            the necessary field data in
                                            the necessary display
                                            format.<br>
                                            <br>
                                            The listview loaded the
                                            template from the file
                                            ".../layouts/vlayout/modules/CustomModule/uitypes/MyMultiSelectFieldSearchView.tpl"



                                            and the detailview and
                                            editview loaded the template
                                            from the<br>
".../layouts/vlayout/modules/CustomModule/uitypes/MyMultiPicklist.tpl".<br>
                                            <br>
                                            <big><big><b>But clicking</b></big></big>
                                            to the header of the
                                            listview to get sort by some
                                            field or search by some
                                            field (does not matter what
                                            was the search field) I have
                                            received a template error:<br>
                                            <font color="#cc0000"><br>
                                              <big>Unable to load
                                                template file '<b>modules/Vtiger/uitypes/MyMultiSelectFieldSearchView.tpl</b>'
                                                in '<b>modules/</b><b><b><b>CustomModule</b></b>/ListViewContents.tpl</b>'</big></font><br>
                                            <br>
                                            Copying file
                                            '.../layouts/vlayout/modules/CustomModule/uitypes/MyMultiSelectFieldSearchView.tpl'



                                            to the directory
                                            '.../modules/Vtiger/uitypes/MyMultiSelectFieldSearchView.tpl'
                                            the template error resolved.<br>
                                            <br>
                                            It indicates the sort_by and
                                            search javascript functions
                                            on the listview screen use a
                                            hardcoded path to the
                                            templates and did not use
                                            the callback to the
                                            CustomModule directory.<span><font color="#888888"><br>
                                                <br>
                                                <br>
                                                <div>-- <br>
                                                  üdvözlettel:<br>
                                                  <br>
                                                  <b>Holbok István</b><br>
                                                  <br>
                                                  +3670-342-0900<br>
                                                  <b>e-mail:</b> <a href="mailto:holbok@gmail.com" target="_blank">holbok@gmail.com</a><br>
                                                  <b>SkyPe:</b> holboki<br>
                                                  <br>
                                                </div>
                                              </font></span></div>
                                          <br>
_______________________________________________<br>
                                          <a href="http://www.vtiger.com/" target="_blank">http://www.vtiger.com/</a><br>
                                        </blockquote>
                                      </div>
                                      <br>
                                    </div>
                                  </blockquote>
                                  <br>
                                  <br>
                                </div>
                              </div>
                            </div>
                          </blockquote>
                        </div>
                        <br>
                      </div>
                    </div>
                  </blockquote>
                  <br>
                  <br>
                </div>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
    <br>
  </div></div></div>

</blockquote></div><br></div>