Skip to content

Commit 49782f3

Browse files
arnaud4dsandritica
andauthored
21R2 BETA update (#551)
* created 21-R2 * Update updates.md (#3066) * Update updates.md * New Crowdin updates (#3067) * New translations wp-insert-picture.md (Japanese) * New translations wp-insert-picture.md (Portuguese, Brazilian) * New translations wp-reset-attributes.md (French) * New translations wp-reset-attributes.md (Spanish) * New translations wp-reset-attributes.md (Japanese) * New translations wp-reset-attributes.md (Portuguese, Brazilian) * New translations wp-set-attributes.md (French) * New translations wp-set-attributes.md (Spanish) * New translations wp-set-attributes.md (Japanese) * New translations wp-set-attributes.md (Portuguese, Brazilian) * New translations managing-formulas.md (French) * New translations managing-formulas.md (Spanish) * New translations managing-formulas.md (Japanese) * New translations managing-formulas.md (Portuguese, Brazilian) * New translations openaichatapi.md (Japanese) * New translations openaichathelper.md (Spanish) * New translations openaichathelper.md (Japanese) * New translations openaiembeddingsapi.md (French) * New translations openaifilelistparameters.md (Spanish) * New translations write-class-method.md (French) * New translations write-class-method.md (Spanish) * New translations write-class-method.md (Japanese) * New translations write-class-method.md (Portuguese, Brazilian) * New translations 4d.md (French) * New translations 4d.md (Spanish) * New translations 4d.md (Japanese) * New translations 4d.md (Portuguese, Brazilian) * New translations call-chain.md (French) * New translations call-chain.md (Spanish) * New translations call-chain.md (Japanese) * New translations call-chain.md (Portuguese, Brazilian) * New translations command-index.md (Japanese) * New translations command-name.md (French) * New translations command-name.md (Spanish) * New translations command-name.md (Japanese) * New translations command-name.md (Portuguese, Brazilian) * New translations compile-project.md (French) * New translations compile-project.md (Spanish) * New translations compile-project.md (Japanese) * New translations compile-project.md (Portuguese, Brazilian) * New translations create-deployment-license.md (French) * New translations create-deployment-license.md (Spanish) * New translations create-deployment-license.md (Japanese) * New translations create-deployment-license.md (Portuguese, Brazilian) * New translations create-entity-selection.md (French) * New translations create-entity-selection.md (Spanish) * New translations create-entity-selection.md (Japanese) * New translations create-entity-selection.md (Portuguese, Brazilian) * New translations cs.md (French) * New translations cs.md (Spanish) * New translations cs.md (Japanese) * New translations cs.md (Portuguese, Brazilian) * New translations dialog.md (French) * New translations dialog.md (Spanish) * New translations dialog.md (Japanese) * New translations dialog.md (Portuguese, Brazilian) * New translations ds.md (French) * New translations ds.md (Spanish) * New translations ds.md (Japanese) * New translations ds.md (Portuguese, Brazilian) * New translations folder.md (Japanese) * New translations form-edit.md (French) * New translations form-edit.md (Spanish) * New translations form-edit.md (Japanese) * New translations form-edit.md (Portuguese, Brazilian) * New translations form-event-code.md (French) * New translations form-event-code.md (Spanish) * New translations form-event-code.md (Japanese) * New translations form-event-code.md (Portuguese, Brazilian) * New translations form-event.md (French) * New translations form-event.md (Spanish) * New translations form-event.md (Japanese) * New translations form-event.md (Portuguese, Brazilian) * New translations form-load.md (French) * New translations form-load.md (Spanish) * New translations form-load.md (Japanese) * New translations form-load.md (Portuguese, Brazilian) * New translations form-theme.md (Japanese) * New translations form.md (French) * New translations form.md (Spanish) * New translations form.md (Japanese) * New translations form.md (Portuguese, Brazilian) * New translations formula-from-string.md (French) * New translations formula-from-string.md (Spanish) * New translations formula-from-string.md (Japanese) * New translations formula-from-string.md (Portuguese, Brazilian) * New translations formula.md (French) * New translations formula.md (Spanish) * New translations formula.md (Japanese) * New translations formula.md (Portuguese, Brazilian) * New translations generate-uuid.md (French) * New translations generate-uuid.md (Spanish) * New translations generate-uuid.md (Japanese) * New translations generate-uuid.md (Portuguese, Brazilian) * New translations http-parse-message.md (French) * New translations http-parse-message.md (Spanish) * New translations http-parse-message.md (Japanese) * New translations http-parse-message.md (Portuguese, Brazilian) * New translations imap-new-transporter.md (French) * New translations imap-new-transporter.md (Spanish) * New translations imap-new-transporter.md (Japanese) * New translations imap-new-transporter.md (Portuguese, Brazilian) * New translations last-errors.md (French) * New translations last-errors.md (Spanish) * New translations last-errors.md (Japanese) * New translations last-errors.md (Portuguese, Brazilian) * New translations license-info.md (French) * New translations license-info.md (Spanish) * New translations license-info.md (Japanese) * New translations license-info.md (Portuguese, Brazilian) * New translations mail-convert-from-mime.md (French) * New translations mail-convert-from-mime.md (Spanish) * New translations mail-convert-from-mime.md (Japanese) * New translations mail-convert-from-mime.md (Portuguese, Brazilian) * New translations mail-convert-to-mime.md (French) * New translations mail-convert-to-mime.md (Spanish) * New translations mail-convert-to-mime.md (Japanese) * New translations mail-convert-to-mime.md (Portuguese, Brazilian) * New translations mail-new-attachment.md (French) * New translations mail-new-attachment.md (Spanish) * New translations mail-new-attachment.md (Japanese) * New translations mail-new-attachment.md (Portuguese, Brazilian) * New translations new-collection.md (French) * New translations new-collection.md (Spanish) * New translations new-collection.md (Japanese) * New translations new-collection.md (Portuguese, Brazilian) * New translations new-shared-collection.md (French) * New translations new-shared-collection.md (Spanish) * New translations new-shared-collection.md (Japanese) * New translations new-shared-collection.md (Portuguese, Brazilian) * New translations new-signal.md (French) * New translations new-signal.md (Spanish) * New translations new-signal.md (Japanese) * New translations new-signal.md (Portuguese, Brazilian) * New translations num.md (French) * New translations num.md (Spanish) * New translations num.md (Japanese) * New translations num.md (Portuguese, Brazilian) * New translations object-get-data-source-formula.md (French) * New translations object-get-data-source-formula.md (Spanish) * New translations object-get-data-source-formula.md (Japanese) * New translations object-get-data-source-formula.md (Portuguese, Brazilian) * New translations object-set-data-source-formula.md (French) * New translations object-set-data-source-formula.md (Spanish) * New translations object-set-data-source-formula.md (Japanese) * New translations object-set-data-source-formula.md (Portuguese, Brazilian) * New translations open-datastore.md (French) * New translations open-datastore.md (Spanish) * New translations open-datastore.md (Japanese) * New translations open-datastore.md (Portuguese, Brazilian) * New translations pop3-new-transporter.md (French) * New translations pop3-new-transporter.md (Spanish) * New translations pop3-new-transporter.md (Japanese) * New translations pop3-new-transporter.md (Portuguese, Brazilian) * New translations print-form.md (French) * New translations print-form.md (Spanish) * New translations print-form.md (Japanese) * New translations print-form.md (Portuguese, Brazilian) * New translations process-activity.md (French) * New translations process-activity.md (Spanish) * New translations process-activity.md (Japanese) * New translations process-activity.md (Portuguese, Brazilian) * New translations process-info.md (French) * New translations process-number.md (French) * New translations process-number.md (Spanish) * New translations process-number.md (Japanese) * New translations process-number.md (Portuguese, Brazilian) * New translations select-log-file.md (French) * New translations select-log-file.md (Spanish) * New translations select-log-file.md (Japanese) * New translations select-log-file.md (Portuguese, Brazilian) * New translations session-info.md (French) * New translations session-info.md (Spanish) * New translations session-info.md (Japanese) * New translations session-info.md (Portuguese, Brazilian) * New translations session-storage.md (French) * New translations session-storage.md (Spanish) * New translations session-storage.md (Japanese) * New translations session-storage.md (Portuguese, Brazilian) * New translations set-allowed-methods.md (French) * New translations set-allowed-methods.md (Spanish) * New translations set-allowed-methods.md (Japanese) * New translations set-allowed-methods.md (Portuguese, Brazilian) * New translations set-window-document-icon.md (French) * New translations set-window-document-icon.md (Spanish) * New translations set-window-document-icon.md (Japanese) * New translations set-window-document-icon.md (Portuguese, Brazilian) * New translations smtp-new-transporter.md (French) * New translations smtp-new-transporter.md (Spanish) * New translations smtp-new-transporter.md (Japanese) * New translations smtp-new-transporter.md (Portuguese, Brazilian) * New translations string.md (French) * New translations string.md (Spanish) * New translations string.md (Japanese) * New translations string.md (Portuguese, Brazilian) * New translations super.md (French) * New translations super.md (Spanish) * New translations super.md (Japanese) * New translations super.md (Portuguese, Brazilian) * New translations boolean.md (French) * New translations boolean.md (Japanese) * New translations string.md (French) * New translations this.md (French) * New translations this.md (Spanish) * New translations this.md (Japanese) * New translations this.md (Portuguese, Brazilian) * New translations trim-end.md (French) * New translations trim-end.md (Spanish) * New translations trim-end.md (Japanese) * New translations trim-end.md (Portuguese, Brazilian) * New translations trim-start.md (French) * New translations trim-start.md (Spanish) * New translations trim-start.md (Japanese) * New translations trim-start.md (Portuguese, Brazilian) * New translations trim.md (French) * New translations trim.md (Spanish) * New translations trim.md (Japanese) * New translations trim.md (Portuguese, Brazilian) * New translations use-entity-selection.md (French) * New translations use-entity-selection.md (Spanish) * New translations use-entity-selection.md (Japanese) * New translations use-entity-selection.md (Portuguese, Brazilian) * New translations wa-get-context.md (French) * New translations wa-get-context.md (Spanish) * New translations wa-get-context.md (Japanese) * New translations wa-get-context.md (Portuguese, Brazilian) * New translations wa-set-context.md (French) * New translations wa-set-context.md (Spanish) * New translations wa-set-context.md (Japanese) * New translations wa-set-context.md (Portuguese, Brazilian) * New translations web-event.md (French) * New translations web-event.md (Spanish) * New translations web-event.md (Japanese) * New translations web-event.md (Portuguese, Brazilian) * New translations web-form.md (French) * New translations web-form.md (Spanish) * New translations web-form.md (Japanese) * New translations web-form.md (Portuguese, Brazilian) * New translations web-server-list.md (French) * New translations web-server-list.md (Spanish) * New translations web-server-list.md (Japanese) * New translations web-server-list.md (Portuguese, Brazilian) * New translations zip-create-archive.md (French) * New translations zip-create-archive.md (Spanish) * New translations zip-create-archive.md (Japanese) * New translations zip-create-archive.md (Portuguese, Brazilian) * New translations zip-read-archive.md (French) * New translations zip-read-archive.md (Spanish) * New translations zip-read-archive.md (Japanese) * New translations zip-read-archive.md (Portuguese, Brazilian) * added qodly info (#3068) * added develop mode (#3069) * Feature/qodly in webarea (#3070) * qodly web area, phase 1 * web area2 * fix sidebars * key in sidebars * ES Method resolve path edit (#3071) * Update method-resolve-path.md * Update method-resolve-path.md * Update docusaurus.config.js (#3072) * Edit/update footer (#3073) * Update docusaurus.config.js * Update footer.json --------- Co-authored-by: sandritica <136651682+sandritica@users.noreply.github.com>
1 parent 9d526fd commit 49782f3

24,916 files changed

Lines changed: 683788 additions & 657986 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/Admin/webAdmin.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,6 @@ This option is automatically checked if you used the [One-click configuration di
147147

148148
:::
149149

150-
:::note
151150

152151
## Headless Configuration
153152

docs/Desktop/clientServer.md

Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ If the published project is not displayed in the **Available** list, select **Cu
5050
- If two servers are executed simultaneously on the same machine, the IP address must be followed by a colon and port number, for example: `192.168.92.104:19814`.
5151
- By default, the publishing port of a 4D Server is 19813. This number can be modified in the Project settings.
5252

53-
> The **Activate development mode** option opens the remote connection in a special read/write mode and requires to access the project folder from the remote 4D (compatibility option).
53+
> The [**Activate development mode**](#development-mode) option opens the remote connection in a special read/write mode and requires to access the project folder from the remote 4D.
5454
5555
Once this page assigns a server, clicking the **OK** button will allow you to connect to the server.
5656

@@ -62,7 +62,7 @@ Once a connection to the server has been established, the remote project will be
6262

6363
- An updated .4dz version of the project is automatically produced when necessary, *i.e.* when the project has been modified and reloaded by 4D Server. The project is reloaded:
6464
- automatically, when the 4D Server application window comes to the front of the OS or when the 4D application on the same machine saves a modification (see below).
65-
- when the `RELOAD PROJECT` command is executed. Calling this command is necessary for example when you have pulled a new version of the project from the source control platform.
65+
- when the [`RELOAD PROJECT`](../commands-legacy/reload-project.md) command is executed. Calling this command is necessary for example when you have pulled a new version of the project from the source control platform.
6666

6767
### Updating project files on remote machines
6868

@@ -72,7 +72,7 @@ When an updated .4dz version of the project has been produced on 4D Server, conn
7272

7373
When 4D connects to a 4D Server on the same machine, the application behaves as 4D in single user mode and the design environment allows you to edit project files. This feature allows you to develop a client/server application in the same context as the deployment context.
7474

75-
> When 4D connects to a 4D Server on the same machine, the **development mode** is automatically activated, whatever the [Activate development mode](#opening-a-remote-project) option status.
75+
> When 4D connects to a 4D Server on the same machine, the **development mode** is automatically activated, whatever the [Development mode](#development-mode) status.
7676
7777
Each time 4D performs a **Save all** action from the design environment (explicitly from **File** menu or implicitly by switching to application mode for example), 4D Server synchronously reloads project files. 4D waits for 4D Server to finish reloading the project files before it continues.
7878

@@ -86,3 +86,45 @@ However, you need to pay attention to the following behavior differences compare
8686

8787
> It is not recommended to install plug-ins or components at the 4D or 4D Server application level.
8888
89+
90+
## Development mode
91+
92+
The **Development mode** in 4D Server is a special project opening mode that allows read/write access for connected remote 4D applications. The project must be available in [**interpreted** mode](../Concepts/interpreted.md).
93+
94+
This mode allows one or more developers to work simultaneously on the same project in Design environment. When a project is opened in **Development mode**:
95+
96+
- Project files are available in read/write so that you can edit methods, forms, etc.
97+
- Several remote 4D can concurrently open the same interpreted project files and edit them. An automatic locking system prevents from concurrent access to the same resource.
98+
- Modifications are made available to all remote developers. Note however that there is no automatic push to remote developers, they need to refresh to get latest versions of files (a refresh is done each time the developer switches from design mode to application mode for example, or selects **Save all** from the **File** menu).
99+
100+
To use this mode, select the **Activate development mode** option in the [connection dialog box](#opening-a-remote-project) from your remote 4D. You are prompted to **Select 4D project file**: you need to select the [.project file](../Project/architecture.md#applicationname4dproject-file) that 4D Server has opened. If you select a different file, an alert dialog box warns you that the development mode is not available. It means that the remote 4D must have access to the project folder over the network (the whole project folder must be shared, i.e. the root folder of the project).
101+
102+
:::caution
103+
104+
For performance reasons with this configuration, it is strongly recommended that the project folder be stored on a dedicated file server (e.g. a NAS) on a local network.
105+
106+
:::
107+
108+
:::note
109+
110+
When both the server and the remote 4D are on the same machine, [additional rules applies](#using-4d-and-4d-server-on-the-same-machine).
111+
112+
:::
113+
114+
Here is an overview of the development mode architecture:
115+
116+
![](../assets/en/Desktop/develop-mode.png)
117+
118+
119+
:::note Compatibility
120+
121+
This feature is designed for small-size development teams who are used to work on binary databases and want to benefit from project features while maintaining their current organisation. However, for multi-user development on 4D projects, we recommend using a standard architecture where developers work on their machine and manage their work using source control repository tools (Git, SVN, etc.). This organisation provides a great flexibility by allowing developers to work on different branches, and compare, merge, or revert modifications.
122+
123+
:::
124+
125+
126+
:::tip Related blog post
127+
128+
[Developing Concurrently on 4D Server in Project Mode](https://blog.4d.com/developing-concurrently-on-4d-server-in-project-mode/)
129+
130+
:::

docs/Desktop/sessions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ When creating an OTP token in client/server environment, you need to execute the
124124

125125
:::tip Related blog post
126126

127-
[Embed Qodly pages in a 4D web area without extra cost](https://blog.4d.com/embed-qodly-pages-in-a-4d-web-area-without-extra-cost)
127+
[Embed Qodly pages in a 4D web area without extra cost](https://blog.4d.com/share-your-4d-remote-client-session-with-web-accesses/)
128128

129129
:::
130130

docs/FormObjects/webArea_overview.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,21 @@ It is possible to create several web areas in the same form. Note, however, that
1010

1111
Several dedicated [standard actions](#standard-actions), numerous [language commands](../category/web-area) as well as generic and specific [form events](#form-events) allow the developer to control the functioning of web areas. Specific variables can be used to exchange information between the area and the 4D environment.
1212

13-
:::info Displaying Qodly pages
13+
## Displaying Qodly pages
14+
15+
Web areas can be used to display [Qodly pages](https://developer.4d.com/qodly/4DQodlyPro/pageLoaders/pageLoaderOverview) and provide 4D desktop application users with modern, CSS-based web interface.
16+
17+
You can embed a Qodly page inside a Web Area and then update [Qodly sources](https://developer.4d.com/qodly/4DQodlyPro/pageLoaders/qodlySources) from 4D by calling [`WA EXECUTE JAVASCRIPT FUNCTION`](../commands-legacy/wa-execute-javascript-function.md).
18+
19+
In 4D client/server applications, Qodly pages inside Web areas can [share their session with the remote user](../Desktop/clientServer.md#sharing-the-session-with-qodly-pages-in-web-areas) for a high level of security.
20+
21+
:::tip Related blog post
22+
23+
[Enhance your Desktop Interface with Web widgets using 4D Qodly Pro](https://blog.4d.com/build-modern-hybrid-desktop-apps-with-4d-and-qodly-pro/)
24+
25+
:::
1426

15-
In 4D client/server applications, Web areas can be used to display Qodly pages and [share the remote user session](../Desktop/clientServer.md#sharing-the-session-with-qodly-pages-in-web-areas). This feature allows you to design web-based interfaces for your client/server desktop applications.
1627

17-
:::
1828

1929
## Specific properties
2030

@@ -243,7 +253,7 @@ When you have done the settings as described above, you then have new options su
243253

244254
## Supported Properties
245255

246-
[Border Line Style](properties_BackgroundAndBorder.md#border-line-style) - [Bottom](properties_CoordinatesAndSizing.md#bottom) - [Class](properties_Object.md#css-class) - [Context Menu](properties_Entry.md#context-menu) - [Height](properties_CoordinatesAndSizing.md#height) - [Horizontal Sizing](properties_ResizingOptions.md#horizontal-sizing) - [Left](properties_CoordinatesAndSizing.md#left) - [Method](properties_Action.md#method) - [Object Name](properties_Object.md#object-name) - [Progression](properties_WebArea.md#progression) - [Right](properties_CoordinatesAndSizing.md#right) - [Top](properties_CoordinatesAndSizing.md#top) - [Type](properties_Object.md#type) - [URL](properties_WebArea.md#url) - [Use embedded Web rendering engine](properties_WebArea.md#use-embedded-web-rendering-engine) - [Variable or Expression](properties_Object.md#variable-or-expression) - [Vertical Sizing](properties_ResizingOptions.md#vertical-sizing) - [Visibilty](properties_Display.md#visibility) - [Width](properties_CoordinatesAndSizing.md#width)
256+
[Access 4D methods](properties_WebArea.md#access-4d-methods) - [Border Line Style](properties_BackgroundAndBorder.md#border-line-style) - [Bottom](properties_CoordinatesAndSizing.md#bottom) - [Class](properties_Object.md#css-class) - [Context Menu](properties_Entry.md#context-menu) - [Height](properties_CoordinatesAndSizing.md#height) - [Horizontal Sizing](properties_ResizingOptions.md#horizontal-sizing) - [Left](properties_CoordinatesAndSizing.md#left) - [Method](properties_Action.md#method) - [Object Name](properties_Object.md#object-name) - [Progression](properties_WebArea.md#progression) - [Right](properties_CoordinatesAndSizing.md#right) - [Top](properties_CoordinatesAndSizing.md#top) - [Type](properties_Object.md#type) - [URL](properties_WebArea.md#url) - [Use embedded Web rendering engine](properties_WebArea.md#use-embedded-web-rendering-engine) - [Variable or Expression](properties_Object.md#variable-or-expression) - [Vertical Sizing](properties_ResizingOptions.md#vertical-sizing) - [Visibilty](properties_Display.md#visibility) - [Width](properties_CoordinatesAndSizing.md#width)
247257

248258
## 4DCEFParameters.json
249259

@@ -346,7 +356,7 @@ The default 4DCEFParameters.json file contains the following switches:
346356
}
347357
```
348358

349-
:::info Related blog post
359+
:::tip Related blog post
350360

351361
[Custom Parameters for Initializing Embedded Web Area](https://blog.4d.com/custom-parameters-for-initializing-embedded-web-area/)
352362

docs/Notes/updates.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -37,20 +37,20 @@ Read [**What’s new in 4D 21 R2**](https://blog.4d.com/en-whats-new-in-4d-21-r2
3737

3838
|Library|Current version|Updated in 4D|Comment|
3939
|---|---|---|----|
40-
|BoringSSL|9b86817|**21**|Used for QUIC|
41-
|CEF|7258|**21**|Chromium 139|
40+
|BoringSSL|9b86817|21|Used for QUIC|
41+
|CEF|7258|21|Chromium 139|
4242
|Hunspell|1.7.2|20|Used for spell checking in 4D forms and 4D Write Pro|
43-
|ICU|77.1|**21**|This upgrade forces an automatic rebuild of alphanumeric, text and object indexes.|
44-
|libldap|2.6.10|**21**||
43+
|ICU|77.1|21|This upgrade forces an automatic rebuild of alphanumeric, text and object indexes.|
44+
|libldap|2.6.10|21||
4545
|libsasl|2.1.28|20||
4646
|Liblsquic|4.2.0|20 R10|Used for QUIC|
47-
|Libuv |1.51.0|**21**|Used for QUIC|
48-
|libZip|1.11.4|**21**|Used by zip class, 4D Write Pro, svg and serverNet components|
49-
|LZMA|5.8.1|**21**||
50-
|ngtcp2|1.18.0|**21**|Used for QUIC|
51-
|OpenSSL|3.5.2|**21**||
52-
|PDFWriter|4.7.0|**21**|Used for [`WP Export document`](../WritePro/commands/wp-export-document.md) and [`WP Export variable`](../WritePro/commands/wp-export-variable.md) |
53-
|SpreadJS|18.2.0|21 R2|See [this blog post](https://blog.4d.com/4d-view-pro-whats-new-in-4d-21-r2/) for an overview of the new features|
47+
|Libuv |1.51.0|21|Used for QUIC|
48+
|libZip|1.11.4|21|Used by zip class, 4D Write Pro, svg and serverNet components|
49+
|LZMA|5.8.1|21||
50+
|ngtcp2|1.18.0|21|Used for QUIC|
51+
|OpenSSL|3.5.2|21||
52+
|PDFWriter|4.7.0|21|Used for [`WP Export document`](../WritePro/commands/wp-export-document.md) and [`WP Export variable`](../WritePro/commands/wp-export-variable.md) |
53+
|SpreadJS|18.2.0|**21 R2**|See [this blog post](https://blog.4d.com/4d-view-pro-whats-new-in-4d-21-r2/) for an overview of the new features|
5454
|webKit|WKWebView|19||
55-
|Xerces|3.3.0|**21**|Used for XML commands|
56-
|Zlib|1.3.1|**21**||
55+
|Xerces|3.3.0|21|Used for XML commands|
56+
|Zlib|1.3.1|21||

docs/Project/overview.md

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,35 @@ title: 4D at a glance
44
slug: /GettingStarted/overview
55
---
66

7-
A 4D project contains all of the source code of a 4D application, whatever its deployment type (web, mobile, or desktop), from the database structure to the user interface, including code, forms, menus, user settings, or any required resources. A 4D project is primarily made of text-based files.
7+
A 4D project contains all of the source code of a 4D application, whatever its deployment type (web, desktop, or mobile), from the database structure to the user interface, including code, web pages, forms, menus, user settings, or any required resources. A 4D project is primarily made of text-based files.
88

99

1010
## Project files
1111

12-
4D project files are open and edited using regular 4D platform applications (4D or 4D Server). With 4D, full-featured editors are available to manage files, including a structure editor, a [Code Editor](../code-editor/write-class-method.md), a [form editor](../FormEditor/formEditor.md), a menu editor...
12+
4D project files are open and edited using regular 4D platform applications (4D or 4D Server), on Windows or macOS. With 4D, full-featured editors are available to manage files, including a [code editor](../code-editor/write-class-method.md), a [web interface builder (4D Qodly Pro)](https://developer.4d.com/qodly/), a [form editor](../FormEditor/formEditor.md), a structure editor, a menu editor...
1313

1414
Since projects are in human-readable, plain text files (JSON, XML, etc.), they can be read or edited manually by developers, using any code editor.
1515

16-
In addition, 4D project files make it easier to program generically, create application templates, and share code. Project are organized internally in [folders and files](Project/architecture.md).
16+
In addition, 4D project files make it easier to program generically, create application templates, and share code. Project are organized internally in [folders and files](../Project/architecture.md).
1717

1818

1919
## Development
2020

21-
4D projects are developed using the **4D** application. It provides an Integrated Development Environment (IDE) for 4D projects as well as a web server, a mobile project generator, and an application runtime, allowing you to develop, test, and debug any kind of project.
21+
4D projects are developed using the **4D** application. It provides an Integrated Development Environment (IDE) for 4D projects as well as a web server, a web interface builder, a mobile project generator, and an application runtime, allowing you to develop, test, and debug any kind of project.
22+
23+
### Source control
2224

2325
Multi-user development is managed via standard **source control** repository tools (Perforce, Git, SVN, etc.), which allow developers to work on different branches, and compare, merge, or revert modifications.
2426

27+
### Development mode on 4D Server
28+
29+
If you are a small-size development team and you do not want to use a source control tool, you can use the [**Development mode**](../Desktop/clientServer.md#development-mode) of 4D Server, allowing developers to work online on the same project with 4D in remote mode. Note that this alternative mode should be used in specific cases; using an organisation based upon source control tools (see above) is usually recommended.
30+
31+
32+
2533

26-
## Final application
34+
## Deployment
2735

28-
Project files can be [compiled](compiler.md) and easily deployed. 4D allows you to create several types of application from your projects, including [web](WebServer/webServer.md) applications, [desktop](Desktop/building.md) applications (client/server or single-user), or mobile applications.
36+
Project files can be [compiled](compiler.md) and easily deployed. 4D allows you to create several types of application from your projects, including [web](WebServer/webServer.md) applications, [desktop](Desktop/building.md) applications (client/server or single-user), or [mobile applications](https://developer.4d.com/go-mobile/).
2937

3038
Back end applications can be deployed using 4D Server, 4D, or [merged with 4D Volume Desktop](../Desktop/building.md).
191 KB
Loading

docs/commands-legacy/wa-execute-javascript-function.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,8 +54,43 @@ The "getCustomerInfo" JavaScript function receive a number ID as parameter and r
5454
 WA EXECUTE JAVASCRIPT FUNCTION(*,"WA";"getCustomerInfo";$Result;$ID)
5555
```
5656

57+
## Example 3
58+
59+
The `WA EXECUTE JAVASCRIPT FUNCTION` command can be used to update [Qodly sources](https://developer.4d.com/qodly/4DQodlyPro/pageLoaders/qodlySources) from a [Qodly page embedded in a Web area](../FormObjects/webArea_overview.md#displaying-qodly-pages).
60+
61+
62+
```4d
63+
// Set local datasource in a specific page
64+
var $Source;$Value;$Page;$Result : Text
65+
$Value:="New Value"
66+
$Source:="title" // title is the name of string datasource
67+
$Main:="Main" // Main is name of the Qodly page
68+
// the namespace is sent as null, as the it's a local source
69+
WA EXECUTE JAVASCRIPT FUNCTION(*;"WA";"Qodly.setSource";$Result;$Source;$Value;Null;$Page)
70+
```
71+
72+
```4d
73+
//Set shared datasource
74+
var $Source;$Value;$Namespace;$Result : Text
75+
$Value:="New Value"
76+
$Source:="title" // `title` is the name of string datasource,
77+
$Namespace:="shared" // `shared` is the namespace of the qodly source
78+
// Since $NameSpace is defined no need to add the $Page arguments
79+
WA EXECUTE JAVASCRIPT FUNCTION(*;"WA";"Qodly.setSource";$Result;$Source;$Value;$Namespace)
80+
```
81+
82+
```4d
83+
//Set current page local datasource
84+
var $Source;$Value;$Result : Text
85+
$Value:="New Value"
86+
$Source:="title" // `title` is the name of string datasource,
87+
WA EXECUTE JAVASCRIPT FUNCTION(*;"WA";"Qodly.setSource";$Result;$Source;$Value)
88+
```
89+
90+
5791
## See also
5892

93+
[Enhance your Desktop Interface with Web widgets using 4D Qodly Pro](https://blog.4d.com/build-modern-hybrid-desktop-apps-with-4d-and-qodly-pro/) (blog post)<br/>
5994
[WA Evaluate JavaScript](wa-evaluate-javascript.md)
6095

6196
## Properties

docusaurus.config.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -70,15 +70,15 @@ module.exports = {
7070
},
7171
sidebarPath: require.resolve('./sidebars.js'),
7272
versions: {
73-
'21': {
74-
label: '21',
73+
'21-R2': {
74+
label: '21 R2 BETA',
7575
banner: 'none',
7676
},
77-
'20-R10': {
78-
label: '20 R10',
77+
'21': {
78+
label: '21',
7979
banner: 'none',
8080
},
81-
'20': {
81+
'20': {
8282
label: '20',
8383
banner: 'none',
8484
},
@@ -211,19 +211,19 @@ module.exports = {
211211
items: [
212212
{
213213
label: 'Documentation download',
214-
href: 'https://github.com/4d/docs/releases/tag/latest',
214+
to: 'https://github.com/4d/docs/releases/tag/latest',
215215
},
216216
{
217-
label: '4D Doc Center (Where It All Began)',
218-
to: 'https://doc.4d.com',
217+
label: 'Learn 4D',
218+
to: 'https://learn.4d.com',
219219
},
220220
{
221221
label: 'Knowledgebase',
222222
to: 'https://kb.4d.com',
223223
},
224224
{
225225
label: 'Downloads',
226-
to: 'https://us.4d.com/product-download/Feature-Release',
226+
to: 'https://us.4d.com/product-download',
227227
},
228228
{
229229
label: 'Resources',
@@ -257,7 +257,7 @@ module.exports = {
257257
],
258258
},
259259
],
260-
"copyright": 2025 4D SAS - All rights reserved",
260+
"copyright": 2026 4D SAS - All rights reserved",
261261
},
262262
},
263263
markdown: {

0 commit comments

Comments
 (0)