Das K2 Worklist Control (Smartforms 1.0.6)

Einige Neuheiten die mit Smartforms 1.0.6 ausgerollt wurden, habe ich bereits in anderen Posts dargestellt („Mehr aus der SharePoint UI herausholen“, „Error Handling“). Eine weitere wichtige Komponente ist das Worklist Control, also die Aufgabenliste von K2.

Hierbei handelt es sich um eine Weiterentwicklung des klassischen K2 Worklist Webparts für SharePoint bzw. der Worklist wie sie im K2 Workspace genutzt wurde. Der Vorteil an dem Control ist offensichtlich dass man es auf jeder beliebigen View und somit auf jedem Formular platzieren kann. Das bedeutet, unabhängig von Solution und führendem System (SharePoint, Smartform, Workspace etc.) kann man seine Aufgaben direkt abrufen und bearbeiten! Das Control kann sowohl global, alle Aufgaben eines Benutzers anzeigen oder vorgefiltert, je nach Workflow oder Solution. SiteCollection Grenzen oder WebApplikation Einschränkungen gibt es hierbei nicht.

Verbesserungen im Vergleich zur klassischen Worklist

  • Konfigurierbare Ansicht
    Aus einer Vielzahl von Spalten kann man sich nun die Worklist gemäß den Ansprüchen konfigurieren.
    config
  • Elemente ein- bzw. ausblenden (Toolbar, Filter, Suche)
  • Task Optionen können deaktiviert werden (Redirect, Share [früher Delegate], Sleep, Release)
    hidefeatures

 

  • Übersetzbar mit dem K2 Multilingual Control (Link)Einfache Ansicht (deutsch)multilingualeasy1
    Einfache Ansicht (english)
    multilingualeasy2

    Angepasste Ansicht (deutsch)
    multilingualadvanced1
    Angepasste Ansicht (english)
    multilingualadvanced2

Hinweis: Die Flaggensymbole habe ich in dem Beispiel selbst ergänzt. Die Sprachauswahl kann auch automatisch anhand der Browsersprache gesetzt werden. Selbstverständlich können auch andere Buttons oder Symbole zu diesem Zweck verwendet werden.

Details, wie zum Beispiel die Vergleichsoperatoren, sind ebenfalls übersetzbar

multilingualdetails

 

Wie oben bereits erwähnt, kann man dieses Control nun auch in eigenen Lösungen platzieren. Im unserem Beispiel „Quote To Cash“ habe ich die Worklist im Dashboard ergänzt. Zur Laufzeit könnte das dann so aussehen:

solutioninteg

Nach einem Klick auf den Toolbar Button, wird die inviduelle Aufgabenliste dann im Modaldialog dargestellt. Dies ist nur eines von vielen möglichen Einsatzszenarien wie man das K2 Worklist Control einsetzen kann. Da jedes Smartform eine eigene URL hat, kann man zum Beispiel auch aus Email Benachrichtigungen oder in SharePoint Webparts darauf verweisen.solutioninteg1

Verbessertes Error Handling mit K2 Smartforms 1.0.6

Unter den zahlreichen Verbesserungen in SF 1.0.6 findet sich auch die verbesserte Fehlerbehandlung. War es in der Vergangenheit noch so, dass alle Fehler zur Laufzeit eines K2 Smartforms direkt in einem Popup dargestellt wurden, kann man nun mit einer Regel ggf. Fehler abfangen und zum Beispiel nach Abhängigkeit des Fehlertyps mit einer eigenen, benutzerfreundlichen Fehlermeldung arbeiten oder auf eine passende Landingpage weiterleiten.

Fehler abfangen

Das funktioniert pragmatisch auf View- und Formularebene und zwar über sog. View-Methoden. Jede Ansicht und jedes Formular haben ab sofort entsprechende Methoden im Rules Wizard. Somit ist es möglich ein ganzes Set an Regeln auszuführen, falls auf der Ansicht oder dem Formular ein Fehler auftritt.

error_1

 Welche Informationen gibt es über den Fehler?

Die Details zum Fehler findet man im Kontext Browser unter den System Values. Es wird unterschieden zwischen

  • Error Message
  • Error Details
  • Error Type

error_2Basierend auf diesen Informationen kann man nun eine eigene Fehlerbehandlung implementieren, zum Beispiel anhand des Error Type

error_3

error_4

Und entsprechend dann darauf reagieren

error_5

 

Try-Catch-Funktion

Zusätzlich zu den View- und Form Methoden gibt es auch eine neue Condition (“error occured”) und eine neue Action (“stop rule execution”) in dem Rules Designer. Kombiniert man beide, kann man eine Art “Try-Catch” Funktion implementieren.

error_6

Im folgenden Beispiel wird eine SmartObject Methode ausgeführt welche intern einen Webservice nutzt. Antwortet der Service nicht, kann man dies mit einer eigenen Meldung dem Anwender verdeutlichen 🙂

error_7

In Verbindung mit dem Multilingual Control kann man die Fehlermeldungen bzw. Seiten übrigens auch mehrsprachig gestalten!

Weitere Informationen zu dem Thema Error Handling gibt es wie immer auf der K2 Website! (Knowledge  Base)