Prospect Status for Constituent of Action Record
Is there a trick to getting the Prospect Status for the Constituent of an Action? For some reason, I keep getting an error message. My guess is I don't have it connected correctly.

Comments
-
@Reuben Schmitz
Not very clear what you trying to do here.Are you starting out with an action? and trying to get the action's constituent record's prospect status?
0 -
@Alex Wong starting with an Action List - trying to add Prospect Status to the output. I connected it to the ID in the Action List and it is displaying, but still noting an error.
0 -
@Reuben Schmitz
With an action list, the result is an array of actions, which each action has a constituent_id property, which you can use (and it seems you are using, but can't tell with the limited screenshots) to get the constituent info and the prospect status.You mentioned you got some error, what is the error message?
ONE Action is to ONE Constituent, so you shouldn't be hit with a 1-many relationship problem with Apply to each.
ONE Constituent is also to ONE prospect status, so same, no issue with Apply to each
However, your Apply to each 2 action is there for your append to array variable action, so that may be your issue. what is the value used in the Apply to each 2 action?
0 -
0
-
@Alex Wong error is seen in right panel - Get constituent Prospect Status failed, even though it is displaying.
0 -
@Reuben Schmitz
A few concerns:- the List actions action will return all the info for the action record already, you do not need the Get a constituent action action again inside your Apply to each (though this wouldn't result in error, just un-needed step).
- What is the List constituents action doing for you?
- In your Append to array variable step, what is “CGC Name”? is that the action's constituent record's name?
0 -
@Reuben Schmitz: error is seen in right panel - Get constituent Prospect Status failed, even though it is displaying.
it's displaying for one of th action in the action list, so you need to go to the Apply to each loop in your run and click on “next fail” to see which action failed to get prospect status.
0 -
@Alex Wong
Thanks for taking time to look at this - the issue now appears to be for those records that do not have a Prospect Status - I see a solution in a previous post, but the expression they use isn't working for me - not sure if there is an easy way to include a Blank if there is no Prospect Status as it creates the list.0 -
@Alex Wong So i am starting with an action list and would like to get a daily email of: action type, prospect Status, action solicitor and constituent solicitor - basically, trying to find a way to connect the Prospect Status and Constituent Assigned Solicitor to an Action list.
0 -
@Reuben Schmitz:
Thanks for taking time to look at this - the issue now appears to be for those records that do not have a Prospect Status - I see a solution in a previous post, but the expression they use isn't working for me - not sure if there is an easy way to include a Blank if there is no Prospect Status as it creates the list.Prospect Status is a string, so you can use “empty()” expression:
if(empty(dynamic_content_of_prospect_status), ‘’, dynamic_content_of_prospect_status)
0 -
@Reuben Schmitz:
So i am starting with an action list and would like to get a daily email of: action type, prospect Status, action solicitor and constituent solicitor - basically, trying to find a way to connect the Prospect Status and Constituent Assigned Solicitor to an Action list.I think your issue lies in the List constituents action. What is that action doing for you and what did you filter with?
An action can have multiple fundraisers, are you trying to output the fundraiser that's assigned to the action, OR are you trying to output the fundraiser assigned to the constituent of the action?
0 -
@Alex Wong
What part would I use to enter the if formula you suggested?0 -
delete the “Status” dynamic content.. and put the if() expression in its place 0 -
@Alex Wong
Sorry to be pesky about t his, but this is the formula I am using, except I am getting an error message saying the expression is invalidif(empty(outputs('Get_constituent_prospect_status')?['body/status'],",outputs('Get_constituent_prospect_status')?['body/status']))
0 -
@Alex Wong
ifnote my last question - see now that it is not “ (double quote) but ‘’ (two singles)1 -
@Reuben Schmitz
your expression mostly is correct, however, middle there is 2 single quote, not 1 double quote.
if(empty(outputs('Get_constituent_prospect_status')?['body/status'], " , outputs('Get_constituent_prospect_status')?['body/status']))if(empty(outputs('Get_constituent_prospect_status')?['body/status'], '', outputs('Get_constituent_prospect_status')?['body/status']))
0 -
@Alex Wong
Thanks Alex. I did catch that before your post. One last (hopefully) question about this - I used that expression, but am getting this error - did I miss something else? And thanks again for your patience and persistence in this!0 -
@Reuben Schmitz
with expression, it is important to be ware of the paraenthesis.so the error is basically saying you did not type the expression correctly. IF() expression should have 3 parameters:
IF(CONDITION, WHEN_TRUE, WHEN_FALSE)if(empty(outputs('Get_constituent_prospect_status')?['body/status']), '', outputs('Get_constituent_prospect_status')?['body/status']))
Looking at the expression, it looks like you did not close the EMPTY() expression for the CONDITION in the IF() and the ) is at the end where it shouldn't be
So the correction should be:
if(empty(outputs('Get_constituent_prospect_status')?['body/status']), '', outputs('Get_constituent_prospect_status')?['body/status'])
0 -
@Alex Wong
One last follow=-up - this elimiated that error, but the conditional is still not working:0 -
@Reuben Schmitz - I hope you get this one working! Let me and @Erik Leaver know as this could be a good learning for User Group.
0 -
@Reuben Schmitz
So now you are dealing with an error where Get constituent prospect status is returning a 404, which the API documentation say:Response: 404 Not Found
Returned when the specified constituent is not found, is not a prospect, or is a prospect with no status
So for that, you need to change the “configure run after” for the next action AFTER get constituent prospect status to run even when failed.
0 -
@Heather McLean
You wouldn't think this should be so complicated - or that others haven't done this before.0 -
@Alex Wong
Sorry about all the questions here, but sadly i am still doing something incorrectly here. I made that change on the “Get Constituent Prospect Status” part,but still getting this error:
0 -
@Reuben Schmitz
What I mention to do with configure run after is not going to make the call not fail with 404, however, after failing 404 on the get prospect status, it will still continue to next action, which is the point here. The if(empty()) expression you have should take care of when the get prospect status action has failed and produce only a “blank” in the prospect status. however, you should use the if(empty()) expression everywhere that any dynamic content that came from the get prospect status action, if there's any0 -
so basically when the get prospect status fail (see the red exclaimation dot on image below), the status is blank
when the get prospect status succeed (green dot below), status is set to the status returned.
0 -
@Reuben Schmitz
I think we were troubleshooting something similar with Chris Zello awhile back. This error handling is tricky for blanks. It’s tripped me up more than once. That’s why I think it is a good topic for User Group.
cc: @Erik Leaver0 -
@Alex Wong
So it is failing before it gets to the conditional in the Append part and you can't include a conditional into the “Get Constituent Prospect Status” part.So at the end of the day, I am starting with an NXT Action List and am looking to get this list emailed daily. If there is no Prospect Status, I just want the field to be blank.
The Prospect Status is an important part of the list - I could use a conditional to split it into two lists, but that would not be preferable. I would incorporate a conditional into the flow after Apply to Each 3, but not sure how (or if) that would work in a List like this. You would think there is a way to do this reasonably simply.
Here is what I have now (note that Apply to Each 3 is for the Fundraiser name to be included):
0 -
@Reuben Schmitz
First just want to confirm for you that this can be done in 1 table.The difficulty you are having is reading your failed run and troubleshoot down to where exactly you flow is failing.
To do that I need see when you run fail where is it failing with what error message and the error details.
It also help if you explain which each action in you flow is doing.
0 -
@Alex Wong
Again, the goal is to get that output table I noted previously. To do that, I thought it was a reasonably simply flow, starting with an NXT Action list, connecting the Fundraiser Name (Solicitor - in Apply to Each 3) and ideally connecting the Constituent Prospect Status as well. I may have an unneeded step or part in the flow, but as it works (other than the Prospect Status), I haven't taken time to streamline it.Here is the error:
The hangup continues to be when it gets to the Prospect Status
When a record without a Prospect Status comes on the list, the error happens.
The flow never gets to the conditional in “Apply to each 2” (see above), because it hangs up here.
The end result should be an HTML table that I can email. So how do you add a conditional without adding the “Get a Constituent Prospect Status” part and still get an Action List?
0
Categories
- All Categories
- 6 Blackbaud Community Help
- High Education Program Advisory Group (HE PAG)
- BBCRM PAG Discussions
- Luminate CRM DC Users Group
- DC Luminate CRM Users Group
- Luminate PAG
- 186 bbcon®
- 1.4K Blackbaud Altru®
- 389 Blackbaud Award Management™ and Blackbaud Stewardship Management™
- 1K Blackbaud CRM™ and Blackbaud Internet Solutions™
- 14 donorCentrics®
- 355 Blackbaud eTapestry®
- 2.4K Blackbaud Financial Edge NXT®
- 616 Blackbaud Grantmaking™
- 542 Blackbaud Education Management Solutions for Higher Education
- 33 Blackbaud Impact Edge™
- 3.1K Blackbaud Education Management Solutions for K-12 Schools
- 909 Blackbaud Luminate Online® and Blackbaud TeamRaiser®
- 207 JustGiving® from Blackbaud®
- 6.2K Blackbaud Raiser's Edge NXT®
- 3.5K SKY Developer
- 236 ResearchPoint™
- 116 Blackbaud Tuition Management™
- 375 YourCause® from Blackbaud®
- 160 Organizational Best Practices
- 232 The Tap (Just for Fun)
- 31 Blackbaud Community Challenges
- Blackbaud Consultant’s Community
- 19 PowerUp Challenges
- 3 Raiser's Edge NXT PowerUp Challenge: Gift Management
- 4 Raiser's Edge NXT PowerUp Challenge: Events
- 3 Raiser's Edge NXT PowerUp Challenge: Home Page
- 4 Raiser's Edge NXT PowerUp Challenge: Standard Reports
- 4 Raiser's Edge NXT PowerUp Challenge #1 (Query)
- 71 Blackbaud Community All-Stars Discussions
- 47 Blackbaud CRM Higher Ed Product Advisory Group (HE PAG)
- 743 Community News
- 2.8K Jobs Board
- Community Help Blogs
- 52 Blackbaud SKY® Reporting Announcements
- Blackbaud Consultant’s Community
- 19 Blackbaud CRM Product Advisory Group (BBCRM PAG)
- Blackbaud Francophone Group
- Blackbaud Community™ Discussions
- Blackbaud Francophone Group