Friday, October 5, 2007

Missing MOSS 2007 Functionality

So having been using MOSS 2007 for the past 3 months now, I figured I'd put my own stake in the ground as to some things that would be quite handy to be built into the product. Yes, there are probably ways to do some custom webparts to handle some of these, but IMHO, these are pieces of functionality that should be part of the base product. Hopefully they make it into the next version...
  1. List View Security
    • This follows some of the same logic behind the use of a database VIEW. An administrator should be able to create a SharePoint list view with a row-level filter and then secure the list of views to the appropriate folks (to the point of hiding views a user doesn't have access to use).
    • This would allow various business scenarios to be simply handled via view security. For instance
      • hiding items based on the state/status code of an item to augment workflows
      • storing heterogeneous content types, but securing which are visible to whom
  2. List Item Column Security
    • This is very similar to the view security above, but at a column-level, rather than row-level (vertical security versus horizontal security). In fact, this could work very similarly to how views currently work, but could be called item views, instead of list views.
    • Yes, you could write custom ASPX pages to handle this, but the point of this functionality is to give a non-developer the ability to create this kind of functionality.
  3. Custom Attributes On Lists
    • This is more or less a property bag (key/value pair bucket) that can be populated via the GUI by an end user, or via the API.
    • This would be primarily useful to a developer who wants to track/manipulate additional details about a list, but enable end-users to make changes to those values when necessary.


Tony said...

You can already add attributes/columns to a list that can be modified by the GUI and/or API. Under your list settings. You can either add columns (not attached/non-queryable columns) or site columns.

BigJimInDC said...

Tony, these are about the list, not the list items. Adding another column, which I am quite familiar with, gives me the ability to track additional information about individual list items. What I'm talking about is additional information about the list itself (the bucket, container, etc).

Granted, you could come up with a custom content type that contains that information and store only one of those such items per list that you want it in, but that ends up unnecessarily cluttering the list columns collection, when the data being stored has nothing to do with individual list items.

Vladimir Kelman said...
This comment has been removed by the author.
Vladimir Kelman said...

Here's why our company decided to give up and to develop our future version of Intranet in plain good ASP.NET 3.5: