SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to make an inventory list where we show who has been assigned a computer. What I want to see is a field that shows if a computer has been assigned to another person previously and the name of that user (column:Previous User) based on duplicates in the column:Serial Number.

I almost got this working using workflows but it would show the name of the current user. I'm not sure how to get it to identify only previous users. We have a "Date Assigned" column if that would be useful.

My next question is what if the computer was deployed 5 times, which item will the workflow find? Does it start from top to bottom in a workflow?

Any suggestions?

share|improve this question
What do you mean by "serial number duplicates"? – Christophe Jul 27 '12 at 18:39
Sorry for the confusion, I mean based on duplicates in column:Serial Number. It should look at the Serial Number column and if it matches, then pull the name of the previous user and put it in the column called Previous User. – Colton Jul 27 '12 at 18:57

If only using SharePoint Designer and you want an item per use of serial number then I think this is the best solution:

  1. Add a new "Yes/No" column "Is Current"
  2. Add a new "Calculated" column "Current Serial Number" with formula "=IF([Is Current],[Serial Number],"")
  3. In your workflow find ID of Item with "Current Serial Number" = New items "Serial number"
  4. Grap user from item with that Id
  5. Set "Is current" in that item to false
  6. Set "Previous user" in new item to user from that item
  7. Set "Is current" in new item to true
share|improve this answer

Why would you want multiple entries for a given serial number? You could have a single entry, with columns for current user, previous user, all previous users, and have the workflow move things around (and enable version history if needed).

I am not sure which order the workflow uses for lookups (and whether it is reliable).

If you still want to keep multiple entries, you'll need a separate column that will act as a flag for the last user, plus a calculated column that will combine Serial Number and flag. Then you can use this calculated column as unique identifier in your workflow. Not simple...

share|improve this answer
You have a good idea. The big reason we have multiple entries is because we track how many PCs we assign to users based on this list. We want to be able to differentiate between computers that are brand new and which ones were used already and then count how many of each in a report. – Colton Jul 27 '12 at 20:10
I think there was a warning when I assigned a workflow variable as a string that helped explain which one it would find - it said "only the first string will be returned." So it should go through each ID, A-Z style, I believe. – Colton Jul 27 '12 at 20:12
@Colton with my suggestion, brand new computers will be the ones where the Previous User column is empty. – Christophe Jul 27 '12 at 20:33
(and of course you could also include a Counter column that you increment for every new user) – Christophe Jul 27 '12 at 20:40

I would suggest one list of current serial number assignments and another list that contains all previous assignments.

create a workflow on the "current" list that checks for an existing item with the same value. copy the "Assigned to" value to the "previous user", then move the previous item to the "previous assignments" list.

this will keep your current assignment list clean and easy to use, as well as provide a searchable history for that particular serial number.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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