Pass Value from server to Modal window in service portal

Roshani
Tera Expert

Hi All,

 

I want to pass the server side code(link from server ) to angular templates. On click of button share to client button it will open the modal window and in the text area. I want to populate the link from server . 

Anugular templates

<div class="modal-header">
  <h2 id="modal-title" class="modal-title h4">${Additional comments (visible to Caller and Opened for)}
  <!--<i class="fa fa-close pull-right" ng-click="c.cancel()" aria-label="Close modal" role="button" tabindex="0"></i>-->
  </h2>
</div>
<div class="modal-body">
  <textarea aria-label="${additional comments}" autofocus="true" id="rejectResolutionNote" class="form-control textarea" rows="5"> Hello test</textarea>
  <div class="btn-container">
    <div class="pull-right">
      <button type="button" class="btn btn-default" data-dismiss="modal" ng-click="c.closeFeedback()">${Cancel}</button>
      <button type="button" class="btn btn-primary" data-dismiss="modal" ng-click="c.postComment()">${Post}</button>
    </div>
  </div>
</div>
<style>

 

Server Script :

if (input.action == 'shareArticle'){
		 if(input.name != " "){
			var grKb = new GlideRecord('kb_knowledge');
			grKb.addQuery('sys_id',input.articleSysId);
			grKb.query();
			if (grKb.next()){
			var grCase = new GlideRecord('sn_hr_core_case');
        grCase.addQuery('sys_id', input.casesysid); 
        grCase.query();
        if (grCase.next()) {
				var link_title = "[code]<a title='";
				var link_tg = "'";
        var link_ta = " target='_blank'";
				//var link_href = " href='kmpreview?id=kmpreview_article_view&sys_kb_id=";
				var link_href = "href='onenovartisservices?id=compass_kb_article&sys_id=";
				var link_th = "'";
				var link_a_symbol = " >";
				var link_end = "</a>[/code]";
				var link = link_title + grKb.short_description +link_tg +link_ta+ link_href +grKb.sys_id+link_th +link_a_symbol +grKb.number+ ":" +grKb.short_description+ link_end;
			
		  data.kblink = link;
					gs.info('megha link '+ link);
					gs.info('megha '+ data.kblink);
	 
			//grCase.comments = input.comment;
			//incidentGr.setValue('comments', "Reason to Re-Open : "+c.name)
			  //grCase.update();
				var hrKbTask = new GlideRecord('m2m_kb_task');
				hrKbTask.addQuery('kb_knowledge',input.articleSysId);
				hrKbTask.addQuery('task',input.casesysid);
				hrKbTask.query();
				if(!hrKbTask.next()){
					var hrKbTask1 = new GlideRecord('m2m_kb_task');
					hrKbTask1.initialize();
					hrKbTask1.setValue('kb_knowledge',input.articleSysId);
					hrKbTask1.setValue('task',input.casesysid);
					hrKbTask1.setWorkflow(false);
					hrKbTask1.insert();
				}
				gs.addInfoMessage(gs.getMessage("Knowledge article shared to customer"));
        }
			}
		}
	  }

 

1 REPLY 1

Samaksh Wani
Giga Sage
Giga Sage

Hello @Roshani 

 

Plz refer my below solution link which is relatable to your query.

 

https://www.servicenow.com/community/developer-forum/fetching-specific-table-data/td-p/2638330

 

Plz Mark my Solution as Accept and Give me thumbs up, if you find it helpful.

 

Regards,

Samaksh