Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

Where clause in web application script

tejashriw155148
Level 4
Level 4

Hi,

 

I have created web application in ACC and added below code in script.

 

var contactID = ctx.recipient.@contactId;

/**Fetch Details from BroadLogRcp*/
var query = NLWS.xtkQueryDef.create(
{queryDef: {schema: "nms:broadLogRcp", operation: "select",
select: {
node:[{expr: "[delivery/@messageType]"},{expr: "[@address]"},{expr: "[@status]"},{expr: "[delivery/@label]"}, {expr: "[recipient/@managerID]"},{expr: "[@employeeID]"},{expr: "[delivery/@lastModified]"},{expr: "[delivery/@id]"},{expr: "@eventDate"},{expr: "[@recipient-id]"}]
},
where: {
condition:[{expr: "[@employeeID] = " + contactID} || {expr:"[recipient/@managerID] = " + contactID}]
},
orderBy: {
node:{expr: "@eventDate", sortDesc: "true"}
}
}});

 

 

Here "OR" condition is not working. Please help me to solve this issue.

 

Thanks,

Tejashri

1 Accepted Solution
Milan_Vucetic
Correct answer by
Community Advisor
Community Advisor

Hi @tejashriw155148,

add boolOperator with AND or OR in your conditions.

<where>
<condition boolOperator="OR" expr={firstName}/>
<condition boolOperator="OR" expr={lastName}/>
</where>

Regards,

Milan

View solution in original post

5 Replies
Milan_Vucetic
Correct answer by
Community Advisor
Community Advisor

Hi @tejashriw155148,

add boolOperator with AND or OR in your conditions.

<where>
<condition boolOperator="OR" expr={firstName}/>
<condition boolOperator="OR" expr={lastName}/>
</where>

Regards,

Milan

View solution in original post

InMo
Level 3
Level 3

Hi @tejashriw155148 ,

 

Where clause should be something like below

where: {
condition:[{expr: "[@employeeID] = " + contactID boolOperator: "OR"}
{expr:"[recipient/@managerID] = " + contactID} ]
}

 

Please check, it should work.

You can also refer to below page

https://blog.floriancourgey.com/2018/08/use-querydef-the-database-toolkit-in-adobe-campaign

 

Regards

tejashriw155148
Level 4
Level 4

Hi @InMo@Milan_Vucetic  

 

where: {
condition:[{expr: "[@employeeID] = " + contactID boolOperator: "OR"}
{expr:"[recipient/@managerID] = " + contactID} ]
}

 

After adding the above code I'm getting below error

 

JST-310000 Error while compiling script '_webApp_APP118_' line 239: missing } after property list (line=' condition:[{expr: "[@employeeID] = " + contactID boolOperator:"OR"}{expr:"[recipient/@managerID] = " + contactID}]
' token='boolOperator:"OR"}{expr:"[recipient/@managerID] = " + contactID}]
').
SCR-160032 Javascript&colon; error while compiling script '_webApp_APP118_'.

 

Regards,

Tejashri

InMo
Level 3
Level 3

Hi @tejashriw155148,

 

From error it looks like a { is missing in the code.

 

Although i checked the code again if it dont work try below code also.

where: {
condition:[{boolOperator: "OR", expr: "[@employeeID] = " + contactID}
{boolOperator: "OR", expr:"[recipient/@managerID] = " + contactID} ]
}

Please try and test it, it should work.

 

Regards

tejashriw155148
Level 4
Level 4

Hi @InMo ,

 

Thanks for your reply. I have tried new logic but still getting error-

 

JST-310000 Error while compiling script '_webApp_APP118_' line 240: missing ] after element list (line=' {boolOperator:"OR",expr:"[recipient/@managerID] = " + contactID}]
' token='{boolOperator:"OR",expr:"[recipient/@managerID] = " + contactID}]
').
SCR-160032 Javascript&colon; error while compiling script '_webApp_APP118_'.

 

when I use only single where condition then its working fine but facing issue for OR condition.

 

Regards,

Tejashri