PC SOFT

ONLINE HELP
FOR WINDEV, WEBDEV AND WINDEV MOBILE

WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
Benefit from the 180 new features of version 23
Most of the new features presented in the previous pages are available in WINDEV 23.
In addition to this impressive list of new features, WINDEV 23 also proposes the new features presented in this chapter.
This version 23 of WINDEV is very rich!
New control: Layout
The Layout control available in version 23 is used to automatically manage (without programming) the automatic reorganization of controls in a window whose content is modified by programming: control switched to invisible.
This control will become indispensable.
See new features 001 to 006.
New control: PDF reader
The new PDF Reader control brings comfort to your users: a PDF document can now be directly view in the application, without having to use any external tool that could vary according to each end user!
There is no additional software to install.
A very useful normalization.
See new feature 011 to 014.
New control: Image editor
The new Image Editor control allows the end users to modify their images and photos, and to save them from your application.
There is no additional software to install.
See new features 007 to 010.
Spreadsheet and Word Processing controls
Via the Spreadsheet control (23 evolutions) and the Word Processing control (7 evolutions), the end users can benefit from efficient and powerful office tools.
No need to exit from your application to write or modify an email or to perform a simulation.
There is no additional software to install.
See new features 015 to 049.
Scheduler and Organizer controls: 8 useful new features for user experience
The Scheduler control (as well as the Organizer control) is very useful in the management applications.
The Scheduler control was improved in version 23. 8 new features (see new feature 058 to 065) allow you to create schedules that are even more intuitive and enjoyable.
Your schedules will be automatically enhanced in version 23.
The Scheduler control evolves as well
The Scheduler control evolves as well
Table control: 5 new features
The Table control is an essential control in the applications developed with WINDEV.
In version 23, it benefits from 5 powerful new features: viewing linked records, automatic table refresh, custom margins...
(see new features 050 to 055)
The tables are often used in the WINDEV applications
The tables are often used in the WINDEV applications
Chart control
The beautiful charts are always appreciated by the end users.
The new "3D scatter" chart is added to the impressive list of available charts.
Several features are also available for the other types of charts, especially a new popup menu improved for the end users (style and behavior).
See new feature 071 to 080.
More capabilities
More capabilities
Browsing table: refresh without programming
In version 23, you have the ability to specify that a browsing table (filled by binding) is refreshed (updated) whenever the data file is modified.
No programming is required.
The table displaying data will be immediately refreshed all over the world! (HFSQL Client/Server feature).
PVT control: freeze the presentation by programming
The PVT control (Pivot Table or Cube) includes several features for customizing the presentation to the end user.
Some developers of PVT controls do not want the end users to modify their presentation.
In version 23, you have the ability to prevent the end users from expanding or collapsing levels.
You also have the ability to prevent the end users from modifying columns and rows (no deletion is allowed)
Combo Box control: search
In version 23, the end user can perform searches in the Combo Box control: useful in huge combo boxes.
Non-editable Combo Box control: alternative text
In version 23, an alternative text can be displayed as long as no option is chosen by the end user.
For example, "Select an option!".
Looper control: search
In version 23, you also have the ability to perform searches in a Looper control.
The search is proposed by default
The search is proposed by default

HTML control: automatic enlargement according to content
In version 23, the height of HTML control automatically adapts according to content.
By including the HTML control in the new Layout control, the possible controls found around the HTML control are automatically moved.
See new features 001 to 006.
HTML control: new ExecuteJS function
The new WLanguage ExecuteJS function is used to run the Javascript code found in the page that is displayed in an HTML control.
This Javascript code will be run like in a browser.
For example, the code will draw.
Static control: automatic enlargement according to content
In version 23, like for the HTML control, the size of Static control (multiline) automatically adapts according to the content (height and/or width).
By including the Static control in the new Layout control, the possible controls found around the Static control are automatically moved.
See new features 001 to 006.
Customizable focus border for all controls
When a control takes focus, a system border (dots) is displayed on the control.
In version 23, this border can be bonfigured: thickness, color, line type, transparency, ...
2 new skin templates
A skin template defines the style book of an application.
The aspect of interfaces proposed in the applications often follows the trend.
Therefore, it is important to create new skin templates for the applications.
The quarterly LST newsletter (Lettre du Support Technique, and its accompanying DVD) also proposes new skin templates.
Managing planes
In version 23, the management of planes is simplified by their possible naming and by the overview of all window planes in the environment.
See new features 083 and 084.
Default creation size of controls
The creation of controls (Drag/Drop) evolves in version 23 to better materialize the size and location control as soon as it is created.
Tip: the Ctrl Z combination is used to restore the size without adaptation.
See new feature 085.
Color palette
A set of preset colors, harmonized with the current skin template, is proposed by the color picker of editor.
See new feature 089.
Event when changing layout
The concept of layout allows you to create a single window that will behave differently according to the window size and orientation.
In version 23, a new programming event is being introduced: the "Changing layout" code.
This event is called when the layout is modified.
This is used to program very specific behaviors.
AAF: search on Internet
When a word is selected in a table or in a control, the popup menu allows you to perform a search on Internet.
The default browser is started with the selected terms copied into the search control of browser.
A selected word (or set of words) can be sought on Internet via a single click
A selected word (or set of words) can be sought on Internet via a single click
AAF: search in a combo box and looper
The end users love the "search" features proposed in the applications.
In version 23, they will be delighted by the new search features proposed in the loopers and combo boxes.
AAF: several new AAFs on the Spreadsheet control
The Spreadsheet control evolves in version 23.
Among the evolutions, several AAFs have been introduced.
See all these AAFs in new features 015 to 037.
AAF: smart screen shot of reports
You have the ability to ask for a "smart" screen shot of report: only the report is captured, everything around it is ignored.
Error of programming standard
A new category of errors appears in version 23.
This type of error does not prevent the code from being run.
Is it a warning then? No! Because these errors are related to rules defined by yourself (and because nobody reads the warnings).
These errors of programming standard can affect:
  • don't allow the HFSQL accesses in a window (for an MV or MVP split for example),
  • don't allow the object syntax in the project,
  • a zombie item or procedure is used,
  • ...
This allows for a cleaner code and it simplifies the "cleaning" of former code.
See Programming standard errors for more details.
Isolating accesses to the database
In some programming architectures, the accesses to the database must not be performed in the interface.
These accesses to the database must be performed in the business code in procedures or in classes.
In version 23, an option (at project level or at window level) is used to generate an error of GUI standard if an access to a database is performed from the window code.
See Programming standard errors for more details.
Dead code of window only
In version 23, you have the ability to perform a search for "dead code" in a given window only.
This simplifies the refactoring or the "cleaning" of a specific window.
The list displayed is clearer.
Reminder: the static audit displays the entire dead code of project as well as various essential information. Run the audit of your projects on a regular basis.
Evolutions for MVP
The new RequestUpdateUIParent and ExecuteUpdateUIParent functions for the supercontrols, controls templates or internal windows are used to trigger the refresh of Container control.
Consuming SOAP and REST Webservices
A reminder: WINDEV allows you to easily consume REST and SOAP Webservices.
In version 23, the MTOM/XOP standard is supported.
See new feature 150.
SCM in the cloud: "SCM Drive"
As you already know, the SCM can be hosted in the cloud in a few clicks, at low cost via SCM Drive (www.gdsdrive.fr). The service is available and it always evolves.
See new feature 081.
SCM: several improvements
In version 23, the SCM proposes several useful improvements: creating branches from a local directory, displaying branches in the home window, modifying check-in captions, interface for solving conflicts, ...
Discover all these new features 105 to 112.
Connection keychain
When several telemetry servers are used, the parameters for connecting to each server are now proposed. There is no need to re-enter them.
A very useful little feature.
Distribution chart
New information is displayed in the distribution charts of custom telemetry: total, percentage, ...
Feedback by secure email
The dysfunctions and suggestions made by the end user can be emailed.
In version 23, these emails can be send by a secure SMTP server.
The information is no longer visible on the network
Support for window planes
The help editor supplied with WINDEV 23 now supports the window planes: the help editor generates help pages for each one of these planes.
Silent setup: without user intervention
In version 23, the setups can be performed in "silent" mode, which means without any user intervention.
All you have to do is start the setup procedure, and this one runs without interface.
For more details, see:
Silent automatic updates
When a "Network" setup was performed in silent mode, the automatic updates that will be proposed thereafter will be run in silent mode by default.
The user will have no choice to perform, the application will be automatically updated when it is started, and it will start as soon as the setup is ended.
Reminder: a "Network" setup is performed in 2 steps:
  1. The version to install is installed on one or more company servers (or on a server in the cloud).
  2. The end-user computers are updated from this server.
For more details, see:
Easy setup without UAC (no locking message)
The recent Windows systems protect the setups by opening a "UAC" window that requires a password (that must be an "administrator" password in Windows sense).
WINDEV already allowed you to get rid of this protection.
In version 23, implementing this possibility is child's play.
Java: Parallel tasks
The ParallelTask type is available in Java in version 23.
Writing algorithms that use threads is simplified.
It becomes possible to perform continuation tasks.
Java: Numeric type
The Numeric type is supported by Java.
This type is used to perform precise calculations.
The significant number of digits before and after the comma can be can figured (up to 38 digits).
Java: Signed integer on 1 and 2 bytes
The 1-byte integer and the 2-byte integer are available.
This is useful when communicating with external modules that require this type of formatting.
Java: Statistical and financial functions
The version 23 of WINDEV proposes several functions for performing statistical and financial calculations in Java.
Java: Light copy of HFSQL context
The light context copy is available in Java.
This improves the management of resources when using parallel tasks.
52 new WLanguage functions for Java
52 new WLanguage functions are available for Java.
MAC
New MacOS features
52 new WLanguage functions are available for Mac.
.Net: Returning WLanguage objects or WLanguage object in parameter
In version 23, the generation of .Net assemblies evolves and it now gives you the ability to return WLanguage objects in the exposed methods or to take WLanguage objects in parameter of these methods.
Using .Net assemblies: ability to type C# code in the code editor directly
In version 23, typing C# code in the WINDEV code editor allows you to use all the syntaxes exposed by an assembly.
All the syntaxes of C# are supported.
Linux: Proxy function
The WLanguage Proxy function is available in Linux.
Linux: Memcached Big Data
The native access to the Memcached Big Data database, specialized in huge caches, is also available in Linux.
Common new features
In version 23, the WLanguage in WINDEV is substantially enriched. It takes advantage of the common new features and many evolutions.
See new features 116 to 148.
Extracting files from your WDL
In version 23, fExtractResource allows you to extract a file from a WDL, the library containing all the executable resources.
This allows you to supply files (data files, parameter files, image files, ...) without having to supply separated files!
For security reasons, only the code found in a WDL can extract the files found in the WDL. A code coming from the outside will be ignored.
Evolutions of OOP
The OOP evolves in version 23: interfaces, viewing abstract members, zombie methods, ...
54 new constants
54 new constants are available in WLanguage in version 23.
6 new types
6 new types of variables are available in WLanguage:
8 new properties
8 new WLanguage properties are available for WINDEV.
AnchorToContentIndicates whether the control size changes to adapt to its content
FilePathIndicates the name of the file associated with a Spreadsheet control
LayoutIndicates the layout of cells in a Layout control
EllipseUsed to find out and modify the management mode of ellipsis in a Static control found in a report
HeaderVisibleUsed to manage the display of row and column headers in a report based on a Spreadsheet control
UnalterableUsed to manage the unalterability of a data file (an unalterable file cannot be modified: only the additions are possible)
DisplayModeChanges the display mode of Word Processing control
GridlinesVisibleIndicates whether the gridlines is visible (or not) in a Spreadsheet control.
Object syntaxes
A new type of syntax is proposed in WLanguage: the input is much easier. For example:
ControlName.Function
The following controls are affected by this syntax:
  • Organizer control
  • TreeView control
  • Scrolling Banner control
  • Toolbar control
  • Calendar control
  • Camera control (video)
  • Captcha control
  • Map control
  • Cell control
  • Site Map Path control
  • Combo Box control
  • Edit control
  • Gantt Chart control
  • Image Editor control
  • Chart control
  • HTML control
  • Image control
  • Check Box control
  • List Box control
  • Multimedia control
  • Tab control
  • Organization Chart control
  • Scheduler control
  • Popup control
  • Ranking control
  • Ribbon control
  • Radio Button control
  • Table control
  • TreeView Table control
  • Pivot Table control
  • Dashboard control
  • Spreadsheet control
  • TimeLine control
  • Word Processing control
  • TreeMap control
  • Xaml control
  • Multiline Zone control
  • Looper control
  • Menu
  • Queue type
  • List type
  • Stack type
  • Array type
  • Associative Array type
  • Variant type
56 new WLanguage functions in WINDEV
56 new WLanguage functions are available for WINDEV:
DateTimeToEpochConverts a date and a time to Epoch format.
dDominantImageColorRetrieves the dominant color of image
EpochToDateTimeConverts a date and a time in Epoch format to a date and a time.
ExecuteJSRuns Javascript code with or without return value.
fExtractResourceExtracts a resource from the application into a physical device location.
fListResourceLists the resources integrated to the application.
grBarColorInitializes the color of a specific bar in a Column or Stacked Column chart.
grPointColorConfigures the color of a specific point in a Line, Scatter or Bubble chart.
grColumnAggregationDefines the algorithm for aggregating data in a grouped or stacked Column chart.
grTimeLevelMaskDefines the display mask for a level of time scale in a chart.
grTimeLevelMaxDefines the number of levels to display in the time scale of a chart as well as the maximum level.
grScatter3DAddDataAdds a data into a 3D Scatter chart.
grScatter3DAltitudeColorIndicates the color for the different altitude levels of a series in a 3D Scatter chart.
grScatter3DProjectionIndicates whether the points found in a series of a 3D Scatter chart can be projected on a given plan.
grScatter3DLinkPointIndicates whether the points found in a 3D Scatter chart must be linked (with lines).
grScatter3DDeleteAltitudeColorDeletes the altitude colors specified by grScatter3DAltitudeColor.
grPointSizeConfigures the size of a specific point in a Line or Scatter chart.
RandomCryptoBuffer / RandomCryptoIntegerReturns a random number that can be used to perform the cryptography.
HCheckUnalteredChecks whether one or all records found in an unalterable table have not been modified (with an hexadecimal editor for example).
HCheckMemoChecks whether the file memos are consistent.
MemcachedAssignModifies a key/value couple in the Memcached cache.
MemcachedAssignKeyGroupModifies a key/value couple in the Memcached cache on a group of servers.
MemcachedAddAdds a new key/value couple into the Memcached cache
MemcachedAddKeyGroupAdds a new key/value couple into the Memcached cache on a group of servers.
MemcachedAddPrefixAdds the value at the start of existing value in the cache for the given key.
MemcachedAddPrefixKeyGroupAdds the value at the start of existing value in the cache for the given key on a group of servers.
MemcachedAddSuffixAdds the value at the end of existing value in the cache for the given key.
MemcachedAddSuffixKeyGroupAdds the value at the end of existing value in the cache for the given key on a group of servers.
MemcachedCASModifies the value of a key if this one was not modified.
MemcachedCASKeyGroupModifies the value of a key if this one was not modified on a group of servers.
MemcachedDecrementDecrements the value associated with the key.
MemcachedDecrementKeyGroupDecrements the value associated with the key on a group of servers.
MemcachedIncrementIncrements the value associated with the key.
MemcachedIncrementKeyGroupIncrements the value associated with the key on a group of servers.
MemcachedModifyModifies a key/value couple in the Memcached cache.
MemcachedModifyKeyGroupModifies a key/value couple in the Memcached cache on a group of servers.
MemcacheGetRetrieves the key values.
MemcacheGetKeyGroupRetrieves the key values on a group of servers.
MemcachedDeleteDeletes a key.
MemcachedDeleteKeyGroupDeletes a key on a group of servers.
PicCreateCreates an image in the Image Editor control.
PicCloseCloses the image found in an Image Editor control.
PicOpenOpens an image in the Image Editor control.
PicSaveSaves the image displayed in the Image Editor control.
SpreadsheetAddImageAdds an image into a Spreadsheet control.
SpreadsheetRestorePositionAndSelectionRestores the position of scrollbars and the selection in a Spreadsheet control.
SpreadsheetSavePositionAndSelectionSaves the position of scrollbars and the selection in a Spreadsheet control.
SpreadsheetSortSelectionSorts the selection of current worksheet in a Spreadsheet control.
TestCheckDifferentChecks whether the specified expressions are different in assertive programming and in automatic test mode.
TestCheckEqualChecks whether the expressions are equal in assertive programming and in automatic test mode.
TestCheckFalseChecks whether an expression is false in assertive programming and in automatic test mode.
TestCheckNotNullChecks whether an expression is not Null in assertive programming and in automatic test mode.
TestCheckNullChecks whether an expression is Null in assertive programming and in automatic test mode.
TestCheckTrueChecks whether an expression is set to True in assertive programming and in automatic test mode.
XMLOpenReaderCreates a reader used to read an XML document without loading it in memory.
LooperDeleteSelectDeletes the selected rows from a browsing or memory Looper control.
Minimum required version
  • Version 22
This page is also available for…
Comments
Click [Add] to post a comment