3

I'm a guest to the site and after seeing the great quality of Q&A's believe it's worthwhile to 'put this out there' in the event anyone may be able to assist.

Brief background:

  • I have Admin/Full Control of a collection of sub-sites, however the root site is controlled from another office in another country.
  • We don't have admin permission to use Designer and much of the more 'bells and whistles' functionality of the site collection has been deactivated.
  • I'm by no means an SP Developer and have largely taught myself using SP up to this point.

Current setup:

We have three basic lists set up in each sub-site (let's say List A, List B and List C) holding details for (A) individuals, (B) details about client instructions received for those individuals, and (C) details about specific tasks we need to complete for each one of those client instructions.

List items in (A) and (B) each have unique identifier codes assigned to them and in this way we can use Lookup functionality to bring details about individuals from (A) through into (B) and details from (A) and/or (B) through into (C).

So the relationship is effectively 1x item from (A) can be linked to at least 1x item in (B) which in turn is usually linked to several line items in (C).

We use this application collaboratively with users in offices in other countries to deliver client services, however our office is the central coordinating office. We can give users in the other offices access to List (C) to allow them to input specific details about progress on achieving each of the task items listed there and once completed we can then finalise invoices, etc.

At present, invoicing fee information is recorded in list (C) within the fields of each line item to allow us to track billable work.

The problem:

We need to give access to other offices to update progress on items contained in List (C), BUT we don't want them to view/see fee information fields within those line items.

One possible very low-tech solution is to set up a Global Datasheet View on List (C) viewable by all users (including other offices) which hides billing info and ensure that all other views are Hidden From This Location under the list settings. Which creates a pain for users in our office where we then need to either set up personal views for each person (up to 15 users per client) or grant user permissions to our staff to allow them to manage their own personal views, however most users are not remotely comfortable with SP to this degree. (However, I have noticed if users have web browsers that don't support Datasheet view, e.g. Chrome, they instead see things under Standard View allowing them to select and edit items which then displays the data entry form with ALL data fields for each item).

I'm imagining an ideal scenario would be to set up another list as List (D) which would Lookup details from lists (A), (B) and (C) and which, in addition, would also hold the billing details. List (D) could then be viewable only by our office users. HOWEVER, as List (D) would hold not only certain information from previous lists, but also additional billing information, we don't want to need to manually have to 'copy and paste' details to List (D) each time for each line item (we're talking hundreds of items) and then update these one-by-one.

  • How can we set up List (D) to automatically pre-populate (either copy or move items/content from List (C)) itself using a trigger column in List (C)?
  • Or does someone have another suggestion? (considering it appears we don't have permissions to set up workflows or use Designer).

Many many thanks!

2 Answers 2

2

That's long write-up! Ok, so i summarize by proposing an example of a solution we've deployed to replace the DataSheet view in SharePoint, with more customizations of course.

What is does is basically relying on the REST API to fill a JQuery component, call jGrid which provides similar capabilities to Datasheet view, but cross-browser. The trick in your case is that you have multiple lists, so you'll have to consider handling the "Lookup" scenarios, which, if you look carefully at the code is absolutelly doable, as the SELECT values are filled by executing a backgroun call.

http://yetanothersharepointblog.wordpress.com/0201/05/02/edit-a-sharepoint-list-in-a-grigridview-using-jqgrid-and-listdata-svc/

2
  • Hi- and thank you for the reply - can you confirm whether this proposed solution is in fact viable without access to SP Designer? It appears to refer to Designer, which we have no user permissions for on this particular application.
    – Mars
    Commented Apr 24, 2013 at 17:41
  • 1
    You practically need CEWP added into a page, and upload your HTML and jQUery libraries (which contains all Javascript calls) in a library. How you build, check, validate - that's your call, but you could use even NotePad++ opening from libraries the HTML Commented Apr 24, 2013 at 20:48
0

Your "ideal" solution you mentioned at the end is the best you are going to do without form customization.

Create List D with "Individual", "Instruction", and "Task" Lookup columns pointing to lists A, B, and C, respectively, along with fields for the fee information you need. When you create them, choose "additional fields" to display and you should not have to copy anything from those lists. This would be made easier with a Cascading Lookup Field (3rd party component that would have to be installed by your Farm administrators... not something you could add if one is not already available to you).

Then lock down permissions on List D. There is no other good way to protect only a certain few fields in a list everybody has permission to.

Lou

2
  • Hi Lou - thanks for your input - I am confident in going about setting up List (D) in this format, however (as I understand it) unless a user manually goes and enters new line items under List (D) by choosing specific completed (billable) items from List (C), nothing is going to appear in List (D). Is there a way to have details from one of those previous Lists automatically appear/populate in List (D) without workflows/Designer? Is this essentially what the Cascading Lookup Field would achieve?
    – Mars
    Commented Apr 25, 2013 at 9:29
  • The user would have to manually choose something, unfortunately. We have a solution where the parent list (C) has a customized display form that lists the child items (D) and lets you add new ones with the items pre-filled. That solution required customizing the XSL of the display form in Designer. Lacking that ability, you will have to manually select the A, B, and/or C you are linking to. Selecting the item should be sufficient, so you should not have to recreate all the associated details already in those lists. (Sorry for the late reply.)
    – Lou
    Commented May 4, 2013 at 10:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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