Saturday, November 1, 2014

Comment and protocol log using the versioning history - appending changes to text re-defined

There is a little known feature in SharePoint called 'Append changes to field', allowing you to see all earlier values of the field at once, except that it doesn't. The SharePoint standard multi-line text field provides this option, but then it doesn't directly show the entries. All you get in the standard is a 'View Entries' link in the list views. Not so here:


Introducing the Comments SUPREME field for SharePoint 2013


This field is based on the standard multi-line text field and behaves identically, except that it comes with sophisticated mechanisms to let you view the history of the values in a column.

Note - For this to work, you need to activate Versioning for the list (as in the standard), otherwise all you get is a simple text field which's contents get overwritten each time you edit it. Versioning can be activated in the advanced settings of the SharePoint list.

Features - this field is rapidly fast when you open the dropdown that shows the history. It has an automatic scoll mechanism, meaning you scroll down and without any clicking it loads more of the history. It also comes with a reply button that automatically opens the edit form of the list item and focuses the correct field.

Quick-Edit support - This field fully supports editing in the Quick-Edit view (a.k.a. Datasheet view). Entering and committing a value will add an entry to the history.

Protocols or comments? The two generic applications for such a history listing is to create either protocols or conversations. For protocols (or reports) you want to see the latest entry first, with the history descending backwards in time to the first and oldest entries. For conversations (or comments) you want the opposite, i.e. the entries in their chronological order, Alice said something, then Bob replied.
This field supports both chronological and achronological ordering of entries (the latter being the default).

Appearance - In the list views the field shows one entry (the earliest or latest one depending on the mode) and a click on the button expands the field like a dropdown, showing the whole history, without delays and smoothly loading more and more contents while scrolling. For every entry it shows who the author was and when it was made (this is the regular editor and modified information from the versioned sharepoint list item).

Configuration - Besides the chronological or not mode you can configure whether to show the user popup when hovering, and you can specify the date format. You can also set up your own custom display template to render the entries as you please. Of course you can merely override the Styles with custom CSS code in the page, too.
For list views you can specify both column width and row height each entry shall have, while for the view and edit forms you can configure the number of items to preview before the more button.

Licensing - the field can be freely tested for as long as you like it and has all features activated, except that it shortens the entry and adds a remark. This is the demo mode. To use it in production, you'd have to purchase a license. There are licenses for the site-collection (the field can be used in every website in the site-collection) or for the farm (the field can be used in all sites in all site-collections in the whole farm). These licenses come in two flavours - either for 50 users only (so if your site-collection has 127 users, you'd need to purchase 3 site-collection or 3 farm licenses), or unlimited (for any number of current and future users).
Licensing goes easy - directly on the configuration page you have an Activate Now button which presents you with the choice for the license model and this brings you to the online shop where you can purchase the license(s) using your credit card, bank account or PayPal (this is managed by a common and safe eCommerce reselling service, so you'll be complete insured, though of course you should (and can) test the solution beforehand. The prices are at the lower end of the industry standard for enterprises and IT agencies, and certainly less than hiring a developer to make a solution like that.
Also, all future updates come free of charge, thus you participate from all improvements and bugfixes asked for by other customers.


The Lookup SUPREME field can be downloaded here:
www.supreme-tools.com/comments


It is a custom field type for SharePoint 2013, based on the standard multi-line textfield and extremely lightweight (no server scripts, no third-party libraries, no new icons in the toolbars, no administration pages whatsoever, and quickly installed or removed).

Thursday, November 28, 2013

Finally a cross-site lookup that works in the Quick-Edit view

There are a lot of fine solutions on the web to solve the everlasting problem of not being able to look up items across sites.

However, none of those solutions is really complete. While the appearance is generally great in the edit and view forms, most fields lack the ability to be edited in the Quick-Edit view (a.k.a. Datasheet-View), which is where you can edit all list items in rows at once. This is because SharePoint is quite uncooperative when it comes to extending this mode.


Introducing the Lookup SUPREME field for SharePoint 2013.


Quick-Edit Support - this field can be normally edited in the Quick-Edit view, and it is even much faster than the SharePoint standard lookup field which it is based on when it comes to lists that have several thousand entries. Granted, it is rare that a list has 50,000 items, but it happens often enough for businesses to experience that editing becomes a daunting task when having to wait for the standard dropdown to open for over a minute. This field doesn't pre-load all the entries, it loads and filters them dynamically when you use it, e.g. you open the dropdown and see a bunch of results instantly and scrolling reveals more and more, loaded in the background.

Cross-Site - in the SharePoint standard you have to create a lookup field in the website in which the list is located in which you want to look up items, with this field you can directly specify any list from the whole site-collection and don't have to create any website columns at all, while being fully standard compatible. All the standard options such as multiple or single values, required values etc. are of course available, too.

Designed for productivity - nicely styled solutions are not automatically efficient in terms of usability. Too often solutions are made for the eye only and not actually for being used by people. Less shiny but usage-optimized solutions are often the better choice for everybody who has to work with them on the long term. To increase productivity it is important that everything is quickly at hand and can be controlled in any possible way, say by keyboard and mouse to support any liking.
This solution is heavily optimized for usability. Not only can every element be controlled completely by keyboard (e.g. opening the dropdown, selecting items, filtering by starting to type, committing or cancelling changes etc., all without ever having to grab the mouse), it also adjusts itself to the available space, aligns and resizes itself or grows and makes it largely unnecessary for the user to scroll, which saves a lot of time and nerves.

Features for users - there is no direct input into the field, in favour for the filtering in the dropdown. Clicking on the field or typing simply opens the dropdown and shows results, which are being filtered when the user types something. The dropdown can show any columns that were configured, and those columns can be filtered or sorted where supported by the data type. So users can see all kinds of columns from the lookup list items, not only the lookup field. Selected items can either be removed by clicking the X next to the entry, or by pressing the Delete key on the item in the dropdown (already selected items are grayed out in the dropdown).
In the view modes, the selected entries are linked as with the standard lookup, but you can configure that the link shall open in a dialog or a new window or the same window. Linking can be switched off as well.

Features for admins and developers - the configuration is quite extensive. Not only can you specify which fields of the lookup list to show as columns in the dropdown, you can also specify how, and you can even extend or customize it to your exact needs, by adding some Javascript to your site.
The configuration can be a little complex at start, but one gets used to it easily. The field supports displaying all kinds of standard types, including picture fields, and can filter and sort many of them. Whether fields can be filtered and/or sorted can be configured as well.
Conditional filtering  can be used to limit which items from the lookup list will appear. This allow for including items with a certain content-type only, or from a specific sub folder in the target list, or with certain values in a field, e.g. products for a specific country or people working on a certain project. 
Then there are the rather exotic features such as placeholders in the column definition or the conditional filtering criteria. The placeholder would access an URL parameter and so the configuration can be different depending on the URL of the link the user used to come to the site where the lookup is displayed.
This might come in handy if you are doing context-sensitive development in your own solutions, where you create one field but have different configuration, e.g. when using it in Webparts.
Further, all CSS classes can of course be overridden, and a custom display template can be configured to control how selected entries are rendered.
The whole configuration can easily be edited and copied directly as well (skipping the visual editor) - this is practical for transferring the configuration to another field, or for using placeholders. 

Licensing - the field can be freely tested for as long as you like it and has all features activated, except that it doesn't save the entries that you selected, but random ones. This is the demo mode. To use it in production, you'd have to purchase a license. There are licenses for the site-collection (the field can be used in every website in the site-collection) or for the farm (the field can be used in all sites in all site-collections in the whole farm). These licenses come in two flavours - either for 50 users only (so if your site-collection has 127 users, you'd need to purchase 3 site-collection or 3 farm licenses), or unlimited (for any number of current and future users).
Licensing goes easy - directly on the configuration page you have an Activate Now button which presents you with the choice for the license model and this brings you to the online shop where you can purchase the license(s) using your credit card, bank account or PayPal (this is managed by a common and safe eCommerce reselling service, so you'll be complete insured, though of course you should (and can) test the solution beforehand. The prices are at the lower end of the industry standard for enterprises and IT agencies, and certainly less than hiring a developer to make a solution like that.
Also, all future updates come free of charge, thus you participate from all improvements and bugfixes asked for by other customers.


The Lookup SUPREME field can be downloaded here:
www.supreme-tools.com/lookup


It is a custom field type for SharePoint 2013, based on the standard Lookup and extremely lightweight (no server scripts, no third-party libraries, no new icons in the toolbars, no administration pages whatsoever, and quickly installed or removed).