Sharepoint Calendar webpart config only whole day events - sharepoint

Is there a way to config the sharepoint event-form-webpart in a sp teamsite to use only
- whole day events
- only with field category as descritpion
- hide fields location and description
I want to use it as a absence-planner.
I only found the way to choose own categories in the listsettings of the calendar.
whole-day-event-column is not being showed in listsettings!
How can this be done in sharepoint-designer?

If this is a modern site...it's not possible to edit the modern webparts with Sharepoint Designer or from inside the Sharepoint UI, currently. You might be able to do it with the Office 365 CLI and Powershell: https://pnp.github.io/office365-cli/
--
You can however, do this with a classic events list. From inside the list settings, you can go to "Advanced Settings" and make sure you have management of content types set to "Yes".
Then, on the list settings page under the content types header, click on "Events" and you will see a list of the columns. You can click on the column and hide it, and it will no longer show when you add a new event from the classic calendar view.
This doesn't work for the all day event part of your question but you can also edit the form using jquery: https://hpatel.wordpress.com/2014/06/05/sharepoint-2013-how-to-hide-all-day-event-recurrence-and-category-fields-from-calendar-new-item-form/
You could check the checkbox with something like:
$('input:checkbox').prop('checked', true); and hide the time fields.
--
If I was doing this I'd give the user a form (http://forms.microsoft.com) and then tie it to my Sharepoint calendar through Power Automate (Flow). You could even work an approval process into it so that you could approve their request to add it to the calendar or reject it and send them an email.

Related

SharePoint Online and prevent users from editing old list items after specific time

We have SharePoint Online site with list. Users can add, edit and delete own items in this list.
How I can resolve new issue - Users can't edit and delete own items older than one week (from creation date).
Is it possible without coding Remote Event Reciever or Azure function?
Per my knowledge, there is not an OOTB way to achieve it, we have to write some custom code.
If you only want to the user can't see some items in list view base on some condition, we can use list view Filter to achieve it. Note:User also access item form through URL.
I suggest you use remote event receiver or azure function to achieve this requirement.
In classic site, we can also add some JavaScript code into master page to prevent users access edit form page and hide the delete button in the page.
For this kind of requirement the solution which is 'no code' and with SP online is Power automate (previously MS Flow).
The best option in Your case would be to create a recurring flow which for example starts every day at 00:10 AM -> please see MS docs with description how to do this.
The Flow should get all items from a specific list for a specific site. You can do that with the 'Get Items' step. After that You can use the 'Apply to each' Step to check each item creation date with a 'Condition' Step. When some item will be older than one week You can use additional steps to break permission inheritance on item and remove all groups from permissions on this item or change the permissions on item from edit to read. Here I found an interesting article where are some predefined steps shown how to remove all permissions, remove and add a group. To tell You the truth I was not aware there already are this kind of steps in Power automate (maybe something new :) ) .
I would use SharePoint HTTP request and use SharePoint API to remove permissions on item and change some group role from edit to read. So I would do a similar procedure like here the only difference is not to break permission on all list but just on a specific item which I would get by ID. You can do all of those API request with a 'SharePoint HTTP request' Step
Please be aware there usually is a 5 000 unique permission levels threshold (50 000 is in on-prem) in list (place check here for latest info on limits in SP Online). So a better option would be to create a folder with view only permissions for the users before and when an item is older than one week You could only move this item to that folder also with Power Automate. That way all the files (items) in this folder would be read only and You would have only one unique item scope in this list and not as many as the old items.
Some other options You could use are:
Also code solution, but not RER and Azure function, would be to create a console app that uses CSOM to look through items in this list and either breaks permission on each item or moves to a folder (like the flow) and schedule this CSOM app on some local or remote server in Task Scheduler... Of Course You would need some local (or other) server for it which is always up and running :)
If You would like to use some 'little coding' and by any chance You are still using classic UI (not modern) You could use JSLink attached to CT or some column like Title and block editing of fields in edit forms etc (this is not the best option as always the users may create a view without a columns with this JSLink and go around this or modify the item using CSOM or Rest API)
You might consider using PowerApps (In case you have it configured in your subscription) to customize the edit form,
Then you use the validate() method, and disable a user from submitting the form in case ("Created" + 7 days) <= Today() or something like that.

Default view in look up record in Set Regarding in Outlook CRM 2015

I am trying to default Look in to 'ALLorders ' view when 'orders' is selected in Look for. This is located in the pop up when “set regarding” is hit in OUTLOOK and choose Order in the drop down on the email to attach the order.
Is it possible to default LOOK in to All Orders instead of Order Lookup View?
Look up record view
Thanks,
Shruthi Rajoli
If you were in the web client, you'd have an unsupported option. From Outlook you have no good options, unfortunately.
If you're on premise and the business doesn't want to let go of the requirement, you might be able to do something really hacky: modify the dialog's aspx page with some JavaScript that would automatically flip the look for dropdown. But this approach has a lot of problems: 1) unsupported 2) your changes might get lost if you install an update 3) it might not be possible to determine via JS if the button was clicked from Outlook vs web.

Sharepoint Attendees without a Workspace for Calendar Event

I am wondering if it is possible to have a custom form in Sharepoint 2010 where I am able to add/edit a calendar event and access the attendees list that is normally visible on the workspace page.
I assume that perhaps I need to at least hard code a workspace to be selected as I believe attendees need to be assigned to a workspace.
Open to suggestions as I'm new to Sharepoint but seems crazy having to create or link to a workplace for each event.
Greatly appreciate any help.
#WashBurn not sure if this what you are looking for. Goto your calendar - list settings. goto the "Content Types" section. click the content type...should be event. from there click "Add from existing site content types " and attendees should be in there. hope that helps!
There is a simple (unfortunately not intuitive) way to achieve what you are trying to do.
click on list settings for your calendar list. You will see about half way down a section called content types.
![enter image description here][1]
Click on the event content type (which should be there by default.
this takes you to another similar screen where you can simply add the attendees column.
Once you know that attendees are part of an event it is then intuitive.
Hope this helps.
This is one of many nasty little things that come up when you try to build your meeting management on SharePoint. Other very common problems include integration with any e-mail client, first of all Outlook but not only, sending meeting requests from SharePoint and handling the respoded attendee's status...
The SharePoint calendar e-mail extension is a third party solution that might solve your problem.
Here is the link: http://www.sapiens.at/en/products/pages/sharepoint-calendar-e-mail-extension-3.0.aspx
Every SharePoint list (wether it's document library, calendar, lnks or custom list) have both a Create Form, Edit Form and a Delete Form. Each of which you through SharePoint designer can create your own custom versions of, in your case, this is needed to edit a Calendar List item with its associates/attachments.
Read one of Microsoft's own guides on how, here
Although this is a very old post, i just ran into the same issue and figured out a way to solve this issue.
Simply go into the Content Type 'Event' and add the Column 'Attendees' :)
Then you can also use the attendees as input for a workflow, e.g. to notify them on Event creation/update. i attached two Screenshots to show how you can do that using SharePoint designer!
With this phrase you can add the Link to the Event into the Mail Body:
[%Workflow Context:Current Item URL%]
Hope that helps other people in the future.
I believe I have the solution we are all looking for.
Create a standard event calendar (the one that does not have attendees)
Add the 'Schedule and Reservations' content type to the calendar from the list settings page
Modify the 'Calendar' view so the filters read
attendees is equal to me
OR
attendees is equal to
The second entry is completely empty but allows SP to match for no attendees
You can add more columns with OR statements if you need to be sorting based on additional groups
This worked for my needs, hope it works for everyone else

online Crm 2011 Dialog Workflow Issue - Response Type

I need to create a new Proccess with Dialog (new Feature in Crm 5.0) which calls a CRM Query, returns a list of Customers, and after selecting the customers we want to use, I call a plugin which then prints the invoices for the Selected Customers. The plugin is programmed and working and also the dialog is created and the entire solution is working perfectly. But only for one Customer :(.
And this is the Issue. When you create a CRM Query in Online Crm 2011, you get 4 options as Response Type:
1.Single Line ( Text Box),
2.List of Options ( Radio Buttons), where only one can be selected,
3.Picklist (DropDown), where also only one item can be selected and
4.Multiline ( Multiline TextBox)
And in my case none of these is not working, because I cannot select more Customers from these Response Types. It works only for one Customer :(
How to solve this issue? What are the options here, maybe a custom User Interface for the Dialog, or what?
What I need is a List of Checkboxes with the Customer Name, and then I can select more then one Customer for the invoicing proccess.
Do I need to take another route in order to achieve this, or will the Dialogs do the job? Or can I create a Custom Response type which renders multiple selectable Checkboxes? If yes, then how can I create a Custom Response Type?
Any suggestion would be apreciated.
Thanks
I don't think the Dialog feature will do what you need (checkbox list selection). Another option would be to add a button on the ribbon, perhaps called Create Invoices, that launches a pop-up window (custom HTML web resource). This pop-up window could simply ask "Are you sure?" or it could even include some custom parameters for the Invoice generation. Upon confirmation, it would use some JavaScript to talk to the ODATA endpoint to update a flag on each of these Customer records that would fire your plugin.
This way, a user could browse to a list of Customers, use the built-in checkbox to check off as many as they like, then click the Create Invoices button.
If you are good with HTML and JavaScript, probably the hardest part of this will be learning how to add a new Ribbon button. It isn't the easiest to learn, but there are plenty of resources out there to help.

Prevent Concurrent Editing of a List Item

In Sharepoint MOSS multiple users can edit the same item in a sharepoint list at the same time…the first person to save their edit “wins”.
Is there a way to prevent this, to lock the list item while it is being edited?
NB: This refers to a custom list -Not a document in a document library
Not possible - checkin/checkout is only supported for list items with an associated SPFile object (images, pages, documents - essentially everything that derives from SPDocumentLibrary)
-Oisin
There are a few ways to do that, all custom. As Oisin said on his post the native check-in/check-out engine needs a file associated.
Ideas:
Javascript
Modified EditForm.aspx file, embedded in a List Template, XmlHttpRequest checks for a "Checked-out Items List" repository, expires/remove the check after 10-20 minutes of inactivity from the user currently editing the file.
.NET
Event Handlers: I have not checked but the ItemUpdating Event Type could stop you from updating it if the Modified date changed since you opened the item, saying the item was modified while being edited and need to be updated (cloning the behavior of aspx/publishing pages in SharePoint)
Infopath
I noticed you said you dont have the enterprise version, still your users could have the InfoPath client on their machines and fill the form locally.
Now lets start the fun :)
Empty Document Template
You can hack your way to create a super "Add Item" button that uploads/creates a new Document Library Item with an empty document (.txt) and redirect the user directly to the Edit Properties form. I did this when I replaced the "Change Image" in the My Sites profile with a Document Library.
Word Document
Word 2007 can create documents similar to forms where the user can only fill the exact fields you want, so can excel (Infopath was created because users were using these programs for forms).

Resources