Can i use multiple addOrCondition in query?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-18-2021 04:16 AM
var gr=new GlideRecord("table_name");
gr.addQuery("gender","male").addOrCondition("gender","female").addOrCondition("gender","transgender");
gr.query();
Can i use multiple addOr Condition in my query? If no any other way to do this?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-18-2021 05:48 AM
Typically speaking, yes, you can use multiple andOrConditions in the same query. For example, this one returns the 3 incidents that I expect in my PDI:
gr.addQuery('short_description', 'No network access').addOrCondition('short_description', 'outlook not opening').addOrCondition('short_description', 'Email server is down.')
You can try breaking it down into smaller segments (just add one or condition) and see if you get results you expect.
You might also try building the query in a list view, making sure you see what you expect, and then copy the query from the filter and use addEncodedQuery and see what results you get.
Multiple and / or conditions should work, but I've certainly encountered issues where I don't get the results that I expect and have to validate and adjust my query.
I hope this helps!
If this was helpful or correct, please be kind and remember to click appropriately!
Michael Jones - Proud member of the CloudPires team!
Michael D. Jones
Proud member of the GlideFast Consulting Team!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎01-18-2021 06:16 AM
Hai thanks for your reply. This is my code.
else if (gr1.male == "false" && gr1.female=="true" && gr1.transgender=="false") {
gr.addQuery("gender", "female");
}
else if (gr1.male == "false" && gr1.female=="false" && gr1.transgender=="true") {
gr.addQuery("gender", "transgender");
}
else if (gr1.male == "true" && gr1.female=="true" && gr1.transgender=="false") {
gr.addQuery("gender", "male").addOrCondition("gender","female");
}
else if (gr1.male == "true" && gr1.female=="false" && gr1.transgender=="true") {
gr.addQuery("gender", "male").addOrCondition("gender","transgender");
}
else if (gr1.male == "false" && gr1.female=="true" && gr1.transgender=="true") {
gr.addQuery("gender", "female").addOrCondition("gender","transgender");
}
var gr = new GlideRecord('table2');
if (val == "male") {
gr.query();
var checkedval1 = gel("male").checked;
if (checkedval1 == true) {
while (gr.next()) {
gr.male = "true";
gr.update();
}
} else {
while (gr.next()) {
gr.male = "false";
gr.update();
}
}
g_navigation.open("?sysparm_active="+val);
}
if (val == "female") {
gr.query();
var checkedval2 = gel("female").checked;
if (checkedval2 == true) {
while (gr.next()) {
gr.female = "true";
gr.update();
}
} else {
while (gr.next()) {
gr.female = "false";
gr.update();
}
}
g_navigation.open("?sysparm_active="+val);
}
if (val == "transgender") {
gr.query();
var checkedval3 = gel("transgender").checked;
if (checkedval3 == true) {
while (gr.next()) {
gr.transgender = "true";
gr.update();
}
} else {
while (gr.next()) {
gr.transgender = "false";
gr.update();
}
}
g_navigation.open("?sysparm_active="+val);
}
initCheckBox();
};
function initCheckBox() {
var gr = new GlideRecord('table2');
gr.query();
while(gr.next())
{
if(gr.male=="true")
{
gel("male").checked=true;
}
if(gr.female=="true")
{
gel("female").checked=true;
}
if(gr.transgender=="true")
{
gel("transgender").checked=true;
}