17

You can try using below code. Since its OnPrem, we first need to get the login name of user and pass it to the get_effectiveBasePermissions method. To ensure that user has edit permission, we will check the SP.PermissionKind.editListItems enum. SP.SOD.executeFunc('sp.js', 'SP.ClientContext', function () { getCurrentUserPermission(); }); function ...


9

Here is the code you are looking for: var ctx = new SP.ClientContext.get_current(); var web = context.get_web(); var ob = new SP.BasePermissions(); ob.set(SP.PermissionKind.manageWeb) ob.set(SP.PermissionKind.managePermissions) var per = web.doesUserHavePermissions(ob) ctx.executeQueryAsync( function(){ alert(per.get_value()); // If this ...


5

You will need to enable attachments for your list, to do this go to advanced settings and select enable attachments: You will then find the option to add an attachment directly to your list item through the form, seen below: To show in list view: Add a new column title "Attachments" in Designer. Within the TD tag of the new column replace with this code: ...


5

You can do it as =Column1 Since you said if column1 = yes the column2 = yes If you are looking for more logic.. then the conditional logic goes as =if(column1="Yes", "Yes", "No")


5

Open List > From above ribbon at List tab > Select modify view Make sure that this column ( Title (linked to item with edit menu) ) is selected at your view.


5

I don't think this is a good use case for SharePoint. You're talking about running a "ping" from a web page but JavaScript running in a web page cannot do this - it only speaks HTTP. So you can issue HTTP requests but if your devices are not web servers that's not going to work for you. Consider running a scheduled job that runs on a computer in your ...


5

You can create a Permission Level that does not allow deletes. Click Site Settings->Site Permissions->Permission Levels Click Add a Permission Level and give it a name like “Add - Edit - View Only”. Check “Add Items”, “Edit Items”, “View Items”, “Open Items”, “View Versions”, “View Application Pages”, and “Create Alerts” under List Permissions. Check “...


5

SharePoint Template files (.stp) are not zip files. They are actually cabinet files - so the correct extension if you want to browse their content would be .cab, not .zip. Since you were able to rename the template file to .zip and extract its content, I assume you aren't using the default Windows archive manager but instead you are using some external tool -...


5

Can you check if there is filter applied on the view from where you are exporting the excel? Try opening allitems.aspx (hope this view is not filtered) else you can create brand new view (without any filters) and then try to export it from that view. It should bring everything to excel.


4

Modify the view and make sure that the column called Title (with Edit Menu) is selected. This is the one that has the dropdown menu attached to it.


4

top left icon is a list similar to a table. It consists of columns and rows. each column is a field like "title", "description" or you can add your own custom field like integer, date/time, text or what ever you needs may be. any type of list you create will have the image above. the next one to the right is a document library specifically for image. Its ...


4

Your REST query should be as below: /_api/Web/Lists/getByTitle('Announcements')/items?$select=Title,Created,Attachments,AttachmentFiles&$expand=AttachmentFiles In the JSON results, you can get the file name as below: for (var i = 0; i < data.d.results.length; i++) { var item = data.d.results[i]; var attachmentUrl = item.AttachmentFiles....


4

If you don't want to use Title column then you can add that menu to your another existing column also. 1.Open your View page( default AllItems.aspx) in designer(list and Libraries -> List_name -> Views -> AllItems.aspx). Now Look for FieldRef tag of your item to which you want to attach that menu. Now add ListItemMenu="TRUE" in that tag. Save youe page and ...


4

Create a new field named "weekday" as type integer (whole number). Create a rule on your date field to set the value of weekday to the following formula: (number(substring(., 9, 2)) + number(number(substring(., 1, 4)) - (floor((14 - number(substring(., 6, 2))) / 12))) + floor(number(number(substring(., 1, 4)) - (floor((14 - number(substring(., 6, 2))) / 12))...


3

You can set up a retention policy on the library. There's a few mouse clicks involved, but the general idea is that you can configure an action based on any date field of an item. So you can delete an item when it hits createdDate + 2 years, for example. This feature can be found in library settings --> information management policy settings. Just a quick ...


3

You need to either use /AttachmentFiles like this {weburl}/_api/web/lists/getByTItle('Announcements')/Items(5)/AttachmentFiles or expand it like this {weburl}/_api/web/lists/getByTItle('Announcements')/Items(5)?$expand=AttachmentFiles The / method only works on single items, where expand works with your OData query


3

Actually, this has got nothing to with SPFx. HTTP does not support more than one file download at once. So you can create a temporary set of hidden iframes, initiate download by GET or POST inside of them, wait for downloads to start and remove iframes or create an anchor tag with download attribute and then use the click event. Below have presented both ...


3

It seems you didn't provide valid headers for deletion. Update your last post with the following headers (consider X-HTTP-Method): headers: { 'Accept': 'application/json;odata=nometadata', 'Content-type': 'application/json;odata=verbose', 'odata-version': '', 'IF-MATCH': etag, 'X-HTTP-Method':...


3

I think it takes some time to get familiar with these icons. They can be changed programmatically, but basically, the tabular one represents the Custom List App, Folder with a file in front should be Document Library template, With Media libraries having media in front of the folder. Link lists have link icons, Tasks lists have tasky-looking icon. Actually ...


3

To me, your solution sounds like a valid plan. Create a SharePoint Designer Workflow that executes on change and looks at the value of that field, then if it has a value it moves copies the item to a incident list in the appropriate subsite. You can then either delete the original item or change it's status in some way to indicate it's been moved. In the ...


3

Based on your description, you don't have a complex ERD, it just one table to archive your project. So It recommended creating a SharePoint list instead of building a new database then develops UI forms to add, edit, delete and update your project date from scratch. I think it will waste your time.Meanwhile, it doesn't provide a list OOTB capability like: ...


3

You can try with REST API with sync manner. Please see code as below: for(var i=0;i<5000;i++) { var item = { __metadata: { "type": "SP.Data.ABCListItem"}, ItemNumber: i.toString() }; $.ajax({ url: fullurl +"/_api/web/lists/getbytitle('ABC')/items", type: "POST", async:false, contentType: "application/json;odata=...


3

If I'm sure, you're using SharePoint Online, so your only possibility is to use a client-side option. I think that you can actually do this using Client-Side Rendering (JSLink) in your list, or just using a Content Editor WebPart in the page. I would write a jQuery script to ping the devices. Here and here are some examples to ping using JS. So, once you ...


3

Try to check the length of the data.result if(data.d.results.length > 0) { // Add your code }


3

You are on the right track. Based on the code that you posted in the question, am assuming that you are using pnpjs. Using that, we can get the page properties as below: pnp.sp.web.lists.getById(this.context.pageContext.list.id.toString()) .items.getById(this.context.pageContext.listItem.id) .select("Footer1","Footer2","Footer3") .get() ...


2

View Filters do exactly what they are called - filter the total list items and only return those filtered items to the View. So by setting a view filter, you are not reducing the total amount of list items, you are only specifying the criteria for which list items actually get sent to the View in the browser. My guess is that the warning will still show ...


2

Use the internal name: Execute_x0020_BU_x002010 instead of Execute BU 10


2

It's not necessarily straightforward, as there's no "Loop" action or "For Each" condition (in 2010 at least, SPD2013 has a "Loop" function according to the first source below), but there are ways to manually create loop workflows. Here's a detailed, in-depth example using one list and many views, as well as InfoPath: http://social.technet.microsoft.com/wiki/...


2

Hidden property does not exist in SP.ListCreationInformation() but SP.List has hidden property. So you can hide your list only after creating it. var clientContext = SP.ClientContext.get_current(); var web = clientContext.get_web(); var list = web.get_lists().getByTitle('List Title'); list.set_hidden(true); list.update(); clientContext.load(list); ...


2

I'd not be surprised your JavaScript code runs from another domain than mod970274.sharepoint.com, thus resulting in a same-origin policy violation... and cross-domain calls being forbidden by default result in a 403 error, as the one you get... Fortunately, with Office 365, there's now a way to workaround this policy by declaring an app in the Office 365 ...


Only top voted, non community-wiki answers of a minimum length are eligible