Trigger SharePoint workflow when one column is edited - sharepoint

I have built an inventory database in SharePoint 2016. I want to create an approval workflow that is automatically triggered when the "Room" field is edited.
I'm trying to keep this clean. The option to trigger workflows when an item is edited, starts the WF when I update any other column. I tried to mitigate this with the "wait for" clause, and that just leaves a WF hanging until the condition is met.
Any ideas? The Room cloumn is single line text.
Thanks.

that just leaves a WF hanging until the condition is met
A "waiting" workflow is just a record in a SQL table. It is not tying up resources while it is waiting.
Otherwise, you can have a workflow that runs on Create that updates a non-displayed column with the initial Room value. Then have a workflow that runs on Change that compares the two columns. If they are the same, it just exits, otherwise it does what ever work is needed.

As a workaround, we can create an event receiver and start workflow in the event receiver base on some conditions.
Starting a SharePoint workflow from code (Event Receiver)

Related

SharePoint Site workflow: wait for newly created item update

I'm having a site workflow and I'm creating new list item with status column value as "Pending" in one step and in the next step I want to wait for the same newly created item to update its status column value as "Approve/ Reject".
I want to use site workflow only so is there any way to wait until the current item update (item created in previous step.)
Items created by a workflow do not trigger a second workflow by design to prevent runaway recursion.
The item created by the site workflow could be assigned a workflow with a modify trigger to allow it to run as soon as it is edited by a user. This list workflow can validate the changes made to the item and take action on valid or invalid data.

SharePoint: Trigger workflow only when field is blank

I am looking for a way in SharePoint Designer to trigger a workflow only if a field is blank. Thoughts?
You shoud start workflow every time list item is created or modified and then check value of the field in the workflow. If it is blank - perform some action, otherwise just end workflow

SharePoint List - Daily email even when there are no changes?

(As far as I know) SharePoint list alerts only fire off due to a change. If I want an email to go out daily even if there were no changes, I figured I could create a calculated field that does today's date minus the "Start Date". It will increment by 1 every day. Will this cause a daily change email to go out? If not, does anyone have a trick for emailing out a list daily even when there are no changes? Thanks!
This will not cause the alert to go out. Calculated fields are only calculated when the list is accessed. The only way I see to do this is to create a site level workflow with a tool like Nintex or create a timer job that can generate the email you want. Nintex Workflows can be scheduled to run on a regular basis. Workflows created with SharePoint Designer cannot be scheduled out of the box.

SharePoint Nintex Workflow Run Multiple Conditions

I was hoping you could help me. I have a calendar in SharePoint 2010 that I want to run a Nintex Workflow when the following conditions are true:
A new item is created
The "Type of Leave" field equals "Vacation". This field I created as just a category for the types of requests.
The date that the item was created for already has an entry with the "Type of Leave" field equaling "Vacation."
The use of this will be that the first person to enter vacation on a day will be automatically granted. But if more than one person enters vacation on the day that another vacation day is on, it will go through an approval process through their manager.
Here's what I've tried/reviewed:
- Using a Condition within a workflow. I can't find an option that would complete this.
- I did try looking on line searching for different solutions. I've watched some tutorials but nothing with this kind of solution was present.
- One thought I did have was to have an additional calculated column that counted how many entries for the same day with "Vacation" and then use that in a condition if the column was greater than 1 but I couldn't figure out the syntax.
This is on SharePoint 2010.
Thank you!
have you considered using the rest interface to query the list from nintex:
http://msdn.microsoft.com/en-us/library/office/ff521587(v=office.14).aspx
You can call this service from nintext using the call web service action.
Apply the filters on the url as per documentation above and count the records returned you can then include that in the nintext condition.
I am not sure if Nintext supports calls to Restfull services (from memory i think it does).
If not, you can use the Soap web service, same principle as above just the parameters to call it are slightly more complicated:
http://msdn.microsoft.com/en-us/library/lists.lists.getlistitems(v=office.12).aspx
I don't think there's an need for REST. Once your workflow starts, query the list for items matching the current item booking date and put the result in a collection. You can query the collection length, and if it's >0 you can use that condition to steer the logic of your workflow.

Start a workflow on items that already exist

I have added a workflow to a SharePoint(2007) calendar. The workflow copies information from Column A to Column B if Column A is not equal to Column B. I set this workflow to start when an item is created or modified. However, I would also like to start this workflow on all items that already exist in this calendar.
Is there a way I can do a mass start and run the workflow for all the items that already exist?
EDIT: Let me clarify my question a little more. I would like to run the workflow one time on the 200-300 items that have already been created. I don't need to traverse the items everytime a new item is added. Just one time to compare/copy Column A to Column B for all the existing items
Here's a low-tech method that should work. Go to the All Events view for the calendar, click Actions > Edit in Datasheet, then make an edit quickly to all event rows. Since it's a pseudo-spreadsheet view, you can set a value in the first row and then fill down all the rows. That would quickly modify each event, and thus should trigger the workflow.
If you don't want to edit an existing column (and lose any valuable data, for instance), you could just create a new column temporarily, go back into the datasheet view, and set a value in that column for all events. Once the workflows have been triggered, you could then just discard that column.
Add a customaction to the list's action panel through a feature that when clicked traverses all items matching the description (Column A != Column B), then triggering the workflow through the SPListItem's WorkflowAssociations

Resources