I have a sharepoint custom list which has 5 columns ..the user should fill in first three columns and the other two should be locked for filling ..when the user enters the items and start the workflow if the workflow gets approved the 3 columns should be locked for editing and then the other two should be available for editing .
Can someone please tell me how can i achieve this.
Thanks
You'd need to implement either custom field types for the columns you're describing, or implement an event handler on the list with custom logic. Alternatively, you could implement a custom edit form for the list with the business logic for exposing fields as editable baked in, but you would need to ensure that your users do not alter field values via other means (external applications, data sheet view, etc.).
No out of the box fields support this, nor are there any list settings to enable such a scenario.
Related
Need to hide the sharepoint list columns for specific users without javascript
Site owner will be able to see all columns of that particular list
If you don't want to use JavaScript to hide list columns based on user permissions, you can try to use PowerApps to customize the list form to hide the columns. There is a thread about this topic, you can refer to it.
Note: This is not security, this is just hiding fields. A savvy user could use other means of modifying the list.
If you want the list is secure, it is recommended to create two lists for different users and set permissions based on your need.
Novice in Sharepoint and looking for some advise.
we are trying to setup a infopath form with the below fields.
ReqID (Autogenerated with a workflow based on ID like Req-1 etc.),
Description,
User,
Date,
Testing,
Tester,
Date
when the user submits the form, we would like to save the information to two separate lists on sharepoint like...
List A - ReqID, Description, User, Date
List B - ReqID, Description, Testing, Tester, Date
Can someone please advise if this is doable without using any coding.
Thank you so much for all the help.
Several possible solutions:
One list:
If it is a matter of hiding clutter from selected users then: create one list for all of the fields and then create two views, one with your first set of columns and the other with the second set of columns. This has the advantage of no duplication of data, and if you need to update the Description column, it only has to be done in one place.
Two lists:
From the InfoPath form, post all of the fields to the first list and create a View that only displays what's needed for the "A" users. Create a workflow that adds a new item to list "B" with only the data needed.
Three lists:
From the InfoPath form, post all of the fields to a master list. Create a workflow that copies selected fields to List A and to List B. This has the advantage of the master list being an unchanged source of the original data for audit or tracking purposes.
Using Web Services
I believe InfoPath can call web services. This will be more like "coding", but you can write data directly to SharePoint lists using SharePoint's REST API.
I have defined a couple of lists for capturing registration details of the user. There is a list for holding personal details of the user and there is another list which holds professional details of the user.
The two lists are used over two different pages in which name and ID both are required.
How do I get the name and ID populated automatically into the professional list from personal list so as the user doesn't have to fill the similar information twice?
Is it possible without doing any coding stuff?
This little control may help you
http://cascddlistwithfilter.codeplex.com/
Basically you would link the first Cascading drop down control to your user details list and the field name. The second drop down would then filter the users ID so the user can select that.
I have used this before and it can be a pain in the backside to configure but when it's there it is so very powerful and useful.
It's not fully automated but i'm unsure how you would get any closer with a bespoke event receiver.
Create the custom form there, you have keep some text box with the refresh button, so when ever you fill the user id and press the refresh button. You need to right small logic to bring the user from the the source list.
Or you can use the personal details id as look up column in the prop list so you will get the id and select the id and do refresh. Anyway you have right the logic in your custom form code.
I am trying to hide a column in SharePoint 2007 list based on Users.
When user submit a request the status column should be hidden and the value set as pending.
When Admin logged in he/she should able to edit the status.
Is there any way I can achieve this with out writing CUSTOM CODE.
Any help would be appreciated.
Thanks
Deepu
No custom code makes it tough. What about creating two views. one view has the column and another does not. Then create two sharepoint web pages and add the first view with the column to one, and the second view without the column to the other. Then put a security group or audience on the pages, so the appropriate one shows up for the user. Not great, but could be an option.
I think you'll have to do something with a custom field type - this guy has a solution very close to what you need - however there is custom code involved.
http://www.infoq.com/articles/Dressel-Gogolowicz-wss-security
The only other thing i could think of is to deploy a custom fldtypes.xsl to the hive and pattern match against your column. Then perhaps you could do some for of xsl transformation to show/hide the column - not sure how you'd indicate if a user is an admin or not though.
You are really limiting yourself by ruling out custom code.
Best of luck,
Shane
Any one has any idea how to map an infopath field to a sharepoint column of type choice? The infopath field is a repeating field, so the user can select multiple options, I want to be able to map those to the choice field in sharepoint. Any ideas?
update:
What I'm trying to do is the following. I have a choice column in sharepoint which allows user entered values. In infopath, I have a repeating field. I'm binding the field to a dropdownlist. The dropdownlist gets filled by a webservice. This dropdownlist is in a repeating section, so the user can choose to select from multiple dropdownlists. So lets say the user adds 2 dropdownlists, and selects an option from each dropdownlist. I want to be able to add those selections as choices in the sharepoint choice column.
SharePoint list is a flat structure, and because of that Infopath does not allow you map repeating sections to list columns.
You might wanna consider the following workaround:
Store Infopath form to one library
(along with non-repeating fields)
Use one of these custom activities to extract data from
repeating table and copy it to
another list
Create a custom data view or a web part to display these items (if
necessary)
This approach can be useful if you need to do some additional tasks with the repeating data.
When you are promoting fields within a repeated section into SharePoint columns, the options available are to promote the column as:
first (i.e. only the first selection is promoted)
last
count
merge (I believe this merges all the selected values together into a single entry)
screenshot http://img4.imageshack.us/img4/5539/repeatinggrouptr3.png
Is it not similar to Create a Repeating Cascading List from:
a Flat Data Source or
a Hierarchical Data Source ?
If it is, may be those two articles may give you some pointers.
Depends on the type of choice field it is.
If it is a Multiple Select (checkboxes) Choice field, you can set the field through the object model (from the sharepoint site) or through the web service, by using ";#" for each item that you want to check mark, where is the value which is listed by the checkbox. I don't remember what the option is for single choice only, but it is something of the same nature. If you are talking about lookup fields, it has to do with the index number of the field from the list you are looking it up from. Also, there is additional steps if the choice field allows users to input or specify their own options.