I have some SharePoint experience pretty much self taught so experience is somewhat beginner to intermediate and have done some custom workflows, presently using SharePoint 20210. I currently have a task to create a workflow that as people put a leave request in the calendar it goes through an approval process but the catch is the boss doesn’t want it visible/entered in the calendar until its approved. (I have one built to where it appears as “Pending” than changes to approved when done.) I’ve tried doing custom and tried using the built-in workflows but not sure how to make that happen, can’t figure how to not show until approved. Is this something that it should it be doing out of the box with the built-in workflows and I’m just missing something or does that need to be scripted or customized?
This is how I managed to do it:
From the Calendar web part page…
- Add a new field to Calendar Web part.
Calendar tab->List settings-> (columns) Add from existing site columns
select “task status” from the list of columns -> Add -> OK - Make this field invisible. Under List settings page:
Event->Task Status (column)-> Hidden (radio button) -> OK - Condition visibility of approved items. under List settings page:
(Views section) Create view -> Calendar view
Name it as you wish (ie. Approved)
(Filter section) “Show items when the following is true” (radio button)
(Show the items when column) select “Task Status” from the list of columns
Leave “is equal to” as it is
in the blank field below this, enter “Completed” (without quotes)
click OK to save - Go back to the Calendar web part.
under Calendar Tab, click Calendar Overlay -> New calendar
Calendar name: same as view (ie. Approved)
Select a different color if you don’t want default
under web URL click “Resolve” button
Make sure “your calendar” is selected under “List:”
Select “Approved” from List view
Click OK to save.
I hope this helps.