K2BTools 12.1 - Release Notes

This version is compatible wtih:

  • K2BTools 12.1.0 => GeneXus 16 U5
  • K2BTools 12.1.1 => GeneXus 16 U6, GeneXus 16 U7.
  • K2BTools 12.1.2 => GeneXus 16 U6, GeneXus 16 U7, GeneXus 16 U8


In K2BTools 12.1 we worked on improving the UX of applications created with K2BTools, adding more components to the Orion design system and creating new modules that can be integrated easily in applications created using K2BTools.

We also worked on improving the performance when using the GeneXus IDE. We did this by optimizing parts of our code, and by adding support for the parallel pattern instance application introduced in GeneXus 15 U5.

See more details below :)

Notifications and Collaboration module

Modern applications frequently include notification and collaboration features to enhance the experience of using the application.


In many scenarios, users need to be notified about the occurrence of several events in the application. For example, in a purchasing application, the user may wish to be notified when a purchase order is approved, or when a product is received.

These events can be notified by several delivery media, for example: Web Notifications, E-Mail, Push Notifications, Messaging apps.

The “Notifications and Collaboration” module, handles the creation and delivery of notifications via Web Notifications and E-Mail.

It provides APIs that can be used to trigger events in the application’s logic. Also, the module allows end users to subscribe to the event types that they find relevant and to select which delivery media should be used in each case.

Notifications web component


Many times users need to have conversations about the system’s data or features. For example, a user may be waiting for someone else to authorize an action or to enter data in an entity.

This may lead to emails exchanged between users to coordinate and talk about data that is already in the system.

Using the collaboration features included in this module, users can interact with one another without leaving the app, tagging others and having conversations to help them perform their tasks.

Collaboration UI

See more in Notifications and Collaboration module.

Popover control - Entity summary

There are many scenarios in which the user needs to see additional information that will help in completing a task. As this is secondary information, it should be shown in the same UI where the user is completing the task. Popovers can help solve this problem, allowing the user to see the secondary information only when necessary.

Popover in a Workwith

K2BTools also allows defining an EntitySummary panel for each Entity. After doing this,the panel will be shown in a Popover in all pattern-generated UIs referencing the transaction’s description attribute.

PopoverCreateSummaryAction PopoverDynamicLayoutSelection
Creating a EntitySummary node. Selection of the Dynamic Layout of the Popover panel

For more information see Popover windows.

New dynamic layouts

In this version we added several new Dynamic Layouts to the Orion Design System. These layouts can be used to create beautiful user interfaces very quickly.

Some of these layouts are shown below.

New dynamic layouts

Date range picker

The date range picker control is another option for the Date Range Filter user interface. Using this option, the end user is given a unified control to enter both the “From” and “To” values, where:

  1. The current selection is highlighted.

  2. Two months are shown, to simplify the selection of ranges starting in one month and finishing in the next one.

The UI for this control is shown below:

Date range filters

To use this control on a Date Range Filter, the filter’s “Manual Input Type” property must be set to “One Field”.

Collapsible menu

The collapsible menu is a menu shown on the left side of the screen. It is very similar to the Accordion Menu implemented by default when using K2BTools.

The main difference is the behaviour of the menu when the user collapses it. Instead of disappearing completely, the menu is shrunk and the contents of the menu are shown when the user hovers each item, as shown below:

Collapsible menu

This menu can be selected using the “Design System Configuration” wizard.

More than one grid view for WW objects

Work With objects are used in many scenarios. Depending on the scenario, the end user may prefer a certain visualization over another. K2BTools supports showing the grid in two ways: as a standard GeneXus grid, or as a grid based on a dynamic layout.

As of K2BTools 12.1, the developer can choose to include both options in a Work With object, and let the end user choose the visualization in runtime. This works as shown below.

Secondary Grid View

To include more than one visualization, use the “Add Secondary Grid View” action in the Work With node.

Add Secondary Grid View action

Improved usability in GeneXus IDE

We improved several aspects of working with K2BTools in the GeneXus IDE. Some of these features are:

  • It is now simpler to delete attributes belonging to a FK from a transaction.

  • Orders are no longer generated for GUID columns.

We also improved K2BTools’ overall performance by adapting it to take advantage of the parallel pattern application feature included in GeneXus. Other performance improvements were also made.

Improvements in GAM integration module

The GAM integration module was improved in this version, to include these features:

Translation: Internationalization for this module was improved, and is now provided in Spanish, English, and Portuguese.

Interoperability: The module now supports all the remote authentication types supported by GAM, both as a provider and as a consumer.

Accessibility with labels on top

Accessibility is essential for developers and organizations that want to create high quality websites and web tools, and not exclude people from using their products and services (taken from this page).

K2BTools is constantly improving the generated code for accessibility purposes. One accessibility criteria is the 3.3.2 in which requires that all input fields must have a label associated with it.

The only way to accomplish this criteria in GeneXus is using the variable/attribute control that includes both description and field. In this version we changed the way the fields with descriptions on top were generated to meet this criteria.

This could have side effects in the application, as some errors may arise in code written manually. To fix this problem please read Compatibility Issues in K2BTools 12.1.


  • ToString is now used instead of ToFormattedString when saving the state for numeric range filters.

  • When using transactions defined in modules, the export option did not process the runtime column selection properly.

  • The Responsive Theme property could not be set in the General Settings object.

  • Some strings were treated as translatable when they shouldn’t.

  • Orders were generated for GUID columns in K2BPrompt.

  • WPD: The preview option was not refreshed when the panel is updated.

  • WPD: The return value parameter of DataProviders were not processed correctly in GeneXus Server.

  • WPD: Actions with confirmation inside a grid were not generated properly.

  • Application UI:

    • Issues with the switch control have been solved.

    • Some tooltips were not shown completely.

    • “Check all” checkboxes were broken when using U4 or later.

    • Combo actions in SubWorkWith interfaces were not shown properly.

    • Master Pages with Flex Grow were not working properly after updating to U5.

    • Flat Compact: Required fields were not marked as they should.

    • Password fields with Enable Show Password set to True were not shown properly.

    • The prompt image was not set correctly for the Orion theme.

    • Action visibility when not using Smooth user experience was not determined correctly.

Installation steps

Note: K2BTools 12.1 is compatible with GX16 U5. For previous versions of GeneXus use K2BTools 12.0.

  1. Install K2BTools using the setup file downloaded in GeneXus Marketplace.
  2. If K2BTools licenses are not installed, install licenses as described in Requesting K2BTools licenses
  3. If K2BTools licenses are installed but the version is lower than 12, upgrade the licenses as described in Upgrading K2BTools licenses
  4. Open GeneXus.
  5. To upgrade a Knowledge Base to K2BTools 12:
    1. Open the Knowledge Base
    2. In the GeneXus Development Environment Menu Bar, select K2BTools ->Reapply K2BTools and Build.
    3. Once this process have finished, you are ready to enjoy the new features of K2BTools 12.
  6. In any doubt contact support team: support@k2btools.com

Minor updates

  • Compatibility with GX16 U6.

  • "Theme settings node not found" error message when applying K2BEntityServices patterns. (fixed)
  • Message "Error validating Layout:WebPanelDesignerLayout. TextBlock with control name Title element not found in layout object." when using WebFormDefault in Previous Version Compatible (fixed)
  • Error "ExecuteReader requires the command to have a transaction " when committing to GXServer (fixed)
  • Control names of LineSeparators elements are not set when WebFormDefaults is in "Previous Version Compatible" (fixed)
  • Control name of table containing pagging options is not set when WebFormDefaults is in "Previous Version Compatible" (fixed)
  • Error message "Error reading from export file sdt K2BAttributeValue.K2BAttributeValueItem invalid value for property 'AttCustomType' when importing an xpz from a version lower than 12.1. (fixed)

Multiple instances of K2BTools for GX16 ?

You can download the files, and copy them, in the GeneXus root directory or the GeneXusServer instance. After that peform a GeneXus.exe /install in the command line in case of a IDE installation, or restart applicaiton pool in case of installing in GXServer.