Solved

Site Workflow Event Reminder For Users


Good day,

 

I trust you well, Your assistance in this regard will be highly appreciated, I got assigned a task at work to create a workflow that will send a reminder of an event to users two days before the event, I have never developed a site workflow before,

 

Please see below the snip of the current steps I did below:

1. I used query list to pull event information from my event app I developed 

2. I used set variable to declare the current date

 

 

23823i576CB3B18EA54454.png

Since I now have the information for the event, I will use a for each to loop, and collection operation to get the start date and run if to declare the rule to run if only the event is two days due but it is not working and a bit of a hassle to debug, Please assist kindly 

 

With thanks 

 

 

 

icon

Best answer by Garrett 28 June 2022, 12:36

View original

13 replies

Userlevel 6
Badge +16

Hi @Aubrey_8 


 


The Plain and Simple method to meet your requirement.
Version : Simplest Version v0
TimeLine: 2 working days before event.
Action : You run "Event Reminder Workflow v0". You trigger the workflow manually
Input1 : Event Details - Title, Date, Time, Venue
Input2 : Email Template (Body)
Input3 : Participants List


ForEach Participants in List
Send_Email (To: %Participant%. Body: Event Details + Template
End Workflow

 


You may have not disclose any other requirements, but frankly its an overkill to use Workflow just to send 1 time use email reminders.


 


Will you be storing the Event details and participants in a SharePoint List?
- If yes, will you be using 1 list or separate lists for each event?


When you query your Event App? What does it return? Format/Structure?


How do you want to trigger the workflow? Schedule-Daily, Manually, other?
Is the Email Template generic for all the events?


 


Pseudocode


Set Variable 'dtDateToday' for Current Date
Set Variable 'dtDatePlus2' = 'dtDateToday' + AddDays(2)
Query List. Filter Events Date == 'dtDatePlus2'
Log to History List //Verify data
//not certain how you store Event Details and Participants List
//Let just say that The Query returns a list of Participants
Foreach Partificants Collection
Send_Email

 


hope this helps

Hi, @Garrett 


Thank you kindly, But I am using Nintex SharePoint 2019, So it is mostly drag, drop and config workflow, I am pulling information on this list below:



Into my workflow then I need to query the information I took from the list eg the start date of the event and I need to query two days before the event and send a reminder to the user, Please take not again this workflow needs to query all the users who applied for the training and run on a scheduled time everyday.


 


Thank you in advance

Userlevel 6
Badge +16

Hi @Aubrey_8 


 


What we know so far


Event Source: SharePoint List (Single List for All Events)


Workflow Trigger: Scheduled time on daily basis.


 


When you query the list...


- What is the filter that you use?



- how many and what fields/columns do you retrieve? (e.g. Event Date, Participants)


- where do you save the query result to?


- What does the Log to History for the query result show?


 


Nintex Workflow


Nintex workflow is a Drag and Drop GUI tool to arrange action icons for designing your workflow. 


I only have access to Nintex Workflow for O365 and NWC. 


 


Pseudocode


Pseudocode is the arrangement of logic. You need to translate the pseudocode into Nintex Workflow 


 


Are you able to do this?


Query the List, Filter by a Date, Retrieve a list of Participants?


Display the Participant in the History Log


ForEach Participants in List
Log to History - Participant Details
End Workflow

 


 


 


 

Hi Garrett,



Filtered fields are:


1 Created by = ID (To get each training ID by each users)


2. Where is my workflow (This is to query only approved training events)


Then I am querying


1. Training Event Name


2. Start date of the event


3. ID


Then Training Cost and Training Location to use as part in my send notification to the user,


I am storing all this information in a variable from the list I showed you on the previous reply


 


Other thing I realized the log history results show is it does not pull the training name from the query list and incorrect Start date compared to the list



The attached are the log history results, I am not sure why it is pulling incorrect dates and time, Probably could be a fault cause these details are pulled from a calendar to the training list then I am querying the training list with the site workflow, Can you advice?



The top are the training details from my training list pulling them from the calendar, then it pulls very wrong dates and time on the site workflow...


 


Please advice,


 


 


 

Userlevel 6
Badge +16

Hi @Aubrey_8 


 


Let's say that below is the columns in your SP list


 


ID | Created_by | Event_StartDate | Event_Name | WhereIsMyWorkflow

 


ID and "Created By" are SP System fields


Event_StartDate is Date field


Event_Name is a Single-Line Text field


WhereisMyWorkflow is Single-Line Text field. 


 


Step 1a: Create Date var


In Variables, Create a Date Variable "dtDateReminder"


Add a "Calculate Date" action. Date is Current Date. Days is "2", apply to Variable "dtDateReminder"


//If today is the 28th, we want to search for event Start Date with value of 30th 


//Log to History to verify the variable is correct


 


Step 1b: Query List


Filter1: Event_StartDate is equal to %dtDateReminder%


Fields to return include : Created_by, Event_Name


//Log to History to verify the variable is correct


 


Publish and Run


 


Lets make sure we are getting the correct value first before we proceed to the processing the collection variable with the For or ForEach loops


 

Hi Garret,


 


The below I have done, I had to create a test workflow to test the below results and returning the correct


 


1.  dllDateReminder


2. Sart date


3 Training Name


4 Created By


5 Training Location


 



 



 


 

Userlevel 6
Badge +16

hi @Aubrey_8 


Great! its returning the correct results. 


Do you mind to share the Query Result? (Use a Log to History)


Appreciate if you could paste the variable as a string instead of an image.


Next, we will work on processing the variable.


 


btw, I appreciate if you could mark "Accept as Solution" once your issue is resolved (half way there!)


and also click the Kudos (orange hand icon) if you found any of my post has helped you. Thanks


 

Hi Garrett,


 


Thanks a lot for your assistance, I am still with you,


Please see below snip of the results I am getting from the Site Workflow Log History 



 


The workflow was scheduled yesterday, Then now I need to find out why is it not pulling the training intervention value, We can start working on processing the variables as I am fixing the training name,


 


Thanks a lot I will do so.

Userlevel 6
Badge +16

Hi @Aubrey_8 


 


Did you format the Log to History results?


I just to check the Query Result. That's not how the collection variable looks like.


 


 


[{"Title":"Event1", "Status":"Approved"}, {"Title":"Event2", "Status":"Approved"}, {"Title":"Event3", "Status":"Approved"}]

 


 


Enclosed in [] is the entire result
Enclosed in {row1} is a single row
Enclosed in {col1, col2, col3} is the column
Columns are describe in a Dictionary style - Key-Value "Title":"Event1"
KEY - Title and Status are the Key
VALUE - Approved is a Value


 


Pls take a look at this thread


https://community.nintex.com/t5/Nintex-for-Office-365-Forum/Office-365-workflow-Query-List-vs-on-prem-Query-List/td-p/220428


Read it twice because that is what we are basically trying to accomplish


 


You can work from a separate Development Workflow. You don't need to wait until the schedule workflow runs


PS: You click the "accept as solution" too early... 

Hi Garrett, 


 


Apologies taking time to reply, I have a bit of issue where the fields I queried from the list returning incorrect values, I will meet with the other senior developers to actually take a look in this issue, Because I can not be able to get the workflow right even though I have all the steps correct from your help,


 


Can you help if probably this issue is within Nintex or SharePoint Central Admin, And how do we resolve this issue, 


 


it returns a date like this: Start Date and Time: 0001/01/01 00:00:00


The same with the end date, 


 


With thanks

Userlevel 6
Badge +16

Hi @Aubrey_8 


 


Can you verify in your list that there is an actual date?


Are you referring to the correct field/column name?


 


When you query an "empty" date field it is may return as 0001/01/01 00:00:00

Hi @Garrett ,


 


I did verify and confirmed that, That made me also to go a bit into more details in investigating the rest of the fields from the Calendar itself to the training List, And my discovery was also there, the Query List it is not pulling the correct [Time] from the Calendar to the Training List but pulling correctly the other Fields like Training Cost and Training Location, Which makes me a bit concerned because it will break the purpose of this solution as it will provide false [Time] to the users, Please take a look below of what I am referring to:



The top is the calendar please pay attention to the time and the name of the training,



Then the top is the process I ran from my Training List and it displays a complete different time I set from my calendar, Then Querying the Training List on the Event Reminder Workflow it is worse,


 


With thanks


 


 


 


 

Userlevel 6
Badge +16

Yes, I can see the different in Training Cost and Dates.


The time diff in SharePoint is 4 hours (2pm to 6pm) 


however the time diff in the Form is 7 hours (7am to 2pm).


 


Lets verify that we are referencing the correct record. Can you enable the following:


1. In your SharePoint List, Show the ID column.


2. In your Form, add a Short Text control that connects to the SharePoint ID column. Show the ID on the form.


 


I advise you to have a detail discussion with your senior developer to resolve these issues first.


 


 


 

Reply