New Features

Transcription

New Features
The new version 20 brings you unmatched efficiency, and increases
your fun developing applications.
Benefit provided by this version 20 new feature:
This new version brings 920 new
features to your teams that will make
them even more efficient in our constantly evolving world.
ORDER YOUR COPY
OF VERSION 20
TODAY!
New controls, boosted performance,
increased interoperability are all part
of the 920 new features found in version 20.
Build on your existing experience
while taking advantage of new technologies: this is the benefit provided
by version 20
By switching to version 20, your applications automatically gain new
features, speed and quality and support recent technology evolutions.
All the flexibility of a spreadsheet directly in your applications.
NEW CONTROLS
002
001
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W B
W M
Using the Spreadsheet
control
W M
New “Spreadsheet”
control
The end user can enter data and formula directly in the new
Spreadsheet control of WINDEV 20. The formulas are recalculated automatically: each time a cell is modified, the spreadsheet recalculates and updates the worksheet.
Data can also be injected by programming, from other window
controls, variables or data file items.
As a full fledge control, the Spreadsheet control is totally integrated with the rest of the application.
The data entered as well as the calculation results can be used
directly by the window, like with any control.
Spreadsheets are some of the most commonly used business
tools, The new version 20 of WINDEV offers a new type of control: the Spreadsheet control.
The “Spreadsheet” control is a native control: it doesn’t require
a spreadsheet software to be installed on the computer (and
therefore no license to manage).
With this new control, no more back-and-forth between applications, no more external software to manage!
WINDEV 20, WEBDEV 20 and
WINDEV Mobile 20 are your work
tools. You are more efficient, your creations are more robust and faster.
The constant objective for our team
is clear: your satisfaction and your
success, on all the environments and
hardware.
We are proud to introduce version
20 to you: a must have version,
which will soon become your favorite version.
Legend
WD WB WM: the legend shows in which product the new feature is available.
W D
3
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
Benefit provided by this version 20 new feature:
003
n e w
f e a t u r e
W D
W B
THE NEW SPREADSHEET CONTROL
This compatibility allows you to reuse existing spreadsheets, or
to reuse calculations performed in the WINDEV 20 Spreadsheet
control.
Existing trade-specific spreadsheets of the company can be directly integrated into WINDEV applications: you capitalize on
your company’s knowledge.
When reading a worksheet created by a third-party spreadsheet
software, the unrecognized functions are ignored when displaying and #Error comes up. Note that if needed this function
can be programmed in WLanguage.
The link with the rest of the application is easy and fast.
W M
Entering formulas
With the new Spreadsheet control, the end user directly enters
the calculation formulas. The cells used can be selected with the
mouse.
In version 20, the spreadsheet control offers the following essential calculation functions and operators: sum, subtraction,
multiplication, division, percentages, mean, min-max, condition
(IF), calculation and comparison operators ...
You can also use WLanguage functions in the formulas, such as
the mathematical functions, or the string functions, date functions, financial functions ,...
You can also use in the formulas some WLanguage procedures
created for this purpose in the application. For example the application can offer the “Shipping cost” procedure for calculating the amount based on advanced parameters: weight,
volume, speed, destination country, ... The end user can use this
procedure inside the spreadsheet!
A worksheet in Excel...
Benefit provided by this version 20 new feature:
Extreme flexibility
004
n e w
f e a t u r e
W D
W B
W M
AAF of the Spreadsheet
control
The same worksheet imported in the Spreadsheet control of a
WINDEV window
The AAF (Automatic Application Features, available with all
WINDEV applications) are very appreciated by end users.
The new Spreadsheet control in version 20 offers a large number of AAF:
• selection of cells: single, row, column, rectangle, scattered
groups
• cell height and width
• data formatting inside the cells: font, rich text, color, alignment, data formating (mask)
• copy/paste, with automatic translation of the cell references in
formulas
• search the cell contents
• undo/redo
• export/import to Excel
• data persistence (automatically store the content of a spreadsheet)
• ...
Benefit provided by this version 20 new feature:
The Spreadsheet control respects accepted standards
006
f e a t u r e
W D
W B
W D
W B
Quantity is int = SPRD_Spreadsheet[“A2”]
SPRD_Spreadsheet[“A5”] = “Paris”
A spreadsheet cell can be used like any other WINDEV control.
Its properties can be modified and/or retrieved like any control.
The new Spreadsheet family of functions lets you program the
new Spreadsheet control found in version 20.
The new SpreadsheetInsertRow function lets you insert an entire row in the spreadsheet.
The new SpreadsheetRecalculateAll function forces the recalculation of all the formulas.
The new SpreadsheetAddFormula function lets you provide a
calculation formula for a cell.
The optional programming of the Spreadsheet control is easily
done in WLanguage: your teams already know how to program
this control!
W M
Compatibility with spreadsheet software: Excel, ...
The content of the spreadsheet control can be saved (or loaded)
directly in Excel format (XLSX format).
The Spreadsheet control is directly compatible with Excel,
OpenOfficeCalc, FreeOffice, ...
The Spreadsheet control reads Excel worksheet (XLS, XLSX).
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
W M
Initializing
the Spreadsheet control
W M
The WLanguage code can access the spreadsheet’s cells via the
“[ ]” operator. Example:
Nothing to code!
n e w
f e a t u r e
Programming
the Spreadsheet control
Benefit provided by this version 20 new feature:
00 5
n e w
007
The spreadsheet control can be initialized (contain values and/or
formulas) as soon as it is displayed using different methods:
• direct entry in the WINDEV editor
• by programming
• by loading an Excel file (xlsx) when initializing the control.
Benefit provided by this version 20 new feature:
Saves time for the end user.
008
n e w
f e a t u r e
W D
W B
Google Maps example
W M
New “Google maps”
map control
WINDEV 20 offers the new “Google Maps” type control.
This new Map control lets you display “Google Maps” type
maps directly in an application or a site.
The map displayed is fully interactive. The end user can zoom or
move within the map.
Please check the “Google Maps” user license provided by Google before implementing this control.
If needed, you can easily program the Spreadsheet control.
Route displayed in a Google Maps control
4
5
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
Benefit provided by this version 20 new feature:
• display a customer list, and open several customer forms
• keep a list of customers open on a second screen
• quickly switch from one window to another without losing its
content and the cursor’s position
The end user can also:
• reorganize the tabs
• close the tabs
• ...
Display maps, Google Maps itineraries directly in your applications.
009
n e w
f e a t u r e
W D
W B
W M
The features of the
“Google Maps”
control (AAF)
With the WINDEV 20 Map control, the end user can:
• display the map in satellite or map view
• zoom in and zoom out
• move inside the map
• see the Point of Interests (POI) found on the map.
• change the view mode to Street View.
All these operations are performed intuitively by the end user,
using the mouse, like when using the Google Maps application.
There is nothing to program in the application for the end user
to benefit from these features.
These features are called “AAF” (Automatic Application Features).
Easily offer “browser-like” interfaces
Benefit provided by this version 20 new feature:
The tabs’ setting can be stored on the end-user computer.
The end user easily moves around.
Benefit provided by this version 20 new feature:
0 10
n e w
f e a t u r e
A browser-like behavior for your Windows applications, without
coding anything!
W D
W B
W M
Programming
the Map control
01 2
A large number of WLanguage functions in the Map family let
you easily work with the Map control:
• choose the address displayed on the map
• put markers on the map
• trace routes
• retrieve the position information of a click point
• ...
The Map control in WINDEV is compatible with the Map control
in WINDEV Mobile and the new Map control in WEBDEV 20.
f e a t u r e
W D
W B
W D
W B
W M
Creating an MDI tab control is easy.
Simply create the MDI Tab control like an actual tab control.
The new Tab family of functions lets you manage multi-tab
MDI.
Once the control is created in the window editor, simply call the
TabOpen function to add a tab containing the window.
The TabOpen function accepts parameters, such as a client identifier for instance.
The “+” button can be configured: you decide what its action
is. For example:
• open a popup menu
• open a list of windows
• open a new document
• ...
The panes can be positioned horizontally or vertically, at the top
or bottom, on the left or the right.
A style can be applied to the panes.
Anchors apply.
Program maps.
n e w
f e a t u r e
Dynamic tabs - MDI:
creation
Benefit provided by this version 20 new feature:
0 11
n e w
W M
“Chrome-like” tabs in your
WINDEV 20
applications
(Dynamic tabs - MDI)
This new tab management mode in version 20 lets you display
several windows within the same window.
Switching from one window to the other is done via tabs, using
an implementation close to the browsers’ one.
The tabs can be “pulled out” from the main window, to place
them on a second screen for instance, making it easier to
process data simultaneously.
Of course, the former MDI mode is still available.
What are the benefits for the end user?
• open several windows simultaneously
• open several customer forms simultaneously
Benefit provided by this version 20 new feature:
Regular WINDEV programming for a more user-friendly interface
013
n eM
w feature
W
W D
W B
New
VideoConference
control: overview
First, let’s review the difference between a “VideoConference” control, a (simple) “Camera” control
and the “Multimedia” control.
The multimedia control is used to play a video coming from a file.
The camera control lets you display live video from
the webcam on the computer where the application is installed.
The videoconference control lets you display the
video from a webcam on another computer, local
or remote.
A window containing 2 VideoConference controls,
one for the local webcam and another one for the
webcam of a remote computer lets you create a
video conference!
Version 20 of WINDEV offers the “VisoConference” type of
control.
Among the uses for this control:
• video conferencing of course,
• video + audio monitoring
• audio monitoring only
• telephony
• ...
An extended use of the control could be to perform video monitoring of premises.
Video conferencing!!!
Benefit provided by this version 20 new feature:
No installation to perform, no codec to install.
015
f e a t u r e
W D
W B
W D
W B
W M
The programming of the VideoConference control is done via
the Stream WLanguage family of functions.
Connecting two applications with the new VideoConference
control in version 20 is very easy: only two steps are needed.
• 1: The first application “sets” the connection using the
StreamConnect WLanguage function to start the connection.
• 2: The second application is notified of the connection request in the Connection request process of the control.
The application decides which action to execute: make the
PC ring, accept the connection using the StreamAccept
WLanguage function....
There is nothing else to manage. Synchronization, frame loss,
encoding and compression of the videos, transport layer management, etc... are automatically managed by WINDEV 20.
A complete example (with source code) of video conferencing is
provided with WINDEV 20.
Your own easy video conferencing!
n e w
f e a t u r e
VideoConference
control: How to connect
two applications?
Benefit provided by this version 20 new feature:
014
n e w
W M
New VideoConference
control: automatic
The VideoConference control of WINDEV 20 lets you link two
applications with an audio and video channel.
End users can see each others and talk live from their applications.
In a classic application, each end user connected to the video
conference see the image from his own webcam as well as the
images of the other participants.
The control can also be used in “audio” only mode, or in
“video” only mode.
The computers linked via video conference must have a microphone and/or a webcam.
Thanks to this control, you can very easily develop collaborative
work applications.
The VideoConference control is compatible with all the versions
of Windows: XP, Vista, 7, 8, 10...
Very important and facilitating factor: the new VideoConference
control doesn’t require the installation of any additional programs
(no codec, no plugin, ...) on the end user’s computer.
An application using VideoConference controls works instantly,
without any special configuration or installation to perform.
Benefit provided by this version 20 new feature:
Easy programming
6
7
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
Among the new features offered, you can invert two display dimensions of the table.
The end user can move a criteria from one axis to the other.
For example, instead of grouping products by Color then by
Material, the user can group them (in one click) by Material
then by Color. This way the user can analyze the data according
to his most important criteria.
Significant advantage in terms of performance: this operation is
instantaneous and doesn’t require a recalculation of the Cube.
EVOLUTION OF THE
“PVT”
CUBE CONTROL
016
n e w
f e a t u r e
W D
W B
Benefit provided by this version 20 new feature:
W M
The end users can instantaneously reorganize the data in their
PVT
PV T: ma jor evolutions
In version 20, the PVT (Pivot Table, or rOlap Cube) benefits from
a large number of evolutions and AAF that where initiated by
end user requests (often decision makers).
The PVT Cube control is a major asset for applications developed
with WINDEV. It is normal that it evolves constantly to offer features expected by end users.
01 8
W D
W B
W M
In this example, it was difficult to compare the evolution of the Gross Revenue by country. / Pivoting the PVT: it is much easier to see the evolution
by country, by year after the rotation
Decision makers are happy!
n e w
f e a t u r e
Pivoting a PV T Cube
Benefit provided by this version 20 new feature:
0 17
n e w
With the same PVT...
f e a t u r e
W D
W B
A PVT is great art!
W M
Inverting the dimensions
(criteria) of a PV T Cube
019
Analysis by country: for each country, we can analyze the products
sold/Inverting the “products” and “countries” dimensions:
Analysis by product: for each of the products, we can analyze the distribution per country
n e w
f e a t u r e
W D
W B
W M
PV T: Multi-selection
year ...
y
b
is
s
ly
Ana
With the same PVT...
In version 20, the end user can select several columns or rows
at the same time (standard use of the Ctrl and Shift keys).
Thanks to this new feature, all the selected columns can be
deleted, grouped or ungrouped in one click.
The end user can also select several cells, in order for instance
to change their background color to highlight them.
Benefit provided by this version 20 new feature:
The end user decides what information is pertinent for the calculations
02 2
Benefit provided by this version 20 new feature:
y
y countr
b
is
s
ly
a
An
n e w
f e a t u r e
W D
W B
W M
Display all the
rows/columns
(even the blank ones)
country
y
b
is
s
Analy
In older versions, when a column or a row didn’t contain data,
it wasn’t displayed.
In version 20, an option lets you display all the rows and all the
columns, even the ones that don’t contain any data.
This allows for an easier comparison of the data.
This option is available per dimension.
t
y produc
b
is
s
ly
a
An
n e w
f e a t u r e
W D
W B
W B
W M
Benefit provided by this version 20 new feature:
Lets you use the PVT control with other data sources than a
HFSQL database
Symmetrical view of the data
02 1
W D
Sometimes data come from heterogeneous sources (SQL Server,
Oracle, MySQL, etc.) or they can’t be extracted directly from the
database.
For example, data extraction requires filtering or consolidating
programming operations.
In these cases, we need to fill the PVT control by programming.
Now you can do it with version 20: simply define and fill an
array of structures containing the data and define the binding
of the Pivot Table control with this array of structures
Benefit provided by this version 20 new feature:
In version 20, the end user can pivot the PVT: switch rows and
columns, and present the data in the orientation that make the
most sense for the analysis to perform.
The “criteria inversion” and “pivoting” AAF for the PVT control
let the decision maker compare the data the way he wants,
without having to program anything.
f e a t u r e
PV T: data from
SQL Server, Oracle,
MySQL ...
(Fill by programming)
Finally the multi-selection!
02 0
n e w
023
W M
n e w
f e a t u r e
W D
W B
W M
PV T: cell style
Column deletion
The same PVT cell can contain several pieces of data: for example a Quantity and a Gross Revenue.
In version 20, it is now possible to customize the style of each
cell element: color, font, background color, separation line ...
In version 20, the end user can delete columns or rows.
Calculations (totals, mean, ...) are recalculated.
8
9
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
027
n e w
f e a t u r e
W D
W B
W M
CHART
PV T: Cancelation
A new cancellation button is available in the calculation
progress bar. The user has the ability then to cancel a PVT calculation.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Complete customization.
024
n e w
W D
W B
W M
028
PV T: Eye-Magnet
(Conditinal formatting)
on cells
W D
W B
W B
W M
Benefit provided by this version 20 new feature:
Easily finding a piece of data
029
The end user benefits from the Eye-magnet (conditional formatting) in the PVT, and there’s nothing to program.
f e a t u r e
W D
In version 20, the find AAF (Automatic Application Feature) is
now available.
An end user can perform searches inside the cells or in the titles
of a Pivot Table.
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
PV T: Find AAF (Ctrl + F)
The “Eye-Magnet” is a standard feature of the WINDEV edit
controls. Eye-Magnet lets you modify the appearance of a control automatically based on a condition (this feature is also
called “conditional formatting” by other software).
For example, Eye-Magnet can turn to red the cells of a PVT
whose values are negative.
The Eye-Magnet feature can also be used on the cells of a Pivot
table control.
0 25
n e w
n e w
f e a t u r e
W D
W B
W M
PV T: AAF: coloration,
with memorization of the
last choice
W M
The AAF for coloring the cell background in the PVT offers by
default the previously chosen color: this avoid extra operations.
PV T: A caption for each
cell data
Benefit provided by this version 20 new feature:
A very useful little feature!
A PVT cell can contain several values.
What do these values correspond to?
To help the end user, in version 20, the PVT can display a caption for each value.
030
n e w
f e a t u r e
W D
W B
W M
PV T: AAF: addition of
week/month/quarter
In a PVT, the developer may not have thought of the right period for the end user.
For example, if a PVT only offers months, an end user may want
to display a more global grouping by quarter or semester.
In version 20, a new AAF offers this ability to the end user.
The periods offered are:
• Year
• Half-year
• Quarter
• Months
• Fortnight
• Week
• Day
Benefit provided by this version 20 new feature:
The end user knows what he reads!
026
n e w
f e a t u r e
W D
W B
W M
PV T cell: numbers,
durations, dates ...
Prior to version 20, a PVT cell only accepted numbers.
In version 20, a PVT cell accepts data of any type: a duration, a
date,...
You can also use display masks adapted to the cell’s content.
Benefit provided by this version 20 new feature:
Configuration by the end user
Benefit provided by this version 20 new feature:
The PVT displays all the types of data
10
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
031
n e w
f e a t u r e
W D
W B
W M
New type of Chart:
Sunburst chart
The end user can interrupt a calculation.
f e a t u r e
large number of data
• On the other hand, this type of chart is interactive: clicking a
section lets you get details about the sub-level of this section.
WINDEV already offers a very large number of charts.
A new type of chart is being introduced in version 20 of
WINDEV.
It is the “Sunburst” chart.
The sunburst chart is a pie chart containing several levels of hierarchical data.
For example, the chart presents data for the entire world.
The first level corresponds to the data grouped by continents.
The second level corresponds to the data grouped by country...
A sunburst chart contains as many levels as needed.
There are two advantages to this type of chart:
• On one hand it allows concise and organized display of a very
New sunburst chart control
Benefit provided by this version 20 new feature:
Represent complex data in a very visual way
Reports created in version 20 support
Sunburst charts. Therefore it is easy to
print this chart.
Benefit provided by this new feature:
Easy printing
035
W M
n
w feature
We M
W D
access to stored
data from any type
of chart
In version 20, new WLanguage functions let you re-read the initialization values of a chart.
For example in a bar chart, the application can retrieve the value from the
index.
This allows you for instance to re-read data
without having to store it, or to perform
calculations such as finding the min or max.
Function example: grGetData, grScatterGetDataXY, grStockGetData, ...
A new sunburst chart
032
n e w
f e a t u r e
W D
W B
W M
Navigation in the
sunburst chart control
Benefit provided by this version 20 new feature:
036
f e a t u r e
W D
W B
W D
W B
Access your projects anywhere in the world.
039
Benefit provided by this version 20 new feature:
W M
In a chart, when the cursor hovers a piece of data, a tooltip
comes up. By default, the tooltip contains the value and caption
of the series and the category. The content can be customized.
In version 20, the tooltip improves its presentation:
• the tooltip comes up instantly for better readability
• the tooltip’s border uses the same color as the series so it can
be instantly associated with it visually
• the tooltip is semi-transparent so the chart is visible underneath.
• an arrow points precisely to the targeted point
Drill down the details of structured data
n e w
f e a t u r e
Benefit provided by this version 20 new feature:
Here a simple crosshair and multiple crosshairs
038
n e w
f e a t u r e
W D
W B
W M
Projects in the cloud
Managing projects in the cloud is easy. PCSCloud, a subsidiary
of PC SOFT, offers the storing ans sharing of WINDEV, WEBDEV
W B
W M
Get rid of the hardware headache when deploying: concentrate
on your core competency.
FULLY COMPATIBLE WITH EARLIER VERSIONS
No migration is needed between WINDEV 7.5, 8, 9, 10, 11, 12,
14, 15, 16, 17, 18 or 19 and WINDEV 20: all you have to do is
recompile the application for it to work in version 20.
Switching from WEBDEV 7, 9,10, 11, 12, 14, 15, 16, 17, 18 or
19 to WEBDEV 20 is also very easy.
Benefit provided by this version 20 new feature:
Simplifies the reading of a chart’s data.
037
n e w
f e a t u r e
W D
W B
Existing components (version 8, 9, 10, 11, 12, 14, 15, 16, 17, 18
or 19) work directly (without the need to recompile) with applications in version 20.
W M
Chart crosshair
Version 20 directly opens a project in version 7.5, 8, 9, 10, 11,
12, 14, 15, 16, 17, 18 or 19. Older projects (5.5, ...) must be migrated.
In a line type chart, it is often hard to see the value on the axes
for a point that is far from these axes.
Thanks to the new reading crosshair feature now included with
all charts, the end user can know precisely the value being
pointed.
Easy initialization
W D
W B
WINDEV 20 respects your existing assets.
Benefit provided by this version 20 new feature:
f e a t u r e
W D
Benefit provided by this version 20 new feature:
W M
The Sunburst chart is filled and handled via the new WLanguage family of functions, grSunburst.
The chart is initialized based on the same principle as the Treeview control: the data is organized hierarchically.
The color of the sections are automatically defined, but you can
also specify it by programming.
n e w
f e a t u r e
PCSCloud also takes care of the hardware support for you
when deploying your applications: hosting WEBDEV sites, hosting Webservices created with WINDEV or WEBDEV, access to
your HFSQL (and HyperFileSQL) databases, storage and activation of the installation for WINDEV applications via a simple Internet link, support for universal data replication ...
Here too evolutions are happening all the time and address
your changing needs.
filling the Sunburst
chart
034
n e w
Applications, sites, ...
in the cloud
CLOUD
Charts: new look for
tooltips
Benefit provided by this version 20 new feature:
033
n e w
and WINDEV Mobile projects, access to SCM (collaborative
work), Control Center data, the storing of the configurations
for the development environments of your teams.
The features offered constantly evolve, and new features are introduced year around.
The end user gets situated inside charts.
Access data without having to store it.
The new Sunburst chart control in WINDEV 20 is an interactive
control.
The end user can click a section of the chart to see the details
about this section: the clicked section becomes the center of
the chart, and around it the sub-levels are represented.
And so on
Clicking in the center of the chart moves up one level.
The display of the detail is automatic: it is managed by the control.
An animation visualizes the transition between the chart levels.
The value of the data hovered by the mouse is displayed in a
tooltip.
By default, a radial color gradient by level is automatically managed.
from this new reading crosshair feature.
The user hovers a point on the chart and the crosshair comes
up!
If the vertical component of the crosshair cuts several lines, it
displays the value for each intersection. In the case of a
crosshair cutting several lines, the content of the tooltip can be
customized.
The color of the crosshair can be customized.
The thickness of the crosshair is also customizable.
W M
printing the Sunburst
chart
And of course, different versions of your environments can coexist
on your PC; a version 20 license can also run older versions (19,
18, 17, 16, 15, 14, 12, 11, 10, 9, 8, 7.5, 5.5,...)
All the charts (with axes) in WINDEV 20 automatically benefit
12
13
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
042
ENVIRONMENT
040
n e w
f e a t u r e
W D
W B
W B
W M
THE NEW PROJECT MONITORING CENTER
The project manager tracks his project with confidence (and methodically).
043
n e w
f e a t u r e
W D
W B
W M
Project Monitoring Center:
“developer” benefits
With the Project Monitoring Center, the developer can at any
time access an overview of the tasks to perform:
• scheduled tasks
• critical tasks that are blocking other developers
• bug to process
• tasks passed their original deadline
• ...
This way the developer can choose the tasks that have an instant impact on the project’s progress.
The list of bugs for his modules is constantly visible.
This way the developer is freed from time management constraints, and has a better understanding of all the tasks and
their impact.
Reduce the complexity of project management.
W D
W B
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
f e a t u r e
W D
The Project Monitoring Center lets you, as its name suggests,
easily track projects of any size.
The project manager can view the dashboard for a single developer or a set of developers.
The project manager can edit and manage the requirement list.
The project manager can set and follow the developers’ schedule in real time, and control the project’s progress this way.
A Gantt chart can be created at any time.
The Project Monitoring Center is suited to all development
methods, and especially to the “agile” development method.
W M
The “Project monitoring Center” goes through a radical
makeover in version 20.
The Project Monitoring Center now groups all the information
about the projects in a dashboard-like interface. It now includes
the information from the Quality Control Center: the information is integrated in the same interface.
Tabs provide an intuitive navigation between the various functionalities: task list, requirement list, bug tracking, statistics,
charts, ...
Agile development becomes easier.
n e w
f e a t u r e
Project Monitoring Center:
“Project manager” benefits
Project Monitoring
Center:
integrated project
management in a single
tool
041
n e w
W M
Project Monitoring Center:
overview display
The Project Monitoring Center has its own dashboard.
Among the available widgets, the following new widgets are
being introduced:
• schedule completion progress bar (requirement completion)
• list of tasks and task activations in progress
• detection of blocked requirements
• display of the basic information about a contributor
• display of the current task for a contributor
• distributions of the bugs waiting to be corrected by contributor
• bug count by contributor
• audit of a requirement list
• counter for pending requests
• list of pending bugs
• requirement distribution
• ...
This overview lets you take in all the essential dials in one
glance: smart decision making is made easier.
Benefit provided by this version 20 new feature:
The Project Monitoring Center plots the way, effortlessly...
044
n e w
f e a t u r e
W D
W B
W M
Project Monitoring Center:
“customer” benefits
Here, the “customer” is either the company that hired the internal development team, or the customer that contracted a thirdparty to develop their applications.
Thanks to the improved project monitoring due to the new
Project Monitoring Center, delivery times are controlled better,
which reduces the time to delivery.
Since projects are better managed, departments get along better.
Once the program is released, the Project Monitoring Center offers faster bug fixing, and better change request tracking.
Benefit provided by this version 20 new feature:
Overview = better decision making.
Benefit provided by this version 20 new feature:
The customer gets his programs faster and with a better quality.
14
15
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
045
n e w
f e a t u r e
W D
W B
047
W M
Background
recompilation
n e w
f e a t u r e
W D
W B
W M
051
Looking for a project in
the home window
Nothing is more frustrating for a developer than having to wait
until a project has finished compiling before being able to continue working on it. In version 20, no need to wait anymore.
When is a recompile started?
For example, when a project is opened for the first time on a
new computer, it must be completely recompiled.
In older versions, this recompilation meant you couldn’t use the
environment until it was done.
In version 20, the recompilation happens in the background,
and so the developer can start using the editor right away.
WINDEV 20 offers you a new project compilation mode in the
background.
When this mode is activated, the developer keeps control of the
editor and can remain productive.
The home window of WINDEV 20 lets you find a project in the
list of pinned recent projects.
Benefit provided by this version 20 new feature:
Useful when the list contains a large number of projects.
048
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
Image differences during
a copy
When copying an image in the place of an existing image in the
project, the conflict resolution window displays (in addition to
the sizes, dates and times) an image of the differences between
the two images so you can easily see what was modified.
W M
Faster simultaneous
searches
You can start several searches in parallel in a project.
In version 20, optimization have been made: the editor is more
interactive.
Benefit provided by this version 20 new feature:
Borders are becoming very sophisticated in WINDEV 20
Saves time.
Benefit provided by this version 20 new feature:
With the new borders, your controls become works of art!
A click is all it takes to enable the background compilation.
0 49
Benefit provided by this version 20 new feature:
In version 20, no more waiting while compiling.
046
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
Evolution of the image
catalog:
svg vector format
W M
a UI window + a code window displayed simultaneously on the screen
The differences between the images jump at you
Easily spot the most subtle differences!
Benefit provided by this version 20 new feature:
Enlarge images with no quality loss
050
n e w
f e a t u r e
W D
W B
W M
Image catalog:
dozens of millions of
photos available
with Fotolia
Fotolia is an international professional image bank that offers
millions of photos, images and drawings.
The WINDEV 20 image catalog lets you search directly inside
the Fotolia library.
A Fotolia user account is required for using this new feature.
Additional cost may apply depending on the image selected.
Check the Fotolia license.
n e w
f e a t u r e
W D
W B
W M
“super” borders for controls!
W B
W M
The keyboard navigation order is recalculated automatically
after each addition or movement
Benefit provided by this version 20 new feature:
Millions of photos available for your windows, pages and reports.
Benefit provided by this version 20 new feature:
W D
A control can have a border.
The control borders are improved in version 20 of the window
editor.
A large number of new parameters are being introduced:
• you can define a different thickness, color, style for each of
the 4 border lines
• rounded corner can be define for each corner.
• when the color of each rounded border line is different, a gradient is automatically applied.
The border is edited either via the “7-tab” technology, or it is
modified directly via the mouse in the window editor.
Benefit provided by this version 20 new feature:
Note the 3 code windows on the right screen
f e a t u r e
Currently, the window editor recalculates the optimum navigation order for the window controls when the developer uses the
following option: Ribbon of the window editor, Navigation..Define automatically option.
The developer has to think of it, otherwise the navigation between the controls via the TAB key may be surprising!
In version 20, the recalculation of the tabulation order is done
automatically after each addition, deletion and especially when
moving a control, changing tab ...
Of course the older mode is still available.
WINDOW EDITOR
052
n e w
tabulation order
recalculated for each
modification
Benefit provided by this version 20 new feature:
The image catalog in WINDEV 20 lets you save cliparts in SVG
(Scalable Vector Graphic) format.
Thanks to this format, the cliparts can be anchored in windows
and pages and keep all their definition when resized: no more
aliasing!
In version 20, the environment editors can be torn from the
main window.
A common use is the simultaneous editing of a UI window and
its code.
The code editor will be detached from the environment, and
displayed side by side, on a second screen for instance.
Having both the code and the UI in front of your eyes makes
you more productive!
You can also detached the project dashboard to keep it always
visible.
053
W M
Moving between controls with the TAB key is logical for the end
user
No more back-and-forth
16
17
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
05 4
n e w
f e a t u r e
W D
W B
size for a control (table, scheduler, calendar,...) when it is included in a UI.
The new commands “Spread in width”, “Spread in height”,
and “Spread” calculate the maximum size that the control can
take in the window, and resize it instantly.
Use example: in this mode, a developer sets a control in the
middle of the window, and the control automatically takes up
all the available space, aligning with the top left corner! (presentation margins are respected, of course).
W M
Using anchor when
resizing
Benefit provided by this version 20 new feature:
No more struggle!
057
n e w
f e a t u r e
W D
W B
W M
Window comparison gets richer in version 20.
It is now possible to also list the style differences between two
windows.
Of course you can automatically apply one or more of the reported differences.
In older versions, in the window editor, the resizing of a group
of controls in multi-selection didn’t resize the entire group.
In version 20, all the selected controls are resizable, respecting
their anchoring.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
055
n e w
f e a t u r e
W D
W B
058
W M
An internal window is a part of a window intended to be
reused in other windows.
In version 20 of WINDEV, it becomes possible to apply one or
more window templates on an internal window.
It is then possible to create internal windows based on these
templates.
This is very useful when creating widgets for the Dashboard
control, or to share the presentation of the internal windows.
n e w
f e a t u r e
W D
W B
W M
The WINDEV 20 window editor automatically detects the presence of a dark colored text on a dark background.
A UI error flags the text as it may not be readable.
Similarly the editor detects a light text on a light background.
Benefit provided by this version 20 new feature:
Automating common elements between several internal windows
allows for better reusability in projects
05 6
W D
W B
W M
GUI error: controls with
identical tooltip flagged
In the window editor, when performing a copy and paste of a
control, the tooltip is duplicated, and the developer doesn’t always remember to modify the content of the tooltip for the
new control.
In version 20, the window editor automatically flags two controls that have the same tooltip by generating a UI error.
• P lets you move a control (for example on top of a tab) without affecting its lineage (here, the control will not become
part of the tab, therefore the control will remain visible regardless of the tab).
• TAB displays or hides the editor tooltip, which is useful when
the control is small and must placed very precisely.
Benefit provided by this version 20 new feature:
With the new keyboard shortcuts, become a UI Ninja: quick, precise, efficient
063
n e w
f e a t u r e
W D
W B
W M
Optimization of the
update speed for
templates
The update speed for window templates has been optimized in
the case of multilingual projects.
f e a t u r e
W D
W B
W D
W B
W M
The new Update the display process lets you group the
code that updates the window controls: control content, state
(visible, grayed, ...), caption to update...
This process will be started asynchronously by calling the WinUpdateRequest function.
Benefit provided by this version 20 new feature:
Make centralizing code easier
061
n e w
f e a t u r e
W D
W B
REPORT EDITOR
W M
Copy/paste controls:
optimizing the image copy
The copy/paste feature in the window editor takes into account
the images used by the control: background image, border
image,...
The images found in an external directory are copied in the
project.
With the older versions of the editor, the images found in a
sub-directory of the project were still copied to the project directory. In version 20 these images are not copied anymore: developers keep things organized their way!
06 4
n e w
f e a t u r e
W D
W B
W M
Print preview: Ribbon
The print preview in WINDEV 20 has a ribbon to offer the end
user a better print configuration.
The ribbon makes setting up a print job a lot more friendly.
Benefit provided by this version 20 new feature:
Preserve the organization
n e w
f e a t u r e
Centralizing the code for
updating a window’s controls
The end of the irrelevant tooltip
060
n e w
It’s always nice to save time
GUI error: dark text on
dark (or light text on
light) flagged
Internal window template
f e a t u r e
Benefit provided by this version 20 new feature:
Window comparison is even more precise
Fewer operations to perform when resizing controls
n e w
Benefit provided by this version 20 new feature:
Improvement to a
window’s diff: style diff
A group of controls can be resized in a single operation, using
the anchor logic
059
A tab groups the most common commands: zoom, crosshair,
navigation in the report preview ...
W M
062
Controls spread!
In edit mode in the WINDEV 20 window editor, three new
alignment options are being introduced.
These options let you automatically define the largest possible
Benefit provided by this version 20 new feature:
Color blind people see life through rose colored glasses
n e w
f e a t u r e
W D
W B
W M
New keyboard shortcuts
for Drag & Drop
A pane on the ribbon lets you choose and configure the printer:
black and white or color, A3 or A4, portrait or landscape...
Four new keyboard shortcuts in the window editor make Drag
& Drop easier.
While moving a control via Drag & Drop, the follow keys act as:
• SPACE switch the image of the moved control from the “outline” mode to the “preview” mode. The preview mode displays the image of the moved control, the outline mode only
displays its outline, which is useful for large controls such as
tables or treemaps.
• C move the control’s point attached to the mouse. Successive
pushes alternate between the initial point, the center and the
four corners. This is very useful to place a control very precisely.
A pane groups the export features: Word, Excel, PDF, Email
with their parameters
18
19
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
067
Benefit provided by this version 20 new feature:
The ribbon brings a more modern and user-friendly interface
06 5
n e w
f e a t u r e
W D
W B
W M
W D
W B
W M
The report editor offers a preset control that lets you automatically display the page number and the number of pages.
In version 20, it becomes possible to trigger the reinitialization
of this type of control, during a break for instance, or at the end
of a print job.
This is a very useful new feature, for example when you print a
set of invoices and you want of course to number the pages of
each invoice independently.
The iResetNbPages WLanguage function is also available to
trigger the reinitialization by programming.
071
n e w
f e a t u r e
W D
W B
W M
In version 20, it becomes possible to send a value back at the
end of the report printing.
Simply return a value in the After printing the end of the
document process or assign the ..ReturnValue property.
The return value is retrieved by the iPrintReport function.
For example, the report can tell the application how many
pages were generated.
Benefit provided by this version 20 new feature:
W D
W B
A report may contain tables.
When exporting to Word a report containing tables, these tables are exported in “Word Table” format.
n e w
f e a t u r e
W D
W B
W M
Customizing Gantt,
Organizer and Scheduler
reports
W M
Export to Word: tables
too
070
Benefit provided by this version 20 new feature:
Aim right!
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
W M
The print preview generation for large documents has been accelerated in version 20.
The gain is about 20%.
The “9-image” mode becomes available on the image type
controls in reports.
This mode lets you define the behavior of an image in case the
report is resized.
The use of the “9-image” mode in reports follows the same operating mode as in windows.
Simply visually define the parts of the image that make up the
margins.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Faster preview
Easily carry over modifications to the analysis.
07 3
076
n e w
f e a t u r e
W D
W B
W M
In version 20, it becomes possible to change the background
image or PDF of a form report via programming.
It also now possible to activate or hide the display of this image
via programming.
Benefit provided by this version 20 new feature:
Control your reports’ background.
Change the format of the reports, the images remain perfect
074
n e w
f e a t u r e
W D
W B
W M
Improvement of a report
diff: style diff
n e w
f e a t u r e
W D
W B
W M
Analysis:
new, more compact,
storage format
(70% gain)
Form report: modification
of the background image
or pdf
Report: 9-image mode
Faster preview
W M
Benefit provided by this version 20 new feature:
f e a t u r e
Reports adapts better to different print formats
W M
W B
Tables remain tables in Word
n e w
Benefit provided by this version 20 new feature:
W B
W D
Benefit provided by this version 20 new feature:
068
In version 20, it becomes possible to define the vertical anchor
of a block.
This way it is easy to create a report in A4 format and to plan
blocks that will get bigger when printing in a different format.
W D
f e a t u r e
Analysis: Diff and branch
carry over
The report can return a return code to the application
072
Number as you wish
Report: vertical anchors
in reports
f e a t u r e
n e w
The Gantt report is a special report used to print data coming
from a Gantt chart.
WINDEV 20 lets you define an internal report to customize the
display of a task in a Gantt chart.
This concept is also available for the Organizer and Scheduler
reports.
Benefit provided by this version 20 new feature:
069
n e w
075
Benefit provided by this version 20 new feature:
Customize!
066
DATA MODEL
EDITOR
(DATA SCHEMA)
Report: return value
In version 20, it becomes possible to compare two versions of
an analysis and to report the modifications between these two
versions.
It is possible to report the modifications performed on:
• the description of a data file
• the descriptions of items
• the links between data files
• the cardinality of the links
• the integrity constraints
• the database connections
• the full-text index
• the description of the analysis.
The development of branches for your applications is greatly
simplified for modifications performed to the data structure.
Crosshair in the preview:
to make reading easier
The print preview feature in version 20 offers a crosshair target.
This crosshair makes reading tables with a lot of data easier.
When the end user points to a piece of data with the crosshair,
it is easier to find the row and column associated with that
piece of data, such as a title for instance.
f e a t u r e
Report: reinitialization of
the page numbers
A pane lets you perform searches inside the report.
A pane groups all the annotation functions.
n e w
In version 20, a new internal storage format is available for
analyses.
The “.ana” directory containing the files that describe the
analysis is simplified and compacted.
In the case of a large size project, the number of files present in
the analysis directory decreases 60%, and the storage size
70%.
One of the consequences of these gains is that checking out an
analysis from SCM is much faster.
This new format becomes the default format for new analyses.
An option lets you activate this format for existing analyses.
Benefit provided by this version 20 new feature:
The analysis directory becomes more compact
Report comparison is enhanced in version 20.
You can now list the style differences between two reports.
This new feature lets you carry modifications over between two
reports.
07 7
n e w
f e a t u r e
W D
W B
W M
composite keys: tooltip in
the project pane
Benefit provided by this version 20 new feature:
Your reports have style
In version 20, the project explorer displays a tooltip when hovering a composite key.
This tooltip contains the components of the composite key.
There’s no need to open the data model editor, then the data
20
21
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
file description to find out the composition of a composite key!
gets stuck, the remaining Action Plans are not blocked.
In this case, the Software Factory will end the blocked Action
Plan, it will specify the error in the return code and move on to
the next Action Plan.
The factory can keep going even at night!
SCM
(TEAM WORK)
WDMSG (AUTOMATED TRANSLATION SOFTWARE)
Benefit provided by this version 20 new feature:
No more blockages
083
Benefit provided by this version 20 new feature:
Tedious operations eliminated.
078
n e w
f e a t u r e
W D
W B
W M
The project explorer displays the data files of the analysis.
The data file description can be opened from the project explorer. The data model editor opens, positioned on the corresponding data file (treeview as well).
Benefit provided by this version 20 new feature:
Proper positioning from the get go
W D
W B
W M
08 0
n e w
f e a t u r e
W D
W B
W M
Analysis: branch copy
In version 20, the comparison between two branches of a project offers to display the differences between the data models,
and lets you carry these differences over from one branch to the
other.
(see new feature 075)
The “Open Project” action of the Software Factory offers a new
option allowing the opening of projects developed with an
older version of WINDEV.
The project will be automatically recompiled using the latest version.
Benefit provided by this version 20 new feature:
No need to “manually” recompile the projects
084
Easier branch management.
08 1
QUERY EDITOR
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
Queries: limit the results to
“TOP -my parameter-”
It is already possible to ask a query to only return a specific
number of rows (records): the first 50, the first 100, the last
200, ...
In version 20, you can pass as a parameter the maximum number of results you want.
The parameter can be a literal value (return the first 5 results) or
a percentage (return 10% of the results).
Being able to change this parameter at run time is useful for instance in a Web site, when the site lets the user present the results by sets of n rows.
When displaying the differences between two versions of a
process, it can be difficult to see what was changed when the
line is a little long or when the change only involves a few characters (a value replaced by another one for instance).
In version 20, the display of the differences evolves: the modified line is colored, and the differing characters are also colored
(with another color).
Benefit provided by this version 20 new feature:
Differences jump at you.
CONTINUOUS
INTEGRATION
(SOFTWARE
FACTORY)
SELECT TOP {pMaxCustomerNbr}
Customer.CustomerID AS CustomerID,
Customer.LastName AS LastName,
Customer.FirstName AS FirstName,
Customer.Email AS Email,
Customer.RewardPoints AS RewardPoints
FROM
Customer
082
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
W M
Maximum duration OF
an Action Plan
Top queries!
In version 20, it becomes possible to set the maximum amount
of time for running an Action Plan in the Software Factory.
This new feature improves security: if one of the Action Plan
22
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
W B
W M
In version 20, the Software Factory offers a
new action: adding elements to the project.
Code comparison:
detailed display
W M
W D
New action:
adding
elements to the
project
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
Opening older version
projects
Analysis: positioning of
the treeview
079
n e w
Reminder: WDMSG is an optional tool of WINDEV, WEBDEV
and WINDEV Mobile used to industrialize the translation of
projects. Its dictionary automatically learns from the translations
already performed.
Benefit provided by this version 20 new feature:
More flexibility
085
n e w
f e a t u r e
W D
Running an
Action Plan
from a WINDEV
application
Thanks to the ActionPlanExecute WLanguage function, you can trigger the execution of an Action Plan instance in the
Software Factory directly from a WINDEV
application.
This lets you easily automate the running of
Action Plans: for example, run the Action
Plan that tests the application from a batch
application.
The result of the Action Plan execution can
be retrieved by providing a monitoring procedure to the ActionPlanExecute function.
Benefit provided by this version 20 new feature:
Control the Software Factory from another
application
086
n e w
f e a t u r e
W D
W B
W M
Integration with the
Software Factory
In version 20, WDMSG is completely integrated with the Software Factory.
WINDEV 20, a golden version:
Design & Performance
Benefit provided by this version 20 new feature:
New actions are offered for:
• checking out the resources to translate
• checking in the resources from your Action Plan
You choose!
Benefit provided by this version 20 new feature:
08 9
Automate the translation of your projects with the Software Factory
087
n e w
f e a t u r e
W D
W B
W M
Displaying the
custom-folders
When selecting the project elements to check out for translation, WDMSG now displays the custom-folders.
The presentation of the project elements is similar to the one in
the WINDEV editors.
n e w
f e a t u r e
W D
W B
W M
UI ARCHITECTURE - OOP
MODEL-VIEW-PRESENTER (MVP)
MVP: what’s behind the
acronym
M: Model. This is the class that contains the business data, as
well as the business logic.
V: View. This is the window with its controls, its local procedures, processes...
P: Presenter layer. It groups all the processes needed to display
the data, the layout as well as the button processes ...
Benefit provided by this version 20 new feature:
You know everything about the MVP
Benefit provided by this version 20 new feature:
Consistent presentation
090
CODE/UI
SEPARATION: MVP
MODEL - VIEW PRESENTER
One strength of WINDEV is to develop from the UI window: the
controls are created, and the code is then written directly in the
controls.
This method guarantees fast development, and easy maintenance.
Another method, originating from the object oriented programming, consists in developing separately the application’s interface and code.
This architectural pattern is called “model-view-presenter” (for
the specialists, this is a derivative of the “model-view-controller” MVC pattern).
Version 20 of WINDEV also supports the “model-view-presenter” method.
n e w
f e a t u r e
W D
W B
f e a t u r e
W D
W B
W M
MVP RAD
DEVELOPMENT METHOD
0 88
n e w
In order to facilitate MVP developments, two new RAD patterns
are being introduced:
• MVP form RAD
• MVP Table RAD.
Depending on the structure of the data file, the MVP RAD generates the 3 MVP layers: Model, View, Presenter.
The folowing are generated:
• a class for the model, with the data access layer
• a class for the presentation layer
• the window corresponding to the view
This RAD pattern also allows you to familiarize yourself with this
programming architecture.
All the development
methods are
available with
WINDEV 20.
W M
Benefit of “model-viewpresenter” (MVP)
The “model-view-presenter” architecture lets you separate the
core code from the interface (windows).
This architectural approach allows for a structured object programming, but requires a higher level of abstraction.
This approach “forces” the separation of the code from the UI
for the entire window and doesn’t allow you (theoretically) to
develop a window without having structured the processes beforehand.
This approach is intended to facilitate the long-term developments.
The traditional programming method is, of course, still available
with WINDEV.
Example of code generated by RAD
Benefit provided by this version 20 new feature:
The object RAD!
091
n e w
f e a t u r e
W D
W B
W M
Model-View-Presenter:
How to easily use it?
With WINDEV 20, manually (without using RAD) building an
“MVP” UI is easy for OOP adepts.
Here are the steps:
• create a class that corresponds to the model, and that contains the business data
• create a class that corresponds to the presenter layer and that
uses the association (new feature #113) with the model created in the previous step
• in the presenter class, if needed, you can overload members,
and add formatting properties, behaviors ...
• create the window (the “view”) in the WINDEV editor, as
usual
• instantiate the presentation class and the model in the global
declaration code of the window at the window’s level
• at the control level define the binding to the presentation
layer (which exposes the model members and the overloads)
• enter the code (for example SourceToScreen) that updates
the controls in the “update the display of the window”
process (see new feature #63)
• for controls that trigger actions (buttons, ..) enter the code of
these controls that call methods of the presentation class.
This is the “manual” method for implementing “MVP”. Let’s remember though that the “MVP RAD” automatically manages
all these steps!
Benefit provided by this version 20 new feature:
Complete control for the OOP specialists
24
25
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
the developer now has a new call syntax at his disposal.
You can specify the name (and the value) of only the parameters used:
WLANGUAGE
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
W M
Safer procedure calls.
Internal Procedure
An internal procedure is a procedure defined inside a process;
for example, in the process of a control (button click for instance), in the process of a window, in a local or global procedure,…
This internal procedure can only be called from the process
where it was defined.
The internal procedure has access to local variables of the
process that contains it.
This is an elegant and simple syntax to define the equivalent of
the lambda functions. In particular, an internal procedure avoids
defining global procedures that serve only locally.
You can define several internal procedures in a process.
You can define an internal procedure inside an internal procedure.
You can also pass an internal procedure to a function (that expects a procedure as parameter)
094
n e w
f e a t u r e
W D
W B
W M
Named parameters:
syntax 2 (better?)
In version 20, the call to a procedure can also be done by first
filling its parameters in a readable way, then triggering the call.
For example, to call the procedure:
PROCEDURE ProcessString(InputString,
mentString = “”)
Option = 0, Comple-
Like with syntax 1, the optional parameters that are not needed
can be ignored.
Benefit provided by this version 20 new feature:
A better code readability
093
n e w
f e a t u r e
W D
W B
W M
Named parameters:
syntax 1
W M
W B
n e w
f e a t u r e
W D
W B
W M
WINDEV 20 revolutionizes parallel programming.
Recent processors have become more powerful by increasing
the number of cores available.
To take advantage of this evolution, application must now embrace parallel processing.
Version 20 of WINDEV provides instantly useful tools to facilitate parallel processing:
• the type: ParallelTask
• the family of functions:Ptxxx
• the keyword: MyTask
This parallel programming method is mainly useful for the
“process” type operations.
Thanks to the new version 20, an application can run in parallel
a large number of independent procedures without worrying
about low level thread management: synchronization, pool
management, ...
A “continuation” is a task that will be executed at the end of
one or more tasks.
Thanks to the “continuations”, the developer doesn’t have to
manage the wait for a running process in a thread or the synchronization of the ending of several threads before starting a
new operation.
When several tasks are running in parallel, you often need to
synchronize them.
For example, a task can only be executed when a set of preliminary tasks have completed.
To organize the execution of parallel tasks, version 20 offers
new functions:
• PTExecuteAfter: the task will be executed when the specified tasks is done.
• PTExecuteAfterOne: the task will be executed when one of
the specified tasks is done.
• PTExecuteAfterAll: the task will be executed when all the
specified tasks are done.
• ...
Take advantage of the power of the new processors
Benefit provided by this version 20 new feature:
Always be on the right page
099
Easily orchestrate the execution of a succession of tasks
098
n e w
f e a t u r e
W D
W B
W M
PDF File: page extraction
n e w
f e a t u r e
W B
W M
When declaring a procedure, you can typecast the parameters.
For example:
PROCEDURE ProcessString(sInput is string)
This precision allows WINDEV to check as early as compilation
time that the type of parameter passed is the expected type.
In version 20, this syntax is lighter. “ is” becomes a “comfort”
word and can be omitted.
The declaration becomes:
PROCEDURE ProcessString(sInput string)
Benefit provided by this version 20 new feature:
A little feature for developers with coding habits: code faster
100
n e w
f e a t u r e
W D
W B
W M
New syntax for the
“Dialog” function
The Dialog function lets you display a “rich” message box: the
text and the buttons can be configured without having to create a specific window in the project.
The Dialog function evolves in version 20.
In the older versions, a wizard would open for entering the text
and caption for the buttons.
A new syntax in version 20 lets you directly specify an array of
strings that contains this information.
sResponse is string
sResponse=Dialog( “The order form has been generated”, [ “Send by email”, “Send by fax”, “Do not
send” ] )
It becomes possible then to create dialog boxes directly by programming.
Benefit provided by this version 20 new feature:
Clear code for clear boxes
101
n e w
f e a t u r e
W D
W B
W M
New syntax of the “Input”
function
The WLanguage Input function benefits from the same evolution as the Dialog function where you can directly specify the
caption of the displayed buttons in the code.
Benefit provided by this version 20 new feature:
Increased clarity.
A PDF document can have several pages.
In version 20, the PDFExtractPage function lets you extract a
PROCEDURE ProcessString(InputString, Option=12, String2=””)
W D
Simplified parameter
syntax
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
In version 20, you can call a procedure and specify its parameters by their names.
For example, for a procedure whose prototype is:
given page from the document, and returns an image of this
page.
This image can be used in a window, a report, an email, ...
W M
Parallel programming:
Sequencing of Parallel
Tasks (Continuation)
Parallel programming:
don’t worry about
threads anymore
Internal procedure use example: integrated callback
097
Total readability.
W D
W B
Traditionally, parallel processing has been programed using
threads.
Programming an application that executes a lot of threads
whose results depend upon each other can be quite complicated.
The application must control the number of threads executed in
parallel in order not to overload the computer, synchronize operations, ...
In version 20, the new advanced type ParallelTask is being introduced to simplify thread management.
A ParallelTask type variable allows you to:
• specify the procedure to execute in a task
• provide the procedure’s parameters
• retrieve the return value of the task
• specify whether the task uses the database (whether it uses
HFSQL contexts)
• specify whether the task accesses UI elements
• ...
Benefit provided by this version 20 new feature:
f e a t u r e
W D
Benefit from the multitasking power without having to manage
threads.
ProcessString.InputString = “my string”
ProcessString.ComplementString = “string 2”
ProcessString()
n e w
f e a t u r e
Benefit provided by this version 20 new feature:
the call can be made as follows:
095
n e w
Parallel programming:
new ParallelTask type
ProcessString(String2:”Bingo”, InputString:”my string”)
In this call, the optionparameter is not specified (it takes the
default value), and the order for passing parameters is different.
The parameter order is not important anymore.
This syntax is especially useful when a procedure expects a large
number of optional parameters, and only a few ones have a
value.
09 2
096
26
27
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
10 2
n e w
f e a t u r e
W D
W B
W M
New advanced type
“httpRequest”
MyRequest is httpRequest
MyRequest.URL
= “”
MyRequest.Header[“AuthToken”]
= “AB123456CDE789F0”
MyRequest.User
= “admin”
MyRequest.Password
= “pwd”
// Request execution
MyResponse is httpResponse = HTTPSend(MyRequest)
IF MyResponse.StatusCode = 403 THEN
Error(“Access denied”)
ELSE
// The identification was successful
sMyToken is string = MyResponse.Header[“AccessToken”]
...
END
Benefit provided by this version 20 new feature:
Clearer call
n e w
f e a t u r e
W D
W B
W M
5 new options for HTTP
requests
In version 20, 5 new options for building HTTP requests are offered in the new advanced type httpRequest:
• ability to specify the HTTP verb (GET, PUT, POST, COPY...)
• ability to add additional headers in the request (especially useful for calling REST web services)
• ability to set the request timeout
• ability to specify callbacks or progress bars to follow the sending of requests and reception of the response
This new feature is compatible with the HTTP and HTTPS protocols.
Benefit provided by this version 20 new feature:
More granular configuration of your HTTP requests
104
n e w
f e a t u r e
W D
W B
This new type lets you directly access the details of the header
and the content of the response without having to decode the
buffer returned by the HTTP server.
Benefit provided by this version 20 new feature:
The powerful HTTPRequest function expects a large number of
parameters:
In order to make it easier to pass these parameters, the options
needed for sending an HTTP request can now be grouped into
the new WLanguage advanced type httpRequest.
Also, for sending and receiving, in an httpRequest type variable, you can specify:
• a progress bar control that will display the completion percentage of the request
• or a callback procedure and the frequency at which this procedure will be called.
Here’s the code in version 20, much more compact and readable:
103
httpResponse.
Less code...
1 05
In older versions, the response to an HTTP request was a set of
raw data to analyze in the program.
In version 20, all the elements of a response to an HTTP request
are now accessible in the WLanguage new advanced type
f e a t u r e
W D
W B
W M
Secure remote command
execution:
“SSH” functions
A server can support the SSH secure protocol to receive remote
commands.
In version 20, the new family of functions SSH lets you connect
to an SSH server.
The new functions of the SSH family let you connect, open a
session, send commands to execute and retrieve the result of
these commands.
Benefit provided by this version 20 new feature:
Control your remote servers with SSH!
1 06
n e w
f e a t u r e
W D
W B
W M
Benefit provided by this version 20 new feature:
Better compliance with international encryption standards, increased interoperability.
n e w
f e a t u r e
W D
W B
Benefit provided by this version 20 new feature:
No need to declare intermediate structures
n e w
f e a t u r e
W D
f e a t u r e
W D
W B
W B
W M
Search on advanced type
properties and classes
Thread programming requires events to synchronize the operations.
The two new advanced types AutomaticEvent and ManualEvent simplify the declaration and support of “event” objects.
You don’t need to uniquely name each event.
Furthermore, events declared with the new advanced types in
version 20 are automatically destroyed when exiting the variable’s reach.
No more risk of forgetting to call EventDestroy!
My
version
is
version
20
The WLanguage Seek function has
increased power.
In version 20, it can starts
searches inside properties of
WLanguage advanced types and
in class properties.
Benefit provided by this version
20 new feature:
W M
Arrays of arrays: Nesting
of container types
To handle structured data, we often need to nest sets of data
into other sets of data.
In version 20, it is now possible to directly nest container types
(arrays, associative arrays, fixed arrays, queues, stacks and lists)
between each others without having to declare intermediate
109
Benefit provided by this version 20 new
feature:
The code is safer ...
WD WB WM
Filter
in “FOR
EACH
array”
n e w
f e a t u r e
W D
W B
The FOR EACH syntax
for reading arrays improves in version 20 and
now lets you filter the array elements.
For example, you can read an
array containing a list of customers, and not process the customers whose zip code starts with
“94” using the following syntax:
W M
Grouped multi
assignments
In version 20, the “multi assignment” syntax evolves and lets
you assign the same value to several variables at once.
For example:
(x, y, z) = 0
sets the three variables x, y and z to zero
Benefit provided by this version 20 new feature:
// Find the customer for 94
FOR EACH Customer OF arrCustomer WITH ZipCode[=”94”
// Process here
END
Less code.
110
W M
Thread: New advanced
types : AutomaticEvent
and ManualEvent
a is array of arrays int
108
n e w
112
DES, 3DES (triple DES) and AES are encryption algorithms.
AES is the most recent and most secure version.
This encryption mode is validated by the NIST (National Institute
of Standards and Technology). It is used by American agencies
to encrypt secret documents.
DES is the older encryption standard that can be used to decode older documents.
Two new WLanguage functions are being introduced: CryptStandard and UncryptStandard.
These functions are used to encrypt data using the AES, DES or
3DES algorithms.
The choice of block sequencing, padding and IV (Initialization
Vector) are supported.
These new functions are available for the Windows, Android,
iOS, Java and PHP platforms, which allows for easy exchange of
encrypted data between WINDEV, WEBDEV and WINDEV Mobile applications.
1 07
111
Seek, find!
DES, 3DES and AES
standard encrypting
functions
W M
New advanced type
“httpResponse”
n e w
structures.
All the nesting combinations are possible:
• array of arrays
• array of associative arrays
• associative array of arrays
• array of queues
• array of stacks
• ...
The declaration only takes 1 line!
n e w
f e a t u r e
W D
W B
W M
Direct reading
of a multi value
Benefit provided by this version 20 new feature:
Even more readable source code.
In version 20, it becomes possible to directly retrieve the first
value of a multi value without bracketing the destination variable with parentheses.
The two following pieces of code are equivalent:
(my_variable) = ProcMultiReturn()
my_variable = ProcMultiReturn()
Benefit provided by this version 20 new feature:
Simpler code.
28
29
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
113
n e w
f e a t u r e
W D
W B
W M
OOP: FRONT DESIGN
PATTERN
(associated objects)
The following parameters can be set:
• type of image: color, black & white
• using the loader
• single-sided or double-sided digitalization
• contrast level
• brightness level
• ...
117
The EmailStartSMTPSession WLanguage function lets you
connect to an email server.
In version 20, the new optionSSL constant lets you use a secure SSL connection to the server.
The servers ORANGE, FREE, GMAIL... use this protocol for instance.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
W D
W B
W M
Sending secure email:
SMTP SSL
Secure connection
Reduces the number of lines of code
114
Control your scanners via programming.
f e a t u r e
116
W M
Set the scanner’s parameters before scanning a
document
n e w
f e a t u r e
W D
W B
W M
Reading emails: IMAP
marks
The IMAP protocol lets you read emails on a server and keep
the emails on this server. The IMAP protocol sets “marks” on
each message. read, draft, ...
The new EmailGetIndicator
WLanguage function lets you
directly access the marks.
Benefit provided by this version
20 new feature:
Better support of IMAP
The new TwainProperty
property lets you consult
and modify a large number
of properties of a TWAIN
scanner.
If several scanners are accessible, the scanner can be
chosen via the TwainSelectSource WLanguage
function.
W B
12 1
W M
W D
W B
W M
Benefit provided by this version 20 new feature:
64-bit support.
118
n e w
f e a t u r e
W D
W B
W M
Removing spaces in a
string: New WLanguage
constant “NoInsideSpace”
Two new constants,ccIgnoreInsideSpace and tccIgnoreInsideSpace, are being introduced in version 20.
The ccIgnoreInsideSpace constant lets you format strings
(using StringFormat) by deleting spaces.
The tccIgnoreInsideSpace constant lets you perform searches
in an array (using the ArraySeek function) and ignore the
spaces found in the strings.
You can also delete a given character using the new constants
sscInside, ...
Here. the texts were added to the image by programming
Benefit provided by this version 20 new feature:
Write on images
12 2
Benefit provided by this version 20 new feature:
More compact code.
119
n e w
f e a t u r e
W D
W B
W M
Getting the command line
that started a process
The ExeListProcess function evolves. In version 20, it lets you
recover the command line that started a process on the computer.
Typically this function allows you to choose one or more
processes to stop based on their parameters.
12 0
n e w
f e a t u r e
W D
W B
Benefit provided by this version 20 new feature:
Easier to code processes in response to status change
f e a t u r e
W D
W B
W M
For financial transactions, the Chinese alphabet
uses special characters, difficult to falsify and different from the regular Chinese characters.
The NumToFinancialWritingChinese function
converts a number into a string of Chinese financial characters.
Benefit provided by this version 20 new feature:
Print checks on your Chinese checkbook!
n e w
f e a t u r e
W D
W B
W M
Advanced icon type:
7 new features
W M
The new SysDetectLockedSession WLanguage function, as its
name suggests, notifies you when the user’s session is locked
(or unlocked).
This is very useful, for example, to refresh a dashboard when
the user unlocks his computer.
n e w
New “NumToFinancialWritingChinese” function
123
“i’m in, i’m out”:
SysDetectLockedSession
printer has 10 trees replanted immediately. Also, we favor pulp
coming mainly from recycled wood (from furniture mills for instance) and from controlled forest clearing. Also our products
are available without packaging or paper documentation on request. A license for 10 developers can be supplied upon request
with only 2 sets of paper documentation for instance.
f e a t u r e
The new dTextRTF WLanguage function lets you insert rich text
(in RTF format) into an image.
This function applies to an image control.
Kill a process
PC SOFT prints “paper” documents, PC SOFT, the
paper supplier or the printer, (FSC - Forest Stewardship Council
- certified and PEFC - Program for the Endorsement of Forest
Certification - certified) replants as many trees as used for the
printing. The FSC label was created by the FSC NGO, which includes among others Greenpeace, Friends of the Earth and the
WWF. For example printing 100,000 copies of a 68-page documentation on glossy paper consumes 10 trees: PC SOFT or the
n e w
Add an RTF text to an
image: New “dTextRTF”
function
Benefit provided by this version 20 new feature:
ENVIRONMENTAL POLICIES
. When
W D
The ce family of functions lets you access mobile devices on
Windows CE and Windows Mobile from a WINDEV application,
for example to copy or retrieve files from the device. These
functions are used a lot for controlling industrial devices on
Windows CE.
In version 20, the functions of the ce family are available for 64bit WINDEV applications.
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
“ce” functions in 64-bit
The new associated attribute in WLanguage lets you specify
that a class is “associated” with another class.
Let’s assume a class A and a class B.
Class B can be associated with class A.
In this case, the members, properties and public methods of
class B appear as members, properties and public methods of
class A. We can say that A is a “front” for B.
you can overload these members in class A, to overload their
behavior. This new feature avoid writing tedious rebounds in
the MVP architecture.
Thanks to this new feature, it becomes very easy to implement
the “Front” Design Pattern in applications.
No need to code all the “rebounds” from A to B!
115
n e w
The advanced Icon type benefits from 7 new features in version
20:
• mask
• preservation of the initial format (image depth) when saving
• New “Palette” property to read the color palette
• support for 2-color BMP
• support for 16-color BMP
• support for 256-color BMP
• initialization of the transparency color with an off-palette
color.
Benefit provided by this version 20 new feature:
Even richer icons!
30
31
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
124
n e w
f e a t u r e
W D
W B
1 28
W M
SysIcon functions
The WLanguage functions in the SysIcon family (SysIconAdd...) were only accepting images. In version 20 they also
accept theIcon type variables.
Benefit provided by this version 20 new feature:
Who can do more can do less
125
n e w
f e a t u r e
W D
W B
W M
Geographical coordinates: geoAzimuth and geoDistance functions
The geoDistance and geoAzimuth WLanguage functions are
available for applicatins developed with the new version 20.
these functions are used to calculate the distance and orientation between two points, for example points from the new
Map control.
n e w
f e a t u r e
W D
W B
W M
MATLAB is a software dedicated to scientific calculations.
Thanks to version 20 of WINDEV, applications can work in tight
collaboration with Matlab.
The MatLab family of WLanguage functions allows you to:
• save and reload a MatLab workspace
• list the MatLab variables
• read and modify the value of a MatLab variable
• execute MatLab operations or functions
• ...
Project comparison evolves in version 20.
It is now possible to also compare the automated tests between
two projects. You can carry differences over.
This new feature lets check the evolution of the automated
tests between two branches of a project in SCM for instance.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Open your applications to MatLab
W D
W B
You can modify by programming the number of options in a
Radio Button or Check Box control.
The two new WLanguage functions, RadioButtonCount and
CheckBoxCount enable you to find out the number of options
in a Radio Button or Check Box control.
Useful for checking and clearing the options of a check box
control by programming, without having to specify the number
of options in “hard” in the code, so there’s no risk when modifying the control.
n e w
f e a t u r e
W D
W B
W M
The REST Web services are a special family of Web services that
rely on the HTTP protocol.
These Web services use the “HTTP verbs” to describe their actions.
Version 20 of WINDEV offers two new advanced types: restRequest and restResponse as well as a new WLanguage function, RESTSend to facilitate the use of REST Web services.
W D
W B
StringToTime
The new WLanguage function, StringToTime, lets you convert
a time stored in a character string into a Time variable.
You can specify the format to analyze.
Benefit provided by this version 20 new feature:
Better readability of the SQL code
135
n e w
f e a t u r e
n e w
f e a t u r e
W D
W B
W D
W B
W M
The code editor in version 20 also offers syntactic coloring of
the HTML language directly in strings and WLanguage code.
It’s a lot easier to read!
W M
Benefit provided by this version 20 new feature:
Put yourself in the driver’s seat with the new control functions.
CODE EDITOR
133
1 30
W M
W M
You can REST on your Web services.
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
Assisted input by family
W M
SOAP Web services:
“attribute” attribute
f e a t u r e
W B
6 new WLanguage functions are being introduced to help control Radio Buttons, Check Boxes, tab pane, ribbon as ell as the
ActionBar control on mobiles.
The execution simulator for mobile can also be controlled in test
scenarios.
Benefit provided by this version 20 new feature:
Dynamically adapt your UI
n e w
W D
Control freek
REST Web services
Benefit provided by this version 20 new feature:
127
f e a t u r e
Test comparison
132
WEB SERVICES
W M
New RadioButtonCount,
CheckBoxCount functions
n e w
HTML syntactic coloring
1 29
f e a t u r e
131
Better monitoring of automated tests.
Geographic calculations are now possible in WINDEV applications
n e w
AUTOMATIC TESTS
EDITOR
MATL AB native call: new
family of functions
Benefit provided by this version 20 new feature:
126
SQL code directly in some WLanguage code without using the
query editor.
The assisted code input now offers potential function families,
which significantly reduces the list of choices!
In the case of SOAP Web services, a method of the Web service
can return an object.
You can force the serialization of one or more members as an
XML attribute instead of a child tag.
Benefit provided by this version 20 new feature:
WSDL generated in the desired format
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
A much faster assisted input
It is noon, sorry, 12:00 PM ...
134
n e w
f e a t u r e
W D
W B
W M
SQL syntactic coloring
The code editor in version 20 offers SQL language syntactic coloring directly in strings, as well as in the WLanguage code.
This new feature is very useful when you need to enter your
32
33
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
138
n e w
f e a t u r e
W D
W B
W M
140
Linked multilingual
messages
Better readability of the HTML code
136
n e w
f e a t u r e
W D
W B
W D
W B
144
W M
When moving a project (copy for test) the project doesn’t need
to be recompiled on the host machine. It is instantly operational.
Benefit provided by this version 20 new feature:
Comfort
The flag icon indicates that the message is used in several locations in the code. A modification will therefore impact all the locations.
DEBUGGER
141
n e w
f e a t u r e
W D
W B
142
Evaluate the impact of a modification
Benefit provided by this version 20 new feature:
Better visibility
137
139
n e w
f e a t u r e
W D
W B
W M
f e a t u r e
W D
W B
W M
Procedure automation:
Start in the main thread
Cross-references
In the code, when the cursor is positioned on a call to a method
or a procedure, the F2 keyboard shortcut lets you position the
cursor in the code of the method or procedure.
When there is ambiguity about the name, a window comes up
for choosing which method or procedure to display.
In version 20, this window benefits from several improvements,
among which:
• sort
• find
• default positioning in the same class if the code editor, is already in this class
• ...
n e w
The code editor lets you add automation to a procedure: scheduled start via timer, start as background task in a thread, ...
In version 20, you can specify that a procedure will always run
in the main thread of the application, even when the call to the
procedure is done from a secondary thread.
It is useful to force the execution of a procedure to the main
thread because it is the only thread that can handle the UI.
Benefit provided by this version 20 new feature:
Make thread programming easier.
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
The debugger in version 20 lets you copy the state of an application’s execution stack.
This new little feature is very useful for adding the execution
stack into an incident report for instance.
Benefit provided by this version 20 new feature:
Copy, paste.
XML
W M
Selection of the class
members to display in
debug mode
The debugger lets you display the objects (instances and classes)
being debugged.
The developer sometime only wants to follow the value of
some specific members.
In version 20, it becomes possible to select the members of a
class that will be displayed in the debugging pane.
Benefit provided by this version 20 new feature:
Easier class debugging
143
n e w
f e a t u r e
W D
W B
W M
Breakpoint with loop
counter
When debugging a loop (FOR, WHILE...), the developer may
want to stop only at the 35th iteration for instance.
In version 20, it becomes possible to add a loop counter on the
breakpoints and to specify after how many times through the
loop the breakpoint should be triggered, or to modulate the
breakpoints.
Benefit provided by this version 20 new feature:
Stop easily when you start feeling loopy!
Benefit provided by this version 20 new feature:
W M
Copying the execution
stack in the clipboard
W M
A debugging without interruption!
Easier to analyze compilation errors
W B
During debugging, you can access the source code of some execution stack levels, while the source code of other stack levels
may be inaccessible such as for instance the stack levels in a
component.
Version 20 highlights the stack levels whose source code is accessible to make debugging easier.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
W D
Highlighting the
accessible stack levels
145
When a developer traces step by step the execution of a
process, it is very painful to be rudely interrupted by the execution of a timer from the application being debugged.
In version 20, it becomes possible to deactivate the timers during a step by step debugging phase.
The flag lets you access the crossed references, and see where
the message is used
f e a t u r e
Sturdy stacks!
Timer deactivation during
debugging
In case of a compilation error, the code editor can offer an automatic correction of the error.
For example, the code editor can offer to automatically rename
all the occurrences of a variable when its name is changed.
In version 20, a small light bulb appears directly in the error
pane, above the icon for the error, to offer the automatic correction.
n e w
Benefit provided by this version 20 new feature:
W M
Presentation of the
automatic correction of
the compilation errors
f e a t u r e
Moving projects:
no more recompilation
A multilingual message can be copied/pasted in several locations in several processes of a project.
By default, these messages remain linked. modifying a message
also modifies the other ones. Which is not always what you
want ...
In version 20, an icon flags a multilingual message that is used
in several locations in the code.
The popup menu of the icon lets you view the usage list.
Benefit provided by this version 20 new feature:
n e w
146
n e w
f e a t u r e
W D
W B
W M
Improved XML
serialization
In version 20, a new option lets you generate nesting for class
aggregations.
XML serialization has improved.
The class aggregation is clearly represented now in the generated XML document.
Benefit provided by this version 20 new feature:
Serialization respecting class aggregations.
147
n e w
f e a t u r e
W D
W B
W M
“attribute” attribute
When serializing an XML class, it becomes possible to choose
whether a member must be serialized as a tag or as an attribute.
Benefit provided by this version 20 new feature:
XML document generated in desired format
Easier to move inside the code.
34
35
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
AUDIT FOR
OPTIMIZATION
HFSQL
1 50
148
n e w
f e a t u r e
W D
W B
The dynamic audit flags non-fatal errors that may cause malfunctions in the application.
In version 20, the audit also flags a Date type control assigned
by programming to an invalid date.
Benefit provided by this version 20 new feature:
n e w
W D
W B
W M
The HFSQL Control Center is the tool of choice for HFSQL server
administration.
In version 20, The HFSQL Control Center gets a facelift for a
better user friendliness.
The main improvement is that the main window of the Control
Center now offers a navigation by tab.
Another expected improvement is the evolution of the querier.
Benefit provided by this version 20 new feature:
Correct date required
149
f e a t u r e
HFSQL Control Center:
more useful, richer
W M
Dynamic audit: invalid
date in a date control
n e w
THE NEW HFSQL CONTROL CENTER.
Try it, you’ll adopt it instantly!
f e a t u r e
W D
W B
W M
Dynamic audit:
optimization of the
processing of zip and 7z
Did you know it? Extracting a large number of files from a
“zip” or “7z” archive by performing a loop on the zipExtractFile function is inefficient. The zipExtractFileList
function extracts a list of files in a single operation, and is much
faster.
The dynamic audit in version 20 detects this case and flags it.
Benefit provided by this version 20 new feature:
1 51
n e w
f e a t u r e
W D
W B
W M
HFSQL Control Center:
detachable tabs
In version 20, the HFSQL Control Center fully benefits from a
multi-screen configuration.
The tabs of the HFSQL Control Center in version 20 are detachable from the main window, and can be positioned wherever
you want.
You can place these tabs side by side to edit them in parallel for
instance.
Decompress faster!
NEW VERSION 20:
A GREAT VINTAGE
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Ability to take advantage of the full display area.
152
n e w
f e a t u r e
W D
W B
Execute several request simultaneously!
W M
HFSQL Control Center:
Simultaneously edit
several queries
In version 20, it becomes possible to simultaneously edit the
content of several data files or queries.
Each element is viewed in a tab, and it’s possible to open as
many tabs as you want.
153
n e w
f e a t u r e
W D
W B
W M
HFSQL Control Center:
new querier
The HFSQL Control center includes an integrated querier.
For better ease of use, the HFSQL Control Center querier
evolves in version 20.
Among what’s new, it now offers:
• syntactic coloring of the SQL code entered
• the automatic completion for SQL commands, file names and
item names
• query backup
• the list of the last queries used.
You can execute a query in a transaction, and therefore cancel
queries.
Error return codes have been improved (row and column number).
36
37
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
query.
All the SQL views created are kept on the HFSQL server, and
they can be reused from the applications accessing the database.
The application can create queries on these SQL views.
An application can use SQL views to not be dependent on the
physical organization of data in the database.
Benefit provided by this version 20 new feature:
based on SQL views don’t need to be recompiled!
The SQL views bring stability to the application’s code, avoiding
having to redeploy the application.
No recompilation (no redeployment...)
159
Easier to type queries.
f e a t u r e
W D
W B
W M
HFSQL Control Center:
query history
Benefit provided by this version 20 new feature:
f e a t u r e
W D
W B
W M
Separation between physical structure and SQL query
1 57
n e w
f e a t u r e
W D
W B
W M
n e w
f e a t u r e
W D
W B
W M
When the structure of a data file changes, the applications
Each update to version 20
entitles you to 15 inquiries
with the free PC SOFT Technical Support.
In version 20, your teams
benefit from the free technical support!
You’re safe...
W M
An SQL view can be define in two different ways: with the CRE-
ATE VIEW SQL command or visually in the query editor.
In the query editor all you need to do is specify that the query
will be an SQL view.
All the functionalities of the SQL queries are available in the definition of an SQL view: joins, conditions, aggregates ...
Benefit provided by this version 20 new feature:
n e w
W B
W M
Data access performance
f e a t u r e
W D
W B
W M
163
Right definition
on SQL views
When an SQL view is created on the server, it accesses data
using the rights of its owner.
The owner can then define different rights on the SQL view for
other users or groups of users.
The rights are defined either with the HModifyViewRights
WLanguage function or via the GRANT command.
161
W D
Benefit provided by this version 20 new feature:
Creating SQL views is easy!
160
f e a t u r e
In which cases is it interesting to use materialized views? In the
case where extracting the data of the view is a long process,
and where the data doesn’t need to be real-time data.
The fact that the view is available speeds up the processes that
call it.
For example:
• statistics
• reporting
• data binding
• selections for mailings
• targeting
• creating “flat” data files
• ...
n e w
f e a t u r e
W D
W B
W M
Creating
a materialized view
A materialized view is created either via the data model editor,
or using the CREATE MATERIALIZED VIEW SQL command.
The data structure of a materialized view may have been defined in the data model editor or not.
If the data structure has been defined in the data model editor,
the developer will automatically benefit from the auto-completion in the code, the data binding and all the assistance available in the editors.
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
W M
Nice views.
New: “Materialized views”
SQL view: Compatibility
In version 20, HFSQL offers the ability to create “SQL views”.
An SQL view is a “virtual data source”, defined via an SQL
W B
Refine user rights
Only expose the necessary data.
1 58
W D
Benefit provided by this version 20 new feature:
SQL view: Security
Benefit provided by this version 20 new feature:
New: “SQL Views”;
independence and
security of your data
(during the commercial availability of the version).
W M
An SQL view can also be used for data confidentiality purposes.
A typical example is to “hide” sensitive data, such as password,
account numbers, medical data or personal data.
Easily reuse your queries.
n e w
W B
Benefit provided by this version 20 new feature:
With the new version 20, it has never been easier to replay an
SQL query or to modify it in the editor.
The HFSQL Control Center now keeps a history of all the
queries performed on a database: simply find the query to rerun
or edit from this history.
15 5
W D
An SQL view brings the application using it independence in respect to the physical structure of the data on the server.
An SQL view allows you to provide the client applications of the
database a data representation that is simplified and specifically
tailored to the application’s needs.
The application performs its queries on SQL views.
If the physical data structure evolves, the SQL queries of the application don’t change!
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
f e a t u r e
Creating “SQL views”
SQL view: Independence
with respect to the
physical structure
of the data
The HFSQL Control Center querier
15 4
n e w
n e w
n e w
Use of materialized views
Benefit provided by this version 20 new feature:
Create data structures dynamically very easily
1 56
162
16 4
n e w
f e a t u r e
W D
W B
W M
“Materialized views” area a concept similar to the “SQL views”
(see new feature #155).
The fundamental difference is that the result of a “materialized
view” is physically stored on the server’s drive.
Unlike an “SQL view” which is re-extracted at each call, a “materialized view” stores the data on the drive. This data will be
used until the next refresh of the materialized view.
The data found in a materialized view can be different from the
data found in the file(s) used to create it.
This type of view is interesting when there are a lot of read accesses in order to avoid overtaxing the server. In this case, the
view is calculated once and stored on the server.
Materialized views are not updated automatically when the data in
the files they use is modified.
Therefore you need to call the HRefreshView WLanguage function to update the content of the materialized view.
You can also refresh the view using the REFRESH MATERIALIZED
VIEW SQL command.
And it is also possible to update the view via a scheduled task on
the server, for example “every night”.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Improved data access speed.
Updating
a materialized view
Update whenever you want.
38
39
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
165
n e w
f e a t u r e
W D
W B
171
W M
New item type:
enumeration
Better integration between WLanguage and HFSQL.
W D
W B
1 69
A combination is a set of values that can be combined with
each other.
The new Combination item type is available.
This type of item lets you store combination type WLanguage
variables.
This new feature also facilitates data binding in applications.
Benefit provided by this version 20 new feature:
Better integration between WLanguage and HFSQL.
n e w
f e a t u r e
W D
W B
W M
Compacting and
defragmenting memos
In case of massive record deletions (table rows) (history purge
for instance), the .MMO file containing memos doesn’t shrink in
size.
The deleted elements are simply converted into free blocks,
which will be reused in future additions.
This mechanism may lead to data fragmentation, and in the
long run, impact performance.
In version 20, a new option of the HReindex WLanguage function lets you compact and defragment the .MMO type files.
This operation is done hot, without disconnecting and without
disruption to users.
172
n e w
f e a t u r e
W D
W B
Stemming lets you perform searches on a full-text index taking
into accounts the variations of a given word.
This way a search on “live” will also return records containing
the words “living”, “lives”, ‘’lived”.
This type of search is interesting for knowledge bases (application or Internet site).
This feature also lets you find both singular and plural form
words.
It is possible to choose the algorithm used based on the language. Among the available languages: French, English, German, Danish, Spanish, Finnish, Hungarian, Italian, Norwegian,
Portuguese, Romanian, Russian, Swedish, Turkish
Benefit provided by this version 20 new feature:
Better search.
1 70
n e w
f e a t u r e
W D
W B
f e a t u r e
W D
W B
A hollow word is a word to ignore during a search.
Typically, links, articles: and, or, ...
In version 20, you can associate a list of words to ignore with a
full-text index.
n e w
f e a t u r e
W D
W B
W M
Lighter HFSQL context
copy
When creating a large number of threads (for example when
using the new parallel programming features, see new feature
#095), the copying of the database’s entire context may consume resources unnecessarily. Some information is often useless.
A new mode for copying the context is available
This mode takes into account the essential elements:
• connection to the server
• path and names of the data files
• passwords
• ...
The following are not copied:
• the read operations in progress
• the queries in progress
• the stored positions
• ...
Backing up the context becomes much faster.
Benefit provided by this version 20 new feature:
Lighter memory footprint
Full-text index: synonyms
17 3
n e w
f e a t u r e
W D
W B
W M
175
hSave: adds or modifies
as appropriate
174
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
64-bit WDSQL
The WDSQL tool is now available in 64-bit in addition to the 32bit version.
This evolution is useful for accessing third-party databases for
which you only have the 64-bit ODBC driver.
Benefit provided by this version 20 new feature:
64-bit support
Less code.
The full-text search is more precise
tion.
In version 20, the ODBC driver evolves and offers support for
version 3.8 of the standard.
The ODBC driver offers a large number of additional features,
such as:
• better support of the UNICODE standard
• support for transactions
• multiple bookmarks on tables
• wildcard search on schema tables
• manage cursors by blocks
The ODBC driver for HFSQL is available in 32-bit and 64-bit
mode.
Better interoperability.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
A selfie?
Yes but with
WINDEV 20!
Benefit provided by this version 20 new feature:
When a record from a data file (row) must be saved, there are
two possibilities: either it’s an addition (hAdd must be called), or
it’s a modification (hModify must be called).
The new function hSave automatically chooses the “right”
function to call, based on the situation.
W M
A full-text index lets you perform a search on the content of the
Text type items or the Text memo type items (raw text or rich
text: RTF, HTML,...).
In version 20, it becomes possible to define a list of synonyms
for a full-text index.
This way, a search on the word “car” can also found the
records containing the words “sedan”, “minivan” or “convertible” for example.
W M
Full-text index:
hollow words
Reduces disk used space, increases speed
n e w
W M
Full-text index: stemming
Benefit provided by this version 20 new feature:
168
W M
The database administrator is notified.
W M
New item type:
combination
167
W B
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
More granular searches.
f e a t u r e
W D
A notification is a message generated by the HFSQL server in
case of an incident.
As part of the automatic replication between HFSQL servers, a
new type of notification allows you to be notified in case of a
modification conflict.
The notifications are sent directly via email, and can also be
viewed in the HFSQL Control Center.
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
Server replication:
conflict notification
An enumeration is a disjoint set of values.
A new type of items is available in the HFSQL data files: the
enumeration type.
This type of item lets you store enumeration type variables from
WLanguage.
This new feature makes data binding easier for applications.
16 6
n e w
176
W M
f e a t u r e
W D
W B
W M
Import Excel files into
HFSQL in a single line of
code (hImportXLS)
ODBC driver on HFSQL:
version 3.8
The ODBC driver lets you access the HFSQL databases (local,
Client/Server, on Windows or Linux) from a third-party applica-
n e w
In version 20, the new WLanguage function, hImportXLS, lets
you very easily import the content of an Excel file into a HFSQL
40
41
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
data file.
By default, each column in the Excel file fills the item of same
rank in the HFSQL file: 1st column into the first item, 2nd column into the 2nd item, ...
You can also specify which item will be filled by which column.
Remember that you can program a granular import of an XLS
file using the XLS family of functions.
(See new features 155 to 134)
)
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
SQL FUNCTIONS
OF HFSQL
n e w
f e a t u r e
W D
W B
W M
In version 20, HFSQL supports the syntax of the INSERT function, allowing you to add several rows in a file in a single query.
This syntax reduces the number of calls to the server (and the
number of lines of code)!
This type of query is automatically generated by some tools
(backup ...) This new feature allows you to replay these queries
on a HFSQL database.
Benefit provided by this version 20 new feature:
179
n e w
f e a t u r e
f e a t u r e
W D
W B
W M
SQL Views
and materialized Views
In version 20, HFSQL offers SQL views and materialized views.
f e a t u r e
W D
W B
W M
W D
W B
Significant optimizations were made to the SQL query planner
for executing the IN SQL command.
This optimization is significant starting from 10 values in the IN
command.
Benefit provided by this version 20 new feature:
UPDATE Customer SET CATTC =
(
SELECT SUM(Invoice.GrandTotal) FROM Invoice
WHERE Invoice.CustomerID = Customer.CustomerID
f e a t u r e
W D
W B
Benefit provided by this version 20 new feature:
New SQL commands.
n e w
f e a t u r e
W D
W B
W M
The three SQL commands TOP, LIMIT and BOTTOM now accept a
parameter in place of the initial value.
The parameter is filled at the time the query is executed.
SELECT TOP {pMaxCustomerNbr}
Customer.CustomerID AS CustomerID,
Customer.Name AS Name,
Customer.FirstName AS FirstName,
Customer.Email AS Email,
Customer.RewardPoints AS RewardPoints
FROM
Customer
Benefit provided by this version 20 new feature:
Top queries!
n e w
f e a t u r e
W D
W B
W M
186
The CREATE TABLE AS SQL command allows you to create a
new data file from a query’s result.
The data file created can, or not, be filled with the data from
the query.
Unlike a “materialized view”, the description of the query describing the table is not automatically stored on the server.
Benefit provided by this version 20 new feature:
Create data file in SQL.
n e w
f e a t u r e
W D
W B
W M
Regular expressions in
RLIKE, REGEXP queries
My favorite software!
W M
Configurable top, bottom
and limit
SQL CREATE TABLE
AS command
183
W B
Formatted results.
W M
The two SQL commands GRANT and REVOKE are being introduced in version 20.
GRANT lets you grant some rights, and REVOKE to revoke them.
These commands offer a large number of parameters that can
define, modify and delete rights on the HFSQL server, the databases and the data files (tables).
182
W D
Benefit provided by this version 20 new feature:
185
Rights management in SQL
(Grant and Revoke)
W M
A SELECT query is a query that returns a value.
It becomes possible to use SELECT queries that only return a single value instead of scalar expressions: literal numeric value or
string, item value ...
For instance, you can create queries of the following type:
n e w
f e a t u r e
The CHAR SQL command converts an ASCII code to characters
(it’s the equivalent of the well known Charact function in
WLanguage).
The CHAR command is useful for instance for inserting CR in an
exit item of a query.
Performance improvements
181
Use a select in an update
(and more: scalar select)
n e w
n e w
n e w
Non-keyboard characters
in queries: char
Optimization of “in”
Increased compatibility.
17 7
180
Multi insert
Benefit provided by this version 20 new feature:
Very simple import from Excel.
No need to write two separate queries.
Data independence
178
184
The new SQL commands RLIKE and REGEXP let you use regular
expressions in queries.
The syntax of the various databases are supported in order to
facilitate the interoperability. regexp, rlike, regexp_like, not
regexp, not rlike, ~, !~
n e w
f e a t u r e
W D
W B
W M
Summary of the new SQL
commands
Version 20 offers 19 new SQL functions:
configurable TOP
configurable BOTTOM
configurable LIMIT
multi INSERT
scalar SELECT
Lets you select the n first records in the result of a query
Lets you select the n last records in the result of a query.
Lets you select the n first records in the result of a query
Lets you add several records in a table
Ability to use the SELECT instruction instead of a value or
a column in INSERT, UPDATE, etc.
CHAR/CHR
Lets you convert an ASCII code to characters.
CREATE MATERIALIZED VIEW Used to create a materialized view.
CREATE VIEW
Used to create a view.
CREATE TABLE AS
Lets you create a table using an alias.
GRANT
Used to grant rights on a HFSQL server.
REGEXP/RLIKE/ ~ /
REGEXP LIKE
Lets you evaluate a regular expression inside an SQL
query.
REVOKE
Lets you cancel rights on a HFSQL server
DROP MATERIALIZED VIEW Used to physically delete a materialized view from the
disk.
DROP VIEW
Used to delete a view.
REFRESH MATERIALIZED VIEW Used to refresh the content of a materialized view on disk.
Benefit provided by this version 20 new feature:
New SQL commands.
43
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
THIRD-PARTY
DATABASES
BIG DATA
189
187
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
Using Big Data RIAK
W M
MariaDB native access
MariaDB is a database that came from a fork in MySQL (following the acquisition of MySQL by Sun then Oracle).
In version 20, it is possible to natively access MariaDB databases
from WINDEV and WEBDEV applications. The developer benefits from the functions in the hRead* family, the query editor
and all the automations provided by native accesses.
The MariaDB native access is a separate module provided with
the product.
The MariaDB native access is available for Windows and Linux
in 32-bit and 64-bit mode.
Big Data is supported by WINDEV and WEBDEV.
A use example for Big Data via the RIAK database is provided in
addition to the MongoDB example.
This example illustrates how to program access to information
found in NoSQL Big Data type database.
With WINDEV 20 you’re ready for Big Data.
190
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
Take advantage of the 200
new features in version 20
Almost all the new features you’ve discovered in the previous
pages are available in WINDEV 20.
In addition to this impressive list of new features, WINDEV 20
also offers the new features detailed in this chapter.
Version 20 of WINDEV is really very rich!
Support for MariaDB.
n e w
WINDEV 20
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
188
Regarding the “Windows Store Apps” interface, see new features 233 to 250.
W M
32-bit and 64-bit Postgresql native access
Benefit provided by this version 20 new feature:
A WINDEV 20 application on Windows 10
Hundreds of new features for WINDEV in version 20
Benefit provided by this version 20 new feature:
191
n e w
f e a t u r e
W D
W B
W M
UI/code split MVP
The split between “code/UI” via the MVP method offered in
version 20 lets you isolate the code from the windows.
This is a common development method, which now can be
used directly in WINDEV. (see new feature 088)
The native access for the PostgreSQL database is now available
in 32-bit Windows, 64-bit Windows and 32-bit and 64-bit
Linux.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Organize your code.
Improved PostgreSQL support
WINDOWS 10
192
W D
W B
W M
Windows 10
WINDEV 20 is compatible with the new Windows
10 version.
Applications developed with WINDEV work without any modifications for all the versions of Windows.
44
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
All the Windows versions.
CONTROLS
19 3
n e w
f e a t u r e
W D
W B
W M
New spreadsheet control
• inversion of the dimensions
• multi-selection of rows, columns, cells
• column deletion
• use of third-party databases: SQL Server, Oracle, MySQL...
• ability to add a period
• ...
See new features 016 to 030.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
To make it easier to read view table controls, the end user now
has the ability to zoom in the content of a table.
This new feature can be used with the following controls:
• table
• PVT (rOlap Cube)
• new spreadsheet control
Zooming in is done with the mouse: CTRL + wheel.
Zooming can also be programmed: ..zoom property.
Improved PVT.
The new “spreadhseet” control allows you to offer a spreadsheet feature directly in your applications, without having to install any additional software on the end-user machine.
See new features 001 to 007.
1 96
n e w
f e a t u r e
W D
W B
W M
New “Dynamic MDI tab”
control
Video conferencing has never been this easy.
199
n e w
f e a t u r e
W D
W B
W M
AAF: Table control: zoom
The new “MDI dynamic tab” control lets you create “Chrome
Browser” type interfaces in your WINDEV applications. Tab
management is automatic.
See new features 011 to 012.
f e a t u r e
W D
W B
Buttons are even more beautiful.
2 01
n e w
f e a t u r e
W D
W B
W M
Overloading button images
In version 20, it becomes possible to overload the background
image and the icon of the buttons based on styles.
By applying a style to the button, the button inherits the border
image and icon.
In a window, on a given button, you can modify the image of
the icon, for example to change a garbage can into a red X.
In older versions, the “style refresh” operation (e.g. after modifying one of the styles in a style sheet) would reapply the initial
style to the button, and restore the original icon.
In version 20, the modifications are kept.
Benefit provided by this version 20 new feature:
Offer spreadsheets to your users and customers.
n e w
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
194
Enriching the button’s text in the editor
Keep your modifications.
The end users easily navigate among the tabs.
W M
1 97
New Google Maps control
With this new type of control, your applications can offer mapping functionalities!
See new features 008 to 010.
n e w
f e a t u r e
W D
W B
On the left “regular” content of the table, on the right the same
content zoomed in
W M
New multi level pie chart
The new sunburst chart is used to visually display an important
number of data in a reduced space.
See new features 031 to 034.
2 00
n e w
f e a t u r e
W D
W B
W M
Button control: a nice
caption in RTF!
n e w
f e a t u r e
W D
W B
W M
“..Opacity” property on
groups of controls
Happiness for end users who have forgotten their glasses!
A button control can contain an image and/or text.
In version 20, the text can be in RTF format.
The text can be enriched: bold, italic, underlined, font change,
size, color ... The text will be translated via the WDMSG translation software.
Everything becomes possible in the button’s caption!
Modifying the opacity of several controls in a single line, it’s
possible.
In version 20, the ..Opacity property becomes available on
groups of controls.
Benefit provided by this version 20 new feature:
Less code to type.
203
n e w
f e a t u r e
W D
W B
W M
Infinite progress bars
Adding a progress bar is a useful piece of information for the end
user.
Sometimes it is not possible to predict the duration or volume a
process will take, and therefore it is not possible to display a
progress bar corresponding to the status.
Benefit provided by this version 20 new feature:
No need to ask for directions!
2 02
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
A new type of chart.
195
n e w
f e a t u r e
W D
W B
W M
1 98
PV T control (rolap cube)
In version 20, the PVT (Pivot table) evolves.
We’ve analyzed and implemented in version 20 a large number
of suggestions contributed by users of the Cube, while of
course preserving compatibility with your existing assets.
Among the new features we’ve implemented:
• pivoting the table
Examples of buttons whose text has been enriched with RTF
n e w
f e a t u r e
W D
W B
W M
New VideoConference
control
The new “videoConference” control of WINDEV 20 lets you
easily organize video conferences.
See new features 013 to 015.
here the same button with two texts presented differently
Different examples of “infinite” progress bars
To support these cases, an “infinite” type progress bar is being introduced in WINDEV 20.
46
47
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
Benefit provided by this version 20 new feature:
In version 20 new masks are available to check the input of a telephone number for Switzerland, Belgium or Canada.
Building a mask for another country is possible: it is done via a
regular expression.
Progress bar that don’t lie.
Benefit provided by this version 20 new feature:
The type of progress bar is adapted to an endless animation.
Several templates of infinite progress bars are offered and can be
customized.
204
n e w
f e a t u r e
W B
W M
207
Defining the “step” for
scrollbars and range
sliders
A scrollbar has clickable buttons at both ends for moving backward and forward.
By default, moving forward or backward was done by step of one
unit per click.
In the case where there’s a large number of elements (e.g.
10,000), one may want the clicking of the button at the end of
the scrollbar to move its box of 50 or 100 units at a time.
It is now possible to define via programming the step by which
the scrollbar and range slider controls move.
This property lets you finely control the behavior of the control in
UI where the limits may vary a lot.
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
Installation without UAC
A new installation mode lets you generate installations that will
not trigger UAC.
Telephone numbers in the country’s format!
W D
2 10
A useful little feature.
This type of installation doesn’t require the current user to have
”administrator” privileges.
This new option is available:
• for individual installations
• for installations with automated updates.
TSE
W D
W B
f e a t u r e
W D
W B
W M
Combined 32-bit/64-bit
installation history
Benefit provided by this version 20 new feature:
f e a t u r e
No more UAC!
2 11
In version 20, a large number of controls evolve: it is now possible to enter quotes in edit controls with file mask.
n e w
Benefit provided by this version 20 new feature:
n e w
W M
Other evolutions
on controls
208
In this mode, the installation is usually performed in the profile
directory of the current user.
For the record, a similar method is used (among others) by the
Chrome browser to install and update.
An installation can contain both the 32-bit version and the 64bit version of an application.
In this mode, the appropriate version will be selected according
to the type of operating system.
The combined installation of 32-bit/64-bit applications now
support the “version history”.
It is now possible to go back to a previous version of the application.
Benefit provided by this version 20 new feature:
A safety net for users.
W M
Automatic deactivation of
chart animations
TSE is a remote access technology that companies use a lot. In
this execution mode, graphic effects should be limited because
the network latency slows down the display, and therefore the
end user.
For this reason, in version 20, WINDEV automatically deactivates
effects on chart controls in TSE mode.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Improved speed and fluidity in TSE.
Speedy toolbars.
20 5
n e w
f e a t u r e
W D
W B
209
W M
n e w
f e a t u r e
W D
The WINDEV edit controls come with a Duration type input
mask.
Thanks to this mask, the end user can easily enter a duration in
the application.
In version 20, you can specify a minimum and maximum for entering the duration.
These limits are specified by using the ..MinValue and ..MaxValue properties of the edit control.
TSE uses the Ctrl+Alt+Pause shortcut to toggle from the “plain
screen” mode to the “window” mode.
This shortcut was also used by WINDEV to trigger a “debugging
dump”.
In order to avoid conflicts, the shortcut used by WINDEV becomes only Ctrl+Pause ...
Benefit provided by this version 20 new feature:
Ends the conflict!
Benefit provided by this version 20 new feature:
Limit yourself!
n e w
f e a t u r e
W D
W M
Ctrl+Alt+Pause
Limit durations
206
W B
W B
INSTALLER
W M
Telephone mask Switzerland, Belgium and Canada
A telephone number is entered in an “edit control” type control.
To check the consistency of the data entered, and display a “readable” number, a “Telephone” mask type is available.
48
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
my
projects
are
grandiose.
2 12
n e w
f e a t u r e
W D
W B
21 4
W M
Signature of the combined
32-bit/64-bit installations
With digital signature, the user is certain that the contents of
the installation has not been modified since its creation.
In version 20, you can digitally sign a combined 32-bit/64-bit installation.
Benefit provided by this version 20 new feature:
Guaranteed integrity of the installation
n e w
f e a t u r e
W D
W B
W M
Automatic animations bring the nice effects to chart controls.
In some cases (old or not very powerful machine for example,
or remote access via TSE), it may be best to disable these animations.
In version 20, automatic animations on the charts are controllable via the popup menu of the chart control. It is possible to
cancel an animation on a chart until further notice .
Benefit provided by this version 20 new feature:
Better control of the display speed of the charts
STANDALONE
EXECUTABLES
213
n e w
f e a t u r e
W D
W B
21 5
n e w
f e a t u r e
W D
W B
Stand-alone executables:
Deliver a single file
It is sometimes useful to deliver an executable in one single file,
no installation, no side DLL.
For example, to include it as attachment to an email.
In version 20, WINDEV can generate Windows applications by integrating the framework and any resource files into the executable.
This mode works for 32-bit and 64-bit applications.
Note that the framework is not extracted at the
time of launch so that the end user does not
need to have write permissions to the location of the
executable. This facilitates the implementation of embedded
applications.
221
Read, set, check ...
f e a t u r e
W D
W B
W M
AAF: “automatic file
selector
W M
When an end user works on a complex table with many breaks,
he may want to save the current layout: expanded break, collapsed break...
With WINDEV 20, this option is available automatically in the
popup menu of the table.
n e w
n e w
f e a t u r e
W D
W B
A skin template defines the graphic style of an application.
End users’ taste and habits evolve with time and trends.
Therefore it is important to have access to new application skin
templates.
Which developer has never forgotten the “Browse” button beside an edit control for entering a file name?
In version 20, the edit controls of type “file name” or “Directory
path” automatically offer the possibility of opening a file or directory selector.
Benefit provided by this version 20 new feature:
Breaks without tears ...
21 6
n e w
f e a t u r e
W D
W B
W M
AAF: Table: coloring rows
and columns
Benefit provided by this version 20 new feature:
Find your path
2 19
n e w
f e a t u r e
W D
W B
W M
Benefit provided by this version 20 new feature:
To highlight the contents of a table row or column, WINDEV 20
offers a new AAF.
It is now possible to select one or more rows or columns and
set a background color.
Reading the table is thus easier
Deliver a single file
Two options are available in the popup menu of the list controls: “Copy” and “Copy all”.
These two options copy the text of the control to the clipboard.
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Easier to read table
21 7
AAF
n e w
The new ActivFox skin template
AAF: List: copy/copy all
Copy your lists in 1 click
f e a t u r e
W D
W B
W M
AAF: Check Box control
The check box control in WINDEV 20 offers an automatic
popup menu with the following options:
• check all
• clear all
• only check this option
The AAF are Automatic Application Features that benefit the
end users of your applications, without having to code anything.
220
n e w
f e a t u r e
W D
W B
W M
WINDEV 20 offers 2 new
skin templates
Benefit provided by this version 20 new feature:
2 18
AAF: Table: storing the
state of the breaks
W M
NEW SKIN
TEMPLATES
AAF: Disabling chart
animations
W M
AAF of PV T (cube)
All the AAF of version 20 are not presented in this paragraph: a
large number of AAF are presented directly in the paragraph of
the relevant new feature.
About the Dynamic Pivot Table:
• AAF for masking one or more columns
• AAF allowing sub-levels to be expanded from a given level.
Regarding the table control, AAF allowing to:
• set a filter on a check box control
• set a “found between 2 dates” type filter
• bring up the calendar in the header of a date type column.
(see new features 028 to 030)
The new ActivAndroid5 skin template
Benefit provided by this version 20 new feature:
New ways of customizing your applications.
Benefit provided by this version 20 new feature:
End users benefit from an always increasing number of automatic
features.
50
51
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
SCM (SOURCE
CODE MANAGER)
2 22
n e w
f e a t u r e
W D
W B
W M
224
n e w
f e a t u r e
W D
W B
W M
Bar Code control
In version 20, you can display bar codes in Windows Store
Apps.
The bar code control is available for this platform.
Benefit provided by this version 20 new feature:
Codes and bar codes
Configuring
the command line
Benefit provided by this version 20 new feature:
225
250
to
W M
n e w
f e a t u r e
W D
Linux: HTTPS requests
HTTPS requests are secure requests.
The HTTPRequest and HTTPSendForm functions
now support the HTTPS protocol on Linux.
254
DateTimeToReal
grStockGetData
HCompareItem
EventClose
PTWait PTWaitAll
PTExecuteAfter
LooperRefreshVisible
RequestUpdate
grScatterGetDataXY
HModifyViewRights
EventOpen
PTRequestCancelation
PTExecuteAfterAll
ExecuteUpdate
grGetData
NumToFinancialWritingChinese
TableRefreshVisible
PTExecuteAfterOne
n e w
f e a t u r e
Benefit provided by this version 20 new feature:
Secure Web services on Linux
The SalesForce management functions are now available for
your native Linux WINDEV applications.
W D
W B
W M
May the SalesForce be with you on Linux
256
n e w
f e a t u r e
W D
W B
W M
Benefit provided by this version 20 new feature:
W D
W B
W M
257
The ODBC driver for HFSQL is available for 32-bit and 64-bit
Linux.
It is possible to manipulate HFSQL databases from third-party
applications on Linux, especially from PHP sites hosted on Linux.
Benefit provided by this version 20 new feature:
HFSQL even more open!
n e w
W D
W B
W M
Benefit provided by this version 20 new feature:
Better compatibility
259
317
to
W M
n e w
f e a t u r e
W D
W B
The new Linux functions
for WINDEV
f e a t u r e
W D
W B
W M
Linux: AAF: Exporting
tables
A new AAF is available for Linux applications.
The end user can now export the contents of tables to OpenOffice and XML.
This export can also be done via programming using TableToWord and TableToXML.
Benefit provided by this version 20 new feature:
Export!
f e a t u r e
The EmailProgressBar WLanguage function lets you manage
a progress bar when retrieving emails from the server.
In version 20, this function is also available for Linux applications.
Better portability
f e a t u r e
n e w
Linux: EmailProgressBar
Linux: Procedure
automation
Linux: ODBC driver for
HFSQL
Window layouts allow you to define multiple layouts for the
same window in an application.
The different layouts allow the application to offer UI adapted
to various devices. screen size, orientation, ...
In version 20, layouts are also available for Windows Store
Apps.
258
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
n e w
This is really a NATIVE application in Linux. Yes, but
created with WINDEV 20!
new feature WD WB WM
Automation of procedures defined in the code editor (automatic calling, thread calling, etc.) are available for Linux in version 20.
A Windows 10 Store app
Window layouts in
Windows Store Apps
W B
Internal windows are used to share parts of UI or create modular UI via programming.
The “internal window” control is available for Linux applications.
You can also create internal window templates (see new feature
055).
252
W M
W D
Linux: SalesForce functions
Modularity.
W B
f e a t u r e
The call to Web services from Linux applications
can now be done using the HTTPS protocol.
255
LINUX
251
n e w
Linux: Secure Web
services
WLanguage gains 26 new functions for Windows Store Apps.
StringToTime
WinCurrentLayout
grSurfaceGetData
RealToDateTime
PTCancel
PTExecute
PTParameter
Internal windows on
Linux
W D
W D
W B
New Windows Store Apps
functions
WINDOWS STORE
APPS
f e a t u r e
f e a t u r e
Benefit provided by this version 20 new feature:
Each to his own, and SCM can rest!
n e w
n eBw
W
Secure HTTPS exchanges on Linux
To test an application, you may need to pass some parameters
to the application.
The passing of the parameters is done via a command line: a
string of parameters that the application receives at startup.
In older versions, the command line was unique for the project,
and therefore shared via SCM.
If 2 developers needed each a specific command line, SCM didn’t stop checking out and checking in!
In version 20, each developers has his “own” command line.
No more unnecessary checkout!
2 23
253
WLanguage offers 66 new constants for Linux.
WLanguage gains 59 new functions for Linux:
StringToTime
UnCryptStandard
ExecuteUpdate
grSurfaceGetData
HExecuteScheduling
HRefreshView
CheckBoxCount
RadioButtonCount
SFConvertLead
SFMerge
SFSeekModified
SFEmptyRecycleBin
TableToXML
PTRequestCancelation
PTExecuteAfterOne
ChangeSourceWindow
RequestUpdate
grStockGetData
HAddScheduling
HListScheduling
HDeleteMoficiation
iResetNbPages
SFAdd SFForwardQuery
SFDisconnect
SFRead
SFSeekDeleted
EventClose
PTCancel
PTExecute
TPParameter
CryptStandard
EmailGetTimeOut
grScatterGetDataXY
HCompareItem
HModifyViewRights
HOnServerCall
NumToFinancialWritingChinese
SFConnect
SFExecuteQuery
SFModify
SFUndelete
EventOpen
PTWait
PTExecuteAfter
LooperRefreshVisible
Benefit provided by this version 20 new feature:
Arrange
52
53
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
DateTimeToReal
EmailGetIndicator
grGetData
HSave
HModifyScheduling
HTTPSend
RealToDateTime
SFExecuteProcess
SFSearch
SFDelete
TableToWord
PTWaitAll
PTExecuteAfterAll
JAVA
345
MAC
341
n e w
f e a t u r e
n e w
f e a t u r e
W D
W B
W M
Java: DES, 3DES, AES
standard encryption
W D
W B
W M
The development of applications for Mac benefits from all the
new features for Java development.
In version 20, for example, standard encryption is available, and
the automatic reconnection secures applications.
Benefit provided by this version 20 new feature:
The new encryption functions (see new feature 106) are available for application developed in Java.
This allows the transmission of encrypted documents between
different platforms.
Improvement of the Mac development.
.NET
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
342
W M
From a Java application developed with WINDEV 20, you can
natively access a HFSQL Client/Server database.
In Java applications developed with version 20, when accidentally disconnecting from the HFSQL database (network failure,
...), the reconnection to the database is automatic.
W D
W B
W M
Don’t miss a step ...
346
n e w
NbAnimationSteps
InputFormula
W M
f e a t u r e
W D
W B
343
f e a t u r e
W D
W D
W B
W M
Stay up to date!
WLANGUAGE
344
W B
n e w
f e a t u r e
W D
W B
W M
Style copy via
programming
WLanguage gains 20 new functions for Java:
StringInsert
ExtractLine
HReconnect
LineToPosition
PositionToLine
f e a t u r e
In the environment an option lets you “reload” an assembly.
This lets you update an assembly that has been modified further since the opening of the project.
20 new WLanguage
functions for Java
CharactTypeOccurrence
CharactType
CryptStandard
UnCryptStandard
HInfoMemo
HFree HCross
HOnError
LanguageToCharset
DayNumberInAlpha
MonthNumberInAlpha
n e w
StringDelete
HSave
In version 20, it is possible to copy the style of a control onto
another control.
The copy is done by simple assignment:
Control1..Style = Control2..Style
WordOccurrence
TableSwapLine
Useful when using the ControlCreate function!
The two controls must simply have the same type.
Benefit provided by this version 20 new feature:
Dynamically duplicate styles.
54
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
InputValue
AnchorRateBottom
AnchorRateHeight
ReturnedValue
UndockablePane
366
W M
10 new types of variables are available in WLanguage in version
20. httpProgress, httpReponse, httpRequest, Marker, NotificationFormat, Palette, SignalAutomatique, SignalManual, sshSession, ParallelTask...
365
to
f e a t u r e
W D
W B
W M
FormulaBarVisible
ToolbarVisible
HeaderVisible
BackgroundImage
PrintBackgroundImage
CaptionIfNew
StoreTheConfiguration
Displays or not the row/column header of a PVT.
Manages the animation in an infinite progress bar.
Displays or not the closing X in the panes of an MDI tab
Displays or not the + opening symbol in the panes of an MDI
tab
Displays or not a formula bar in a Spreadsheet control.
Displays or not a toolbar in a Spreadsheet control
Displays or not the row and column headers in a Spreadsheet control.
Manages the name of the Internal window to open in a
new MDI tab.
Manages the background image of a report.
Manages the printing of the background image of a report.
Specifies the caption of aa new pane opened in a MDI tab
Manages the automatic backup and restore of the configuration of the the panes of an MDI tab.
Manages the animation steps for an infinite progress bar.
Authorizes or not the input of formulas in a Spreadsheet
control.
Authorizes or not the input of values in a Spreadsheet control
Specifies the anchor rate when moving a report control on
the vertical axis.
Specifies the height anchor rate of a report control
Manages the value returned by a report.
Authorizes or not the undocking of the panes in a MDI tab.
n e w f e a t u r e
W M
W D
W B
New WLanguage functions available in WINDEV
WLanguage gains 93 new functions for WINDEV:
MapDisplayPosition
MapAddItinerary
MapAddMarker
MapInfoPosition
n e w
WLanguage gains 19 new properties for WINDEV.
DisplayEvenIfNull
TwoWayAnimation
WithClosingButton
WithNewButton
458
to
New types
WindowIfNew
Ease of porting.
n e w
W M
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
340
W B
Benefit provided by this version 20 new feature:
10 new HFSQL variables are supported in version 20 for
Java:H.LanguageCreationUnicode, H.Out, H.Found, H.TemporaryDirectory, H.TrsInternalID, H.TrsApplicationName,
H.TrsMachineName, H.TrsPost, HCS.Timeout, HCS.FrameSize.
to
W M
W D
.Net: Reloading of the
assemblies
New HFSQL state
variables in Java
32 1
f e a t u r e
The assembly methods accepting “staircase” tables as parameters (tables of tables) are supported in version 20.
Stay connected
f e a t u r e
n e w
.Net: “Staircase” table
Benefit provided by this version 20 new feature:
n e w
W B
New properties
Java: Automatic HFSQL
reconnection
32 0
W D
98 new constants are available in WLanguage in version 20.
itineraryPedestrian, ccIgnoreInsideSpace, TwainContrast, grSunburst...
(consult complete list in the online help).
347
Universal encryption.
319
f e a t u r e
New constants
New Mac features
318
n e w
MapInfoXY
MapLienceGgl
MapModifyMarker
MapGetPosition
MapDeleteItinerary
MapDeleteMarker
MapDeleteAll
StringToTime
ControlToSource
CryptStandard
DateTimeToReal
UnCryptStandard
RequestUpdate
dTextRTF
EmailGetIndicator
ExecuteUpdate
Centers the map displayed in a Map control on a geographical position or on a specific location.
Adds an itinerary onto a Map control.
Adds a new marker onto a map displayed in a Map control.
Returns the coordinates (in pixels) of the point corresponding to a geographical position (latitude and longitude.
Returns the geographical position (latitude and longitude)
corresponding to a point of a Map control.
Indicates the “Google maps API” license key to use for the
WinDev Map controls.
Modifies a marker displayed in a Map control.
Returns the geographical position of the point located in
the center of the map currently displayed in a Map control.
Deletes an itinerary from a map control.
Deletes a marker from a map displayed by a Map control
Deletes all the markers from a Map control.
Transforms a time in character string format into a time in
HHMMSSCC format.
Copies the content of a control to its source (file or variable).
Encrypts a character string or a binary buffer using a symmetrical encryption algorithm (AES, DES, etc.)
Converts a date and time into an 8-byte real.
Decrypts a message previously encrypted using a symmetrical encryption algorithm (AES, DES, etc.)
Requests the execution of the process that updates the
display of the window.
Draws an RTF text in an Image control or in an Image type
variable.
Retrieves the indicators defined in an IMAP message.
Immediately executes the process that updates the display of the window.
ExecuteActionPlan
geoAzimuth
geoDistance
grStockGetData
grScatterGetDataXY
grGetData
grSunburstAddData
grSunburstSectionColor
grSunburstRootSection
grSunburstGetData
grSurfaceGetData
HCompareItem
HSave
HImportXLS
HModifyViewRights
HRefreshView
HAddScheduling
HExecuteScheduling
HListScheduling
HModifyScheduling
HDeleteScheduling
HTTPSend
CheckBoxCount
iResetNbPages
mlLoadWorkspace
mlWriteVariable
mlExecute
mlInitialize
mlVariableList
mlResetWorkspace
mlRetrieveVariable
mlSaveWorkspace
mlDeleteVariable
mlEnd
NumToFinancialWritingChinese
TabLoadConfiguration
TabClose
TabCloseAll
TabOpen
TabSaveConfiguration
Executes an instance of the action plan in the software
factory.
Returns the direction represented by a position in relation
to another one.
Returns the distance between the two positions.
Retrieves a data from a stock chart.
Retrieves a data from a “Scatter” chart.
Retrieves a data from a chart.
Adds a data to a sunburst chart
Changes the color of a section found in a Sunburst chart
Lets you change or specify the root path in a Sunburst
type chart.
Retrieves a numeric value from a sunburst chart.
Retrieves a data from a Surface chart.
Compares two values as if they were sorted by the specified HFSQL index.
Modifies the current record if it exists, otherwise adds a
new record.
Imports an XLS file into a data file in HFSQL Classic format.
Modifies the rights granted on an SQL view.
Recalculates the contents of a materialized view.
Adds a schedule for a task, a backup, an optimization, a
recalculation of a materialized view.
Executes a schedule for a task, a backup, an optimization,
a recalculation of a materialized view.
List the scheduled tasks, backups, ..
Modifies a scheduling for a task, backup, ...
Deletes a scheduling for a task, backup, ...
Sends an HTTP request.
Returns the number of options found in a Check Box control.
Reinitializes the number of pages.
Loads into the session all the variables from a Matlab file.
Writes the value of a session variable.
Evaluates and executes a command on a Matlab session.
Initializes a new Matlab session.
Lists the variables found in the Matlab session.
Deletes all the variables of the session.
Retrieves a value of variable of the session.
Saves the workspace of the session into a Matlab file.
Deletes a variable of the Matlab session.
Ends a Matlab session.
Transforms a numeric value (integer, real or currency) into
a character string in the Chinese financial writing format.
Restores the configuration of a dynamic Tab control saved
in a character string format.
Closes a pane in a dynamic Tab control.
Closes all the panes of a dynamic Tab control.
Adds a new tab to a dynamic Tab control.
Saves the configuration of a dynamic Tab control in a char-
acter string format.
Returns an Image type variable containing a page from a
PDF file.
RealToDateTime
Coverts a 8-byte real into a date and time.
RadioButtonCount
Returns the number of options found in a Radio Button
control.
EventClose
Closes a synchronization event between threads.
EventOpen
Opens a synchronization event between threads.
SSHCommand
Sends a command to an SSH server.
SSHConnectShell
Opens a new SSH session.
SSHDisconnectShell
Closes an SSH session opened using the SSHConnectShell function.
SSHWrite
Writes data to the SSH session.
SSHRead
Reads data found in the SSH session.
SysDetectLockedSession
Detects the change in Windows session locking
TableRefreshVisible
Modifies or returns the state of visibility of the refresh
band of a Table or treeview Table control.
SpreadsheetAddData
Adds a data to a Spreadsheet control.
SpreadsheetAddFormula
Adds a calculation formula to a Spreadsheet control.
SpreadsheetLoad
Loads a file in XLS/XLSX format into a Spreadsheet control
SpreadsheetInsertRow
Inserts a complete row into a Spreadsheet control
SpreadsheetRecalculateAll Forces the recalculation of all the formulas in a Spreadsheet
control
SpreadsheetMaskSelection Gets or modifies the mask of the selected cells in a
Spreadsheet control.
SpreadsheetSave
Saves the contents of a Spreadsheet control into an XLSX
format file.
SpreadsheetStyleSelection Gets or modifies the style of the selected cells in a
Spreadsheet control.
PVTHeaderValue
Returns the value displayed in an header of a Pivot Table
control
DashResizeWidget
Changes the dimensions of a widget (window or internal
page) in a Dashboard control.
DashMoveWidget
Changes the position of a widget (window or internal
page) in a Dashboard control.
PTCancel
Ends the execution of the current task and sets the task’s
state to “ptsCanceled”.
PTWait
Waits for the execution of a parallel task.
PTWaitAll
Waits for the execution of all the parallel tasks of an array.
PTRequestCancelation
Requests the cancelation of a parallel task.
PTExecute
Triggers the execution of a parallel task.
PTExecuteAfter
Specifies a continuation task that will be executed when
the specified task will be done.
PTExecuteAfterAll
Specifies a continuation task that will be executed when
all the specified tasks are done.
PTExecuteAfterOne
Specifies a continuation task that will be executed when
one of the specified tasks is done.
TPParameter
Modifies the parameters of parallel tasks.
TwainProperty
Gets or modifies the properties of the current Twain device.
LooperRefreshVisible
Modifies or returns the visibility state of the refresh band
of a Looper control.
PDFExtractPage
a version
that
puts you
in a good
mood
WINDEV MOBILE
459
n e w
f e a t u r e
W D
W B
W M
Take advantage of
the 200 new features in
version 20
of course, but also windows (though they need to be resized as
you probably guessed), analysis, data, ...
The HFSQL database (and HyperFileSQL) is natively compatible
with mobiles: you can embed the data (and the indexes) instantly ....
You’ve really made the right choice with WINDEV and WINDEV
Mobile!
Benefit provided by this version 20 new feature:
The portability of your existing code is ensured.
461
WINDEV Mobile 20 benefits from the majority of
new features presented at the beginning of this
document.
New controls, existing control evolutions, new
features in the editors, new features in WLanguage, in HFSQL: your teams instantly more
efficient.
460
W D
W B
new feature
W D
W B
W M
New skin template
selection interface
The window used for skin template selection
for mobile windows evolves in version 20.
The choice is more visual, more contemporary: you can immediately imagine the
future look of your application’s windows.
W M
Benefit provided by this version 20
new feature:
Reminder:
port existing
applications to
mobile in a few
hours
Easier selection for skin templates
You already have WINDEV applications?
Even if these applications are a few years old,
they’re compatible with mobiles!
Your existing applications move
over to mobile in a
few hours
or a few days.
Your teams are
comfortable with
WLanguage? Then
they’re comfortable developing for mobile. Creating applications for Android or iOS (iPhone,
iPad) is real child’s play.
Your existing applications are compatible: code
57
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
462
n e w
f e a t u r e
W D
W B
46 4
W M
f e a t u r e
W D
W B
THE TABLE CONTROL IN MOBILE
W M
Table control on Mobile:
features
2 New skin templates
2 new WINDEV Mobile skin templates are offered in version 20
allowing you to offer contemporary styles for your applications.
The ActivFox skin template, and ActivAndroid 5 skin template
which shows the appearance of the Android L
platform (Material Design).
n e w
The Table control on mobile offers the following features:
• fill by programming or by file link (data binding)
• column resizing
• column anchoring (especially useful when the column goes
from portrait to landscape)
• simple selection or multi selection
• column sub-header
• popup menu
• edit
• ...
The following types of columns are offered: Text, Numeric, Currency, Date, Time, Static, Image, Progress Bar, Ranking
Benefit provided by this version 20 new feature:
Versatility.
465
n e w
f e a t u r e
W D
W B
W M
Table control on Mobile:
input
TABLE CONTROL
ON MOBILE
Input in table controls on mobile is automatically managed.
To perform an input, when clicking a cell, a generic input area
comes up at the top of the table.
Benefit provided by this version 20 new feature:
Input in table is easy
466
463
n e w
f e a t u r e
W D
W B
The “classic” Table control of WINDEV is now available for Android and iOS mobile applications.
This new control incorporates the capabilities of the WINDEV
Table control.
Scrolling - horizontal and vertical - is done with the finger.
f e a t u r e
W D
W B
W M
Table control on Mobile:
programming
W M
Table control on Mobile
n e w
The WLanguage functions in the Table family are supported on
mobile.
The name of the functions and their syntax are identical to the
ones on WINDEV.
Benefit provided by this version 20 new feature:
It’s never been easier to port a desktop application over to mobile!
467
n e w
f e a t u r e
W D
W B
W M
Table control on Mobile:
The AAF
A table displayed on a phone, with data entry
Benefit provided by this version 20 new feature:
Your existing WINDEV assets can be reused
The AAF available for the Table control on mobile are:
• sort
• magnifier (search)
• filter,...
The AAF are finger accessible by the end user.
Benefit provided by this version 20 new feature:
Powerful features without any programming
468
n e w
f e a t u r e
W D
W B
W M
Table control on Mobile:
Comparison with Looper
controls
not available in table columns (button for example)
Benefit provided by this version 20 new feature:
The developer can choose
In version 20, WINDEV Mobile offers two types of
controls to present iterative data: the new Table control and the Looper control.
Each one of these two types of controls presents
some benefits. When to use what?
It is better to use a Table control:
• to automatically benefit from a table presentation
of the data
• so the end user can easily change the size of the
columns
• to allow quick modification of the data (without
“form” window)
• to benefit from the AAF specific to tables: sort,
magnifier, filter...
• to reuse existing WINDEV assets
It is better to use a Looper control:
• to benefit from a richer UI (several controls in one
cell) by positioning controls to the pixel
• when the developer wants to use specific controls,
58
59
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
478
MOBILE RAD
469
n e w
f e a t u r e
W D
W B
483
to
W M
n e w
f e a t u r e
W D
W B
New mobile RAD
for tablets
W M
New mobile RAD:
Pretty Windows
Need to quickly generate the form corresponding to a data file
from the data model?
Want to recreate the famous “3 minutes” from the TDF at
home?
In version 20, the Window RAD of WINDEV Mobile has been
completely revamped.
Tablets and phones don’t have the same use mode.
Our teams have thus created 2 types of RAD: a RAD for tablets,
a RAD for phones.
A single application can of course contain both windows for
phones and windows for tablets: the appropriate window will
be opened on the relevant device.
The generated UIs are suited for a mobile use mode, by using
the controls specific to these devices.
The new Window RAD offers 14 new templates.
6 new RAD templates for tablets are offered.
These templates are adapted to tablets.
Thanks to the use of the powerful “Layouts” concept, these
RAD templates are adapted to the size and orientation of the
tablet screens.
RAD obviously automatically generates the necessary layouts
adapted to the chosen template.
• Image + Form for display
• Image + Form for input
• Image + Long text
• Image gallery
• Looper + Form in display mode
• Multiline area + Form in display mode
During such action by the end user, a small window automatically appears in the exposed area. An automatic animation is
performed.
In version 20, there’s nothing to program to benefit from this
functionality with “browsing” tables. The linked data is automatically updated.
For the the “memory” table, the new Refresh by pull/release process lets you enter custom update code: HTTP request...
You can customize the small window that comes up when the
finger “pulls”.
New processes are being introduced to allow the developer to
customize the caption displayed in the small window (“last refresh date”,...), the animation, ...:
• Pull to refresh: Start
• Pull to refresh: Wait for release
• Pull to refresh: Refresh operation.
A RAD that fits.
47 7
to
W M
Animate your applications through a simple recompile
487
n e w
f e a t u r e
W D
W B
W M
Animation of the Image
control
The display of an image can be animated.
You simply need to provide a set of images containing the successive steps of the animation.
No programming is required
Benefit provided by this version 20 new feature:
Animate
488
n e w
f e a t u r e
W D
W B
W M
Infinite progress bars
Benefit provided by this version 20 new feature:
470
control, or globally at the application’s level.
Benefit provided by this version 20 new feature:
A simple finger motion refreshes the image
A mobile often connects to the Internet.
It is difficult to predict the time required to get the answer: the
use of an infinite progress bar is fully justified!
In version 20, the progress bar control of WINDEV Mobile offers
appropriate solutions.
The progress bar can be the system standard progress bar.
The progress bar can also offer a completely custom look.
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
RAD generates different applications according to the
hardware: on a tablet, since the screen is larger, a list is
displayed on the side
New Mobile RAD
for phones
8 RAD templates for phones are offered.
These templates are adapted to the phone’s screen size, as well
as the use mode of phones:
• Image + Form for display
• Image + Form for input
• Image + Long text
• Form in edit mode
• Form + Looper
• Image gallery
• Looper
• Multiline zone.
Window editing gains in power and simplicity
n e w
f e a t u r e
W D
W B
486
n e w
f e a t u r e
W D
W B
W M
Automatic animations
Benefit provided by this version 20 new feature:
48 4
Standard behavior, without coding
W M
New mobile RAD:
the generated code
The new Mobile Window RAD generates a clear code, easy to
understand, easily reusable and easily maintainable.
Links with the data are automatically generated.
Wizards ask questions adapted to each template.
An end user checks a check box? The check box slowly pivots
(but not too much) to display its back which is checked: this is
one of the automatic animations offered by WINDEV Mobile 20
for your applications!
Version 20 of WINDEV Mobile offers a large number of automatic animations on controls:
• animation when checking a check box
• animation when modifying a radio button
• animatin on the rating control
• animation when changing area in an ActionBar
• animation when a progress bar changes value.
Benefit provided by this version 20 new feature:
A code easy to adapt and customize
Examples of “infinite” progress bars provided
Benefit provided by this version 20 new feature:
To infinity and beyond!
489
n e w
f e a t u r e
W D
W B
W M
Standard encryption
The DES, 3DES and AES encryption modes are supported on
Android and iOS. The secure data exchange between mobiles
and servers is greatly facilitated.
(see new feature 106)
Benefit provided by this version 20 new feature:
Maximal interoperability.
NEW FEATURES
490
n e w
f e a t u r e
W D
W B
W M
Automatic tests on mobile
485
n e w
f e a t u r e
W D
W B
W M
“Pull to refresh”
Benefit provided by this version 20 new feature:
Templates adapted to phones
On a mobile, the action of pulling a table or a looper to refresh
its content has became expected behavior for the end user.
Animation boards. Here 2 examples
You’ll discover these wonderful animations after you receive
your version 20 and you simply recompile your mobile applications.
Of course, these animations can be disabled, either control by
In version 20, automatic tests are available for mobile applications.
On the simulator, you can save, write and modify, then replay
test scripts.
Immediately increase the quality and stability of the applications
you distribute.
60
61
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
Before delivering an update, simply replay the automated tests
you’ve previously created to make sure there is no regression!
the most suitable image based on the device’s resolution.
Note that for the display of controls and their style, the adapted
size is preserved regardless of the DPI: WINDEV Mobile takes
care of everything!
Benefit provided by this version 20 new feature:
Automate your mobile applications’ testing.
491
n e w
f e a t u r e
W D
W B
In older versions, the map control wasn’t included in interface
of the simulator on the PC.
In version 20, this Map control is available in the simulator.
The test (manual or automated) of applications using maps becomes possible.
Benefit provided by this version 20 new feature:
A simulator closer to reality.
n e w
f e a t u r e
W D
W B
W M
Universal replication
on mobile in 64-bit
No more limits for replicated data.
493
n e w
f e a t u r e
W D
W B
W M
Images: Automatic support
based on DPI
On mobile, to display images, you need to know that each device has a unique physical size and graphic resolution (the number of pixels displayed for its size).
The DPI is the report between the two. DPI means “Dots Per
Inch”.
This means that the same image file, on 2 screens with the
same physical size, but with a different resolution may be displayed too small or too large.
To avoid this, and display the image in an identical size, the images are displayed in a “stretched” mode.
In the case of high definition screens, if the image is low quality,
the image displayed may be pixelated.
In the case of low resolution screens, it’s the opposite: if the
image has too high of a definition, its size reduction may turn
out blurry.
The problem described above is often called “DPI problem.”
Factor between DPI can be greater than 10!
To resolve this problem, WINDEV Mobile 20 offers a drastic solution: in the editors, wherever it is possible to select an image
(image control, control background ...), it is now possible to select multiple image files, suitable for different DPI.
This new feature allows you to automatically select at runtime,
496
Benefit provided by this version 20 new feature:
The assisted universal replication lets you quickly implement a
replication between databases found on mobiles and servers
(located at the company’s headquarters for instance). A few
clicks and a few lines of code are enough.
In version 20, the assisted universal replication evolves; the assisted universal replication service is now available in 64-bit. This
makes it possible to handle very large volumes of data.
Benefit provided by this version 20 new feature:
NATIVE IOS:
IPHONE, IPAD
Benefit provided by this version 20 new feature:
Let’s remember that your existing WINDEV code, your windows,
even if they are 5 or 10 year old, are compatible with the
iPhone and iPad.
Resize your windows, tweak a few things, and in a few hours
or a few days, you get great looking applications for iPhone and
iPad.
Your teams don’t need to learn a new language because thanks
to 20 years of constant innovation, WLanguage is a universal
language: iOS, Windows, Linux, Android, Web, Mac, Windows
Phone...
You’ve made the right choice!
iOS benefits from the general common new features, and the
new features common to mobile: tables, new window RAD,
pull to refresh, encryption,... (see new features 463 to 495)
W M
Map control
in the simulator
492
iOS8 is supported in WINDEV Mobile 20.
iOS8 is supported on iPhones starting with version 4s.
WINDEV Mobile 20 knows of course how to compile applications for older versions of iOS and iPhone!
n e w
f e a t u r e
W D
W B
W M
Layout-based fonts
With WINDEV Mobile 20, for a given control, it is possible to
specify a different font for each layout.
This new feature is very useful in the development of a single
application designed to run on both Android and iOS.
This innovation makes it possible to use a specific font for each
platform.
It is also possible to specify the size of the font for each layout.
Benefit provided by this version 20 new feature:
Support for all the devices and system versions
495
n e w
f e a t u r e
W D
W B
W M
Layout: ability to know
the current layout
In version 20 of WINDEV Mobile, the new WinCurrentLayoutWLanguage function lets you get the layout in use on the
device.
This function allows you to make special adaptations based on
the current execution platform, or optimize the code according
to the platform, orientation, resolution.
Benefit provided by this version 20 new feature:
Support for all the devices and system versions.
62
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
f e a t u r e
W D
W B
W M
Support for iOS 8, iPhone
6 and iPhone 6+
Your images are pretty, regardless of the resolution
49 4
n e w
Support for all the devices and system versions.
497
n e w
f e a t u r e
W D
W B
W M
iPhone 6 and 6+ : greater
resolution, greater DPI
The iPhone 6 and 6+ have both a larger screen size compared
to older models, and greater DPI.
Thanks to the anchor technology, a simple recompilation in
WINDEV Mobile 20 allows windows in older applications to not
be “stretched” when running on an iPhone 6 or 6+, and to
take up the entire available physical space.
Benefit provided by this version 20 new feature:
Support for all the devices and versions of iOS.
498
n e w
f e a t u r e
W D
W B
W M
Layout:
Common window editing
portrait <> landscape
iPhone <> iPad
The window layouts allow for a single development regardless
of the device: iPhone or iPad.
The development can even be compatible with the Android system!
Find the new features for layouts in new features # 494 to 495.
Benefit provided by this version 20 new feature:
Simply develop and maintain a single application for multiple devices.
499
n e w
f e a t u r e
W D
W B
502
W M
Map control:
route tracing
n e w
f e a t u r e
W D
W B
Animate changes in size, visibility, position, ...
W M
Benefit provided by this version 20 new feature:
Animate your interfaces.
iPhone: popup menu
To compensate for the lack of display surface in a window on a
mobile device, it is often useful to
provide a popup menu.
Usually, this menu contains the
possible actions.
In version 20, WINDEV Mobile lets
you display a popup menu in the
iPhone standard, i.e. from the
bottom of the screen.
This menu can be opened with
the finger of the end user or using
the OpenPopupMenu WLanguage
function.
The native iOS map control
evolves: in version 29, it is now
possible to draw routes on native Apple maps.
Benefit provided by this version
20 new feature:
Draw routes.
507
500
n e w
f e a t u r e
W D
W B
W M
n e w
f e a t u r e
W D
W B
Cross hairs on charts
Find an address using
MapDisplayPosition
In version 20, a new syntax for the MapDisplayPosition WLanguage function is available.
This syntax accepts an address as parameter and position the
map on this address.
In version 20, charts offer a cross-hair feature.
A cross hair makes reading easier, and displays a tooltip on the
pointed value.
Appetizing cookies!
Popup menus for iPad as well (don’t play favorite)
508
n e w
f e a t u r e
W D
W B
W M
Applications developed with older versions already know how
to read QR codes.
In version 20, the automatic reading of a large number of other
bar codes is part of the product.
The bcCapture function of WINDEV Mobile 20 offers 9 new
types of bar codes in addition to the QR code:
UPCE, Code39, Code39Mod43, EAN13, EAN8, Code93,
Code128, PDF417 and Aztec.
f e a t u r e
W D
W B
W M
Table control in iOS
Long live the tables!
f e a t u r e
W D
W B
W M
Secure forms: HTTPS
The WLanguage functions for managing HTTP forms now support the HTTPS secure protocol.
Benefit provided by this version 20 new feature:
Your forms are secure
509
n e w
f e a t u r e
W D
W B
W M
Using third-party
libraries
.framework, .bundle)
Benefit provided by this version 20 new feature:
In version 20, the table control is available in iOS, for
iPhone and iPad. See new
features 463 to 468.
Benefit provided by this version 20 new feature:
n e w
To manage special cases, you can directly enter Objective-C
code in the WINDEV Mobile code editor.
This code can call external libraries (.h and .a files).
In version 20, you can also call or include libraries in .framework format and in .bundle format.
Just specify the name of the libraries used in the generation
wizard.
The mailman’s friend!
n e w
W M
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
501
W B
Benefit provided by this version 20 new feature:
Reading EAN, Code 39,
and so on, bar codes
W M
W D
The WLanguage functions for managing cookies (httpCookie
family) lets you read and modify cookies present on Internet
sites.
These functions are now available for iOS applications.
Cake and ice cream (on the menu).
503
f e a t u r e
Manage cookies on iOS
505
Benefit provided by this version 20 new feature:
n e w
Better integration of existing external libraries.
Chart on iPad: the cross hair helps locate the right info
510
Benefit provided by this version 20 new feature:
f e a t u r e
W D
W B
W D
W B
W M
The code editor lets you visually define automated procedures:
execution in a thread, call at regular intervals...
Automated procedures are available for iOS.
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
Procedure automation
Charts are even more meaningful.
504
n e w
W M
iPad: popup menu
In version 20, popup menus are also being introduced to iPad
applications.
Unlike the standard iPhone menus that must be put at the bottom of the screen (automatically), popup menus on iPad can be
displayed anywhere, usually next to the control that triggered
the opening of the menu.
With WINDEV 20, the placement is automatic.
New bar code reading capabilities.
506
n e w
f e a t u r e
W D
W B
W M
Benefit provided by this version 20 new feature:
Less code to enter with automated procedures.
Animate controls
Play an animation when the user selects a table row or clicks a
button?
Nothing is easier in version 20 with the AnimationPlayOnControlProperty function, which is now available for your iOS applications.
64
65
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
511
n e w
f e a t u r e
W D
W B
51 4
W M
Long press on iOS
n e w
f e a t u r e
W D
W B
W M
Apple Watch
A new process (pcode) is available in iOS controls: Long press.
Use example: a long press on a table row or Looper control triggers the display of a popup menu (using the new WLanguage
function OpenPopupMneu)
It is possible for a WINDEV Mobile 20 application to interact
with the new watch from Apple: the Apple Watch.
WINDEV Mobile 20 applications can, among other things, trigger notifications directly on the Apple Watch.
517
to
624
Do not release the pressure!
512
n e w
f e a t u r e
W D
W B
W M
iOS toasts
Benefit provided by this version 20 new feature:
Support of the Apple Watch.
51 5
Toasts are messages that popup quickly on the end user’s
screen, then automatically disappear.
Toasts are used to notify the user that there’s no action to take
in response to the message, e.g. to indicate that a document
was successfully saved.
The ToastDisplay WLanguage function is now available for
iOS.
n e w
Make toasts with your iPhone!
f e a t u r e
W D
W B
W M
Retrieing emails:
display a
progress bar in iOS
W B
Benefit provided by this version 20
new feature:
Your applications under your thumb!
The EmailProgressBar WLanguage function lets you manage
a progress bar when retrieving emails from the server.
In version 20, this function is available for iOS applications.
51 6
n e w
f e a t u r e
W D
W B
W D
W B
W M
AnimationPlayOnControlProperty
StringToTime
DateTimeToReal
EnumMenu
grStockGetData
grSurfaceGetData
HExecuteScheduling
HDeleteScheduling
HModifyViewRights
HTTPCookieWrite
HTTPCookieManage
HTTPCookieRead
HTTPCookieReset
HTTPCookieGet
HTTPCookieReplace
HTTPSend
CheckBoxCount
OpenPopupMenu
JSONToVariant
iResetNbPages
AnimationGetParameter MapAddItinerary
CoordinateScreenToEditor CoordinateEditorToScreen
UnCryptStandard
RequestUpdate
ExecuteUpdate
WinCurrentLayout
grScatterGetDataXY
grGetData
HCompareItem
HAddScheduling
HListScheduling
HModifyScheduling
HSave
HSendMessageToClient
HRefreshView
HOnServerCall
RealToDateTime
Edit
RadioButtonCount
SFAdd
SFForward
Query
SFConnect
SFConvertLead
SFExecuteQuery
SFExecuteProcess
SFModify
SFSearch
SFSeekDeleted
SFUndelete
SFEmptyRecycleBin
EventClose
SysStandby
TableEnableFilter
TableDisplay
TableAdd
TableSeek
TableFilteredColumn
TableMoveLine
TableDisableFilter
TableEnumColumn
TableColumnSubscript
TableInsert
TableInsertLine
TableModifyLine
TableCount
TableRefreshVisible
TableInputInProgress
TableSelect
TableSelectMinus
TableSelectPlus
TableDelete
TableSort
ToastDisplay
PTWait PTWaitAll
PTRequestCancelation
PTExecute
PTExecuteAfter
PTExecuteAfterOne
TPParameter
LooperRefreshVisible
CheckUserIdentity
Better compatibility between platforms.
SFDisconnect
SFMerge SFRead
SFSeekModified
SFDelete
EventOpen
TableSort_55
TableAddLine
TableSortedColumn
TableSwapLine
TableInfoXY
TableModify
TablePosition
TableInputSearch
TableSelectCount
TableDeleteAll
PTCancel
PTExecuteAfterAll
VariantToJSON
66
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
Android benefits both from the general
common new features, and the new features common to mobiles: tables, new window RAD, pull to refresh, encryption,... (see new
features 463 to 495)
625
new feature
W D
W B
W M
Layout: Common
window editing
portrait <>
landscape
phone <> tablet
The window layouts allow for a single development regardless of the device: phone or tablet.
The development can even be compatible with iOS!
Find the new features for layouts in new features # 494
to 495.
Benefit provided by this version 20 new feature:
W M
Version 20 offers 6 new properties for iOS, 31 new types and
62 new constants (please see the complete list in the online
help).
Android development has never been as powerful as with
WINDEV Mobile 20. You can take advantage of powerful
new features that come in addition to all the ones you already have.
iOS or Android
evelopment?
Don’t choose anymore: a single project, several layouts,
and you get 2 native
executables
Simply develop and maintain a single application for multiple platforms.
New properties, new types
and new constants
Benefit provided by this version 20 new feature:
ANDROID
108 new WLanguage functions are being introduced for iOS in
version 20:
W M
“Touch ID” is the Apple technology
that allows fingerprint reading on an
iPhone (from version 5s)
With the support for the Touch ID
technology, applications developed
with version 20 of WINDEV Mobile
can ensure the identity of the user
(more exactly can ensure the presence
of the appropriate user’s finger) to
perform a specific operation for instance. payment, access to confidential documents, ...
If for any reasons the end user cannot
put his finger on the phone (wears
gloves,...), he can enter his confidential passcode (or a code specific to the
application).
Benefit provided by this version 20 new feature:
n e w
W D
Manage authentication
via fingerprint in your applications (Touch ID)
A toast displayed on iPhone: stealth message!
513
f e a t u r e
f e a t u r e
New WLanguage
functions supported
on iOS
AnimationSetParameter
MapDeleteItinerary
CryptStandard
EmailGetIndicator
Benefit provided by this version 20 new feature:
n e w
The Input function on iPhone lets you create question type
windows via programming (see new feature 100/101)
67
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
626
n e w
f e a t u r e
W D
W B
fit from them.
You can obviously disable the animations, either in the description of the chart control, or via programming.
W M
Table control on Android
Benefit provided by this version 20 new feature:
In version 20, the Table control is available in Android, for
iPhone and iPad. See new features 463 to 468.
• multiline texts
• lists of elements.
to do so, the advanced WLanguage type NotificationFormat
is available.
635
n e w
f e a t u r e
W D
W B
W M
636
In Android applications developed with WINDEV Mobile, the
applications can use standard fonts installed on the phone.
In version 20, your applications can use any TrueType fonts.
Simply include the .TTF file containing the font in the application’s resources, and of course use the font in your controls’
style.
Make sure you have the rights to use the font...
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
W D
W B
W M
Assigning “5-state” images
via programming
Even on a phone tables are visible.
627
f e a t u r e
The “5-state” images are images that contain the different
states of a button: pressed, idle, grayed...
The “5-state” image is assigned in the window editor.
In version 20, you can change the image of button via programming.
W M
Interactive chart
Android charts become interactive in version 20.
The end user can now zoom on a chart using two fingers.
it is also possible to move on the chart after zooming.
A double tap on the chart returns the chart to the original
zoom level.
Benefit provided by this version 20 new feature:
More flexibility
631
n e w
f e a t u r e
W D
W B
W M
Native JSON in Android
The JSON format is natively supported by WINDEV Mobile 20 in
Android applications.
It becomes possible to deserialize a JSON document in a WLanguage variable with the Deserialize function.
It is also possible to serialize a WLanguage function in JSON
using the Serialize function.
This new feature allows you to use the REST type web services,
which often use the JSON format.
Benefit provided by this version 20 new feature:
Better support for REST and JSON
Benefit provided by this version 20 new feature:
You can see the results in just a glance.
628
n e w
f e a t u r e
W D
632
W B
n e w
f e a t u r e
W D
W B
W M
Rich notifications
W M
Chart animations
Android charts are now animated.
Animations are automated, there’s nothing to program to bene-
Android modifications evolve: they become richer.
In version 20, you can create “rich” notifications, i.e. that can
display:
• images
W M
n e w
f e a t u r e
W D
W B
W M
As you know, a skin template determines the look of an application’s controls
However Android doesn’t allow some “system” control to be
customized.
Build your own style
n e w
W B
“Holographic Android”
theme for system controls
Benefit provided by this version 20 new feature:
630
W D
10 new HFSQL variables are supported in version 20 for Android: H.LanguageCreationUnicode, H.Out, H.Found, H.TemporaryDirectory, H.TrsInternalID, H.TrsApplicationName,
H.TrsMachineName, H.TrsPost, HCS.Timeout, HCS.FrameSize.
Embed your own
custom fonts
A table on an Android smartphone
f e a t u r e
New HFSQL state
variables for Android
Bring life to your charts
629
n e w
3 modifications displayed: note the possibility to directly respond to the photo received
Benefit provided by this version 20 new feature:
Rich notification: watch for the IRS!
633
n e w
f e a t u r e
W D
W B
W M
Notifications with actions
In the notifications, the action button allow the end user to trigger an action directly from the notification, without having to
relaunch the associated application.
In your applications, in version 20, the notifications for Android
can be accompanied by action buttons.
The NotificationAction new advanced type is being introduced.
In order to ensure better visual consistency with the rest of the
system, the holographic theme (the “holographic” theme is a
standard Android theme) is automatically applied by WINDEV
Mobile 20 to the system controls such as the menu icon, the
native sliders, the infinite progress bars, the action bar...
Benefit provided by this version 20 new feature:
Better visual consistency with the Android system.
Benefit provided by this version 20 new feature:
The end user can act immediately
634
n e w
f e a t u r e
W D
W B
W M
HFSQL Android:
automatic reconnection
The connection to a remote HFSQL database can sometime be
interrupted. The most common case is the loss of Internet connection.
When an Android application that uses a HFSQL database in
Client/Server mode looses its connection to the database, the
application automatically offers to reconnect when the connection is restored.
You don’t have to manually manage the loss of connection.
Benefit provided by this version 20 new feature:
Disconnected? The data is safe.
68
69
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
637
n e w
f e a t u r e
W D
W B
6 40
W M
Platform choice wizard
The platform choice wizard evolves: it offers several successive
planes, more intuitive
Single type of hardware or heterogeneous hardware?
Tablet or phone or both?
Resolution categories of the target hardware?
...
The generated windows are better suited to the target hardware.
n e w
f e a t u r e
W D
W B
W M
Connected objects:
Android Wear
6 43
n e w
f e a t u r e
W D
W B
Android Wear is the version of the Android operating system
dedicated to connected objects: watch, bands, rings,...
This version is suitable for smaller devices (screen size, battery
power) devoid of keyboard.
Add a finishing touch to your applications.
n e w
W M
Benefit provided by this version 20 new feature:
Don’t lose time creating the configuration anymore.
f e a t u r e
W D
W B
W M
Google Glass
Display a message and response Proposal
WINDEV Mobile 20 applications might display messages, images, questions and proposed answers on Android Wear devices.
This dialog takes place through rich notifications (see new features # 632 and 633)
For example, the end user may receive an alert on his watch,
and decide what action to take by clicking on the choices offered on his watch.
Another example, an end user may receive a message on his
watch, and dictate (verbally!) its response to the watch. The
phone will directly receive the answer in text form.
Benefit provided by this version 20 new feature:
Take advantage of Android Wear.
The Android system specific to Google Glass evolves all the
time. WINDEV Mobile 20 will offer tailored features to allow
use of the functionalities of Google Glass.
Don’t hesitate to contact PC SOFT fore more information.
6 41
n e w
f e a t u r e
W D
W B
W M
Do not ignore errors in
SSL Certificates
An SSL certificate can trigger an error:
• expired certificate
• self-signed certificate
• certificate whose name doesn’t match the requested URL
• ...
In version 20, you can manage the SSL certificate errors using
the functions in the HTTP family, as well as in the calls to secure
Web services.
Benefit provided by this version 20 new feature:
Better support for SSL.
6 42
n e w
f e a t u r e
W D
W B
W M
Image catalog: new theme
Benefit provided by this version 20 new feature:
I’m watching you!
f e a t u r e
W D
W B
W M
Miscellaneous new
Android features
The compilation of Android applications requires the presence
of the Android SDK on the compilation machine.
What’s more annoying than going in search of the Android SDK
in the labyrinth of your hard drive, know which subdirectory to
select ...?
In version 20, no more archaeological digs!
WINDEV Mobile 20 detects automatically the location of the
Android SDK installation, and automatically configures itself accordingly.
n e w
WINDEV Mobile 20
my projects
are mobile
W M
Benefit provided by this version 20 new feature:
644
Automatic configuration
of the Android SDK
639
W B
New splash screen
The choice of the window size is assisted
n e w
W D
Version 20 offers a splash screen automatically integrating an
image (customizable and optional).
Benefit provided by this version 20 new feature:
638
f e a t u r e
• The latest version of Android is supported.
• The Dialog function now lets you choose whether or not to
comply with the “Validation” and “Cancel” system buttons
order.
• The Android numeric controls benefit from the “set to blank if
zero” option.
• The AlbumPicker WLanguage function now offers a second
syntax with callback.
Benefit provided by this version 20 new feature:
New features for Android.
6 45
n e w
f e a t u r e
W D
W B
W M
New constants and new
WLanguage types for
Android
Version 20 offers 2 new types for Android and 42 new constants (please see the complete list in the online help).
6 46
to
703
n e w
f e a t u r e
W D
W B
W M
new WLanguage functions
supported on Android
58 new WLanguage functions are being introduced for Android
in version 20:
AnimationSetParameter
StringInsert
CryptStandard
HSave
HReconnect
WordOccurrence
EmulateCheckBox
PositionToLine
TableAddLine
TableMoveLine
TableColumnSubscript
TableModify
TableRefreshVisible
TableSelectCount
TableSort
AnimationGetParameter
StringDelete
UnCryptStandard
HInfoMemo
HOnError
DayNumberInAlpha
EmulateRadioButton
TableEnableFilter
TableSeek
TableDisableFilter
TableInfoXY
TableModifyLine
TableInputSearch
TableSelectPlus
LooperRefreshVisible
CharactTypeOccurrence
CoordinateScreenToEditor
ExtractLine
HFree
LanguageToCharset
MonthNumberInAlpha
EmulateSimulator
TableDisplay
TableFilteredColumn
TableSwapLine
TableInsert
TableCount
TableSelect
TableDelete
CharactType
CoordinateEditorToScreen
WinCurrentLayout
HCross
LineToPosition
EmulateActionBar
EmulatePane
TableAdd
TableSortedColumn
TableEnumColumn
TableInsertLine
TablePosition
TableSelectMinus
TableDeleteAll
The image catalog offers themes (image categories). The new
“Android L” theme is available
Benefit provided by this version 20 new feature:
One more theme.
70
71
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDOWS
MOBILE AND CE
WINDOWS STORE
APPS
Windows Mobile, Windows CE and Windows Embedded are
used a lot in industrial fields. Version 20 of WINDEV Mobile
benefits from the common new features of the environment,
and offers new WLanguage functions.
WINDEV Mobile 20 lets you create “Windows Store apps” type
applications, and helps you take advantage of the relevant RAD
as well as its layouts.
(See new features 223 to 250).
WINDOWS PHONE
Development on Windows Phone benefits from the common
new features, as well as the new features presented below.
726
n e w
f e a t u r e
W D
W B
WEBDEV
COMMON
NEW FEATURES
W M
Window layouts
70 4
n e w
f e a t u r e
W D
W B
In the window editor of WINDEV Mobile, layouts let you define
multiple page arrangements for the same window within the
same application. Depending on the device or its orientation,
the proper window will be used.
Layouts are now available for Windows Phone applications.
W M
WLanguage functions
from the “ce” family
in 64-bit
728
n e w
f e a t u r e
Communicate with devices in 64-bit
f e a t u r e
729
W D
W B
W M
New properties, new types
and new constants
Version 20 offers 5 new properties in Windows CE and Mobile,
2 new types and 46 new constants (please see complete list in
the online help).
In the editor, editing a window for Windows Phone
Benefit provided by this version 20 new feature:
A single window for all the modes.
727
706
to
725
n e w
f e a t u r e
W D
W B
W M
New WLanguage functions for Windows Mobile
and CE
20 new WLanguage functions are being introduced for Windows Mobile and Windows CE in version 20.
StringToTime
RequestUpdate
grScatterGetDataXY
HModifyViewRights
EventClose
CoordinateScreenToEditor
ExecuteUpdate
grGetData
iResetNbPages
EventOpen
CoordinateEditorToScreen
WinCurrentLayout
grSurfaceGetData
NumToFinancialWritingChinese
TableRefreshVisible
DateTimeToReal
grStockGetData
HCompareItem
RealToDateTime
LooperRefreshVisible
n e w
f e a t u r e
W D
W B
W M
“Closing child window”
process
The Closing child window process is available for Windows
Phone applications.
This process is called when a window opened via the OpenMobileWindow function is closed and usually allows for the update
of the UI of the calling window.
Benefit provided by this version 20 new feature:
Better ability to port between systems.
72
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
W D
W B
W M
An editor
that respects
standards
The majority of new features presented below draw
on the HTML5 and CSS3
standards.
This ensures a high level
of functionality, quality
rendering in browsers,
and compliance.
Code size is lightened,
processes are reduced or made natively by the
browser.
These implementations
Benefit provided by this version 20 new feature:
Compliance with standards.
W M
200 common new features
Benefit provided by this version 20 new feature:
n e w
W B
WEBDEV benefits from the common new features of version
20, including the new interface for the Control Centers, the Fotolia library included in the image catalog, the SQL views...
WEBDEV 20 benefits of course from the evolution of the development environment and of the compatibility with WINDEV
and WINDEV Mobile.
The WLanguage functions from the ce family allow WINDEV
applications to communicate with devices on Windows Mobile
or Windows CE.
This ce family of functions is now available in 64-bit in addition
to the 32-bit version.
70 5
W D
guarantee a smooth and fast running of the sites developed (or
simply recompiled!) with version 20 of WEBDEV.
INTERACTIVE
CHARTS
W D
7 30
W B
W M
New interactive chart
control
In version 20, the chart control in WEBDEV gets a facelift.
The chart control offers a more
contemporary style in keeping
with the evolution of the Web.
The chart control benefits in
version 20 from a new rendering engine that runs directly in the browser: it uses
vector to draw and is more
fluid. The drawing will
always be perfectly
clear whatever its size.
In version 20, charts
offer animations and visual
effects.
Benefit provided by this
version 20 new feature:
WEBDEV charts
come to life!
7 31
n e w
f e a t u r e
W D
W B
7 35
W M
Chart animations
In version 20, the chart display benefits from automated animations.
For example, the first time it is displayed, a pie chart comes up
piece by piece. In a bar chart,the bar appear progressively
(climb) from the horizontal axis.
The end user can change the chart’s type using the contextual
bar.
The animations are also played when the user changes the
chart’s type.
These animations are available for the following types of charts:
• section
• donut
• column chart
• line
• area
• ...
The animations do not consume any resources on the server.
The animations can be turned off by programming.
n e w
f e a t u r e
W D
W B
W M
Chart control:
interaction
with pie charts
The pie chart is interactive.
For example, when hovering a section of a pie chart, the section
is extruded automatically. Thus, it is enhanced.
f e a t u r e
W D
W B
7 36
W B
7 39
n e w
f e a t u r e
W D
W B
W M
Chart control:
interaction with the line
and surface charts
W M
W B
In version 20, the chart control in WEBDEV interacts with the
user either via the mouse, or via gestures on mobile devices.
The chart is not a simple static image, but a set of elements that
react to the users’ actions.
Your charts follow your finger and the mouse
f e a t u r e
W D
W B
W M
The tooltip
Hovering a section of the chart always displays a tooltip.
In version 20, the display of this tooltip gets sophisticated:
• the outline of the tooltip uses the color of the series
• the tooltip’s background is transparent
• the tooltip comes up with a fade in effect
• an arrow precisely points to the value
W M
n e w
f e a t u r e
W D
W B
W M
Chart control AAF:
hide a series in a chart
The information tooltip follows the points of the curve according
to the mouse movements (or finger on mobiles)
Benefit provided by this version 20 new feature:
Don’t pinch the bubble.
742
n e w
f e a t u r e
W D
W B
W M
Simple cross hair on a
line chart
The line chart lets you display a “cross hair”.
This cross hair allows you to move with precision based on a
horizontal and vertical mark on the chart.
When the user points to a point on the curve, the precise values
of the selected point also appear in a tooltip.
When moving the mouse, the cross hair follows the closest
curve.
A chart can offer a large number of series.
A user may want to temporarily hide some of the series in the
chart.
This operation is done via a simple click on the legend of the
series.
Trim up your charts.
Benefit provided by this version 20 new feature:
Aim right!
740
n e w
f e a t u r e
W D
W B
W M
743
Pie chart, donut chart
AAF: reorientation of the
chart
W M
Chart control: interaction during rollover
Benefit provided by this version 20 new feature:
n e w
Benefit provided by this version 20 new feature:
Fluid charts
W D
W B
Better view your pieces of pie
Benefit provided by this version 20 new feature:
f e a t u r e
W D
Dynamic legends
In version 20 the display of charts is more fluid.
The number of server requests is reduced, during the initial display, or when interacting with the user.
The display of charts is therefore faster and more fluid.
n e w
f e a t u r e
Benefit provided by this version 20 new feature:
More fluid charts
734
n e w
Charts offer to display a legend.
The display of a legend is automatic by default.
In version 20, the chart offers an interaction with the legend
and the chart’s drawing.
For example, when a series is hovered in the legend, the series
is automatically highlighted in the chart.
Conversely, hovering the chart highlights the corresponding legend.
Charts of any size.
W D
741
W M
Chart control:
interaction with
the legend
Benefit provided by this version 20 new feature:
f e a t u r e
W B
When hovering a bar type chart, the bar hovered is highlighted.
A tooltip comes up to indicate the values.
If the bar chart is a “stacked” bar chart type, a multi-tooltip is
displayed with the data for the various series.
7 38
Benefit provided by this version 20 new feature:
When the user resizes the browser, the charts found in the page
(and that are anchored) are resized.
The chart’s drawing will remain perfectly clear whatever its size.
In fact, in version 20, the chart is drawn using vectors.
The resizing is done without any call top the server.
n e w
W D
Bar charts interact
W M
Resizing charts
7 33
f e a t u r e
Benefit provided by this version 20 new feature:
Animation!
n e w
n e w
Chart control:
interaction on bar charts
Benefit provided by this version 20 new feature:
7 32
7 37
The pointed line is thickened, the corresponding series highlighted in the legend
When hovering a line type chart, the part of the line hovered
appears thicker.
When a point is hovered, this point is automatically zoomed in,
and a tooltip automatically comes up to display the corresponding values.
Cross hairs can be displayed (see new features # 037 and 742743)
The user can pivot a pie chart or a donut chart.
Simply click a section of the chart, and this section is automatically oriented toward the bottom of the chart.
Benefit provided by this version 20 new feature:
Make sense of your charts...
n e w
f e a t u r e
W D
W B
W M
Multi cross hair on a line
chart
Another type of cross hair is available: the “multi” cross hairs.
This type of cross hairs are useful on a set of curves.
In this case, the tooltip displays the information of each intersected curve.
This multi cross hairs let you compare several series with precision.
Benefit provided by this version 20 new feature:
Detailed exploration of a chart
74
75
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
• hide the widgets
• Restore the initial configuration
• ...
All these operations are done in a user-friendly way, using the
mouse or finger.
DASHBOARD
CONTROL
Benefit provided by this version 20 new feature:
Dashboard: easy to customize!
746
n e w
f e a t u r e
W D
W B
W M
New Dashboard control
Benefit provided by this version 20 new feature:
749
For once it’s good to get in the cross hair!
n e w
f e a t u r e
W D
W B
W M
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Charts are referenced
Dashboard: easy to use!
f e a t u r e
W D
W B
W M
Referencing: Chart texts
745
n e w
f e a t u r e
W D
W B
750
W M
Chart control:
transparency
All the graphical elements of the new chart control have adjustable opacity.
It is possible to create charts with transparency, which allows
them to blend in with a background image or the page background.
Benefit provided by this version 20 new feature:
Decision makers love dashboards.
f e a t u r e
W D
W D
W B
W M
Refreshing an already
displayed dashboard
The Data refresh process of the widget is also available at the
widget’s level: it is called automatically in case the widget needs
to be refreshed.
Finally, the DashDisplay new WLanguage function is available
to force the refreshing of the entire dashboard or for the specified widgets.
W B
TABLE CONTROL
753
n e w
f e a t u r e
W D
W B
W M
Table control: container
column.
Look and functionalities!
W M
Dashboard: managing layouts via programming
Dashboard in WEBDEV: it’s a control!
Today dashboards are essential for decision makers.
WEBDEV 20 lets you easily create dashboards,
A dashboard is made of widgets.
Data is visualized in these widgets.
The end user can customize and adapt the dashboard to his
needs.
n e w
f e a t u r e
Refresh yourself (and your data)
In version 20, the texts included in the chart (title, legend, label,
tooltip) can be referenced by search engines: Google...
The texts of the chart control are also accessible via a search on
the page contents in the browser (CTRL+F).
n e w
n e w
Benefit provided by this version 20 new feature:
Dashboard:
automatic layout
When the dashboard is displayed in the browser, the user can
change its presentation.
When moving or hiding a widget, the site offers in real time the
best layout for the other widgets. This way it is easy to visualize
in real time the new layout before validating it.
The dashboard layout chosen by the user can be automatically
saved, and restored the next time the page is displayed. This
saving is done automatically via a cookie.
74 4
752
WLanguage offers advanced functions for managing the dashboard configuration.
You can plan several different layouts, and change the one to
use based on the use case.
The DashLoadConfiguration and DashSaveConfiguration
WLanguage functions let you load and save the current configuration.
WEBDEV offers a very evolved “table” control for your Web applications.
In version 20, this control offers a new type of column: the
“container” column.
A “container” column may contain other controls.
A “container” column can contain controls of the following
types: static control, edit control, image, button…
In a “container” column, the controls can be placed to the pixel
(like in a Looper control).
The advanced features of the Table control (sort, search, filter,
column movement, scrollbar...) are also available for the “container” type columns.
Benefit provided by this version 20 new feature:
747
n e w
f e a t u r e
W D
W B
W M
Dashboard: editing
The dashboard is composed of widgets.
A widget can easily be edited: it is an internal page.
When creating a dashboard control, you can select directly in
the page editor each of the widgets displayed by default, position them, size them ...
Benefit provided by this version 20 new feature:
Dashboard: easy to create!
748
A bar chart drawn over a background
n e w
f e a t u r e
W D
W B
W M
The AAF of the dashboard
control
Benefit provided by this version 20 new feature:
Pretty pages.
In the new dashboard control, the user can:
• Move the widgets
• Resize the widgets
• Display the widgets
Dashboard: easy to program!
751
n e w
f e a t u r e
W D
W B
W M
The processes of the
Dashboard control
In case of action on the dashboard, the widgets must usually be
updated.
New special processes are introduced in the code editor allowing the update of widgets, in browser code and server code:
• Add a widget
• Delete a widget
• Move a widget
• Change a widget’s size.
A list of products presented in a table with container columns,
here in edit mode
Benefit provided by this version 20 new feature:
Easy update of the dashboard according to the operations
Benefit provided by this version 20 new feature:
The power of tables with a “free” look.
76
77
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
754
n e w
f e a t u r e
W D
W B
756
W M
Table control: container
column.
Easy programming
Manipulating by programming controls found in a “container”
type column is very easy.
Here are 2 examples of the syntax:
MyTable[nRowNum].QuantityControl = nValue
MyTable[nRowNum].QuantityControl..Color=LightRed
This way it is possible to access any property of a control found
in a container column.
n e w
f e a t u r e
W D
W B
W M
Table control with
breaks: programming
The controls found in a Table control break can be handled by
programming.
For example, you can put a static control in the break header to
display a description.
Another example: you can place a formatted display control in a
break footer to display a sum.
The WLanguage function TableBreakSubscript enables you
to get the row number of a table break, and this way access the
controls of the break.
Maps are very common visual elements in web sites: to locate a
store, a piece of real estate, a meeting place, an event …
In version 20, you can include a “Google Maps” type map control in a site.
755
n e w
f e a t u r e
W D
W B
Benefit provided by this version 20 new feature:
Code portability.
761
Benefit provided by this version 20 new feature:
Map-friendly web sites.
758
n e w
n e w
f e a t u r e
W D
W B
W M
Rich text in controls
f e a t u r e
W D
W B
A “rich text” is a text that contains enhancements: font, bold,
size, color, attributes, icon, link...
WEBDEV already allowed you to use rich text in the “Rich Text
Area” and Button type controls.
W M
Map control: Features
The Map control offered in version 20 of WEBDEV is very rich. It
lets you:
• position the map according to geographic coordinates
• display points of interests (P.O.I.)
• calculate and display routes
• display maps in satellite view
• display maps in “map” mode
• display maps in “street view” mode
• ...
W M
Table control with breaks
In version 20, the table control of WEBDEV lets you define
breaks in the display of rows.
The advantage of a “break” is that it allows you to visualize
data by detail level.
A break lets you group the data to display by criteria.
Users can collapse or expand the content of the breaks to only
view the information they want.
LOOP_MyZone[nRow].STC_MyStatic..BrushColor = MyColor
The Map control in WEBDEV 20 is fully interactive: the user can
zoom, move, use different views (map, satellite), switch to
“street view” mode, etc.
Benefit provided by this version 20 new feature:
Modify the properties of the controls found in containers.
found in a Looper.
For example, to modify the background color of a Static control
found in a Looper, the following syntax delights developers!
Benefit provided by this version 20 new feature:
WEBDEV 20 is your best map.
Benefit provided by this version 20 new feature:
Handle breaks by programming.
759
OTHER CONTROLS
757
n e w
f e a t u r e
W D
W B
W M
New Google Maps control
Tables with automatic breaks
To do so, the user just needs to click the break’s background, or
the buttons created for this purpose, for example “+” at the
beginning of a break to expand it and “-” to collapse it.
The expanding and collapsing of breaks are automatic, there’s
nothing to program.
A break is materialized by 2 lines, automatically added:
• a break header line,
• a break footer line.
Controls can be inserted in the break header and footer lines. It
is common to display a total in a break footer line for instance.
I love
myself in
WEBDEV 20
n e w
f e a t u r e
W D
W B
W M
Map control:
programming
Programming the new Map control of WEBDEV 20 is
identical to that of WINDEV or WINDEV Mobile.
The Address type variable lets you manage the geographic location.
The Marker type variable lets you position Points of
Interest on the map.
The ..Image property lets you customize the icon displayed to represent a Point of Interst (P.O.I.) on the
map.
The WLanguage function MapAddItinerary lets you define and automatically display a route.
The code of the WEBDEV map control is compatible with that
of WINDEV and WINDEV Mobile, which allows for better portability.
In version 20, it becomes possible to use rich text in a large
number of other controls:
• edit controls
• combo box
• list box
• radio button
• check box
• link
• ...
Benefit provided by this version 20 new feature:
Compatibility.
760
People located on a map
Benefit provided by this version 20 new feature:
n e w
f e a t u r e
W D
W B
W M
Looper control: direct
access to control
properties (no need for
attributes anymore)
The “Looper” controls evolve.
In version 20, you don’t need anymore to declare an “attribute to dynamically modify the properties of the controls
Breaks without tears
78
79
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
You can choose a transition following a uniform movement or
with an acceleration at first and slowing down at the end.
It is possible to refine the effects and get original results
adapted to each site. There are multiple combinations.
REACH TEXT AREA
(RTA) CONTROL
Benefit provided by this version 20 new feature:
Control the speed of the animations
A selector control whose options use rich text
76 4
It becomes easy to create displays of various appearance without having to use several controls side by side.
Corollary benefit: the end of “assembling” controls make translating much, much easier!
f e a t u r e
W D
W B
W D
W B
W M
In version 20, new transition effects are offered when changing
the image in an image control.
An image can be changed either by programming, or using an
automated “slide show” mode.
The “unveil” effect: the old image disappears like a theater curtain drawing, unveiling the new image.
You can choose the direction of the curtain draw.
Your controls get rich at no cost.
n e w
f e a t u r e
Image Control:
7 new effects
Benefit provided by this version 20 new feature:
762
n e w
W M
Links and images in
controls
The ability to use rich text in all the WEBDEV 20 controls let you
insert links and images directly in the caption of the controls.
It is easy then to create a check box whose caption is “I accept
the General Sales Conditions” and whose “General Sales Conditions” term is a link (which obviously displays the general
sales conditions).
765
n e w
f e a t u r e
W D
W B
W M
The “Rich text Area”
control
Benefit provided by this version 20 new feature:
An ultra rich control
The “Rich Text Area” control is a very powerful type of control
offered by WEBDEV.
The “Rich Text Area” control lets you display rich text.
The HTML code generated by the Rich Text Area control respects the HTML5 and CSS3 standards.
The HTML code generated by the Rich Text Area control can be
edited; the modifications performed are displayed in real time,
in WYSIWYG.
The Rich Text Area control also lets you insert WEBDEV controls
inside the text
For example, you can insert buttons and edit controls inside the
text.
Benefit provided by this version 20 new feature:
A very rich type of control
766
An edit control containing a link
All the programming functionalities and data binding of the
controls are also available.
When inserting a control, the text alignment can be customized:
• centered
• aligned to the left
• aligned to the right.
Each control has an external margin adjustable directly in the
editor. This margin lets you precisely adjust the spacing you
want between the control and the text.
767
A check box whose title is in bold and whose option caption contains a link
The “flying tiles” effect: the old image is divided into multiple
tiles. These tiles fly out in all directions, revealing the new
image.
Different variations are offered for the animation of the tiles.
f e a t u r e
n e w
f e a t u r e
W D
W B
W M
Programming standard
In version 20, all the types of WEBDEV controls can be inserted
in a Rich Text Area (RTA).
It is possible, for instance, to insert a graphic or a table control
to illustrate a blog article.
The RTA control also allows you to create an input form, with
advanced page layout.
768
n e w
f e a t u r e
Benefit provided by this version 20 new feature:
Links or images can easily be inserted in other controls.
W B
W M
Effects on images:
acceleration curve
W B
Other effects are offered: “uncover”, “cut”, “reduction-rotation”...
Benefit provided by this version 20 new feature:
New effects
The transition effects use an “acceleration curve” that defines
the speed variation and the effect during its execution.
In version 20, WEBDEV lets you choose the acceleration curve
applied to each transition effect.
W M
In edit mode, a RTC has a size defined by the developer. This
size can be modified at any time obviously, either in the editor
or in by programming.
You can enter in the editor content of any size, which can be
larger than the RTC area.
In this case, the page editor automatically activates a scrollbar.
it isn’t necessary to enlarge the control to be able to edit all its
contents.
Benefit provided by this version 20 new feature:
W D
W D
“Rich Text Area” control:
Scrollbar in edit mode
An email request, with a red star ...
f e a t u r e
W M
The controls inserted in a Rich Text Area are standard WEBDEV
controls.
These controls can be handled by programming, as any other
control in the page.
All the properties are accessible.
Each control can be edited independently.
Automatic scrollbar in edit mode.
n e w
W B
Benefit provided by this version 20 new feature:
A radio button whose title is in bold and whose option caption
contains a link.
763
W D
“Rich Text Area” control:
Programming the inserted
controls
“Rich Text Area” control:
Insert any type of
WEBDEV controls
An edit control whose caption contains a link
n e w
A calendar is a button integrated in the flow of the text
The controls inserted in a RTA are edited normally, using the “7tab” technology.
80
81
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
APPLICATION RAD
769
n e w
f e a t u r e
W D
W B
W M
Forum Application RAD:
new version
The “Forum” Application RAD, already provided, has been
modernized.
New features are being introduced:
• Ability to add a “topic” for the user
• Support for private messages
• Link the main social networks
• Banishment feature
• Indicator of who is online
• Moderation
• Indication of the read and unread messages
• Friend management
• ...
Benefit provided by this version 20 new feature:
Better forums!
7 70
n e w
f e a t u r e
W D
W B
“FLUID” POSITIONING
(HTML STREAM)
• An activity schedule
• The times and location information
• A pre-registration form.
A “BackOffice” section lets you add, modify or delete activities
or their time, and also to specify availability.
The site generated by this Application RAD can be used in large
number of fields: sport facility, training, associations, etc.
Benefit provided by this version 20 new feature:
Create a schedule management site in just a few clicks!
“FLUID”
POSITIONING
(HTML STREAMS)
Page layout zoning lets you split the page into several distinct
layout areas.
These page layout areas have their own properties: background color, internal and external margins, specific anchors in
respect to the page.
In edit mode, the layout zones greatly facilitate the page’s creation and especially its evolution: for example, enlarging a layout area automatically pushes the adjacent areas (and their
contents obviously!).
W M
New RAD: Schedule
/reservation management
7 71
n e w
f e a t u r e
W D
W B
W M
“fluid” positioning:
Layout areas
Usually, in a layout area, the controls are positioned at the location chosen by the developer (to the pixel) in the page editor.
In version 20, the page layout area offers an additional layout
mode for controls: “fluid” positioning (HTML stream).
In this mode, it becomes possible to enter text directly in a layout area (without creating a control).
The text entered is a rich text: fonts, colors, styles...
You can also insert controls directly in the rich text.
The controls added this way are displayed throughout the text,
according to the space taken by the text displayed, and will
move with the text.
In the browser, when the web user resizes the browser window,
the layout area adapts based on the defined anchors. In the layout area, the text (and the controls) adapt as well to occupy all
the available space.
The formating of the text (paragraph, style, controls inserted in
the text) is respected.
Benefit provided by this version 20 new feature:
A new Application RAD is introduced in version 20.
This is a “Schedule management” application RAD.
This Application RAD generates an AWP site displaying activities
and their schedule (days, times)
The main pages are:
• An attractive home page presenting the activities
• A page presenting the activities (photo and description)
Fluid text and controls
7 72
n e w
f e a t u r e
W D
W B
W M
“fluid” positioning:
Entire Page
Version 20 of WEBDEV offers a new “fluid” positioning mode
for layout areas (see new feature # 771).
This new positioning mode is also available for an entire page.
By choosing this mode, in the editor, you cannot position the
controls at the “pixel level”, the controls will automatically be
inserted throughout the text.
This mode is especially well suited for page with large amount
of text: CMS, Blogs, information.
This layout technique is very close to manual HTML coding.
This type of positioning is available both for static pages and dynamic pages.
Benefit provided by this version 20 new feature:
Fluid text and controls in the entire page.
773
n e w
773
n e w
f e a t u r e
W D
W B
W M
“fluid”
f e a positioning:
t u r e W D W B W M
HTML editing
“fluid” positioning: ÉHTML
In the “fluid” positioning mode the HTML source code is editable. editing
In
theWEBDEV
“fluid” positioning
modeinthe
source then
code as
is edThe
controls inserted
theHTML
text appear
itable.
HTML <object> tags.
The
controls
in theastext
The WEBDEV
HTML code
can beinserted
customized
youappear
wish. then as HTML
<object>
tags. performed in the HTML code are displayed
The modifications
The
HTML code
can be
customized
as are
youof
wish.
in WYSIWYG
mode
in the
editor, and
course kept in
The
modifications performed in the HTML code are displayed in
the page.
WYSIWYG
modeby
in this
the version
editor, and
are of
course kept in the
Benefit provided
20 new
feature:
page.
The specialist can customize their HTML code.
Benefit provided by this version 20 new feature:
The specialist can customize their HTML code.
82
83
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
HTML
CODE EDITOR
7 76
7 74
n e w
f e a t u r e
W D
W B
THE NEW HTML CODE EDITOR
AJAX
n e w
f e a t u r e
W D
W B
W M
Ajax functions:
advanced use
W M
Brand new HTML
code editor
AJAX technology lets you execute a server process without reloading the entire page.
WEBDEV offers two possibilities for benefiting of this technology.
The most automated mode is “AJAX in one click” in the server
processes, by clicking “AJAX” in the code editor band.
Some developers like to edit the HTML code of their pages.
Let’s remember that WEBDEV lets you create static and dynamic
sites without having to code a single line of HTML (or
JavaScript)
Version 20 of WEBDEV offers a new HTML editor.
The developer benefits from the richness of the WEBDEV code
editor when editing HTML code.
The HTML code editor can be used on controls that allow modification of their HTML code: the Rich Text Area control, page
layout areas, page in “fluid” positioning mode (see new features 771 and 772) and the rich text controls.
Benefit provided by this version 20 new feature:
Specialists can edit the HTML code
7 75
n e w
f e a t u r e
W D
W B
W M
HTML code editor:
features
In this case, the “server” process is automatically executed via
an “AJAX” request, and the content of the controls in the page
is then automatically updated with the new values of the controls retrieved from the server.
Another custom method requires the use of the WLanguage
AJAXExecute and AJAXExecuteAsynchronous functions to explicitly call a procedure on the server. Here, the controls are not
updated automatically.
In version 20, these two functions offer a new option: ajaxUpdateControls.
This option lets you request the automatic refresh of the modified controls.
You don’t need to write code to update controls.
The HTML code editor benefits from similar functionalities to
the WLanguage code editor.
• Automatic indent
• Automatic completion on the names of the HTML tags and
attributes
• Automatic completion on the values of the class= with the
project styles
• Completion when typing
• Close the tag as soon as the closing bracket (>) is typed
• Tag renaming during typing
• Expand/Collapse blocks of tags
• Coloring of the opening/closing tags
• Coloring of the JavaScript when inserted between <script>
</script>
Benefit provided by this version 20 new feature:
Less code
• Automatic opening and closing of quotes, parentheses, brackets
•...
The HTML code editor will make passionate HTML coders
happy!
Benefit provided by this version 20 new feature:
“Easy-peasy” HTML code editing
84
85
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
7 79
PHP
n e w
f e a t u r e
W D
W B
79 4
W M
PHP: AES, DES, 3DES
encryption
Encrypt!
WD
780
Benefit provided by this version 20 new
feature:
Additional style book offerings.
WB WM
PHP: access
to MariaDB
PHP:
Benefit
from the
common
new
features
MariaDB is a database that
came from a fork in MySQL.
WEBDEV 20 offers native
PHP access to MariaDB.
Benefit provided by this version 20 new feature:
Access MariaDB data.
Upon request, WEBDEV
can generate a PHP site.
Most of the new features
presented for WEBDEV as
well as the common new
features are available for
PHP sites.
781
792
W M to W D
W B
New
WLanguage
functions in
PHP
Benefit provided by this version 20 new feature:
Faster PHP site deployment.
7 78
W M
Two new skins are being introduced in
WEBDEV 20 “Kowii” and “Willy”.
This adds new choices for possible style
books that can be instantly used for
your projects.
Benefit provided by this version 20 new feature:
WD WB WM
W B
Style book:
2 new skins
The AES, DES and 3DES encryption modes are available in PHP.
These are standard encryption modes.
(see new feature 106)
777
W D
12 new WLanguage functions are being introduced
for PHP in version 20.
MapDisplayPosition
MapAddItinerary
MapAddMarker
MapLicenceGgl
MapModifyMarker
MapDeleteItinerary
MapDeleteMarker
MapDeleteAll Contains
CryptStandard
dCopy
UnCryptStandard
WD WB WM
New controls in
PHP
In PHP, the following new
controls are available:
With WEBDEV 20,
• Google Maps
it’s summer every day!
• Tables with container
columns
• Breaks inside tables
• Page layout area in “fluid” positioning mode
• Controls in Rich Text Areas
• Rich text in controls
• ...
793
f e a t u r e
W D
W B
W M
Elegant text
selection for
the user
When the user selects a text in the
browser, this text is underlined.
In version 20, the color used to underline
the text is in harmony with the colors of
the current skin template of the site.
796
n e w
f e a t u r e
W D
W B
797
W M
Modifying the CSS class
by programming
W M
New types
The structure, DateTime, Date, Time and Duration type variables are available in browser processes.
Benefit provided by this version 20 new feature:
W B
Even more elegant sites.
WLANGUAGE
n e w
W D
Benefit provided by this version 20 new feature:
Benefit provided by this version 20 new feature:
Create rich PHP sites.
795
The new property MyControl..class lets you modify directly
by programming the <class> html attribute of a control.
Benefit provided by this version 20 new feature:
Assign CSS classes dynamically
n e w
f e a t u r e
W D
W B
W M
Generation of the page
prototype
When creating a new page, the page editor generates automatically a page prototype in the Global declaration process.
To pass parameters to this page, the developer only has to fill
this prototype.
Benefit provided by this version 20 new feature:
Easier parameter passing.
More power in the browser ...
86
87
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
798
n e w
f e a t u r e
W D
W B
sion from the pool.
In version 20, a session lets you execute the Project initialization process in advance.
This process should obviously only contain generic code, such
as the connection to the database, the loading of a news file
...
A new process, Project initialization after connection, is being introduced to execute the initialization code
dedicated to the user. reading a cookie, retrieving an IP address, ...
W M
WLanguage Browser code
The WLanguage Browser code gets richer.
The following syntax is supported:
• automatic labels BREAK: and CONTINUE:
• instructions BREAK and BREAK SWITCH
• instruction GOTO, destination label
• constant support
• inclusion of external code file
• instruction FOR EACH on the browser table and browser
looper type controls.
Benefit provided by this version 20 new feature:
Faster site access
Benefit provided by this version 20 new feature:
The WLanguage browser code gets richer
799
n e w
f e a t u r e
W D
DEPLOYING
W B
W M
New properties, new types
and new constants
9 45
to
8 62
n e w
f e a t u r e
W D
W B
LINUX
W M
63 new WLanguage functions are being introduced in server
mode in WEBDEV version 20.
MapDisplayPosition
MapModifyMarker
StringToTime
dTextRTF
grStockGetData
HAddScheduling
HImportXLS
HRefreshView
NumToFinancialWritingChinese
EventOpen
SSHWrite
DashAddWidget
DashMoveWidget
DashDelete
PTWaitAll
PTExecuteAfterAll
863
to
88 6
MapAddItinerary
MapDeleteItinerary
CryptStandard
EmailGetIndicator
grScatterGetDataXY
HCompareItem
HListScheduling
HDeleteScheduling
ActionPlanExecute
SSHCommand
SSHRead
DashDisplay
DashResizeWidget
DashMode
DashDeleteAll
PTRequestCancelation
PTExecuteAfterOne
n e w
MapAddMarker
MapDeleteMarker
DateTimeToReal
geoAzimuth
grGetData
HSave
HModifyViewRights
HTTPSend
RealToDateTime
SSHConnectShell
MapLienceGgl
MapDeleteAll
UnCryptStandard
geoDistance
grSurfaceGetData
HExecuteScheduling
HModifyScheduling
iResetNbPages
EventClose
SSHDisconnectShell
TableBreakSubscript
DashLoadConfiguration
DashCount
PTCancel
PTExecute
TPParameter
DashInitialConfiguration
DashSaveConfiguration
PTWait
PTExecuteAfter
f e a t u r e
W D
W B
W M
WLanguage:
new Browser functions
24 new WLanguage functions are being introduced in browser
mode in WEBDEV version 20.
MapDisplayPosition
MapInfoXY
MapDeleteItinerary
TableExpandAll
DashResizeWidget
DashInfoXY
MapAddItinerary
MapLienceGgl
MapDeleteMarker
TableCollapse
DashLoadConfiguration
DashMode
MapAddMarker
MapInfoPosition
MapModifyMarker
MapGetPosition
MapDeleteAll
TableExpand
TableCollapseAll
DashDisplay
DashInitialConfiguration DashMoveWidget
DashCount
DashSaveConfiguration
W D
W B
W M
887
n e w
Benefit provided by this version 20 new feature:
f e a t u r e
W D
W B
Clearer interface
9 43
W M
The new controls in version 20 are supported by the Linux application server.
Benefit provided by this version 20 new feature:
Use all the new features in Linux.
to
9 42
n e w
f e a t u r e
W D
W B
n e w
f e a t u r e
W D
W B
W M
9 46
WEBDEV application
server diagnostic
New controls
888
In version 20, the site deployment tool evolves noticeably.
A new and clearer interface lets you better visualize the files to
update between the development computer and the hosting
server.
MANAGEMENT
Reminder: a site developed using WEBDEV can be
deployed on a Linux version of the WEBDEV
application server.
WLanguage:
new Server functions
f e a t u r e
New setup interface
Version 20 offers 12 new properties for WEBDEV, 11 new types
and 64 new constants (please see the complete list in the online
help).
800
n e w
W M
New functions in Linux
In version 20, the “Diagnostic” feature of the WEBDEV administrator evolves. The diagnostic of SSL sites and authenticated
sites (protected by a user login/password) is now possible.
The list of the last (potential) errors that occurred on the WEBDEV application server can be consulted directly from the WEBDEV 20 administrator.
A new tab is being introduced for this purpose.
This way it is easy to control the server’s behavior, and to monitor the history of the (potential) errors.
Analyzing your site’s life is easier
MapAddItinerary
MapDeleteItinerary
CryptStandard
EmailGetIndicator
grSurfaceGetData
HExecuteScheduling
HRefreshView
iResetNbPages
EventOpen
DashResizeWidget
DashMode
DashDeleteAll
PTRequestCancelation
PTExecuteAfterOne
MapAddMarker
MapDeleteMarker
DateTimeToReal
grStockGetData
HAddScheduling
HListScheduling
HDeleteScheduling
NumToFinancialWritingChinese
TableBreakSubscript
DashLoadConfiguration
DashCount
PTCancel
PTExecute
TPParameter
MapLienceGgl
MapDeleteAll
UnCryptStandard
grScatterGetDataXY
HCompareItem
HModifyViewRights
HOnServerCall
RealToDateTime
DashDisplay
DashInitialConfiguration
DashSaveConfiguration
PTWait
PTExecuteAfter
f e a t u r e
W D
W B
W B
W M
Benefit provided by this version 20 new feature:
Make space!
9 47
n e w
f e a t u r e
W D
W B
W M
... and many other
features
Version 20 also offers a large number of other interesting new
features that you’ll discover once you’ve ordered and received
your product.
APPLICATION
SERVER
n e w
W D
In version 20, directly from the setup tool, it is possible to delete
the obsolete files on the deployment server during the update.
This feature is useful for limiting the consumption of storage
space (and to avoid “polluting” the hosting server).
Easier diagnostic
944
f e a t u r e
Deleting files on
the server
Benefit provided by this version 20 new feature:
55 new WLanguage functions are being introduced in WEBDEV
Linux in version 20.
MapDisplayPosition
MapModifyMarker
StringToTime
EmailGetTimeOut
grGetData
HSave
HModifyScheduling
HTTPSend
EventClose
DashAddWidget
DashMoveWidget
DashDelete
PTWaitAll
PTExecuteAfterAll
n e w
W M
Cached sessions
To reduce the connection time of the user to a site or a Web
service, the WEBDEV application server lets you pre-run a pool
of sessions. Each new user connecting to the site will use a ses-
88
89
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
Your
applications
are
more
efficient
in version
20
TECHNOLOGY DOESN’T WAIT:
ORDER YOUR COPY OF VERSION 20
TODAY
Your code is
unique: Windows, Internet, Linux, Mobile,
Java, .Net, PHP, J2EE, Mac,
Webservice, XML, Ajax, Android,
iOS (iPhone, iPad), Windows Phone,
Windows Mobile, Cloud,...
Order your copy today! Version 20 has been announced. Any purchase of WINDEV 19 or WEBDEV 19 or WINDEV
Mobile 19 (except updates) from 1/9/2014 entitles you to a free upgrade (product, manuals, and DVD) to the corresponding version 20, as soon as available. Any purchase of an upgrade to version 19 after 1/9/2014 entitles you to
version 20 (product, manuals, and DVD) for the difference in upgrade prices (except shipping cost). New versions are
being announced now so you can plan on them when developing, and so you don’t spend time developing features
that will be included in the product. Some functions may not be available right away when the version ships, but will
be offered later as downloads. Also note that additional improvements and new features other than the ones described
in this document may be available in the new version. WINDEV, WEBDEV and WINDEV Mobile are professional software. Despite the care taken in creating this document, it is not contractual. The screen shots and the lists are given
for information purposes only. Don’t hesitate to contact us if you need any additional information or to get confirmation
of a feature. All the trademarks mentioned in this publication are registered trademarks of their respective owners.
WINDEV 20 WEBDEV 20 WINDEV Mobile 20 new features
TECHNOLOGY DOESN’T WAIT:
ORDER YOUR COPY OF VERSION 20
TODAY
Your code is unique: Windows, Internet, Linux, Mobile, Java,
.Net, PHP, J2EE, Mac, Webservice, XML, Ajax, Android, iOS
(iPhone, iPad), Windows Phone, Windows Mobile, Cloud,...
www.windev.com