Querying if Person already took a survey | XM Community
Skip to main content

Lets say I have a an Embedded data point that stores a person’s ID when they take a survey.  What would be a good way to query response data to see if a person has already taken the survey? 

Essentially, I need to check all current results to see if that Person’s ID is already there and if so, return a message to the end user. 

Thanks!

 

Hi @altatunc 

mabey this will help you

 

I use  the ID that Qualtircs gives. But you can set up the logic to a personal ID that you give

 




 


Hi RickB,

Thanks for responding.  I think I am missing some part of the logic here.  That is it feels a bit circular to me but I may not understand it all.  I am not getting how assigning a person’s ID a value of the Qualtric’s Response ID would help here. 

Also, in that conditional logic, is it able to query the previously recorded responses with that “If ${e://Field/ResponseID} is equal to ${e://Field/ResponseID}”?   Or if we had ““If PersonID is equal to PersonID”?   It would be nice to compare current ID in Survey with Past IDs already recorded.  That is what I am going for here.

 


Hi @altatunc 

I think i understand you then wrong. I thought you use the Qualtric’s Response ID. 

 


@RickB I appreciate you trying either way!


@altatunc 

I kept thinking about this. 


Do you people that fill in this survey know there ID? 

because then you can add a start question where they fill in this ID. Compare it with your embedded data. If it is there then you go to end off survey otherwise they can continu


Hi @RickB,

Interesting thought.  I might try the following:

Load a contact list in the directory with completed participants using a post-response workflow.  It will put people into a new list with an embedded data field called “Complete” with a value of 1. 

If they come back, I’ll check their embedded data value of Complete for 1 and if not 1, then keep going and if 1, end survey. 

I’m hoping I can just pass their ID to the survey using a URL query.  I’ll test and let you know. 

Thanks again!


Hi @RickB I think I figured it out. 

the trick is the following:

  1. Setup the survey flow to create a completed survey flag in embedded data when the survey is complete (Completed_Survey = 1)
  2. Preloading the possible user ID’s into a mailing list
  3. Setup the survey workflows to update the mailing list/directory upon completion (you are simply pushing the embedded data element of Completed_Survey to the directory).
  4. Setting up the authenticator to look for a user in the mailing list
    1. Automatically pass the ID through in a URL query which submits it to the authenticator
  5. Once the user is authenticated, you can then look for their embedded data in that mailing list to check anything. 
  6. Setup logic to check for the Completed_Survey flag and then act upon it accordingly.

Leave a Reply