how to pass value from function to another in script include
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-22-2016 11:58 PM
Hi all ,
I am trying to fetch a value from one function to another,
here is my code
var CatalogDynamicValueTest = Class.create();
//var blueId={};
CatalogDynamicValueTest.prototype = {
initialize: function() {
},
//To Get Cloud Type
getCloudTypeValues: function() {
gs.log("Inside Get Cloud Type");
var tenCatName;
var tenCatVersion;
var catItem=current.variables.TenantCatalog;
gs.log("New Selected Catitem:"+ catItem);
var grTenCtg = new GlideRecord('u_compose_tenant_catalog');
grTenCtg.addQuery('sys_id',catItem);
grTenCtg.query();
while(grTenCtg.next())
{
tenCatName = grTenCtg.u_symbolic_name;
tenCatVersion = grTenCtg.u_version;
gs.log("catTENCATVERSION: " + tenCatVersion);
gs.log("Ten Name: " + tenCatName);
}
var blueprintId;
var grBlueprint = new GlideRecord('u_compose_blueprint');
grBlueprint.addQuery('u_blueprint_name',tenCatName);
grBlueprint.addQuery('u_version',tenCatVersion);
grBlueprint.query();
while(grBlueprint.next())
{
gs.log("TENCATVERSION: " + tenCatVersion);
gs.log("Catalog Id: " + grBlueprint.u_id);
blueprintId = grBlueprint.u_id;
}
/*g_scratchpad.saved_blueprintId=blueprintId;
var abc =g_scratchpad.saved_blueprintId;
gs.log("Stracth pd" +abc);*/
gs.log("newblueprintId: " +blueprintglobal);
var arrTarCId = ' ';
var grCTC = new GlideRecord('u_compose_catalog_target_cloud');
grCTC.addQuery('u_blueprint_id',blueprintId);
grCTC.query();
while(grCTC.next())
{
//arrTarCId.push(grCTC.u_target_cloud_id);
gs.log("gsCTC Target Cloud id :" + grCTC.u_target_cloud_id);
if(arrTarCId.length>0)
arrTarCId +=("," + grCTC.u_target_cloud_id);
//gp += (gr.u_cloud_code + ",");
else
arrTarCId= grCTC.u_target_cloud_id;
}
gs.log("Array of Target: " +arrTarCId);
var arr= [];
arr= arrTarCId.split(",");
var arrTarid=[];
for (var n=1; n <arr.length; n++)
{
arrTarid.push(arr[n]);
gs.log(" Target Ref:" + arr[n]);
}
gs.log("Target Final ar" + arrTarid);
//Displaying Logs
// for(var ii=0;ii<arrTarCId.length;ii=ii+1)
// {
// gs.log("Array" + arrTarCId[ii]);
// }
gs.log("Array Length: " + arrTarid.length);
var arrayUtil = new ArrayUtil();
var arrCCId = [];
var arrCC = [];
var arruniqueCC=[];
for(var i=0;i<arrTarid.length;i=i+1)
{
gs.log("Array1" + arrTarid[i]);
var val = arrTarid[i];
var grTCC = new GlideRecord('u_compose_target_cloud_category');
grTCC.addQuery('u_id',val);
grTCC.query();
while(grTCC.next())
{
arrCCId.push(grTCC.u_cloud_category_id);
arrCC.push(grTCC.u_cloud_code);
//gs.log("grTCC Cloud Id: " + grTCC.u_cloud_category_id);
gs.log("grTCC Cloud Code: " + grTCC.u_cloud_code);
}
}
// arruniqueCC.push(arrayUtil.unique(arrCC));
gs.log("Cloud CC: " + arrCC.length);
//gs.log("Array Unique CC:" + arruniqueCC);
//gs.log("Array Unique Length: " + arruniqueCC.length);
var arrTLCC = [];
for(var j=0;j<arrCC.length;j=j+1)
{
var grTenLoc = new GlideRecord('u_compose_tenent_location');
grTenLoc.addQuery('u_target_cloud_code',arrCC[j]);
grTenLoc.addQuery('u_endpoint',current.variables.Endpoint);
grTenLoc.query();
gs.log("Inside Ten:"+ arrCC[j]);
while(grTenLoc.next())
{
gs.log("While Ten:");
arrTLCC.push(grTenLoc.u_target_cloud_code);
gs.log("Tentant Cloud Code : " + grTenLoc.u_target_cloud_code);
}
}
gs.log("Ten Cloud CC: " + arrTLCC.length);
var arrTCCid=[];
for(var k=0;k<arrTLCC.length;k=k+1)
{
var grTCCone = new GlideRecord('u_compose_target_cloud_category');
grTCCone.addQuery('u_cloud_code',arrTLCC[k]);
grTCCone.query();
while(grTCCone.next())
{
gs.log("Cloud Category Id: " + grTCCone.u_cloud_category_id);
arrTCCid.push(grTCCone.u_cloud_category_id);
}
}
gs.log("Cloud Category id length: " + arrTCCid.length);
var gp= ' ';
for (var l=0;l<arrTCCid.length;l=l+1)
{
var grcc=new GlideRecord('u_compose_cloud_category');
grcc.addQuery('u_id',arrTCCid[l]);
//gs.log("Tc For entry");
grcc.query();
while(grcc.next())
{
if (gp.length > 0) {
//build a comma separated string of groups if there is more than one
gp += (',' + grcc.u_category_code);
}
else {
gp = grp.u_category_code;
}
//gs.addInfoMessage("Cloud Category "+ gp);
// gs.log("Cloud Category" + grcc.u_category_name);
//gs.log("Gp :" + gp);
}
}
return 'u_category_codeIN' + gp;
},
This a function and i want fetch the value(blueprint which is highlighted in red) in next function
getOSValues: function() {
var getid=getCloudTypeValues().blueprintId;
gs.log("Blueprint id cheeck"+ getid);
//gs.log("blueID"+blueprintglobal.getId);
//gs.log("Inside Os");
var os ='';
var sel=current.variables.Location.u_target_cloud_code;
// gs.log("Selection" + sel);
var targetcode=sel;
gs.log("Target Code:" + targetcode);
/* var gr= new GlideRecord('u_compose_tenant_location');
gr.addQuery('sys_id',sel);
gr.query();
while(gr.next())
{
targetcode=gr.u_target_cloud_code;
}*/
var grtcc= new GlideRecord('u_compose_target_cloud_category');
grtcc.addQuery('u_cloud_code',targetcode);
grtcc.query();
while(grtcc.next()){
gs.log("while os");
gs.log("OS Final res" + grtcc.u_id);
if(os.length>0)
os +=("," + grtcc.u_id);
//gp += (gr.u_cloud_code + ",");
else
os=grtcc.u_id;
}
var arr= [];
gs.log("os: " + os);
arr= os.split(",");
var arrOS=[];
for (var i=0; i <arr.length; i++)
{
arrOS.push(arr[i]);
gs.log(" Os Ref:" + arr[i]);
}
gs.log("osFinal ar" + arrOS);
var osid= ' ';
var blue= getCloudTypeValues.blueprintglobal;
//var idrt = blueprintglobal.getId;
gs.log("Inside blue" + blue);
for(var j=0; j<arrOS.length; j++)
{
gs.log("Os: " + arrOS[j]);
var grtcos= new GlideRecord('u_compose_catalog_target_cloud');
grtcos.addQuery('u_target_cloud_id',arrOS[j]);
//grtcos.addQuery('u_blueprint_id',blueprint);
grtcos.query();
while(grtcos.next())
{
gs.log("Operating ids:" + grtcos.u_operating_system_id);
if(osid.length>0)
osid +=("," + grtcos.u_operating_system_id);
//gp += (gr.u_cloud_code + ",");
else
osid =grtcos.u_operating_system_id;
}
}
var arrosid= [];
arrosid= osid.split(",");
var arrOSid=[];
for (var k=1; k<arrosid.length; k++)
{
arrOSid.push(arrosid[k]);
gs.log("Operating Ref:" + arrosid[k]);
}
gs.log("os id:" + arrOSid);
var tl= ' ';
for(var l=0;l<arrosid.length;l++){
gs.log("Msgg: " + arrosid[l]);
var grtl = new GlideRecord('u_compose_operating_system');
grtl.addQuery('u_id',arrosid[l]);
grtl.query();
while(grtl.next()){
gs.log("Mess: " + grtl.u_display_name);
if(tl.length>0)
tl +=("," + grtl.u_display_name);
else
tl = grtl.u_display_name;
}
}
gs.log("TL: " + tl);
return 'u_display_nameIN' + tl;
},
highlighted part is in second function.
Am I following correct method to fetch?
Pleas help me to get solution.
Thanks
Pradeep

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-23-2016 12:36 AM
HI Pradeep,
Does your second function accepts any parameters? If NO then you can use the following
var getid=this.getCloudTypeValues();
What is the type of return value? Is it some object/array/some value?? And what is this blueprintid?
Thanks,
Abhinandan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-23-2016 12:45 AM
//blueprintglobal ='';
var CatalogDynamicValueTest = Class.create();
//var blueId={};
CatalogDynamicValueTest.prototype = {
initialize: function() {
},
//To Get Cloud Type
getCloudTypeValues: function() {
gs.log("Inside Get Cloud Type");
var tenCatName;
var tenCatVersion;
var catItem=current.variables.TenantCatalog;
gs.log("New Selected Catitem:"+ catItem);
var grTenCtg = new GlideRecord('u_compose_tenant_catalog');
grTenCtg.addQuery('sys_id',catItem);
grTenCtg.query();
while(grTenCtg.next())
{
tenCatName = grTenCtg.u_symbolic_name;
tenCatVersion = grTenCtg.u_version;
gs.log("catTENCATVERSION: " + tenCatVersion);
gs.log("Ten Name: " + tenCatName);
}
var blueprintId;
var grBlueprint = new GlideRecord('u_compose_blueprint');
grBlueprint.addQuery('u_blueprint_name',tenCatName);
grBlueprint.addQuery('u_version',tenCatVersion);
grBlueprint.query();
while(grBlueprint.next())
{
gs.log("TENCATVERSION: " + tenCatVersion);
gs.log("Catalog Id: " + grBlueprint.u_id);
blueprintId = grBlueprint.u_id;
}
//blueId.idNo=blueprintId;
//blueprintglobal=blueprintId;
//gs.log('nanaiah1'+blueId.idNo);
/*g_scratchpad.saved_blueprintId=blueprintId;
var abc =g_scratchpad.saved_blueprintId;
gs.log("Stracth pd" +abc);*/
gs.log("newblueprintId: " +blueprintglobal);
var arrTarCId = ' ';
var grCTC = new GlideRecord('u_compose_catalog_target_cloud');
grCTC.addQuery('u_blueprint_id',blueprintId);
grCTC.query();
while(grCTC.next())
{
//arrTarCId.push(grCTC.u_target_cloud_id);
gs.log("gsCTC Target Cloud id :" + grCTC.u_target_cloud_id);
if(arrTarCId.length>0)
arrTarCId +=("," + grCTC.u_target_cloud_id);
//gp += (gr.u_cloud_code + ",");
else
arrTarCId= grCTC.u_target_cloud_id;
}
gs.log("Array of Target: " +arrTarCId);
var arr= [];
arr= arrTarCId.split(",");
var arrTarid=[];
for (var n=1; n <arr.length; n++)
{
arrTarid.push(arr[n]);
gs.log(" Target Ref:" + arr[n]);
}
gs.log("Target Final ar" + arrTarid);
//Displaying Logs
// for(var ii=0;ii<arrTarCId.length;ii=ii+1)
// {
// gs.log("Array" + arrTarCId[ii]);
// }
gs.log("Array Length: " + arrTarid.length);
var arrayUtil = new ArrayUtil();
var arrCCId = [];
var arrCC = [];
var arruniqueCC=[];
for(var i=0;i<arrTarid.length;i=i+1)
{
gs.log("Array1" + arrTarid[i]);
var val = arrTarid[i];
var grTCC = new GlideRecord('u_compose_target_cloud_category');
grTCC.addQuery('u_id',val);
grTCC.query();
while(grTCC.next())
{
arrCCId.push(grTCC.u_cloud_category_id);
arrCC.push(grTCC.u_cloud_code);
//gs.log("grTCC Cloud Id: " + grTCC.u_cloud_category_id);
gs.log("grTCC Cloud Code: " + grTCC.u_cloud_code);
}
}
// arruniqueCC.push(arrayUtil.unique(arrCC));
gs.log("Cloud CC: " + arrCC.length);
//gs.log("Array Unique CC:" + arruniqueCC);
//gs.log("Array Unique Length: " + arruniqueCC.length);
var arrTLCC = [];
for(var j=0;j<arrCC.length;j=j+1)
{
var grTenLoc = new GlideRecord('u_compose_tenent_location');
grTenLoc.addQuery('u_target_cloud_code',arrCC[j]);
grTenLoc.addQuery('u_endpoint',current.variables.Endpoint);
grTenLoc.query();
gs.log("Inside Ten:"+ arrCC[j]);
while(grTenLoc.next())
{
gs.log("While Ten:");
arrTLCC.push(grTenLoc.u_target_cloud_code);
gs.log("Tentant Cloud Code : " + grTenLoc.u_target_cloud_code);
}
}
gs.log("Ten Cloud CC: " + arrTLCC.length);
var arrTCCid=[];
for(var k=0;k<arrTLCC.length;k=k+1)
{
var grTCCone = new GlideRecord('u_compose_target_cloud_category');
grTCCone.addQuery('u_cloud_code',arrTLCC[k]);
grTCCone.query();
while(grTCCone.next())
{
gs.log("Cloud Category Id: " + grTCCone.u_cloud_category_id);
arrTCCid.push(grTCCone.u_cloud_category_id);
}
}
gs.log("Cloud Category id length: " + arrTCCid.length);
var gp= ' ';
for (var l=0;l<arrTCCid.length;l=l+1)
{
var grcc=new GlideRecord('u_compose_cloud_category');
grcc.addQuery('u_id',arrTCCid[l]);
//gs.log("Tc For entry");
grcc.query();
while(grcc.next())
{
if (gp.length > 0) {
//build a comma separated string of groups if there is more than one
gp += (',' + grcc.u_category_code);
}
else {
gp = grp.u_category_code;
}
//gs.addInfoMessage("Cloud Category "+ gp);
// gs.log("Cloud Category" + grcc.u_category_name);
//gs.log("Gp :" + gp);
}
}
return 'u_category_codeIN' + gp;
},
//To Get Location
getLocValues: function(){
gs.log('inside location');
gs.log("nani"+blueId.idNo);
var arr = [];
var gp= ' ';
// var sel= current.variables.CloudType;
//Change Start
var sel= current.variables.CloudType.u_id;
gs.log("Selection: " + sel);
//Change End
var gr = new GlideRecord('u_compose_target_cloud_category');
gr.addQuery('u_cloud_category_id',sel);
gr.query();
while(gr.next()){
gs.log("Final res" + gr.u_cloud_code);
if(gp.length>0)
gp +=(',' + gr.u_cloud_code);
//gp += (gr.u_cloud_code + ",");
else
gp=gr.u_cloud_code;
}
gs.log("Final arra" + gp );
arr= gp.split(",");
var arrFin=[];
for (var i=1; i <arr.length; i++)
{
arrFin.push(arr[i]);
gs.log("Ref:" + arr[i]);
}
gs.log("Final ar" + arrFin);
gs.log("Final ar length: " + arrFin.length);
var tl= ' ';
for(var j=0;j<arrFin.length;j++){
gs.log("Msgg: " + arrFin[j]);
var grtl = new GlideRecord('u_compose_tenent_location');
grtl.addQuery('u_target_cloud_code',arrFin[j]);
grtl.addQuery('u_endpoint',current.variables.Endpoint);
grtl.query();
while(grtl.next()){
gs.log("Mess: " + grtl.u_display_name);
if(tl.length>0)
tl +=("," + grtl.u_display_name);
else
tl = grtl.u_display_name;
}
}
gs.log("TL: " + tl);
var arrtenloc=[];
arrtenloc=tl.split(",");
var arrFintetloc=[];
for(var ii=1;ii<arrtenloc.length;ii++)
{
arrFintetloc.push(arrtenloc[ii]);
}
gs.log("Final ar tet" + arrFintetloc);
gs.log("Final ar tet length" + arrFintetloc.length);
var tenloc=' ';
for(var jj=0;jj<arrFintetloc.length;jj++){
var grtenloc = new GlideRecord('u_compose_tenent_location');
grtenloc.addQuery('u_endpoint',current.variables.Endpoint);
grtenloc.addQuery('u_display_name',arrFintetloc[jj]);
grtenloc.query();
while(grtenloc.next())
{
if(tenloc.length>0)
tenloc+=("," + grtenloc.u_location_id);
else
tenloc=grtenloc.u_location_id;
}
gs.log("Finan Tet loc:" + tenloc);
}
return 'u_location_idIN' + tenloc;
},
//To Get Os
getOSValues: function() {
var getid=getCloudTypeValues().blueprintId;
gs.log("Blueprint id cheeck"+ getid);
//gs.log("blueID"+blueprintglobal.getId);
//gs.log("Inside Os");
var os ='';
var sel=current.variables.Location.u_target_cloud_code;
// gs.log("Selection" + sel);
var targetcode=sel;
gs.log("Target Code:" + targetcode);
/* var gr= new GlideRecord('u_compose_tenant_location');
gr.addQuery('sys_id',sel);
gr.query();
while(gr.next())
{
targetcode=gr.u_target_cloud_code;
}*/
var grtcc= new GlideRecord('u_compose_target_cloud_category');
grtcc.addQuery('u_cloud_code',targetcode);
grtcc.query();
while(grtcc.next()){
gs.log("while os");
gs.log("OS Final res" + grtcc.u_id);
if(os.length>0)
os +=("," + grtcc.u_id);
//gp += (gr.u_cloud_code + ",");
else
os=grtcc.u_id;
}
var arr= [];
gs.log("os: " + os);
arr= os.split(",");
var arrOS=[];
for (var i=0; i <arr.length; i++)
{
arrOS.push(arr[i]);
gs.log(" Os Ref:" + arr[i]);
}
gs.log("osFinal ar" + arrOS);
var osid= ' ';
var blue= getCloudTypeValues.blueprintglobal;
//var idrt = blueprintglobal.getId;
gs.log("Inside blue" + blue);
for(var j=0; j<arrOS.length; j++)
{
gs.log("Os: " + arrOS[j]);
var grtcos= new GlideRecord('u_compose_catalog_target_cloud');
grtcos.addQuery('u_target_cloud_id',arrOS[j]);
//grtcos.addQuery('u_blueprint_id',blueprint);
grtcos.query();
while(grtcos.next())
{
gs.log("Operating ids:" + grtcos.u_operating_system_id);
if(osid.length>0)
osid +=("," + grtcos.u_operating_system_id);
//gp += (gr.u_cloud_code + ",");
else
osid =grtcos.u_operating_system_id;
}
}
var arrosid= [];
arrosid= osid.split(",");
var arrOSid=[];
for (var k=1; k<arrosid.length; k++)
{
arrOSid.push(arrosid[k]);
gs.log("Operating Ref:" + arrosid[k]);
}
gs.log("os id:" + arrOSid);
var tl= ' ';
for(var l=0;l<arrosid.length;l++){
gs.log("Msgg: " + arrosid[l]);
var grtl = new GlideRecord('u_compose_operating_system');
grtl.addQuery('u_id',arrosid[l]);
grtl.query();
while(grtl.next()){
gs.log("Mess: " + grtl.u_display_name);
if(tl.length>0)
tl +=("," + grtl.u_display_name);
else
tl = grtl.u_display_name;
}
}
gs.log("TL: " + tl);
return 'u_display_nameIN' + tl;
},
//To Get Sizecate
getTemplateSizeValues: function() {
gs.log("Inside Templatesize");
var sel=current.variables.OperationSystem.u_id;
var arrtos=' ';
gs.log("Size sel" + sel);
var grtcos= new GlideRecord('u_compose_tc_os_family');
grtcos.addQuery('u_operating_system_id',sel);
grtcos.query();
while(grtcos.next()){
gs.log("Target id: " + grtcos.u_target_cloud_id);
if(arrtos.length>0)
arrtos +=("," + grtcos.u_target_cloud_id);
//gp += (gr.u_cloud_code + ",");
else
arrtos=grtcos.u_target_cloud_id;
}
var arr= [];
arr= arrtos.split(",");
var arrTOS=[];
for (var i=1; i <arr.length; i++)
{
arrTOS.push(arr[i]);
gs.log("TOs Ref:" + arr[i]);
}
gs.log("TosFinal ar" + arrTOS);
var arrtcsc= ' ';
for(var j=0;j < arrTOS.length; j++)
{
var grtcsc = new GlideRecord('u_compose_tc_size_category');
grtcsc.addQuery('u_target_cloud_id',arrTOS[j]);
grtcsc.query();
while(grtcsc.next()){
gs.log('Size Category id:' + grtcsc.u_size_category_id);
if(arrtcsc.length>0)
arrtcsc +=("," + grtcsc.u_size_category_id);
else
arrtcsc=grtcsc.u_size_category_id;
}
}
var arrsize= [];
arrsize= arrtcsc.split(",");
var arrSC=[];
for (var k=1; k <arrsize.length; k++)
{
arrSC.push(arrsize[k]);
gs.log("Size Ref:" + arrsize[k]);
}
gs.log("SizeFinal ar" + arrSC);
var tl= ' ';
for(var l=0;l<arrSC.length;l++){
gs.log("Msgg: " + arrSC[l]);
var grtl = new GlideRecord('u_compose_size_category');
grtl.addQuery('u_id',arrSC[l]);
grtl.query();
while(grtl.next()){
gs.log("SC Mess: " + grtl.u_category_code);
if(tl.length>0)
tl +=("," + grtl.u_category_code);
else
tl = grtl.u_category_code;
}
}
gs.log("TL: " + tl);
return 'u_category_codeIN' + tl;
/* var gpsize= '';
var arrsc= '';
for(var l=0; l<arrSC.length; l++)
{
gs.log("Size Det: " + arrSC[l]);
var grsc= new GlideRecord('u_compose_size_category');
grsc.addQuery('u_id',arrSC[l]);
grsc.query();
while(grsc.next())
{
gs.log("Size Categoryid:" + grsc.u_category_code);
if(arrsc.length>0)
arrsc +=("," + grsc.u_category_code);
else
arrsc = grsc.u_category_code;
}
}
gs.log("Size Gpos: " + arrsc.length);
return 'u_category_codeIN' + arrsc;
*/
},
type: 'CatalogDynamicValueTest'
};
here is my code.. Please look at this.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-23-2016 01:00 AM
Hi Pradeep,
From above code what I can understand is 'getCloudTypeValues()' returns some string value.And as I mentioned you can use the following
var getid=this.getCloudTypeValues();
And try to ask to specific questions instead pasting whole code here.
Thanks,
Abhinandan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-23-2016 01:17 AM
Hi Abhinandan,
var getid=this.getCloudTypeValues();
what value above statement is going to return in function.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
04-23-2016 01:37 AM
mamann has already answered your question incase you haven't noticed.