Release date: Wednesday, June 3, 2020
A very important optimization was done in the implementation of Title Filters and Title Sorting, decreasing substantially the number of User Controls added in the Form. WorkWithPlus unified all the User Controls that were added for each column that had Title Filters or sorting, into only one User Control. This significantly reduces the size of the cs/java and js file (over 50% in most cases), which directly impacts the build time and performance of those Web Panels.
You can visualize some metrics of the optimization below:
List with 24 columns |
Including Title Filter and Sorting |
Including only Sorting |
GeneXus code lines added by WorkWithPlus in the events |
54% fewer |
57% fewer |
Javascript file generated by GeneXus |
76% smaller |
84% smaller |
Java /.cs file generated by GeneXus |
60% smaller |
69% smaller |
List with 10 columns |
Including Title Filter and Sorting |
Including only Sorting |
GeneXus code lines added by WorkWithPlus in the events |
38% fewer |
35% fewer |
Javascript file generated by GeneXus |
58% smaller |
63% smaller |
Java /.cs file generated by GeneXus |
43% smaller |
45% smaller |
List with 5 columns |
Including Title Filter and Sorting |
Including only Sorting |
GeneXus code lines added by WorkWithPlus in the events |
24% fewer |
20% fewer |
Javascript file generated by GeneXus |
43% smaller |
40% smaller |
Java /.cs file generated by GeneXus |
30% smaller |
26% smaller |
In order to have this new implementation of Title Filters and sorting, you have to perform the following steps:
- Import the XML named 'Optimization8File.xml' located in <GeneXus_Installation>\Packages\Patterns\WorkWithPlus\Resources
- Set the property 'Optimization Number' as 8 or higher. This property is located in WorkWithPlus Settings -> Template node.
- After setting 'Optimization Number' as 8, when saving the WorkWithPlus Settings, you should select the following option, in order to update every instance with the new optimization:
Comment: If you have the following errors when applying, you should import the XML named 'ObjectsToImportVersion13.xml' located in <GeneXus_Installation>\Packages\Patterns\WorkWithPlus\Resources:
When adding a 'Section' node in an instance, instead of adding an HTML control, it will add a 'Section' control in Abstract Layout. In order to have this new behavior for 'Section' node, the property 'Optimization Number' within WorkWithPlus Settings -> Template node has to have value 8 or higher.
The value '8' was added for the property 'Optimization Number' within WorkWithPlus Settings -> Template node. If you set this value, you will get the following optimizations:
- Use only one User Control for all the Title Filter and Sorting of the columns of the grids (detailed above with the metrics)
- When adding a 'Section' node, WorkWithPlus will insert in the form a 'Section' control in Abstract Layout (also detailed above).
Before setting 'Optimization Number' as 8, you need to import the XML named 'Optimization8File.xml' located in <GeneXus_Installation>\Packages\Patterns\WorkWithPlus\Resources
A new property was added for ´Table' node. Applies for 'Regular' tables, 'Responsive' tables, and ´Flex´ controls. This property gives the option to assign specific properties to the control, properties that are not available within the Table/Flex node. This should be used in just a few cases. Detailed info: Custom Properties
When adding a User Zone (UserTable node), a new option for 'Type' property was added. This option is 'Section' and will insert a 'Section' control in the Form, as a User Zone.
From WorkWithPlus 13.15 onwards, the version of Fontawesome that will be used when selecting the User Control 'WorkWithPlusUtilities_F5' 5 is 5.13.
When using Columns Selector as a popup instead of a dropdown, the variable named Window was not being defined by WorkWithPlus.
WorkWithPlus is now compatible with the latest GeneXus Beta version released up to the moment, and also is compatible with GeneXus 16 U10.
When you had a Web Component based on a List template, WorkWithPlus automatically changed the property 'Integrated Security Level' to None, but it didn't change that property to the Procedure associated with the dynamic lists in the Title Filter.
From this version onwards, the Pagination Bar will be outside the scroll of the grid, when the grid contains a horizontal scroll
If you already have a KB with WorkWithPlus and you want to have the Pagination Bar outside the scroll of the grid, you need to add the following classes to the Theme object:
- Rename the class SectionGrid>div,.SectionGrid>div.Table to: SectionGrid>div:not(.gx-grid),.SectionGrid>div.Table
- Remove property from renamed class:
- Add the class SectionGrid>div>div>div>div.gx-grid, .SectionGrid>div.gx-grid with the properties:
- Add the following property in the class: ColumnSettingsContainer:
If the Grid style of your application has borders that surround the grid (like the following image)
- In the class mentioned above (SectionGrid>div>div>div>div.gx-grid, .SectionGrid>div.gx-grid) also add:
- Border left color: GridLineColor
- Border right color: GridLineColor
- Custom Css Properties: border-left-style: solid;border-left-width: 1px;border-right-style: solid;border-right-width: 1px;
- Add the class SectionGrid>div>div>div>div.gx-grid>.WorkWith, .SectionGrid>div.gx-grid>.WorkWith (only if it is one of the grids mentioned above) with the property:
- Custom Css Properties: border-left-style: none;border-right-style: none;
- Rename the class SectionGrid .gx-grid, .SectionGrid div.Section to: SectionGrid>div>div>div>div.gx-grid, .SectionGrid div.Section (only if it is one of the grids mentioned above)
When creating a Web Panel or Transaction based on the templates 'TransactionBulletWizard' or 'TransactionArrowWizards', and adding user code to hide a step, the numbers of the steps changed after clicking in Next button, so they were inconsistent with the first load of the steps.
In order to hide a tab and have a correct behavior of Next and Previous button, you need to add user code in the events associated with Next and Previous, like the following sample:
Start or Refresh Event:
If <CONDITION_TO_HIDE_TAB>
GXUITabsPanel_Steps.HideTab(<TAB_NUMBER_TO_HIDE>)
Endif
'WizardNext' Event (at the bottom of the code generated automatically by WorkWithPlus):
If <CONDITION_TO_HIDE_TAB> and &TabsActivePage = <TAB_NUMBER_TO_HIDE>
&TabsActivePage += 1
GXUITabsPanel_Steps.SelectTab(&TabsActivePage)
EndIf
'WizardPrevious' Event (at the bottom of the code generated automatically by WorkWithPlus):
If <CONDITION_TO_HIDE_TAB> and &TabsActivePage = <TAB_NUMBER_TO_HIDE>
&TabsActivePage -= 1
GXUITabsPanel_Steps.SelectTab(&TabsActivePage)
EndIf
A new property named 'Empty Grid Caption' was added for 'Subor level' nodes in transaction templates. This property specifies the caption to display in the grids when they don't have records to display. It only applies when the template is used in Web Panels.
When having a grid with edit in line, and one of the columns with Tags and multiple selection in the Title Filter, the filter of the column does not appear.
From this version onwards, the search inside the DVelop Combo control will search the words with or without accents
When having a foreign key attribute displayed as DVelop Combo, the inferred attributes were not being updated when changing the value of the control
When having a foreign key attribute displayed as DVelop Combo, and clicking in the 'New' option in order to create a new record and select it, the inferred attributes were not being updated when creating the new record.
When having a Transaction named 'Item', with GXTest enabled and the Standard Action 'Copy record' included in the instance, it threw an error when applying the pattern.
After changing the name of the user that is displayed at the top of the vertical menu (for example in the GAM backend), the menu didn't reflect the change until you made Refresh of the browser.
When having a grid with the option to group the records by different columns, and also an action with multi-row selection, the grouping didn't work properly.
When displaying a horizontal menu in an extra small browser and one of the submenus had multiple options, no scroll was added, so some options were not visible.
When adding a filter with dynamic operators inside a Flex container, the description of the filter was not being displayed.
Issue with the property 'Merge with previous' in controls inside a Flex container.
When setting the property 'Merge with previous cell' as true to some control inside a Flex container, the controls were not being merged into one cell.
When making logout from Master Page in order to log in with another user, WorkWithPlus changed the code so that it navigates to the 'Home object' of the application (set in GAM backend settings). If this property is not set, it will navigate to the Home object.
After setting the credentials and clicking in the Login button, WorkWithPlus changed the code so that if it wasn't referred from a page of the application it navigates to the 'Home object' of the application (set in GAM backend settings). If this property is not set, it will navigate to the Home object.
Using GeneXus 16 U9 with WorkWithPlus, there were some cases were when after making 'Apply instance' it saved the object (when there were no changes to impact). This was improved so that after applying instance to an instance that didn't suffer changes, the object is not modified (the result of applying instance is 'skipped' to all associated objects).
An esthetic issue was solved for templates 'Simple Cards', 'Cards with small image', and 'Cards with big image'. This issue occurred only when running the Design System Wizard in WorkWithPlus 13.15 prior to setup WorkWithPus 13.15.0.1107.
An esthetic issue was solved for template 'Nested KPIs Progress Circle'.
|