0

How can I make SharePoint Calculated Columns to know who has edited some columns data?

I want to know who is editing specific columns, not modified by, and not using version history on each item.

Any help would be appreciated!

  • 1
    Why don't you want to use version history? That's two clicks. Why re-invent the wheel? – teylyn Apr 13 '16 at 21:52
  • Because when I do edit an item, (Modified By) by my name, I want to show that the edit to a specific column. Example: I have a column 1, column 2, and column3. I want (Modified By) for a column2 only. Because i admin Not user – Abdullah A. AlGhamdi Apr 14 '16 at 19:33
  • It won't work with calculated columns. You need helper columns to compare previous state and current state. There are three possible approaches below, two without custom code. – teylyn Apr 14 '16 at 19:44
1

Easiest way is version history. It shows who modified which columns and when.

  • In the question says that without History – Juan Pablo Pussacq Laborde Apr 13 '16 at 22:02
  • Yes, but before I edited the question, it was extremely difficult to read. – Erin L Apr 14 '16 at 13:07
1

If you don't want to use version history, this approach will work for a list:

  • customize the list form with InfoPath.
  • Add a multi line plain text field for the change log.
  • create an XML file that has a node for each field you want to monitor
  • add the XML file as a data connection
  • Use Form Open rules to write the current values of the monitored fields to the XML file
  • use a button to save the form (not the ribbon button)
  • set up the save button with rules that compare each monitored field with the value in the XML data file and append the change log field with who, when, and what changed.

I have many lists that use this technique and show the change history for monitored fields on a separate view of the InfoPath form.

1

You can not do this out of the box. Development is required (or workflow like Jammin said)

An alternative is to create an event receiver.

This event will run whenever an item is updated. At that time, through code in C#, you can verify which columns were modified and by which user.

And you can create new columns to register the author of such changes.

It is coding required, but it is possible to do.

0

Possible through custom SharePoint Designer workflow and lots of hidden fields.

Assume 10 columns of visible info Column1 has data, column11 has what data used to be, column21 had column editor

  1. On item change check if column1 = column11 if not, set current user in column21
  2. Then set column11 = column1

You will need steps 1&2 for each column you want to monitor. They can all be in the same workflow.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.