0% found this document useful (0 votes)
573 views76 pages

Release Notes

Uploaded by

hoangthanhquoc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
573 views76 pages

Release Notes

Uploaded by

hoangthanhquoc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 76

K2 FRANCE

SMARTOBJECT - SERVICE -
TESTER ++
Release Note
K2 France - SmartObject - Service - Tester ++ - Release Note

Main information
Date version: 01/08/2019

Project: SmartObject - Service - Tester ++

Summary: This document explains the main differences between the standard “SmartObject - Service -
Tester” and the “SmartObject - Service - Tester ++”

© 2015 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

Revision history

Version Date Authors Comments

V1.0 17/08/2016 Olivier Chatagnon Publish the first version

V1.1 19/08/2016 Farid Bouzid Editing work

V1.2 02/09/2016 Olivier Chatagnon New version 4.1.5.2 with 2 fixes

V1.3 28/09/2016 Olivier Chatagnon New version 4.1.7.1 with 1 fix and 5
improvements:
- Possibility to manage a SmartObject
default naming convention
- Display all methods, ServiceObjects and
Service Instances in alphabetical order
- Copy only the data in the List Results
- Manage new version with an Auto Updater
- Improvement of screen “Execute
SmartObject” and linked “Filter”

V1.4 29/10/2016 Olivier Chatagnon New version 4.1.7.2 with 1 fix and 2
improvements:
- Improve detection of the Service Type
when we are in SmartObject tree (Raised
by KGS_Karanth on the community
comment)
- Register Service Type: now, the
description is filled by default (with the
system name)
- The auto updater is now a setting: you can
disable it during each start and you can do
a version check from the setting page.

V2.0 15/03/2018 Olivier Chatagnon New version 4.2.0.x.


To search all new functionalities of this
version, please go to titles “Since 4.2.0.x” in
this document.

This version is compatible with K2 Five:


4.2.0.0 for versions before K2 Five and
4.2.0.5 for K2 Five version.
The version is not really compatible with K2
Five but I use the same Visual Studio
project to generate the two version.
If you upgrade from 4.6.11 (or 4.7) to K2
Five, the Auto-Updater will download
automatically the version compatible with
K2 Five.

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

V2.1 24/03/2018 Olivier Chatagnon New version 4.2.1.x to be sure that all beta
version 4.2.0.x will be updated
automatically.

V2.2 09/05/2018 Olivier Chatagnon New version 4.3.0.x.


Now the format of the version is the third
number linked to beta version.
Main version: 4.3.0.x (x linked to K2 Five or
not).
Next beta version: 4.3.1.x.
Next main version: 4.4.0.x (Or 5.0.0.x).

V3 08/10/2019 Olivier Chatagnon New version 5.0.0.x. compatible with K2


5.3.

13 new main features and 28 other


features.

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

Summary

1 Where to get the last version .................................................................................................................9


2 Main features ...................................................................................................................................... 10
2.1 New navigation bar and favorite management .......................................................................... 10
2.2 New setting screen ..................................................................................................................... 12
2.3 Possibility to change the display format of objects .................................................................... 13
2.4 Possibility to copy “display name” and/or “system name” to the clipboard ................................ 13
2.5 Use the last accessed category as the default one ................................................................... 13
2.6 Improvement of the windows “Publish SmartObject” ................................................................. 14
2.7 Possibility to verify integrity of SmartObjects ............................................................................. 15
2.8 Possibility to manage a SmartObject default naming convention .............................................. 16
2.9 Display all methods, ServiceObjects and Service Instances in alphabetical order ................... 18
2.10 Manage new version with an Auto Updater ............................................................................... 19
3 Main features since version 4.2.0.x .................................................................................................... 21
3.1 SmartObject server Properties: highlight server with sensitive data.......................................... 21
3.2 SmartObject server Properties: Connect directly to the K2 Database to add behaviours in the
SmartObjects - Services - Tester++ ....................................................................................................... 21
3.3 Dll information of the Service Types .......................................................................................... 22
3.4 SmartObject Logging: You can now load the SmartObjects Log and replay the SmartObject
execution with same input properties ..................................................................................................... 23
3.5 Create SmartObject: Compare easily ServiceObject and corresponding SmartObjects ........... 25
3.6 Import SmartObjects: allow to import even if the SmartObject exists ........................................ 26
3.7 Prevent deletion of Service Type and Service Instance in case of use ..................................... 26
3.8 Custom objects are displayed in a different color ...................................................................... 27
3.9 Updater: Option to download the latest Beta version of this tool ............................................... 27
4 Main features since version 5.0.0.x .................................................................................................... 28
4.1 Creation of a new menu Tools++ ............................................................................................... 28
4.2 Manage favourite display name ................................................................................................. 28
4.3 Tool for dll information improved ................................................................................................ 30
4.4 New tool “SmartObject advanced search” ................................................................................. 31
4.5 New tool “Check Sharepoint lists, libraries and settings” ........................................................... 32
4.5.1 List and libraries ..................................................................................................................... 32
4.5.2 Application settings ................................................................................................................ 33
4.5.3 General settings ..................................................................................................................... 33
4.5.4 Group providers...................................................................................................................... 33
4.6 New tool "SmartObject usage" tool available from Service Instance, Service Object,
SmartObject Category and SmartObject ................................................................................................ 34
4.7 New tool “Environment library usage” ........................................................................................ 36

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

4.8 New tool “SmartForms controls search and usage”................................................................... 36


4.9 New tool “Extract workflows” ...................................................................................................... 38
4.10 New tool “Check licensed users”................................................................................................ 40
4.11 Service instance usage statistics ............................................................................................... 41
4.12 Display SMOST++ version and K2 Version in the header ......................................................... 41
4.13 Add “What’s new and update” in menu “Help” ........................................................................... 41
5 Other Features .................................................................................................................................... 43
5.1 Improvement of the screen for Register Service Instance ......................................................... 43
5.2 Navigability improved by adding double-click management ...................................................... 44
5.3 Quick execute of a method without parameter .......................................................................... 44
5.4 Display detail of the Service Instance type ................................................................................ 44
5.5 Configurable colors for the List methods ................................................................................... 45
5.6 Display property type in the SmartObjects tree ......................................................................... 46
5.7 Visual Changes to easily Distinguish SmOST++ from the Original ........................................... 46
5.8 Copy only the data in the List Results ........................................................................................ 47
5.9 Improvement of screen “Execute SmartObject” and linked “Filter” ............................................ 47
6 Other Features since version 4.2.0.x .................................................................................................. 49
6.1 All SmartObject - Service - Tester++ functionalities are now in green ...................................... 49
6.2 Integration of last standard changes in K2 Five ......................................................................... 49
6.3 Display the connected user in the main status bar .................................................................... 50
6.4 Allow to expand nodes with keyboard ........................................................................................ 50
6.5 Review wordings for Service Type, Service Instance and SmartObject .................................... 50
6.6 SmartObject server Properties: manage the display name of the server .................................. 51
6.7 Register Service Type ................................................................................................................ 51
6.7.1 Add checkbox to display directly “Resister Service Instance” windows................................. 51
6.7.2 Display by default only not used Service Type ...................................................................... 51
6.7.3 Fix issue when creating the Service Type (System name) .................................................... 51
6.7.4 Improvement of the Service Instance information screen in case of update mode ............... 51
6.8 Refresh Service Type: change wording ..................................................................................... 52
6.9 Register Service Instance .......................................................................................................... 52
6.9.1 Allow to setup the default Authentication mode ..................................................................... 52
6.9.2 Edit Service Instance: Add button “Update” ........................................................................... 53
6.9.3 Edit Service Instance: add the current Service Instance in the Main title .............................. 53
6.9.4 Add message in order to avoid the manipulation of Sharepoint Service Instances ............... 53
6.9.5 Add check before refresh ....................................................................................................... 54
6.10 Create SmartObject ................................................................................................................... 55
6.10.1 Rename the title “Publish SmartObject” to “Create SmartObject” ..................................... 55
6.10.2 Display execution time for search SmartObjects ............................................................... 55
5

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

6.10.3 Improvement of management of properties ....................................................................... 56


6.10.4 In smartObject explorer, Method part, Add quick access for comparison with
ServiceObject ...................................................................................................................................... 56
6.10.5 Improve error message when it’s impossible to Create/Update/Delete SmartObject ........ 57
6.11 Execute SmartObject ................................................................................................................. 58
6.11.1 Allow to export quickly files ................................................................................................ 58
6.11.2 Allow to change column width ............................................................................................ 59
6.11.3 Improve display in case of long properties ......................................................................... 59
6.11.4 Highlight when the mandatory properties are missed ........................................................ 59
6.11.5 Display the start time of the execution ............................................................................... 59
6.11.6 Display the execution time for pre and post execution ...................................................... 60
6.11.7 Add shortcut to generate data quickly ................................................................................ 60
6.11.8 Fix issue of generate data .................................................................................................. 61
6.11.9 Add button generate Mandatory data ................................................................................ 61
6.11.10 Add button “Count ADO” .................................................................................................... 61
6.12 Import SmartObjects .................................................................................................................. 62
6.12.1 Change default extension import ....................................................................................... 62
6.12.2 Other little improvements ................................................................................................... 62
6.13 Search SmartObjects ................................................................................................................. 63
6.13.1 Quick access to SmartObjects linked to the current SmartObject ..................................... 63
6.13.2 Quick access to SmartObjects linked to the current Service Instance .............................. 63
6.13.3 Change the place of the button in the menu ...................................................................... 63
6.13.4 The width of the drop list “Service instance” has been increased ..................................... 64
7 Other Features since version 5.0.0.x .................................................................................................. 65
7.1 Integration of last standard changes in K2 Five ......................................................................... 65
7.2 SmartObject Server properties................................................................................................... 65
7.2.1 Allow to fill the SQL server Name and Database for K2 Five ................................................ 65
7.2.2 Add connection test ...................................................................................................................2
7.3 Setting page: Part naming convention, by default display the current service object selected ....3
7.4 Register Service Type ...................................................................................................................3
7.4.1 Add right click on "ServiceObject Explorer" node for "Register Service type" ..........................3
7.4.2 Review wording for refresh service type ...................................................................................3
7.5 Register/Edit Service Instance ......................................................................................................4
7.5.1 In a particular case, display "Generate Key" in the service instance parameter ......................4
7.5.2 Add help message.....................................................................................................................4
7.5.3 Allow to select system name and Guid .....................................................................................4
7.5.4 Improve error message in case of missing dependant dll.........................................................4
7.6 Create SmartObject ......................................................................................................................5

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.6.1 Improve message in case of error.............................................................................................5


7.7 Execute SmartObject ....................................................................................................................5
7.7.1 Execute client method: Remove the space after and before the property type ........................5
7.7.2 Adapt width of the form .............................................................................................................5
7.7.3 Change the display name of the methods of the standard Smo UMUser.................................5
7.7.4 In Title, display the system name if not same of the display name...........................................6
7.7.5 New tab result for html data ......................................................................................................6
7.7.6 Improve default tab result displayed .........................................................................................6
7.7.7 Improve warning in case of error with a Service type linked to DocumentFormat.OpenXml....6
7.7.8 Fix issue of display of pdf file when Acrobat Reader is installed ..............................................7
7.7.9 Rename "Create SmartObject" by "Create or update SmartObject" ........................................7
7.8 Move SmartObject to a category...................................................................................................8
7.9 Improve navigability ......................................................................................................................9
7.9.1 Jump quickly to service object ..................................................................................................9
7.9.2 Display the number of object in categories ...............................................................................9
7.10 Improvement of the previous version of SmoST++.................................................................... 10
7.11 Fix of the previous version of SmOST++ ................................................................................... 10
7.12 Fix standard version of SmartObject Service tester................................................................... 10
7.12.1 Fix Issue with Hour without data in SmartObject execution ............................................... 10
7.12.2 Register service instance, password set as no available when it’s necessary .................. 11

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

1 CONTEXT
The first version (generated in November 2016) of SmartObject - Service - Tester ++ was a modification
of the official “SmartObject - Service - Tester” (SmOST) version 4.6.11. This version was compatible with
4.6.9 to 5.3 at least.

A new version with lot of new modifications has been generated in March 2018.
This version is compatible with K2 Five: 4.2.0.0 for versions before K2 Five and 4.2.0.5 for K2 Five
version.
The version is not really compatible with K2 Five but I use the same Visual Studio project to generate the
two version.
If you upgrade from 4.6.11 (or 4.7) to K2 Five, the Auto-Updater will download automatically the version
compatible with K2 Five

The project began when a first modification of SmOST was made to help a customer quickly detect and
verify if SmartObjects were in an invalid state. The functionality allowed the customer to easily pinpoint
why the deployment of a package always generated an error at the last step of the “Package and
Deployment” (See “Possibility to verify integrity of SmartObjects”).

After this first stint into the code of SmOST, DotPeek decompiler was used to get the sources, over the
months, a few other improvements were made on this tool, now nicknamed SmartObject - Service -
Tester ++.

All details of the changes done are in “Change.log”

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

2 WHERE TO GET THE LAST VERSION


For now, you can get the latest version, from the K2 Community market:

Site: http://community.k2.com/t5/General-K2-Utilities/SmartObject-Service-Tester-plus-plus/ba-p/92426

This tool include an auto-update system, which will ensure that the end user always has the latest
version.

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3 MAIN FEATURES
3.1 NEW NAVIGATION BAR AND FAVORITE MANAGEMENT

Since version 5.0 the display of path is managed. See: “Manage favourite display name”

A navigation bar has been added. We expect this feature to come in handy in situations such as sending
a customer the path to execute a specific SmartObject with specific parameters.

When navigating the tree view of SmOST++, the navigation bar now displays the current path with only
System Names:

The combo box of the navigation bar displays the first few favourites and the last 10 acceded paths:

10

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

You can filter, on-the-fly, the content of the combo list by typing a word to search:

You can add the current path to your favourites just by clicking the favourite button at the right of the
navigation bar:

You can also add a full path with default parameters as a favourite directly from the “Execute
SmartObject” screen:

In this case, if you click on “Add to Favourites with parameters”, the URL will be:

SmartObject Explorer\All SmartObjects\UMUser\Methods\Get_Group_Users -EE Group name=Administrators;LabelName=K2

Important: If you select the above path from the combo list, or from your favourites, the windows will be
automatically displayed with the parameters AND it will be automatically executed (-EE).

To disable this behaviour just replace –EE by –E.


In that case, the SmO method windows will be display with the parameters but not executed.

11

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3.2 NEW SETTING SCREEN

There’s now setting screen in menu “Tools”:

These settings are saved in a file named “SmartObject - Service - Tester++.setting” placed in the same
directory of the SmartObject - Service - Tester++.exe.

This setting file is platform independent and can be, for example, sent to someone alongside with your
settings and set favourites.

If the file is not present, SmOST++ will default to using parameters that mimick the default version of
“SmartObject - Service - Tester”. For example, the “Display format of objects” will be “{DisplayName}”.

The bundled settings file that comes with SmOST++ have some differences with the standard SmOST,
such as “Display format of objects” being “{DisplayName} ({SystemName})”.

12

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3.3 POSSIBILITY TO CHANGE THE DISPLAY FORMAT OF OBJECTS

You can now change the display format of main objects: Display name and/or System name.

This behaviour is configurable in menu Tools/Settings

3.4 POSSIBILITY TO COPY “DISPLAY NAME” AND/OR “SYSTEM NAME” TO THE CLIPBOARD

Now, you can use CTRL+C on a SMO in order to get its Display name and/or System name in the
clipboard.

This could be useful if you need to setup a SmartObject that call other SmartObjects: in this case you
need to fill the System name.

3.5 USE THE LAST ACCESSED CATEGORY AS THE DEFAULT ONE

This behaviour is configurable in menu Tools/Settings

When you create a SmartObject, the default category could be changed.

It’s possible to set this value to the last accessed category.

13

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3.6 IMPROVEMENT OF THE WINDOWS “PUBLISH SMARTOBJECT”

 Replace text box of the object name by a combo that displays:


Existing SmOs that use that ServiceObject. In which case, they’re preceded by the display value
“Existing:”
The Default SmO value.

Note: The existing SmartObjects are detected only if all methods are the same as the
ServiceObject. Composite SmartObjects are then not detected.
 When you select an existing SmartObject in the drop down, you don’t need to click on “Get
Existing Guid” button, it’s updated automatically, and:
- You can see the first path of the category displayed.
- You can see the button “Execute SmartObject” to execute directly the SmartObject
 When you click on "Check name" the message "xxx is Unique" is replaced by "xx does not
already exist"
 The button "Publish SmartObject" becomes "Update SmartObject" if it's a SmartObject selected
in the combo list is prefixed by "Existing:”

14

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3.7 POSSIBILITY TO VERIFY INTEGRITY OF SMARTOBJECTS

Now you don’t need to expand up to the method details of the SmartObject to see the red cross if the
SmartObject is not valid.

This behaviour is configurable in menu Tools/Settings.

When this checkbox is ticked you can have response time issue, mainly when you try to display “All
SmartObjects”

If this checkbox is unticked, you will have the possibility to see displayed invalid SmartObject by a right
click on any category and choose “Verify SmartObjects”:

This feature comes in handy when one’s want to know why the deployment of a package generate an
error at the last step of the “Package and Deployment”.

15

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3.8 POSSIBILITY TO MANAGE A SMARTOBJECT DEFAULT NAMING CONVENTION

In the setting screen, you are now able to setup a list of your own naming conventions for the default
SmartObject names.

This setting applies to "Publish SmartObject" (on a ServiceObject) and "Create SmartObjects" (on a
Service Instance) options.

Currently, this functionality is not applied to the "Generate SmartObjects" option due to some technical
limitations.

The rules commanding the name conventions are based on regular expressions. These rules are
cumulative, therefore the sort order of each rules is important.

For more information about regular expressions, please refer to


https://msdn.microsoft.com/en-us/library/az24scfc(v=vs.110).aspx.

The last column “Calculated value” is the outcome of the rule applied to the content of the “SmartObject
name for test” field.

Also, a default value can be set through the column “IsDefault”. With a checkbox “Is proposed in combo”,
allows you to set whether the values are visible or not in the combo box of the screen “Publish
SmartObject”

16

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

Exemples: Publish SmartObject:

Create SmartObjects:

After a Right Click on the service Instance, if you choose « Create SmartObjects », on this the screen,
the default SmartObject name is the default one calculated according to setting table:

17

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3.9 DISPLAY ALL METHODS, SERVICEOBJECTS AND SERVICE INSTANCES IN ALPHABETICAL


ORDER

In order to more easily find methods and Service Instances, these are now sorted according to the option
checked in the setting screen at “Display format of objects”.

This could be very useful when you have a lot of methods like with SharePoint or lot of Service Instance
like with SourceSafe.

As the display order of the methods could be important, you can configure it in menu Tools/Settings.

18

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

3.10 MANAGE NEW VERSION WITH AN AUTO UPDATER

Now, you won’t need to re-install manually the new version of the SmartObject - Service - Tester++.

With each new version deployed, you will be greated with an information screen like this:

You can disable this check from the setting page:

19

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

20

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

4 MAIN FEATURES SINCE VERSION 4.2.0.X


4.1 SMARTOBJECT SERVER PROPERTIES: HIGHLIGHT SERVER WITH SENSITIVE DATA

In SmartObject Server Properties, you can tick the checkbox “Sensitive data (production)”.

The impact will be the change of the background color of the menu in red and add “Sensitive data,
server: {ServerName}” to the title “SmartObjects – Services – Tester++”:

4.2 SMARTOBJECT SERVER PROPERTIES: CONNECT DIRECTLY TO THE K2 DATABASE TO


ADD BEHAVIOURS IN THE SMARTOBJECTS - SERVICES - TESTER++

In SmartObject Server properties, you can fill the K2 Database server connection details.

Important: all functionalities using the K2 database are read only (Only Select are done), if you want to
be safe, you can create/use a user (SQL Login) with read only access to the K2 database and fill it in this
screen.

A system check if the Server Key correspond between the K2 database and K2 Server information.

The execution time to retrieve the Server Key is displayed in the bottom of the screen:

21

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

Currently the following functionalities use the K2 Database connection:

 Retrieve Service Brokers paths (see “Dll information of the Service Types”)
 Check SmartObjects list (without K2 Five security) when a service Instance is deleted (see
“Prevent deletion of Service Type and Service Instance in case of use”4.7). In K2 Five, the
SmartObject list include SmartObjects not accessible by the current user: It’s safer to be sure
that no SmartObject are linked to the ServiceInstance.
 Display the SmartObject list on “Create SmartObject” (See “Create SmartObject: Compare easily
ServiceObject and corresponding SmartObjects”). In K2 Five, the SmartObject list include
SmartObjects not accessible by the current user.

4.3 DLL INFORMATION OF THE SERVICE TYPES

This functionality is available only if you fill the database connection in “Server Properties” (See
“SmartObject server Properties: ”)

When you right click on a Service Type you can click on “Get DLL Information”:

You will be able to see this screen:

It’s possible to see the list of the dll dependencies by clicking on the button “View the 10 dependencies”:

Note: You will see “Dependencies not loaded” when the broker have dll compiled with framework upper
than .Net 3.5 version.

If the dll is not found, you will see it directly on the name of the Service Type:

22

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

4.4 SMARTOBJECT LOGGING: YOU CAN NOW LOAD THE SMARTOBJECTS LOG AND REPLAY
THE SMARTOBJECT EXECUTION WITH SAME INPUT PROPERTIES

In the menu Tools, you can click on “Transform SmartObject Log to SmartObject - Service - Tester++
Urls”:

This tool will allow you to quickly transform all SmartObjects log to “SmartObject - Service - Tester++”
Urls: easily re-executable.

Example for test, discover SmartObjects called when you open “Task List” of the 4.7 Management:

1) Active SmartObjects logs (Follow instruction in the top of this screen)


2) Prepare to do an action where you want to discover corresponding SmartObjects used.
Example: go to 4.7 Management and Users/Task List:

3) To force to have a new file to be created, rename (or delete) the file
C:\Program Files (x86)\K2 blackpearl\ServiceBroker\logs\brokerpackagein.log to
brokerpackagein_old.log

23

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

4) Click on button “Search”:

5) On the SmartObject - Service - Tester++, click on “Do transformation” and “Exit”:

6) Result when you click on the navigation bar:

7) If you click on the second URL, you will be able to execute the SmartObject like it has been
previously executed by the SmartForm page.
SmartObject Explorer\All SmartObjects\com_K2_System_Management_SmartObject_Task\Methods\GetWorklistItems -EE
RegularFilters=[{"ColumnName":"Destination","Condition":"AND","Comparison":"LIKE","ParameterValue":"och"}]:

Here the files generated:

You can see that the system generate the file brokerpackagein.smostpp.log that contains the
date and URLS.
Note: It’s currently not working for filters and if you have SmartObject with associations.
24

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

4.5 CREATE SMARTOBJECT: COMPARE EASILY SERVICEOBJECT AND CORRESPONDING


SMARTOBJECTS

We can see here that the display name of ServiceObject are without spaces (ManageBy) and in
SmartObject, these 4 properties have a space (Manage By):

Note: To display the “DisplayName (SystemName)”, we use the functionality “Possibility to change the
display format of objects”.

In the combo box “Name”, you will see “Existing (Not Safe)” or “Existing (Safe)”. The rule is that we
consider as safe the click on the button “Update SmartObject” if there are no property/method to that will
be removed (or rename) with the default Service object information. In the comparison table the “Safe”
SmartObject will have no line with the checkbox “Only in Smo” ticked.

To retrieve the SmartObject list corresponding to the ServiceObject, we use a database access to display
all SmartObjects (For K2 Five, even if you don’t have access to it). If you don’t fill database connection
(See “SmartObject server Properties: ”), you will see only SmartObjects created with this ServiceObject,
not the SmartObject where you added manually, after the creation, the link to this ServiceObject.

If you modify/remove some properties/method/parameters in the first tab (Publish Information), you can
do again the comparison by click on button “Re-check”.

25

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

4.6 IMPORT SMARTOBJECTS: ALLOW TO IMPORT EVEN IF THE SMARTOBJECT EXISTS

Now, when you use the functionality “Import SmartObjects”, it’s not necessary to delete the SmartObject
before the re-import: We added a button “Import allowing update”. In this case, the SmartObject will be
updated (with a new version) like you do with the “Create SmartObject”/”Get Existing Guid”.

Note: we change the background of the checkbox from red to orange (as now possible to import it with
same guid/system name).

4.7 PREVENT DELETION OF SERVICE TYPE AND SERVICE INSTANCE IN CASE OF USE

In order to avoid to have orphan Service Type and Service Instance in the system (difficult to retrieve),
we display now an error message if you try to delete them:

Note: for this error message, if you fill the database connection (See “SmartObject server Properties: ”),
the system will check all SmartObjects linked to the selected Service Instance even if you are in K2 Five
and the current user have no access to the SmartObject.

26

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

4.8 CUSTOM OBJECTS ARE DISPLAYED IN A DIFFERENT COLOR

All Service Types, Service Instances and SmartObjects created by the user (Not standard) are now
display in color.

You can change this color in the menu “Tools/Settings”:

Note: The system check the GUID of the objects. If you remove for example a SmartObject and re-create
it, it will be considered as custom.

4.9 UPDATER: OPTION TO DOWNLOAD THE LATEST BETA VERSION OF THIS TOOL

If you untick this checkbox, you will be able to update this tool with the last Beta version.

Now the format of the version is the third number linked to beta version.
Main version: 4.3.0.x (x linked to K2 Five or not).
Next beta version: 4.3.1.x.
Next main version: 4.4.0.x (Or 5.0.0.x).

27

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

5 MAIN FEATURES SINCE VERSION 5.0.0.X


5.1 CREATION OF A NEW MENU TOOLS++

Existing “Transform SmartObjects Log to Smartobject - Service - Tester++ Urls” and “Settings” has been
moved in the new menu “Tools++”:

5.2 MANAGE FAVOURITE DISPLAY NAME

Now, the url for navigation bar (favourite) are managed with a display name.

Before:

Now:

When you click on button , you will have this screen:

28

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

29

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

Same from the screen “Execute SmartObject”, buttons “Add to favourites” and “Add to favourites with
parameters”:

As you can see, an algorithm proposes a display name base on:

{Root category} – {Smo display name} – {Method} – {list of parameters with values}

If you tick “"Open with ADO query", when you will select the favourite, the combo box, the “ADO query”
windows will be dispayed with corresponding criteria as “Having”:

5.3 TOOL FOR DLL INFORMATION IMPROVED

Before version 5 of SmOST++ it was possible to get dll from right click on one Service Type.

Now a tool is available to get a summary of all dlls “Get Dll information for all Service Types”:

The system makes the difference between windows system dlls, K2 (SourceCode) standard and other
(installed service type). Only the last one are displayed by default:

30

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

If a DLL has a sub dependency, this dependency is detected and the Parent dll is displayed in the column
“Parent DLL path”.

You can export easily all the selected dll by click on button “Zip the selected dll”.

5.4 NEW TOOL “SMARTOBJECT ADVANCED SEARCH”

This tool is accessible from any SmartObject category. It allows to search a SmartObject according the
corresponding Name, Method name, method type and too the properties, input or output.

Note: This tool search on service type. But only Service type with a linked SmartObject will be returned.

Example:

31

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

5.5 NEW TOOL “CHECK SHAREPOINT LISTS, LIBRARIES AND SETTINGS”

This tool available too from right click on categories “SharePoint 2013…”:

And from menu “Tools++”.

5.5.1 LIST AND LIBRARIES


Typical result to get an overview of all SharePoint list:

In this example, a column has been just added to the document library “Customer Files”. Then the
SmartObject Synchronisation raise “Sync issue. Reason: 10; Result: False”. As the checkbox
“Regenerate SmartObjects if needed” is ticked, the SmartObject is updated with the new column.

The main search is based on a call to SmartObjects (Example with portal.denallix.com):


SmartObject Explorer\SharePoint 2013\portal.denallix.com\Management\portal_denallix_com_Management_List\Methods\GetLists
And
SmartObject Explorer\SharePoint 2013\portal.denallix.com\Management\portal_denallix_com_Management_Library\Methods\GetLibraries

To found the linked SmartObject, the system call the following SmartObject:
SmartObject Explorer\System\SharePoint_2013_Integration\SharePointIntegrationSetting_SharePoint_Integration\Methods\GetList

If you tick the checkbox “Test Get Lists/Documents of SmartObjects”, the system will execute the
corresponding SmO with ID=1 (Hard coded):
SmartObject Explorer\SharePoint 2013\portal.denallix.com\Lists\Content and Structure Reports\portal_denallix_com_Reports_List\Methods\GetListItems -EE ID=1
Or for libraries:
SmartObject Explorer\SharePoint 2013\portal.denallix.com\Libraries\Customer Files\portal_denallix_com_CustomerFiles\Methods\GetDocuments -EE ID=1

If you tick the checkbox “Test SmartObjects synchronisation”, the system will execute:
SmartObject Explorer\System\SharePoint_2013_Integration\SharePoint_Integration_Workflow_Helper_Methods\Methods\CompareServiceObjectsByModifiedDate -EE
List ID=33c4725e-8029-4f9c-902d-4ce9f051193d;List Title=Content and Structure Reports;Site URL=https://portal.denallix.com

If you tick the checkbox “Regenerate SmartObjects if needed”, the system will execute:
SmartObject Explorer\System\SharePoint_2013_Integration\SharePoint_Integration_Workflow_Helper_Methods\Methods\ManageSharePointListSmartObject -E List
ID=0e013980-942d-4afe-bce2-f7243d9a0172;Site URL=https://portal.denallix.com

32

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

5.5.2 Application settings

In tab “Application settings”, you can get an overview of applications settings and update the
SmartForms_Runtime_URL:

The click on “Get application setting” button do the following call:


SmartObject Explorer\SharePoint 2013\portal.denallix.com\Management\portal_denallix_com_Management_K2Application\Methods\GetK2ApplicationSettings –EE

The click on “Update” button do the following call:


SmartObject Explorer\SharePoint
2013\portal.denallix.com\Management\portal_denallix_com_Management_K2Application\Methods\ManageK2ApplicationSet
tings -E SmartForms Runtime URL=https://k2.denallix.com/Runtime/Runtime;Subsite Relative URL=scnull

5.5.3 GENERAL SETTINGS


This tab allows to display all urls found in general setting for K2 for Sharepoint.
You have a button “Test” to verify if selected URL are accessible.

5.5.4 GROUP PROVIDERS


This tab allows to display all group providers.
You can click on the button “Test” to verify if selected URL are accessible.

33

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

5.6 NEW TOOL "SMARTOBJECT USAGE" TOOL AVAILABLE FROM SERVICE INSTANCE,
SERVICE OBJECT, SMARTOBJECT CATEGORY AND SMARTOBJECT

This tool is available too from the main menu “Tools++” and from any Service instance, SmartObject
Category and SmartObject.

1. Select the Smo that you want to search. If you let it without any selection, all SmartObjects will be
checked.
2. Select the deep of the search: you can see up to the SmartObject Property and corresponding
value.
3. Select the scope of the search
4. Click on the main button “Search for selected SmartObjects”.

34

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

35

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

5.7 NEW TOOL “ENVIRONMENT LIBRARY USAGE”

This tool allows to search where is use the environment library in SmartForms, K2 Five workflows and K2
Studio workflows.

Select the environment library, the scope and click on button “Search”:

5.8 NEW TOOL “SMARTFORMS CONTROLS SEARCH AND USAGE”

This tool is accessible from any SmartObject category. It could be useful for:

 Check if control names are homogenous for nomenclature point of view.


In this example, sometime starting by Button sometime ended by button:

36

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

 Mainly to search were is used a controls


Warning: the category in the bottom part is very important for response time point of view. It will
be automatically filled by the column path from the first result if all records are the same. In this
example, we had to change the default category from “SuiviSupport\View” to “SuiviSupport” as
the first one didn’t get any result as the use was only done on the form:

You can get information as destination or source:

37

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

This tool is accessible from the category node too:

5.9 NEW TOOL “EXTRACT WORKFLOWS”

This tool is useful in theses contexts:

 Need to found which String table is linked to the workflow (Not available in K2 Five).
 Get Export details: to know if it’s a workflow coming from Package and deployment (P&D).

 Need to extract several K2 Studio workflow in the same time


 Need to search if a specific string is used in any workflow. In this case we advise to add > and <
around the SmoName
 In K2 Studio workflows, replace a SmO System name from on to another in several workflows in
the same time. In this case we advise to add > and < (and other characters like this example)
around the SmoName to be sure to not replace other Smo.
Example:
SmartObject Name in XML >SMO_RevueOffreSimplifiee< >SMO_RevviewSimplifyOrder<

SmartObject Name in XML encoded ;SMO_RevueOffreSimplifiee& ;SMO_RevviewSimplifyOrder&

SmartObject Name in brakets [SMO_RevueOffreSimplifiee] [SMO_RevviewSimplifyOrder]

SmartObject DisplayName in double cote "SMO_RevueOffreSimplifiee" "SMO_RevviewSimplifyOrder"

ToCheck if other place found - bad to check SMO_RevueOffreSimplifiee SMO_RevueOffreSimplifiee

ToCheck count ended by Decision - bad to check SMO_RevueOffreSimplifiee_Decisions SMO_RevueOffreSimplifiee_Decisions

Note: the keyword “Bad to check” is useful if you want to be done at the very end. In case of
checkbox “Ignore case” ticked, the search will be done in this order:

1) All contexts with case sensitive except the contexts containing keyword “bad to check”
2) All contexts with case insensitive except the contexts containing keyword “bad to check”
3) All contexts with case sensitive with only the contexts containing keyword “bad to check”
4) All contexts with case insensitive with only the contexts containing keyword “bad to check”

38

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

39

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

Result:

You can jump to the directory by double click on cell “ExtractionDirectory”.

5.10 NEW TOOL “CHECK LICENSED USERS”

This new tool allow to get a deeper summary and details about licensed users: You can see the part of
user enabled in Active directory (Technically “Enabled”=1 in table Identity.Identity). For data linked to a
date, we can see part of data from last 12 months and since the 1st January of the previous year:

40

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

5.11 SERVICE INSTANCE USAGE STATISTICS

This tool is accessible from any SmartObject category.

The result is a summary of Service instance with number of corresponding SmartObjects and methods:

5.12 DISPLAY SMOST++ VERSION AND K2 VERSION IN THE HEADER

5.13 ADD “WHAT’S NEW AND UPDATE” IN MENU “HELP”

41

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

42

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

6 OTHER FEATURES

6.1 IMPROVEMENT OF THE SCREEN FOR REGISTER SERVICE INSTANCE

The following improvements have been done:

 Sort the fields in alphabetical order.


 Increase the width of the form according to the parameter's lengths.
 Add tool tip with default value.
 Emphasise parameters value to bold if it's not the default value.
 Change back colour of parameters if required but no value entered.

When registering a Service Instance, if the meta data fields are empty (System name, display name of
ServiceObject not setup by the code of the broker), the default value of the Service Type are used.

43

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

6.2 NAVIGABILITY IMPROVED BY ADDING DOUBLE-CLICK MANAGEMENT

You can now double click on a ServiceObject to access the "Create SmartObject" windows.
Also, this option is now bolded in right-click menu.

Same for “Execute SmartObject” from a SmartObject.

6.3 QUICK EXECUTE OF A METHOD WITHOUT PARAMETER

Double clicking on a SmartObject or SmartObject method, while pressing the shift button, the system will
try to execute directly the method. This is useful for list without mandatory parameters.

6.4 DISPLAY DETAIL OF THE SERVICE INSTANCE TYPE

In SmartObject, methods, when the Service Instance is displayed, the Service Type is now added at the
end:

44

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

6.5 CONFIGURABLE COLORS FOR THE LIST METHODS

This behaviour is configurable in menu Tools/Setting

It’s now easy to distinguish all the functions that return a list:

45

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

6.6 DISPLAY PROPERTY TYPE IN THE SMARTOBJECTS TREE

This behaviour is configurable in the menu Tools/Settings:

Note: In the standard version, the type is displayed only in the node “ServiceObject Explorer”

6.7 VISUAL CHANGES TO EASILY DISTINGUISH SMOST++ FROM THE ORIGINAL

The icon is now green and the title of the tool is “SmartObjects – Service – Tester++”:

The about page now displays a new version for every releases.

Note: The standard one is version 4.0.0.0

46

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

6.8 COPY ONLY THE DATA IN THE LIST RESULTS

Now, by default, only the data part of the cell are copied to the clipboard when we do a CTRL+C.

Note: In the standard version, the header was copied along with the data.

This previous functionality can still be, you can right click and choose “Copy with header”

6.9 IMPROVEMENT OF SCREEN “EXECUTE SMARTOBJECT” AND LINKED “FILTER”

Now it's possible to simulate the click on button "Execute" by the combination of keys ALT+E.

For the List Methods, the “Filter” and the “Order by” text boxes have a tool tip to display the full content:

These text boxes are now in read only mode. The scroll bar in these text boxes are now never displayed.

47

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

When you click on "Set" button near "Filter" the following improvement have been done on this screen:

- Add button "Clear only filter": It's the same of the "Clear All" but without the clear of the
Properties.
- The results are now in read only mode. The aim is to not try to update them.
- You can use combination of ALT+A to simulate the click on the "Add" button.
- Experience has been improved when you use the TAB key (Change of tab index).
- In the very top of this screen “Clear Alll” wording has been changed to “Clear All”.

48

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7 OTHER FEATURES SINCE VERSION 4.2.0.X


7.1 ALL SMARTOBJECT - SERVICE - TESTER++ FUNCTIONALITIES ARE NOW IN GREEN

In order to help user that will not read this documentation, we highlight all new behaviours of the
“SmartObject - Service - Tester++” (Compared with the standard one) in green:

7.2 INTEGRATION OF LAST STANDARD CHANGES IN K2 FIVE

Integration of the current improvement done between the standard SmartObject - Service - Tester 4.6.11
and SmartObject - Service - Tester of K2 Five (maybe 4.7):

In the form "Execute SmartObject":

 Now the default "View Execution type" (Accessible for list method with "View" menu) is
"SmartObject Reader" (seems to have an impact on management of paging: using
ExecuteListReaderOptions).

 Some update about the total number of records according paging and "View Execution type".
 During the initialisation of this form, display now in the status (in bottom), the Time to get the
SmartObject: "GetSmartObject Time:"

During create/update of Service Instance: Improvement of the error message in case of


AuthenticationException: New messages displayed: "Redirecting for Authorization. Retry after successful
authorization." or "The OAuth Authorization endpoint is invalid."

When right click and choose "Edit Service Instance": the title of the windows was "Add Service Instance".
Now it's fixed with "Edit Service Instance"

During display of categories: fix potential issue if the category is not found.

49

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

In different forms, change wording of message "OAuth Authoization Required"


by "OAuth Authorization Required”.

7.3 DISPLAY THE CONNECTED USER IN THE MAIN STATUS BAR

7.4 ALLOW TO EXPAND NODES WITH KEYBOARD

Now, you can expand the nodes of the main tree view to display details of the node with the right key.

In the standard version, you have no item loaded in this case.

7.5 REVIEW WORDINGS FOR SERVICE TYPE, SERVICE INSTANCE AND SMARTOBJECT

Modification done in all screen of the SmartObject - Service - Tester++:

The wording “ServiceType” has been homogenised by “Service Type” (With space and T in upper case).

The wording “ServiceInstance” has been homogenised by “Service Instance” (With space and I in upper
case).

Standard: SmartObject - Service - Tester++

The wording “SmartObject” has been homogenised by “SmartObject” (With space and O in upper case).

Standard: SmartObject - Service - Tester++

The wording “ServiceObject” has been homogenised by “ServiceObject” (With space and O in upper
case).

Standard: SmartObject - Service - Tester++

50

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.6 SMARTOBJECT SERVER PROPERTIES: MANAGE THE DISPLAY NAME OF THE SERVER

You can fill a friendly name for the Server: It will be used in the right bottom corner:

7.7 REGISTER SERVICE TYPE

7.7.1 ADD CHECKBOX TO DISPLAY DIRECTLY “RESISTER SERVICE INSTANCE”


WINDOWS

Generally, after the creation of Service Type, we create a corresponding Service Instance. If you let the
checkbox “Open “Register Service Instance” windows” ticked, this windows will be opened.

7.7.2 DISPLAY BY DEFAULT ONLY NOT USED SERVICE TYPE


We do this because generally we don’t use several time a Service Type. You can see all types if needed
by tick of the checkbox “Display only non-existing Service Type”.

7.7.3 FIX ISSUE WHEN CREATING THE SERVICE TYPE (SYSTEM NAME)
When you created a Service Type, the system name was took from the Display name text box, not the
System name text box.

7.7.4 IMPROVEMENT OF THE SERVICE INSTANCE INFORMATION SCREEN IN CASE OF


UPDATE MODE
When we edit a Service Instance, we disable the Guid.
We renamed too the title of the screen to “Update Service Instance” and rename “SeviceInstance
information” to “Service Instance information”.
51

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.8 REFRESH SERVICE TYPE: CHANGE WORDING

Fix display issue: When we want to refresh the Service Type, the title was "Delete Service Type".
It’s replaced by "Refresh Service Type".

Standard screen:

7.9 REGISTER SERVICE INSTANCE

7.9.1 ALLOW TO SETUP THE DEFAULT AUTHENTICATION MODE


Add the possibility to setup the default Authentication Mode for all Service Types (used during "Register
Service Instance").

In the menu Tools/Settings:

Note: with SmartObject - Service -Tester standard (and when there are no “Default Authentication mode”
in the Setting menu), the brokers could be defined by default as ServiceAccount by adding the code

this.Service.ServiceConfiguration.ServiceAuthentication.Impersonate = false;

in the procedure “GetConfigSection”:

52

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.9.2 EDIT SERVICE INSTANCE: ADD BUTTON “UPDATE”


When we simply update the Service Instance, it’s now not needed to click on the “Next” button that
display another popup for name and display name:

7.9.3 EDIT SERVICE INSTANCE: ADD THE CURRENT SERVICE INSTANCE IN THE MAIN
TITLE

7.9.4 ADD MESSAGE IN ORDER TO AVOID THE MANIPULATION OF SHAREPOINT


SERVICE INSTANCES
Don't allow to create, refresh, or update of Service Instance SharePoint 2013 with the following message:

"Warning: It's not allowed to update Service Instance of SharePoint 2013.

See article
https://help.k2.com/onlinehelp/k2forsharepoint/userguide/1.0.1/default.htm#Build_Integrate/The_SharePo
int_2013_Service_Brokers/The_SharePoint_2013_Service_Brokers.htm:

Manually registering a Service Instance of the SharePoint Broker is also not supported. Any instances of
the SharePoint 2013 service broker must be generated using the K2 for SharePoint App Registration
Wizard"

53

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.9.5 ADD CHECK BEFORE REFRESH


Add check of linked SmartObject before Refresh Service type/Service instance, Edit Service instance.

Example:

Now this windows will appear (Need SQL connection in Server Properties):

This check is important in order to be sure that the user will check if the refresh of a Service instance
won’t break a SmartObject used in another project. For example, a column removed/renamed from a
SQL Table: Check all linked SmartObject before apply it.

54

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.10 CREATE SMARTOBJECT

7.10.1 RENAME THE TITLE “PUBLISH SMARTOBJECT” TO “CREATE SMARTOBJECT”


Standard:

SmartObject - Service - Tester++:

7.10.2 DISPLAY EXECUTION TIME FOR SEARCH SMARTOBJECTS


In the screen “Create SmartObject”, it could be long to search all SmartObjects linked to the current
ServiceObject. We now display the execution time, displayed in the bottom of the screen:

As you can see, if you know that it’s long to search SmartObjects for the select ServiceObject, you can
avoid to do this search by pressing the shift key when you click on “Create SmartObject”.

55

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.10.3 IMPROVEMENT OF MANAGEMENT OF PROPERTIES


- Improve management of size of columns: adapted to the text.
- Allow to sort the properties.
- Allow to select several properties and do a delete of them.

For sort

7.10.4 IN SMARTOBJECT EXPLORER, METHOD PART, ADD QUICK ACCESS FOR


COMPARISON WITH SERVICEOBJECT
When you are in a method of a SmartObject, if you expand the service instance and right click on the
ServiceObject, you will see “Create SmartObject (mainly for compare it with the ServiceObject)”.

This action will display the screen “Create SmartObject” with by default the current SmartObject selected
and with tab “Comparison with existing Smo information” selected:

56

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

It could be useful too when you are in section “All SmartObjects” and you want to know in which category
is it.

7.10.5 IMPROVE ERROR MESSAGE WHEN IT’S IMPOSSIBLE TO CREATE/UPDATE/DELETE


SMARTOBJECT
Improve error message if the connected user not have the right to create/import/publish/delete
SmartObjects:
Original error: “{UserFQN} does not have Security rights on the {SmOName}”

For K2 Five:

Warning: It seems that you have not the right to xxx SmartObjects
Please verify it in K2 Management > Integration > SmartObjects Security

For version before K2 Five:

Warning: It seems that you have not the right to xxx SmartObjects
Please verify it in workspace > Management Console > SmartObjects > Security > SmartObjects
Administration

57

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.11 EXECUTE SMARTOBJECT

7.11.1 ALLOW TO EXPORT QUICKLY FILES


When the result of the execution of the SmartObject contains a cell with type “File”
(Type SourceCode.SmartObjects.Services.ServiceSDK.Objects.FileProperty), it’s now possible to save it,
and too save and open.

The default path could be setup in the menu Tools/Settings:

58

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.11.2 ALLOW TO CHANGE COLUMN WIDTH


For method with type “List”, allow to change width of column in the result table. To do it, you just need to
tick the checkbox “Allow column resize”. Above “Order by”.

It’s possible to manage this value as default in the menu Tools/Settings:

Warning, if you have a lot of columns, you could have response time issue for this management.
This time is displayed:

7.11.3 IMPROVE DISPLAY IN CASE OF LONG PROPERTIES


If the properties names have an important number of characters, the text boxes was not displayed. Now,
in this case, we increase the width of the form.

7.11.4 HIGHLIGHT WHEN THE MANDATORY PROPERTIES ARE MISSED


The back colour of field is coloured if required but not filled:

7.11.5 DISPLAY THE START TIME OF THE EXECUTION


When you execute a SmartObject, the start time is displayed in the bottom of the windows “Execute
SmartObject”:

It could be useful when the execution took more than few seconds.

59

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.11.6 DISPLAY THE EXECUTION TIME FOR PRE AND POST EXECUTION
When we have a lot of properties in input or output, the execute SmartObject screen could be long to do
the pre-execution (check mandatory fields) and post execution (Display all properties and create all
necessary tabs).

If the execution time of this pre and post execution take more than 0.5seconds, we display the effective
time needed:

7.11.7 ADD SHORTCUT TO GENERATE DATA QUICKLY

Add short cut to call "Generate Data" and "Clear" buttons: ALT+G and ALT+C.

Like this, if you want to generate a lot of record quickly, you just need to press "ALT+G" and "ALT+E"
(Execute: see Improvement of screen “Execute SmartObject” and linked “Filter”) alternatively.

60

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.11.8 FIX ISSUE OF GENERATE DATA


Fix issue to generate Date field (no issue with DateTime): There was issue "Failed to convert parameter
value from String to DateTime" if day was greater than 12: 6/26/1979 instead of 26/6/1979 (in our case
the K2 Service account had a windows date format set to dd/mm/yyyy)

We replace the format by yyyy-mm-dd. Example: 1979-6-26

7.11.9 ADD BUTTON GENERATE MANDATORY DATA


You can now click on button “Generate Mandatory Data” in order to generate random data but only for
mandatory fields.

7.11.10 ADD BUTTON “COUNT ADO”


Before click on “Execute”, we can now simply click on “Count ADO” in order to just do the count the
number of records: it will be generally quicker than the Execute.

61

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.12 IMPORT SMARTOBJECTS

7.12.1 CHANGE DEFAULT EXTENSION IMPORT


By default we see now the sodx and publish files :

SmartObject Publish file(*.publish) and SmartObject File(*.sodx):

7.12.2 OTHER LITTLE IMPROVEMENTS


Improve standard part: If Guid is not correct, not allow to click on exit.

In case of existing Guid and System Name, if we modify the GUID the system force the user to modify
the System name, if we modify the System Name, force the user to modify the Guid.

Fix issue if export file contains category in double:


Example:
Default\Default instead of Default
DefaultCat\DefaultCat instead of DefaultCat

Even if all is correct keep word "Edit" in the edit button (Not let it blank).

Standard:

62

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.13 SEARCH SMARTOBJECTS

7.13.1 QUICK ACCESS TO SMARTOBJECTS LINKED TO THE CURRENT SMARTOBJECT


When you right click on a SmartObject, you can now click on “Display SmartObjects details”:

This behaviour allow you to know to quickly who create/modified the SmartObject and at which date:

Note: If you click on the tab “Service Instance”, you will have as default the first Service Instance used by
the first method of the SmartObject.

7.13.2 QUICK ACCESS TO SMARTOBJECTS LINKED TO THE CURRENT SERVICE


INSTANCE
When you right click on a Service Instance, you can now click on “Search all linked SmartObjects”:

You will have directly access to the “Search SmartObjects” tool with the good parameter:

7.13.3 CHANGE THE PLACE OF THE BUTTON IN THE MENU


In the menu bar, inverse "Register Service Instance" and "Search SmartObjects" because generally we
do the "Register Service Instance" with right click on the Service Type and the "Search SmartObjects" is
a useful functionality not easy to access.

63

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

7.13.4 THE WIDTH OF THE DROP LIST “SERVICE INSTANCE” HAS BEEN INCREASED
Current:

Before:

64

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8 OTHER FEATURES SINCE VERSION 5.0.0.X


8.1 INTEGRATION OF LAST STANDARD CHANGES IN K2 FIVE

Include changes done in SmoST standard between 5.0 and 5.3:

Removed action "Remove SmartObject From Category" and "Remove SmartObjects From Category" (All
smo)

Execution of SmartObject with type "SmartObjectReader" (it's the default one): simplify the call.

Part "Order by" of execution of SmartObject: replace wording "Clear Alll" by "Clear All". (Already fixed in
SmoST++ for filter)

Refresh Service type, Refresh Service instance: forbid these action if its a System one (detected by
guid):

This system service instance is locked and cannot be refreshed

This system service type is locked and cannot be refreshed

For system "Update Service instance" add Warning: For compatibility reason we can't call
'UpdateServiceInstanceSettings' for system Service Instances with the SmartObject Service Tester++
Please do it with the standard SmartObject Service Tester"

This method 'UpdateServiceInstanceSettings' is only available from 5.3. In order to keep only one file for
version K2 Five, we didn’t call it with the SmartObject Service tester++.

List of Service Instance: List of Service types:

Account Management Service CRM 4 Entity


Active Directory Service2 CRM 4 Functions
K2 Generic Settings Service Deployment Service
K2 Management K2 Generic Settings Service
K2 Workspace K2 Management
PDF Converter K2 Workspace
SharePoint Integration Licensing Service
SharePoint User Functions Service MobileServiceBroker
SmartBox Service PDF Converter
SmartObject Service Functions SharePoint 2013
Task Allocation Service SharePoint 2013 Integration
URM Service SharePoint Functions
Workflow Reporting Service SmartBox Service
Workflow Service SmartObject Service Functions
Task Allocation Service
User Role Manager Service
Workflow Reporting
Workflow Service
8.2 SMARTOBJECT SERVER PROPERTIES

8.2.1 ALLOW TO FILL THE SQL SERVER NAME AND DATABASE FOR K2 FIVE
In K2 Version 4.x, it was possible to get the SQL server name from SmartBroker service instance
parameter. Since K2 Five, this value is protected. We need to fill manually this information now:
65

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

By default the system take the values from file c:\Program Files (x86)\K2 blackpearl\Host
Server\Bin\K2Server.setup

8.2.2 ADD CONNECTION TEST


This improvement is to allow to test a very simple connection to K2 server.

In K2 Version 4.x, it was possible to get the SQL server name from SmartBroker service instance

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.3 SETTING PAGE: PART NAMING CONVENTION, BY DEFAULT DISPLAY THE CURRENT
SERVICE OBJECT SELECTED

8.4 REGISTER SERVICE TYPE

8.4.1 ADD RIGHT CLICK ON "SERVICEOBJECT EXPLORER" NODE FOR "REGISTER


SERVICE TYPE"

8.4.2 REVIEW WORDING FOR REFRESH SERVICE TYPE


Review wording from
"Do you want to refresh the Service Type 'xx'?"
to
"Do you want to refresh all Service Instances of this Service Type 'xx'?"

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.5 REGISTER/EDIT SERVICE INSTANCE

8.5.1 IN A PARTICULAR CASE, DISPLAY "GENERATE KEY" IN THE SERVICE INSTANCE


PARAMETER
Currently it’s hard coded for K2Field.DynamicSmo:

8.5.2 ADD HELP MESSAGE


In case of a new service instance parameter has been added but not set, add an help message in the
error message when we get an error during refresh of service instance: "Please try an Edit of the Service
Instance.”

8.5.3 ALLOW TO SELECT SYSTEM NAME AND GUID


Allow to copy the GUID and SystemName (The text box was not Enabled)

8.5.4 IMPROVE ERROR MESSAGE IN CASE OF MISSING DEPENDANT DLL


Improve error message if we try to register service instance with a missing dependent dlls.

Tested with "K2Field.DocxXmlTemplater.Templater"

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

Example:

Before:

"
Issue: "SmartObject Server Exception: Exception has been thrown by the target of an invocation.
Source : SourceCode.SmartObjects.Services.Management.
Inner Exception : Exception has been thrown by the target of an invocation.
Source : SourceCode.HostServerLib
"

Now:
"
SmartObject Server Exception: Exception has been thrown by the target of an invocation.
Source : SourceCode.SmartObjects.Services.Management
Inner Exception : Exception has been thrown by the target of an invocation.
Source : SourceCode.HostServerLib
Inner Exception : Could not load file or assembly 'DocumentFormat.OpenXml, Version=2.8.1.0,
Culture=neutral, PublicKeyToken=8fb06cb64d019a17' or one of its dependencies. The system cannot
find the file specified.
Source : K2Field.DocxXmlTemplater
Issue linked to 'DocumentFormat.OpenXml':
Please verify if the 'Open XML SDK 2.5 for Microsoft Office' is installed
"

8.6 CREATE SMARTOBJECT

8.6.1 IMPROVE MESSAGE IN CASE OF ERROR


If an error occurs during publish of and Smo add this:

You can too have this error if you are trying to change the category of the SmartObject and you don't
have the role "Security Administrator" (In K2 Management > Users > Roles)

8.7 EXECUTE SMARTOBJECT

8.7.1 EXECUTE CLIENT METHOD: REMOVE THE SPACE AFTER AND BEFORE THE
PROPERTY TYPE
Example:

Replace "Process Name ( Text )" by "Process Name (Text)".

8.7.2 ADAPT WIDTH OF THE FORM


Increase the width of the form if at least one input property or parameter have a very long display name:
Do this increase when we change the method (It was done previously at the form load).

8.7.3 CHANGE THE DISPLAY NAME OF THE METHODS OF THE STANDARD SMO UMUSER
Get Users: This method returns values from direct security provider (Active directory for K2 Label).

Get User Details: This method returns values from K2 'Cache' table Identity.Identity.

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.7.4 IN TITLE, DISPLAY THE SYSTEM NAME IF NOT SAME OF THE DISPLAY NAME

8.7.5 NEW TAB RESULT FOR HTML DATA


Display a tab "Html" with the html content if the content start with "html".

8.7.6 IMPROVE DEFAULT TAB RESULT DISPLAYED


For all tabs added: if only one property is returned (And correspond to the type linked to the tab) display
the WebBrowser tab instead of the simple first tab by default.

8.7.7 IMPROVE WARNING IN CASE OF ERROR WITH A SERVICE TYPE LINKED TO


DOCUMENTFORMAT.OPENXML
During execution of SmartObject: Add warning only if "DocumentFormat.OpenXml" is in the error of Smo
Execution:

Issue linked to 'DocumentFormat.OpenXml':

Please verify if the 'Open XML SDK 2.5 for Microsoft Office' is installed"

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.7.8 FIX ISSUE OF DISPLAY OF PDF FILE WHEN ACROBAT READER IS INSTALLED
When Acrobat Reader is installed we had an issue trying to display the pdf in the control WebBrowser

See this article: Using the AcroPDF.dll within the Microsoft WebBrowser control is unsupported

https://helpx.adobe.com/acrobat/kb/using-acropdf-dll-within-microsoft.html

Now we avoid the use of WebBrowser control and then open directly the PDF files.

8.7.9 RENAME "CREATE SMARTOBJECT" BY "CREATE OR UPDATE SMARTOBJECT"

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.8 MOVE SMARTOBJECT TO A CATEGORY

Add right click on any SmartObject, "Move SmartObject to a category" in order to copy it even if the
destination category is not easily accessible.

Typical example: SmartObject in end of "All SmartObjects" to copy in category default.

Procedure:

1) Click on the destination category

2) Right click on the destination category and choose "Move SmartObject to category".

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.9 IMPROVE NAVIGABILITY

8.9.1 JUMP QUICKLY TO SERVICE OBJECT


In SmartObjects nodes, sub nodes methods, service instance, service right: Add right click "Jump to
service object node" near "Create SmartObject (mainly for found Smo Path or compare it with the
ServiceObject)".

8.9.2 DISPLAY THE NUMBER OF OBJECT IN CATEGORIES

Add a setting for this in menu Tools/Settings:

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.10 IMPROVEMENT OF THE PREVIOUS VERSION OF SMOST++

TransformSmartObjectLogToUrl: Add button "Open K2HostServer.exe.config" and checkbox “Remove


recurring SmartObjects calls”:

Fix issue of several "Execute SmartObject" windows displayed when we navigate to combo of Favorite
URLs with keyboard.

Change UMUSER path from "All SmartObject" to "System\Management\UserManagement\SmartObjects"

Add the Icon SmartObjectService Tester++ in all the specific tools

Rename "Create SmartObject (mainly for compare it with the ServiceObject)" to "Create SmartObject
(mainly for compare it with the ServiceObject or found other SmOs)"

In several part of the application, improve the display of the execution time: 1 second, 2 seconds (with s).

8.11 FIX OF THE PREVIOUS VERSION OF SMOST++

Display in bold if the path is not correct (Before it was put correctly in bold only if the path didn't contains -
E or -EE)

Fix wording of Setting/Description of the first row in "Table for naming convention of SmartObjects":

"Ogininal name (allowing to selected it in combo)"


to
"Original name (allowing to selected it in combo)"

8.12 FIX STANDARD VERSION OF SMARTOBJECT SERVICE TESTER

8.12.1 FIX ISSUE WITH HOUR WITHOUT DATA IN SMARTOBJECT EXECUTION


Fix standard Smo Service tester issue if we only fill hour without date in the input property: Error
displayed (Normal): Exception thrown: 'System.ArgumentOutOfRangeException' in
System.Windows.Forms.dll

Additional information: Value of '01/01/0001 15:24:39' is not valid for 'Value'. 'Value' should be between
'MinDate' and 'MaxDate'.

But after, the windows was completely disabled

Now the windows is available.

10

© 2019 K2 FRANCE
K2 France - SmartObject - Service - Tester ++ - Release Note

8.12.2 REGISTER SERVICE INSTANCE, PASSWORD SET AS NO AVAILABLE WHEN IT’S


NECESSARY
Not allow to fill Password if authentication is Service account or impersonate (Before it was possible to fill
it).

11

© 2019 K2 FRANCE

You might also like