PC SOFT

WINDEVWEBDEV AND WINDEV MOBILE
ONLINE HELP

Home | Sign in | English UK
New WEBDEV 25 feature!
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Browser code
WINDEV Mobile
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Others
Stored procedures
WEBDEV 25 Benefit from the 160 common new features of version 25
WEBDEV 25 benefits from most of the 160 new common features of version 25.
WEBDEV 25 benefits most notably from Business controls, management of PDF files, management of YAML, GITHub, project portfolios, creation of SCM branches on several projects, new features in the code editor, OOP, HFSQL Spare servers, etc
And in addition to all these new features, WEBDEV 25 benefits from new features specific to the Web to be discovered in the following pages.
36 Business controls for WEBDEV
The new Business control allows implementing sophisticated operations in your pages with one click in WEBDEV (see new features 001 to 006).
Today's standard Web-based processes, such as date range selections, sliding banners, galleries, Twitter feeds, ... are supplied ready for use, with their code. And everything can be customized.
Among the Business controls provided with WEBDEV 25, you will find:
  • Scrolling banner,
  • Progress Bar button,
  • Tooltips,
  • Cards,
  • Search Combo Box and Popup,
  • Comments and rating,
  • Countdown,
  • Cookie consent banner,
  • Pre-printed form,
  • Galleries,
  • Clock,
  • Payment,
  • Zip Code input (France),
  • Credit card reader,
  • Date and date range picker,
  • Dashboard,
  • Advanced Looper controls,
  • Twitter feed,
  • ...
Modernized scrollbar look
Two scrollbar looks are available in version 25: either the standard look of the browser, or a sleek look that matches the skin.
You can change the color of the scrollbar.
Examples of scrollbar looks
Examples of scrollbar looks
Automatic Infinite Looper control
In addition to the modes "with pager" and "with scrollbar", Looper controls now feature an "Infinite" mode.
This mode is increasingly popular.
When the user approaches the bottom of the Looper control, the rest of the content appears automatically.
Scrollbar that appears on hover
In sophisticated pages, and not to overload the UI, scrollbars often only appear when hovering over a specific area.
In version 25, you can automatically create this type of scrollbar.
You can have several scrollbars in the same page.
You can have 1 scrollbar per container.
The scrollbar (here in red!) appears only when the column is hovered over. Similarly, a scrollbar will appear on the black column (left of page) when hovered over
The scrollbar (here in red!) appears only when the column is hovered over. Similarly, a scrollbar will appear on the black column (left of page) when hovered over
Overview
Today, Web applications use more and more Browser code.
Browser code uses less resources (no processes on the server) and bandwidth.
The user experience is improved.
Debugging Browser code easily is now a necessity.
Debug your browser code with version 25
In version 25, you can easily debug Browser code written in WLanguage.
The browser code debugger has useful features:
  • breakpoint, set beforehand or during debugging.
  • step by step, line after line or by entering the functions called.
  • view contents of variables,
  • view call stack,
  • ...
The browser is run by the debugger.
The operating modes and shortcuts are identical to the server code debugger you already know.
When the execution sequence switches from browser code to server code (or vice versa) the debugger automatically switches from one mode to another.
Remark: Chrome is the browser to use for debugging. Of course, the debugged code will work on all browsers: Edge, Firefox, Opéra, ...
Adaptive design : simpler than responsive design
In version 25, WEBDEV features Adaptive Design to create pages, ...
For WINDEV and WINDEV Mobile users, this is the same principle as the one used in layouts.
The principle is straightforward: the page layout may vary according to the width of the browser.
The same page has several possible layouts.
Typically:
  • a layout for PCs and tablets,
  • a layout for wide screens.
  • a layout for smartphones.
The appropriate page is automatically displayed according to the width of the browser.
An advantage of this method is that controls can be freely positioned in each layout.
The page is in "zoning" edit mode.
The layout menu
The layout menu
Layout : how to create pages
Creating layouts is easy.
Simply click "create a new layout" and:
  • select one of the proposed templates,
  • create a specific layout: super wide display, specific industrial device, fixed size device, ...
In each layout, you can position controls as you wish.
Layout : customize controls
In a layout, a control can:
  • be dissociated.
  • remain associated.
When an associated control is modified in one of the layouts, the changes are applied in all the layouts.
By dissociating a control, you can modify it only in the desired layout.
You can also dissociate only certain properties of the control: anchors, color, position, size, style, ...
In the "7 tabs", a symbol indicates which properties are dissociated.
Layout, code : Layout change process
Layouts are managed automatically.
But you can customize the behavior of the pages when the layout changes.
A new process is introduced to manage layouts by programming: "Change of layout" process.
This process is automatically called when the layout changes: Web users resize their browsers, or rotate their devices.
This process may be particularly useful for managing special cases by programming: save a cookie, change the content of a control, ...
Layout: example
Page in edit mode (left).
3 layouts have been defined for this page: PC, Phone and Tablet.
The blue bar above the thumbnail indicates which layout is being edited.
At runtime (below), the appropriate layout is automatically selected.
Here: PC and Phone.
New preset page
When you create a new page, WEBDEV proposes preset pages, to get started faster!
A new preset page is available in version 25: home page.
Standard home page layout
Standard home page layout
Overview
In version 25, WEBDEV simplifies and secures many operations in the editors even further.
This does not change anything about your existing elements, but it greatly facilitates interactions.
It's time to tidy up your projects!
Let's say developers of version 25 were asked to arrange the directories containing the project's HTML pages.
In previous versions, these pages were located in subdirectories of the project, by language.
In version 25, the generated pages are in the cpl directory
There is no more mess at the root of the project!
One "_web" directory by configuration!
In previous versions, all the resources for all configurations were in the same _web directory.
Let's say that, in version 25, developers were asked to store each configuration in a different subdirectory.
This allows you to deploy only one given configuration, when necessary, without including the others.
Clickable (or not) Image controls
In previous versions, there were 2 types of "Image" controls depending on whether the image was clickable or not.
In version 25, you can simply indicate that the image is clickable in the "General" tab.
There is no need to change the type of control.
Note that you don't have to make any changes to your existing elements. Your existing elements will keep working as usual.
A "map area" control can be "submit"
In previous versions, when you wanted to include clickable areas in an image, you had to change the type of control and select a "Map Area".
In version 25, this becomes a simple option of the Image control. See new feature 797.
Likewise, in previous versions, a "Map Area" control was not "Submit".
This meant that the values of the other controls on the page were not automatically returned to the server in the image's server click process.
In version 25, simply select the option "Send data to server" in the "General" tab to make the control "submit".
Note that you don't have to make any changes to your existing elements. Your existing elements will keep working as usual.
An "image" control takes into account exif orientation information
Did you know? The image orientation can be defined by "Exif" information (the various values integrated in an image).
In version 25, the Image control uses this information to determine the orientation (portrait, landscape) of the image to display.
Image control in the editor : display or not its representation
In the editor, an Image control that has no file link and no default image defined is represented by a "mountain/sun" symbol.
If this control is intended to be used as a border or frame, this symbol reduces readability in the editor.
In version 25, you can choose not to display this symbol ( "UI" tab in the "7 tabs").
See all queries integrated in the page
In version 25, the list of all the requests integrated in the page becomes available.
Queries integrated in the Looper controls of the page are also listed.
External CSS style sheets : define inclusion order
In version 25, you can specify the order in which CSS sheets are included in the project.
The inclusion order defines the priority of CSS styles.
The choices of the graphic designer will be kept!
2 New skins
2 new skins are provided in version 25: Phoenix and Ankaa.
Use these skins for your sites as you like!
HTML Edit control : the new formatting bar no longer overflows the control
The HTML control formatting bar has been entirely revamped in version 25.
To start with, the formatting bar has been redesigned.
New HTML Edit control bar, available to web users
New HTML Edit control bar, available to web users
The bar no longer overflows the control when the latter is narrow.
If the control width is limited, the bar is displayed on several rows.
The bar is pinned at the top of the control: it remains visible when scrolling.
In this page, the bar fits the entire HTML control
In this page, the bar fits the entire HTML control
Reduced page width? The bar is rearranged on 2 rows (it no longer overflows the control)
Reduced page width?
The bar is rearranged on 2 rows (it no longer overflows the control)
The font picker is WYSIWYG
HTML Edit control : undo redo
In version 25, the HTML Edit control allows the end user (the Internet user) to "undo/redo" on different levels.
HTML control : resizable input area
The end user can resize the input area.
The other areas of the page will be automatically repositioned.
The HTML Edit control has a resize handle
The HTML Edit control has a resize handle
HTML Edit control : powerful image management
In version 25, the HTML control allows for powerful and intuitive image management.
You can now paste images directly into the text.
Images can be dragged/moved from the user's file explorer.
You can set the image wrapping: a small specific bar appears when an image is selected. This bar features: type of wrapping, rotation, crop, resize, anchors, magnetism, ...
Images can be moved. They can be resized with the mouse, with or without keeping the proportions.
Inserted animated GIFs are animated!
WEBP images are also supported.
(see example on opposite page).
Edit links
In an HTML Edit control, the Web user can:
  • edit existing HTML links.
  • enter HTML links.
Image cropping
Web users can crop images they have imported, or images already present in the HTML control.
Image rotation
Web users can rotate (by 90°) images they have imported, or images already present in the HTML control.
Features: reminder
Among the features of the HTML Edit control:
  • font and size options.
  • text enrichment and color.
  • text alignment and justification.
  • image addition.
  • image wrapping.
  • ...
Emojis
Web users can insert emojis.
Smart control layout
The page editor benefits from Smart Magnetism in WEBDEV 25: it is much easier to position the controls on the page (see new feature 020)
Edit in minimum size of each slice
Slices are now edited in the minimum size of each slice, and no longer in their maximum size.
This makes editing much more intuitive.
Note that there is an option to return to the previous method, which consisted in editing in the largest mode by default.
Automatic positioning in smaller slices
When a control is created in the reference slice, it is automatically positioned in a logical way in the smaller slices.
Ability to hide table columns according to slice
In version 25, you can hide table columns to fit the resolution slice used at runtime.
Diff of responsible pages
The "diff" indicates properties of responsive web design that have been modified between 2 versions of a page.
Webification made easier and easier
Transforming your existing WINDEV applications (or parts of applications) into Web sites has never been easier.
New features allow you to transform a Windows application into Web more easily:
  • WINDEV windows Custom-Notes are transformed into WEBDEV pages Custom-Notes.
  • iPreview is converted into a code that generates a PDF file and sends it to the browser. The PDF is independent of the computer driver.
  • Code is converted in the original language.
  • The Webification wizard becomes faster.
  • WINDEV layouts are kept in the WEBDEV site.
New chart in WEBDEV : sunburst
In version 25, WEBDEV is enriched with a new chart: the "Sunburst" chart.
This type of chart allows you to present structured hierarchical data.
Sunburst chart in a page
Sunburst chart in a page
Saas functions
SaaS benefits from a new native WLanguage type: saasVisit and SaaSAdminVisit.
This makes it possible, for example, to retrieve visit statistics and apply custom monetization..
WEBDEV 25 facilitates microservices architectures
Microservices architectures have become very popular.
These architectures consist in breaking down the application's functionalities into independent webservices (SOAP or REST): in theory, this allows deploying and updating features independently, and it also allows creating scalable architectures, ...
WEBDEV allows the easy creation of microservices architectures.
SPA : general improvements in browser mode
"Browser" mode Improvements in version 25 allow you to develop Single Page Applications (SPA) more easily:
  • new Browser WLanguage functions (see new feature 824).
  • new types in Browser mode, such as Json (see new feature 823).
  • Browser code debugger (see new feature 789).
  • ...
Automatically display and scroll tweets in a page
A new useful Business Control is available to display tweets in a page.
This control can be placed in an existing page (e.g. on the right of the page) to display Tweets posted on a given account in real time.
The control can be resized, of course.
(see new feature 750).
Display a self-updating Twitter feed in the pages of your sites
Display a self-updating Twitter feed in the pages of your sites
Access control properties in Looper controls in browser code
In version 25, you can access the properties of the controls in a Looper control: make them visible, change their color, retrieve their content directly (without attribute), ...
"ToClipboard" WLanguage function available in browser
In version 25, hundreds of new functions are available in Browser mode, for example: ToClipboard.
This will be prove to be essential for every developer who needs it!
WLanguage function example: "BrowserPrint"
In version 25, hundreds of new functions are available in Browser mode, for example: BrowserPrint.
This function allows you to open the browser's print window, with the document to print already selected (same behavior as Ctrl + P).
Remark: this function is enabled on Chrome only. It has no effect on other browser.
WLanguage function example in browser mode: HashString
HashString ensures that the information received by the browser is the information sent by the server.
The application must simply process the sending and reception of the "Hash".
New json type in browser
The JSON type is available in Browser code.
This type is used to easily exploit data retrieved via Webservices.
208 new browser WLanguage functions
Writing Browser code is becoming more and more necessary.
This makes it possible to develop more responsive, faster and less resource-intensive Web applications: no requests sent to the server, less bandwith used.
AgeLeapYearCurrentYear
ArcTan2RoundDownRoundUp
CalendarSelectCalendarSelectCountCharactTypeCount
CharactTypeCharactUnicodeStringStartsWith
StringSplitStringEndsWithStringIncrement
StringInsertStringReverseStringDelete
StringToJSONStringToArrayChronoStart
ChronoEndChronoPauseChronoReset
ChronoResumeChronoValueMakeInteger
ConversionCSVToArrayDateTimeTimeZoneToLocal
DateTimeLocalToTimeZoneDateTimeLocalToUTCSysDateTime
DateTimeUTCToLocalDateTimeValidDateTimeToEpoch
DateTimeToRealDateToDayDateToDayOfWeek
DateToDayInAlphaDateToMonthInAlphaDateToWeekNumber
dBorderDecimalToSexagesimalLastDayOfWeek
LastDayOfMonthGetColorGetGUID
GetIdentifierGetCountryISOGetCountryList
GetCountryNameGetUUIDGetUUID256
dPolylinedRoundedRectangleIn64bitMode
InAJAXModeInAndroidModeInAppleWatchMode
InBackgroundModeInAWPModeInComponentMode
InDeviceOwnerModeInAndroidEmulatorModeInAppleWatchEmulatorMode
IniOSEmulatorModeInWindowsPhoneEmulatorModeInReportsAndQueriesMode
InFactoryModeIniOSModeInJavaMode
InKioskModeInLinuxModeInUMCMode
InPHPModeInPocketModeInDelayedProcedureMode
InStoredProcedureModeInServiceModeInPrelaunchedSessionMode
InSimulatorModeInAndroidSimulatorModeInAppleWatchSimulatorMode
IniOSSimulatorModeInPHPSimulatorModeInPocketSimulatorMode
InUniversalWindowsAppSimulatorModeInTestModeInAutomaticTestMode
InTSEModeInUniversalWindowsAppModeInVGAMode
InWebModeInWebserviceModeInWidgetMode
InWindowsModeInWindowsMobileModeEpochToDateTime
ExtractLineFactorialgeoAzimuth
geoDistancegrTooltipgrBarColor
grCategoryColorgrPointColorgrSeriesColor
grCategoryLabelgrPieStartAnglegrSunburstRootSection
HashStringHashCheckStringBankHoliday
BankHolidayAddBankHolidayListBankHolidayDeleteAll
MatAddMatStackMatCopy
MatCreateMatDeterminantMatWrite
MatErrorMatExistMatInvert
MatReadMatReadColumnMatReadLine
MatMultiplyMatNbColumnMatNbLine
MatFloatAddMatFloatMultiplyMatFill
MatDeleteMatTransposeCurrentMonth
WordCountWordToArrayMean
BrowserPrintNumberInWordsDayNumberInAlpha
MonthNumberInAlphaEasterLoWord
HiWordFirstDayOfYearFirstDayOfWeek
FirstDayOfMonthRealToDateTimeRGBToHTML
NoCharacterNoRightCharacterNoLeftCharacter
sComputeCrc16sComputeCrc32SexagesimalToDecimal
SumStatCorrelationStatCovariance
StatAverageDeviationStatStandardDeviationStatStandardDeviationP
StatErrorStatMaxStatMin
StatAverageStatSumStatVariance
StatVariancePTableCollapseExpandCommonLength
TextToHTMLTruncateURLExtractPath
ToClipboardXMLFindNamespaceByNameXMLFindNamespaceByURI
XMLValidDocumentXMLWriteXMLExecuteXPath
XMLExtractStringXMLExtractDocumentXMLChildExist
XMLInsertDocumentXMLInsertElementXMLRead
XMLModifyXMLNamespaceXMLNamespaceURI
XMLValidNodeXMLOpenXMLOpenReader
XMLPathXMLRenameXMLResult
XMLRestorePositionXMLSaveXMLSavePosition
XMLDeleteXMLToText
Change internal page by programming
This new feature of WEBDEV 25 was requested by a large number of users: they will be happy, and so will you!
You can now change internal pages by programming.
This allows you to create dynamic interfaces. For example, a product form can include an internal page according to the type of product (food, clothing, services, etc.).
In edit mode, there is only one page to develop and maintain, the internal page changes with the specific data.
Provide a return URL to payment sites (in session mode)
In Session mode, the address of the current page is automatically secured: it is impossible to launch this page on another device by copying/pasting this address.
It is simply impossible to call the server on the URL of the page, except from the browser of the computer.
An online payment system requires a URL to redirect to when the payment is complete. It is therefore necessary to provide a URL that can be called from another computer (from another server).
PageAddress now allows sending a URL that can be called from a computer other than the user's.
"Same-site" cookie : improved security
"Same-Site" cookies are used to protect against vulnerabilities such as CSRF (Cross Site Request Forgery). In version 25, the new CookieSameSiteStrict constant allows you to create this type of cookie.
Callback procedure proposed asynchronously
When AJAXExecuteAsynchronous is used, the code editor proposes to automatically create Server and Browser callback procedures, with the right prototype.
No need to read the doc every time!
Json type in browser code
Version 25 offers the native JSON type in Browser code.
See new feature 823.
PHP
New PHP controls
New features of version 25 in PHP:
  • Sunburst Chart control.
  • New functions in Browser code.
  • New types in Browser code.
are available in PHP.
PDF WLanguage functions
PDF functions are now available for WEBDEV Linux. These functions allow you to handle existing PDF files: rotate, extract a page, search text, ...
ssh Wlanguage functions
SSH functions are now available in WEBDEV Linux.
These functions are used to control processes remotely.
Series WLanguage functions (USB)
PCs generally no longer have a serial port! However, the serial port management functions are still used.
Indeed, devices connected to a USB port are managed with these functions.
Series functions are now available in WEBDEV Linux.
Automatic management of errors
Code errors are now automatically managed in WEBDEV Linux.
Enhanced security to prevent URL copy/paste
As you know, in Session mode, it is impossible to copy/paste a URL to launch it on another computer.
In version 25, this protection is further improved against CSRF attacks.
Administrator in Web mode
In version 25, the remote administrator interface in Web mode has been revamped.
For example, a dashboard is now available to the administrator.
Web administrator's dashboard: convenient!
Web administrator's dashboard: convenient!
Navigation in the administrator is more fluid.
Proxy management
WEBDEV 25's administrator now allows viewing the users' IP address if the server is behind a reverse proxy.
Docker of the WEBDEV application server
As you know, WEBDEV Application Server is available on DockerHub.
When the license number is specified the first time the image is launched, the number of simultaneous connections to the application server is unlimited.
When the license number is not specified, the number of simultaneous connections is limited to 10.
Sites on this server are deployed remotely, as usual.
Automatic creation of Docker images of your sites, including WEBDEV application server
With WEBDEV 25, you can also create an image that includes both the web server (e. g. Apache), the WEBDEV application server and your site.
This makes it easier to deploy your sites on new servers.
In version 25, WEBDEV allows you to create the "recipe" for a docker image of your site.
The site is easy to deploy, without manipulation.
The image of the WEBDEV Application Server is automatically included in the recipe and therefore in the image of your site.
This method has many advantages:
  • no Web server to install or configure.
  • no WEBDEV Application Server to install or configure.
  • regardless of the deployment environment (test, production, cluster docker,. etc.), the installed configuration will necessarily be the one that has been defined, without risk of modifying the version...
Ignore server directories to speed up updates
When updating a site, the WEBDEV Application Server browses the directories of the relevant site to find the files to update or delete.
Some directories may only contain data files or thousands of PDFs, for example, that are not relevant for an update procedure.
In version 25, you can specify a list of directories to ignore in the site setup procedure.
The site update will not process these directories and will therefore be much faster.
Re-enable an old version of the site
The administrator of a site may decide to immediately re-enable an old version of this site.
Useful in case of force majeure (I.e. serious bug in the new version that had been installed, which of course will never happen to you)!
Simplified accounts : one is better than TWO
On the application server, it is recommended to create accounts for each person who will deploy sites.
In previous WEBDEV versions (24 and earlier), 2 accounts were required: OS account, WEBDEV account.
In version 25, only 1 account is required. The WEBDEV account retrieves the data from the OS account.
Updated deployment wizard
The deployment wizard menu provides modern options for deployment:
  • remote deployment.
  • deployment in the cloud.
  • deployment by physical media.
  • creation of a docker image.
  • ...The deployment procedure is automatically generated.
Docker image creation
Docker image creation
Webservice parameter : automatic json type
In version 25, Webservice procedures directly accept JSON variables.
JSON elements are automatically extracted from the content of the request.
And numerous other features
Version 25 offers many other new features, which we will let you discover once you have ordered and received your product, ...
Minimum version required
  • Version 25
Comments
Click [Add] to post a comment