Question

Ok - so here's the preface. I realize that SharePoint isn't really the best solution for this, and if I have to use SharePoint, then coding this would be preferable. However, my wings are clipped due to IT policy, and they have no time to do this "for me".

I am developing a document control system for an Environmental Management System. The basic concept is that there is a list of 'General Responsibilities', which identifies a regulatory agency, some category info, links to laws, etc... There's a second list 'EMS Responsibilities', which basically just links (via a lookup) a particular site to a general responsibility, to identify which sites have which responsibilities. We have many sites, and most have most responsibilities so it doesn't make sense to combine the two lists and repeat all this stuff 10x. Finally, I have a document library (for simplicty sake I am ignoring the draft/published libraries aspect) which contains the actual documents. These documents should reference an EMS Responsibility, which in turn references a General Responsibility. The categorization from 'General Responsibilities' needs to propagate all the way to the document library.

Currently, I use workflow to automatically copy the secondary lookup columns referencing the 'General Responsibility' to a 'Single Line of Text' column in 'EMS Responsibilities' so that it is available to the lookup in 'EMS Documents'. However, despite the values being present in both responsibility lists, the values do not propagate to my final list.

This workflow-based approach is stupid. The lookup columns are stupid. There's no way to get this to work elegantly using out of the box components. I want to believe that the reason this isn't working is because I am missing something... but I have searched for hours and can't find any more effective relational capabilities.

First of all, any theories as to why the values do not end up in the final list despite referencing a single line of text column that is filled?

Second, is there a better overall approach that doesn't rely so much on workflows copying data back and forth, and these pathetic lookup columns?

Thanks in advance!

Was it helpful?

Solution

Given the requirements you gave above together with your answer to my question I believe you won't need a workflow to link all three items together. I have two options for you:

1st Option:

  1. Create a General Responsibility list. This list should contain at least two columns. The ID and Title column.
  2. Create an EMS Responsibilities list. This list should contain at least three columns. The ID, the Title column and a lookup column linked to the General Responsibility list.
  3. Create a Document Library. Add a lookup column linked to EMS Responsibilities.

Since the lookup list you are using is already linked to General Responsibilities then there is no need to have another column solely dedicated to point to General Responsibilities. If however, you need to have specific columns in your document library so that it explicitly has columns for both General Responsibilities and EMS Responsibilities use option 2 below.

Option 2

  1. Create a General Responsibility list. This list should at least contain the ID and Title column.

  2. Create an EMS Responsibility list. This list should at least contain the ID, lookup column linked to General Responsibility and Title columns.

  3. Create a document library. You should add two lookup columns. One pointing to General Responsibility the other to EMS Responsibility.

    (now the fun part starts)

  4. Follow the guide to edit both your NewForm and EditForm aspx in this link so that your lookup dropdowns will be a cascading dropdown. This will make sure that items from EMS dropdown will only be populated once you select a value from the General dropdown.

Let me know if you need any more clarifications.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top