How to change 'My approval' fields for Change management module

mdsannavulla
Kilo Guru

Hi All,

 

For change management module we are using OOTB UI macro 'approval_summarizer_default' for showing fields in My approvals.

 

Now I want to add some more fields to that My approvals for that where I have to change in UI macro?

 

Below is the OOTB code for that

 

<?xml version="1.0" encoding="utf-8" ?>

<j:jelly trim="true" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">

  <g:evaluate var="jvar_has_source" >

      var flag = !${ref}.sysapproval.nil() || !${ref}.source_table.nil();

      flag;

  </g:evaluate>

  <j:if test="${jvar_has_source}">

      <g:evaluate var="jvar_ni" expression="

      var gr = null;

              if ( !${ref}.source_table.nil()) {

                    gr = new GlideRecord(${ref}.source_table);

                                      gr.get( ${ref}.document_id);

                              } else {

                                      gr = new GlideRecord('task');

                                      gr.get(${ref}.sysapproval);

                              }

              " />

      <g:evaluate>

              g_approval_form_request = true; // this global is checked in ACLs

      </g:evaluate>

      <g:evaluate var="jvar_my_form">

              var gc =   new GlideController();

              var p =   new GlidePopup(gc, "${gr.sys_class_name}");

              p.putParameter("sys_id", "${gr.sys_id}");

              p.putParameter("sysparm_view", "approval");

              var rp = p.getRenderProperties();

              rp.setSmallCaption(true);

              var s = p.getPopup();

              s;

      </g:evaluate>

      <tr id="approval_summary_row">

              <td width="100%" colspan="2">

                      <j2:if test="${gs.getProperty('glide.security.use_csrf_token')}" >

  <input type="HIDDEN" name="sysparm_ck" value="$[gs.getSessionToken()]"/>

        </j2:if>

                      <div id="approval_summary" style="padding-top:8px;display:none;">

                <div class="caption" style="padding:4px;">${gs.getMessage('Summary of Item being approved')}</div>

                <div style="padding-left:2px;"><g:no_escape>${jvar_my_form}</g:no_escape></div>

                      </div>

  </td>

      </tr>

      <g:evaluate>

              delete g_approval_form_request; // removes the global

      </g:evaluate>

      <script>

              addRenderEvent(moveSummaryForm);

              function moveSummaryForm() {

                      var e = $("approval_summary");

                      var form = $("sysapproval_approver.do");

                      var formParent = form.parentNode;

                      formParent.appendChild(e);

                      e.show();

              }

      </script>

  </j:if>

</j:jelly>

 

 

See the below screen shot

 

41.png

 

Here I want to add and remove some fields.For that where I have to change in that UI macro

1 ACCEPTED SOLUTION

You can use an if statement in the g:evaluate block where the p.putParameter("sysparm_view", "approval"); line is. Just use the gr object to check the user selected value on the change request and pass in the view name for approval.


View solution in original post

23 REPLIES 23

HI Brad,



Similar type of issue with pop view also.When ever I am hovering on reference icon it is showing the fields of default view fields instead of other view fields.Please see the below screen shot



gt.png


Hi All,



Any one have idea on this?


In order to change that view you need to edit the sys_popup view for the change table. Unfortunately this is a global setting and you can't use multiple views.


http://wiki.servicenow.com/index.php?title=Customizing_the_Reference_Icon#Fields_Displayed


Okay got it ...we can't do this for different views