PC SOFT

ONLINE HELP
 WINDEVWEBDEV AND WINDEV MOBILE

Home | Sign in | English EN
This content has been translated automatically. Click here to view the French version.
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Others
Stored procedures
Benefit from the 196 common new features of version 28 in WINDEV
WINDEV of course benefits from the 196 common new features of version 28, and in particular from the evolutions of the editors, the personalized shortcuts, the increased speed, the new control s, the evolutions of the control PDF, the support for Markdown, the new type of polar graph, new features of SCM , new features of
The kanban control: essential in WINDEV
The new Kanban control is a great addition to your WINDEV applications.
Kanban controls can be used to organize a process, monitor a project, distribute tasks...
This native control handles all user actions.
Create a Kanban board in a few minutes with this new control!
3 New business logic fields are delivered with WINDEV 28
Smart controls save valuable time during the UI creation process, and immediately make you applications more sophisticated.
3 new business logic fields (common with WEBDEV and WINDEV Mobile) appear in version 28 of WINDEV:
  • Multi-selection with tokens.
  • Badge.
  • Address autocomplete.
Reminder: Smart controls are provided with their source code, and are therefore completely modifiable and customizable.
Multi-selection with tokens
The "Multi-selection with tokens" Smart control allows you to select one or more tokens from the list.
Multiple selection with tokens
Multiple selection with tokens
New field business logic badge display
The "Badge" Smart control shows a badge (small circle with a number) on a given control.
A badge can be used to draw the user's attention: number of pending orders, ...
The small icon that displays the number can be positioned on any type of control: Button, Static, Image...
Here the badge (the red circle with the number) has been superimposed on an control button
Here the badge (the red circle with the number)
has been superimposed on an control button
New business field completion of Address
The "Address autocomplete" Smart control suggests addresses as you type.
A list of addresses is displayed.
Please bear in mind that this control is based on a Google API. Google may require you to pay a subscription fee, depending on the number of requests.
The end user enters a start of Address, and receives proposals from Address complete
The end user enters a start of Address,
and receives proposals from Address complete
Image type columns: improved layout
In version 28, Image columns look better than ever: by default, a margin appears around the image, which improves the overall layout of the table.
WLanguage on the Table control: miscellaneous
  • The BuildBrowsingTable function allows you to create columns to visualize the a data file data dynamically. A Memo type column now displays the size of the Memo file.
  • A new syntax of the WLanguage TableSort function accepts parameters of type String; this syntax allows to easily restore the current sort retrieved by the SortedColumns function.
Markdown: control captions, column headers, menu options, tooltips...
You can now format all the text in your applications
You can now format all the text in your applications
With Markdown support in version 28, you can customize the format of all the text in a control.
This allows you to easily enrich the UI in your applications.
Easy formatting with Markdown
Easy formatting with Markdown
Because of its simplicity, Markdown text is easy to translate.
Markdown text automatically adapts to the style of the control, most notably to the dark theme.
Floating panes: Optimizations
Floating panes allow end users to freely position panes and customize their UI.
In version 28, a much smoother animation appears when moving these panes.
Tab icons and text: better spacing
Now you can set margins for tab icons and texts.
The layout improves automatically.
In the editing mode, you can see the margins that have been applied around the icons
In the editing mode, you can see the margins that have been applied around the icons
A clean layout at runtime: no more icons touching the borders!
A clean layout at runtime:
no more icons touching the borders!
Button control: custom borders
A Button control can have borders that change depending on the state of the button: pressed, hover,...
In version 28, you can define the border settings for each state in the "Style" tab of the 7-tab window.
Easily select the type of border for each state
Easily select the type of border for each state
Image Editor control
The control Image Editor allows you to offer a real image editor in your applications without a single row of code.
In version 28, this control benefits from new features:
  • Animated GIFs... are actually animated
  • A new event is available in the code editor: "After running OCR", which allows you to retrieve and process the text
  • A new button allows you to scan and automatically retrieve the image
  • AI transforms freehand drawings into the corresponding object: line, rectangle, circle...
Buttons with free icon positioning
If a button contains an icon with free positioning, you have the ability to specify the coordinates.
You can choose how the content of the icon will be displayed: aligned, homothetic...
Scientific input mask "exponent
A new input mask is available for numeric Edit controls: scientific notation.
The notation 1.23E+10 becomes possible natively.
2 new skin templates for WINDEV
Two new skin templates are introduced in version 28: Eleven and Touch.
This allows for new customization possibilities.
Menu control: new separator with label
A menu can contain one or more separators.
In version 28, this separator can contain a label.
The menu separator can now include text
The menu separator can now include text
Menu control: visual options
The menus allow the use of "5-state" icons (e.g. buttons) in the menu options, either via the 7 tabs or by programming.
5-state icon
5-state icon
Combo Box control: rounded frames, netted frames, custom hover banner
In version 28, the expanded area of a Combo Box can be customized:
  • border
  • hover bar
  • height of row
  • ...This allows you to create modern, sleek Combo Box controls.
A clean Combo Box...
A clean Combo Box...
Static control: rotation effect
Static controls can now be rotated. This rotation is specified in the "Style" tab of the 7-tab window.
Rotated text (in red)
Rotated text (in red)
Edit control: new event for input assistance
The Edit control has an autocomplete feature available to the end user.
In version 28, the "Select a value in the list of input suggestions" event allows the application to determine which suggestion was selected by the end user.
With this new feature, you can assign a value different from the one shown in the suggestions to the Edit control: an acronym, for example, ...
Export help to PDF
As you know, in WINDEV you can generate a help file for the end user.
It can be an HTML or PDF file.
The PDF version now allows navigation through automatically generated links.
Revamped setup program
The auto-generated setup program of your WINDEV applications looks better than ever!
The interface has been revised, and a modern style has been applied for a more user-friendly feel.
Install: Available update notification while using the application
When an update becomes available for an application that is in use, an automatic toast message can be displayed.
The toast message gives the user two options:
  • perform the update immediately,
  • get a reminder next time they start the application.
The toast warning of the existence of an update appears in in use, at the bottom right of the screen
The toast warning of the existence of an update appears in
in use, at the bottom right of the screen
Install: miscellaneous
  • Active filters are preserved in the Push setup administrator when the list of computers is refreshed.
Combine 2 existing sets of elements: Desktop application and website
By integrating a website into a window in a desktop application, you can share existing elements and boost productivity.
Integrate a WEBDEV page into a WINDEV window
The new control "Page WEBDEV" of WINDEV allows to integrate a site in a WINDEV application, and to interact by program with this site.
Simply specify the URL of the page to insert.
The window that contains the control interacts with the page via browser procedures.
These procedures are accessible in the WINDEV code editor and benefit from code completion.
Interaction: call page procedures from the window
The WEBDEV page procedures that can be called from a WINDEV window must be declared in a shared interface.
These procedures can make AJAX calls to the server.
Code example:
Code in the WEBDEV page
// Déclarations
implements Interface_contenant_les_méthodes_accessibles_de_la_page
Use Interface_contenant_les_callbacks_possibles_de_page_vers_fenêtre
// Utilisation
MyHostControl.UneCallback()
Code in the WINDEV window
// Déclaration
Use Interface_contenant_les_méthodes_accessibles_de_la_page
implements Interface_contenant_les_callbacks_possibles_de_page_vers_fenêtre
// Utilisation
Champ_Page_WEBDEV.Page.UneProcédureDeLaPage()
Interaction: call window procedures from the page
The WINDEV procedures that can be called from the WEBDEV page must be declared in a shared interface.
This interface generates a configuration file.
This configuration file must be provided to the WEBDEV environment, which will then allow you to natively call the procedures.
You will be able to call the window procedures directly from the code of the Browser procedures of the page.
New layout available for the WEBDEV page
A web page can contain menus, an ad banner, style controls, a footer with the legal notice...
This information may no longer be useful when the page is integrated into a WINDEV application.
To solve this, a new type of layout specific to the WINDEV and WINDEV Mobile integration is now available in WEBDEV. This layout allows you to avoid displaying certain information.
First-level security
The page and the window must exchange data in a secure way.
To start with, navigation in the WEBDEV page is limited to the domain of the URL provided in the application: this eliminates the risk of cross-site scripting attacks (XSS).
If the WEBDEV page contains sensitive data, there are several methods to secure access to the page:
  • Setting up an authentication method with Windows session login credentials (Single sign-on (SSO))
  • Requesting site login credentials at the start of the session and storing the encrypted login information in memory
  • Requesting site login credentials every time the user tries to access the page, ...
This information is then sent through a secure HTTPS URL.
Second-level security
You can implement additional security features.
Two-factor authentication, with a code sent via email, for example.
IP address-based restriction can also be easily implemented.
Seamlessly webify existing resources
Many new development projects are intended for the Web.
However, most existing projects consist of Windows applications.
Integrating a website into a WINDEV window is a major step to preserve and webify a company's software assets without sacrificing functionality.
This allows for rapid, agile, risk-free, step-by-step progress.
Common new features
The WINDEV environment benefits from the common features of version 28.
In particular: Modern UI, live data for images in the 7-tab window, new control sizing handles, snap-on feature using the keyboard, new style selection window...
Miscellaneous
  • When creating a project, the 64-bit mode and the use of Unicode strings are enabled by default.
  • The "buffer security check" mode is enabled for 64 bit-executables.
A host of new features
The WINDEV window editor benefits from the following new features: snap-on feature with the keyboard, more user-friendly control handles, new style editing window, custom shortcuts, ...
Format painter
In version 28, you can easily copy and apply formatting to controls: the format painter is available in the style sheet editor.
Context menu of controls: better, more efficient
The context menus of the window and page editors have been completely revised for a better experience.
UI error: new errors detected
  • If a table does not support per-pixel scrolling, the editor shows an error and prompts you to fix it with one click.
  • Context menu: if two menu options have the same value (defined in the 7-tab window), a UI error is generated.
  • When a window is opened by the Info , YesNo ,... is not customized, a UI error appears. A custom window provides a better user experiences because it allows the use of AAFs: timer...
Move towards a modern, well-spaced ui design language
New features in the editor in version 28 allow you to automatically modify existing UIs and meet current expectations: spacing and resizing.
Enlarge the font and the host control
Current UIs tend to use larger fonts in the different controls.
In version 28, the font size of all the controls in a window can be automatically increased. This avoids having to change the skin template and resize controls one by one.
When the font is resized, all the controls are automatically enlarged and moved to preserve the current layout. The window itself is also enlarged.
Spacing of controls
Another current design trend is to increase spacing between the controls in a window.
A new feature analyzes the spacing between controls in an existing window, and shifts the coordinates of each control using a given factor, expressed as a percentage.
For example, 20% spacing shifts the controls by... 20%.
The window will also be resized using the same factor.
Use the skin template provided "windows 11".
WINDEV 28 includes a skin template that follows the main Windows 11 UI design guidelines.
Use this skin template to obtain a Windows 11 layout immediately.
See New feature 212.
Touch-friendly skin template
WINDEV 28 includes a specific skin template for touch-friendly UIs.
This skin template adapts all clickable areas: bigger buttons, combo box arrows, check boxes, radio buttons, input areas...
For example, this skin template can be used to easily create interactive kiosks, restaurant kiosks, interactive screens for the real estate industry...
See New feature 212.
RAD
RAD: RAD info from the analysis
For each item, the data model editor allows you to specify information that can be used in the RAD methodology: type of control to be generated, content of the control, general properties...
The RAD will use this information to generate windows and pages.
In version 28, you can differentiate this information by platform: PC, Web, Mobile.
Granting the right to upload apps
In version 28, the Supervisor can authorize one or more users to upload applications to the Store.
End user: Seamless transition from setup on the network to setup on the store
Today, in many organizations, applications are installed via a setup file on the network.
When an application already deployed via the network becomes available on the Private Store, end users do not need to download the application again.
The application will automatically switch to the Store's Live Update system for future updates.
Name setup files
In version 28, you can rename the setup files of applications available on the Private Store.
End user: setup mode
For security reasons, Internet browsers prevent executables from automatically running on the PC.
The steps to run an executable may be different depending on the browser.
The Private Store download page now shows a step-by-step guide for the corresponding browser.
"all/none" option for check box columns: now automatic
In tables with check box columns, an option appears automatically in the table header.
End users can use this check box to select or clear all the check boxes in the column.
Homonymic copy
In version 28, the homonymous copy ( <= ) works under Java on advanced types: Chrono, DiskFile, Color, ...
.NET 6 support
Good news for developers who use assemblies: .NET6 is now supported .
Assemblies: ability to choose the .NET framework version to use
There are more and more versions of the .NET framework.
Now you can specify the framework version to be used in a WINDEV project that uses .NET assemblies.
If this version is not available on the user's computer, an error is displayed.
Assembly generation: choose the target .NET framework
In a WINDEV project that generates .NET assemblies, you can specify the target framework version: version 5 or 6.
Common new features
The language is the cornerstone of the development.
In version 28, WLanguage in WINDEV is further enriched.
It benefits from common new features and many useful improvements: AI contour detection, new undetectable type for strings, ability to add appointments, image straightening, improved introspection, automatic OCR on an area, ...
See news 114 to 147.
33 New constants
33 new constants are available in WLanguage in version 28:
orgDateTimeFirstVisiblecharsetUnicodecharsetUTF16BE
charsetUTF16LEcharsetUTF32diagActionNone
diagActionAlldiagModeFreehandDrawingdiagModeSelection
aafPrintDiagramaafPvtCollapseAlldfMarkdown
dfRTFdfPlainTextfrelSubdirectoryOnly
ftpProxySOCKS5grPolarAreah4G
h5GhPrimaryKeyhCloud
iListOutputiMarkdownmaskBitcoin
maskScientificuseModeOCRsocketConfigureMode
tsWaitingtypKanbantypKanbanList
wlProjectElementwlDataFilewlUntyped
8 new properties
8 new WLanguage properties are available for WINDEV.
MapAutomaticCorrectionExtra
DisplayFormatIgnoreErrorMarkdown
EditModeNullableIndex
13 New functions for the DiskFile type
80 New WLanguage functions for WINDEV
80 new WLanguage functions are available for WINDEV in version 28:
Germany.CheckIdNrChecks the validity of an IdNr (personal identification number in Germany).
Germany.CheckUStIdNrChecks the validity of a USt-IdNr (company identification number in Germany).
RoundToMultipleReturns a numeric value rounded to the nearest multiple of another numeric value.
Belgium.CheckCBEChecks the validity of a CBE number (identifier from the Crossroads Bank for Belgian Enterprises).
Belgium.CheckNISSChecks the validity of a NISS number (Belgian social security identification number).
Belgium.CheckEUChecks the validity of a EU number (Belgian Establishment Unit number used to identify companies).
BitcoinValidAddressChecks whether a Bitcoin wallet address is valid.
Brazil.CheckCNPJChecks the validity of a CNPJ number (company identification number in Brazil).
Brazil.CheckCPFChecks the validity of a CPF number (personal identification number in Brazil).
Canada.CheckSINChecks the validity of a Canadian Social Insurance Number (SIN).
Canada.CheckBN9Checks the validity of a Canadian 9-digit Business Number (BN9).
Canada.CheckBN15Checks the validity of a Canadian 15-digit Business Number (BN15).
ComponentRunExecutes a global procedure present in an external Component. This external Component was previously loaded by the Component Load function.
dDessinChampDessine un champ dans une image.
DiagramSearchSearches for shapes containing a specific text in a diagram.
dModifyContrastChanges the contrast of an image contained:
  • in an Image control,
  • in an Image variable.
DocPositionTopPageReturns the position of the first character in a given page in a Text Processing control.
DocFindElementByNameSearches for an element by its name in a Word Processing document.
dStraightenTransforms an image by applying perspective correction.
dTextMarkdownDraws Markdown text:
  • in an Image control,
  • in an Image variable,
  • in a WDPic variable (on the background layer),
  • in a picLayer variable].
Spain.CheckDNIChecks the validity of a DNI number (personal identification number in Spain).
Spain.CheckNIFChecks the validity of a NIF number (company identification number in Spain).
UnitedStates.CheckEINChecks the validity of a U.S. Employer Identification Number.
UnitedStates.CheckFEIChecks the validity of a U.S. Firm Establishment Identifier.
UnitedStates.CheckSSNChecks the validity of a U.S. Social Security Number.
ExecuteFunctionExecutes a WLanguage function identified by its name.
ExecuteMainThreadAsynchronousExecutes a procedure in the main thread of the application without waiting for the end of its execution.
fChangeExtensionChange l'extension d'un fichier sur le disque
France.CheckINSEETests the validity of an INSEE number (identification number of physical persons assigned by the National Institute of Statistics and Economic Studies - Institut National de la Statistique et des Etudes Economiques).
France.CheckSIRENChecks the validity of a French SIREN number (Système d'Identification du Répertoire des Entreprises).
France.CheckSIRETChecks the validity of a French SIRET number (Système d'Identification du Répertoire des Etablissements).
fBuildRelativePathReturns the path to a file relative to a reference directory.
fMIMETypeReturns the type of file according to the MIME standard (Multipurpose Internet Mail Extensions).
GenerateGeometricImageRandomly generates an image with geometric shapes. This image can be used to temporarily fill an Image control, for example.
HDropViewRemoves a materialized view from the HFSQL server.
HTMLToPDFConverts an HTML string or buffer to a buffer containing a PDF document.
AIDetectContourDétecte les contours de formes dans une image.
AIDetectDrawingDétecte les dessins (rond, rectangle, ...) faits à la main dans une image.
IBANValidChecks the validity of an International Bank Acount Number (IBAN).
iPrintAreaMarkdownPrints Markdown text in a rectangular area.
Italy.CheckCFChecks the validity of a CF number (personal identification number in Italy).
Italy.CheckIVAChecks the validity of an IVA number (company identification number in Italy).
JSONValide
KanbanAddCardAjoute une carte dans un champ Kanban.
KanbanListAddAjoute une liste dans une champ Kanban.
KanbanSearchCardRercherche une carte dans un champ Kanban.
KanbanMoveCardDéplacer une carte dans un champ kanban
KanbanEnumCardListe toutes les cartes d'un champ kanban
KanbanInfoXYIndique quel élément d'un champ Kanban se trouve à une position donnée.
KanbanCountRenvoie le nombre de lites ou de cartes dans un champ kanban
KanbanPositionListscroller la liste d’un champ kanban pour qu’une carte donnée y soit visible
KanbanSelectRenvoie la carte sélectionnéz dans un champ kanban
KanbanSelectPlusSélectionne une carte dans un champ kanban
KanbanDeleteCardSupprime une carte dans un champ Kanban.
KanbanDeleteListSupprime une liste d'un champ kanban
KanbanDeleteAllCardSupprimer toutes les cartes d’un champ kanban ou d’une liste d’un champ kanban
KanbanDeleteAllListSupprime toute les listes d'un champ Kanban.
KanbanToImageExporte un champ Kanban vers une variable de type Image.
PDFReaderGoToBookmarkAffiche un signet spécifique dans le champ Lecteur PDF.
MarkdownToDOCXConvertit une chaîne de caractères au format Markdown vers un document au format docx.
MarkdownToHTMLConverts a string in Markdown format into a buffer in HTML format (encoded in UTF8).
MarkdownToPDFConverts a string (or buffer) in Markdown format into a buffer containing an Document PDF.
MarkdownToTextConverts a Markdown string to text (without tags).
ModbusSendRawFrameEnvoie une trame brute à un esclave Modbus.
MongoExecuteOperationsExécute un lot d'opérations sur une base MongoDB.
OpenAPIToHTTPBuilds the HTTP request to call a function of an API. It can then be sent using HTTPSend.
PicRectangularSnipCaptures a rectangular area defined with the cursor and retrieves the image in a variable of type Image.
PicRectangularSnipOCRRuns OCR and extracts the text from a rectangular area defined with the mouse.
EmulateDnDEmulates a "Drag & Drop" gesture in automated tests.
CapitalizeEachWordCapitalizes the first letter of all words in a string.
SCPSendFileEnvoi un fichier en SCP
SCPGetFileRécupère un fichier en SCP
SocketConfigureConfigures the use of Socket functions.
Switzerland.CheckUIDChecks the validity of a UID number (Swiss business identification number).
Switzerland.CheckOASIChecks the validity of a Swiss Old-​Age and Survivors' Insurance Number (OASI).
Switzerland.CheckBERChecks the validity of a BER number (company identifier in the Swiss Business and Enterprise Register).
SpreadsheetUnmergeSupprime la fusion des cellules d'un champ Tableur.
TableurFusionneFusionne des cellules d'un champ Tableur.
UTFConvertConverts a string or buffer to the specified format: UTF, ANSI, Unicode.
Minimum version required
  • Version 27
This page is also available for…
Comments
Click [Add] to post a comment