I want a workflow to run each day at 2.00 AM. Is there a way to achieve this? I found many posts but didn't work.
The OOTB way to do this would be to create your workflow as you want it and add a stage at the end. In this stage put in a
Pause action. You can set this for
1 day (or
24 hours). For your
Transition to stage, have it redirect back up to the first stage.
The downside of this would be that you have to manually start it that first time. It would also be one continuous workflow rather than it being ran separately once a day.
You can use a task scheduling tool such as SQL Server Agent or Windows Task Scheduler and have that execute a PowerShell script that start the workflow.
And here is a link to run the workflow in powershell: http://www.thesysadminhimself.com/2013/09/sharepoint-start-workflow-all-items-powershell.html
The only other option I can think of is somehow converting your workflow into a timer job but I don't really know how to do that.
..Hope this helps a bit.
Do you mean Sharepoint online (as Sharepoint 2013 online does not exist)? For this task, i would recommand looking into Microsoft Flow that comes with Office 365 and can interact with Sharepoint Online list events and do executions like "wait until". Other solution is Azure webjobs trigger...