Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-11-2024 04:57 AM
Hi Everyone,
I am trying to update multiple system properties using for loop. But it only updates one system property
var propertiesArray = ["propertyName1", "propertyName2", "propertyName3", "propertyName4", "propertyName5", "propertyName6" ]
var sysProp = new GlideRecord("sys_properties");
for (var b = 0; b < propertiesArray.length; b++) {
sysProp.addQuery("name", propertiesArray[b]);
sysProp.query();
if (sysProp.next()) {
gs.info("Property name = " + propertiesArray[b]);
if (propertiesArray[b] == 'propertyName1') {
sysProp.value = "X1";
}
if (propertiesArray[b] == 'propertyName2') {
sysProp.value = "X2";
}
if (propertiesArray[b] == 'propertyName3') {
sysProp.value = "X3";
}
if (propertiesArray[b] == 'propertyName4') {
sysProp.value = "X4";
}
if (propertiesArray[b] == 'propertyName5') {
sysProp.value = "X5";
}
if (propertiesArray[b] == 'propertyName4') {
sysProp.value = "X6";
}
sysProp.update();
}
}
Can anyone point out where I am committing mistake in code.
Thanks in advance
Solved! Go to Solution.
1 ACCEPTED SOLUTION
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-11-2024 05:21 AM
You have to instantiate the GlideRecord within the for loop
var propertiesArray = ["propertyName1", "propertyName2", "propertyName3", "propertyName4", "propertyName5", "propertyName6" ]
for (var b = 0; b < propertiesArray.length; b++) {
var sysProp = new GlideRecord("sys_properties");
sysProp.addQuery("name", propertiesArray[b]);
sysProp.query();
if (sysProp.next()) {
gs.info("Property name = " + propertiesArray[b]);
if (propertiesArray[b] == 'propertyName1') {
sysProp.value = "X1";
}
if (propertiesArray[b] == 'propertyName2') {
sysProp.value = "X2";
}
if (propertiesArray[b] == 'propertyName3') {
sysProp.value = "X3";
}
if (propertiesArray[b] == 'propertyName4') {
sysProp.value = "X4";
}
if (propertiesArray[b] == 'propertyName5') {
sysProp.value = "X5";
}
if (propertiesArray[b] == 'propertyName4') {
sysProp.value = "X6";
}
sysProp.update();
}
}
1 REPLY 1
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
11-11-2024 05:21 AM
You have to instantiate the GlideRecord within the for loop
var propertiesArray = ["propertyName1", "propertyName2", "propertyName3", "propertyName4", "propertyName5", "propertyName6" ]
for (var b = 0; b < propertiesArray.length; b++) {
var sysProp = new GlideRecord("sys_properties");
sysProp.addQuery("name", propertiesArray[b]);
sysProp.query();
if (sysProp.next()) {
gs.info("Property name = " + propertiesArray[b]);
if (propertiesArray[b] == 'propertyName1') {
sysProp.value = "X1";
}
if (propertiesArray[b] == 'propertyName2') {
sysProp.value = "X2";
}
if (propertiesArray[b] == 'propertyName3') {
sysProp.value = "X3";
}
if (propertiesArray[b] == 'propertyName4') {
sysProp.value = "X4";
}
if (propertiesArray[b] == 'propertyName5') {
sysProp.value = "X5";
}
if (propertiesArray[b] == 'propertyName4') {
sysProp.value = "X6";
}
sysProp.update();
}
}