활동이 없어 이 대화는 잠겼습니다. 새 게시물을 작성해 주세요.
활동이 없어 이 대화는 잠겼습니다. 새 게시물을 작성해 주세요.
Hi Team,
I have a condition where I have four Deliveries and I need to deploy to the Second highest Open rate delivery.
The logic I am using is : A/B testing
Can you help me with the JS code that will pick the second winining delivery based on Open rate.
Thanks in Advance!
[ duplicate thread ] --> Second Highest Winning Delivery Needs to be Deployed
해결되었습니다! 솔루션으로 이동.
조회 수
답글
좋아요 수
You didn't select @internalName in the query. Use a simple counter here:
var winner, i = 1;
for each (var row in res) {
if (i++ === 2) winner = row;
}
You posted your question in the Acrobat JavaScript forum. I moved it for you to the Adobe Campaign Classic forum.
조회 수
답글
좋아요 수
Thank you, try67
My question is for Adobe Campaign, could you please forward it to campaign experts for speedy answer.
조회 수
답글
좋아요 수
Hi,
Change the js so instead of operation="get" it's operation="select", for:
// query the database to find the winner (best open rate)
var winner = xtk.queryDef.create(
<queryDef schema="nms:delivery" operation="get">
Then iterate over the results, stopping at the second row.
Thanks,
-Jon
조회 수
답글
좋아요 수
Hi Wodnicki,
Can you help me withe the code to iterate the result and stop at second row.
I tried with For Each loop but getting some error.
Regards,
Mustufa
조회 수
답글
좋아요 수
Could you paste your code that's failing, with the error?
조회 수
답글
좋아요 수
Hi Wodnicki,
The code I am using is as follows:
var winner = xtk.queryDef.create(
<queryDef schema="nms:delivery" operation="select">
<select>
<node expr="@id"/>
<node expr="@label"/>
<node expr="@internalName"/>
</select>
<where>
<condition expr={"@FCP=0 and [@internalName] in ('em123','em124','em125','em126') and @isModel=0"}/>
</where>
<orderBy>
<node expr="[indicators/@estimatedRecipientOpenRatio]" sortDesc="true" />
</orderBy>
</queryDef>)
res = winner.ExecuteQuery();
for each (var row in res)
{
logInfo(row.@internalName)
}
I tried reading the rows through for each, not getting the seond highest delivery internal name though, please help ASAP.
Regards,
Mustufa
조회 수
답글
좋아요 수
You didn't select @internalName in the query. Use a simple counter here:
var winner, i = 1;
for each (var row in res) {
if (i++ === 2) winner = row;
}
조회 수
Likes
답글