Skip to content

Commit 910aaa8

Browse files
arnaud4dnobuteshimasandriticae-marchand
authored
update during 21 beta (#521)
* New Crowdin updates (#2989) * New translations properties_backgroundandborder.md (Spanish) * New translations privileges.md (Spanish) * New translations $filter.md (Spanish) * New translations configuration.md (Spanish) * New translations vp-export-document.md (Spanish) * New translations vp-import-document.md (Spanish) * New translations qodly-studio.md (Spanish) * New translations webserver.md (Spanish) * New translations client-server.md (Spanish) * New translations web.md (Spanish) * New translations managing-formulas.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations labels.md (Spanish) * New translations select-log-file.md (Spanish) * New translations wa-get-context.md (Spanish) * New translations openaichatapi.md (Spanish) * New translations openaichatcompletionsapi.md (Spanish) * New translations openaichatcompletionsmessagesapi.md (Spanish) * New translations openaierror.md (Spanish) * New translations openaiimage.md (Spanish) * New translations openaimessage.md (Spanish) * New translations openaiparameters.md (Spanish) * New translations openairesult.md (Spanish) * New translations call-chain.md (Spanish) * New translations command-name.md (Spanish) * New translations listbox-get-property.md (Spanish) * New translations listbox-set-property.md (Spanish) * New translations orda-events.md (Spanish) * New translations field-properties.md (Spanish) * New translations openaiembeddingsapi.md (Spanish) * New translations collectionclass.md (Spanish) * New translations cryptokeyclass.md (Spanish) * New translations imaptransporterclass.md (Spanish) * New translations cli.md (Spanish) * New translations labels.md (Spanish) * New translations field-properties.md (Spanish) * New translations overview.md (Spanish) * New translations formeditor.md (Spanish) * New translations properties_markers.md (Spanish) * New translations button_overview.md (Spanish) * New translations listbox_overview.md (Spanish) * New translations properties_backgroundandborder.md (Spanish) * New translations properties_object.md (Spanish) * New translations entities.md (Spanish) * New translations vp-export-document.md (Spanish) * New translations vp-find.md (Spanish) * New translations vp-import-document.md (Spanish) * New translations vp-set-workbook-options.md (Spanish) * New translations http-request-handler.md (Spanish) * New translations qodly-studio.md (Spanish) * New translations wp-export-document.md (Spanish) * New translations wp-export-variable.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations openaichatcompletionsapi.md (Spanish) * New translations openaichatcompletionsmessagesapi.md (Spanish) * New translations openaiembeddingsapi.md (Spanish) * New translations openaierror.md (Spanish) * New translations openaiimage.md (Spanish) * New translations openaimessage.md (Spanish) * New translations openaiparameters.md (Spanish) * New translations openairesult.md (Spanish) * New translations compatible-openai.md (Spanish) * New translations call-chain.md (Spanish) * New translations command-name.md (Spanish) * New translations form.md (Spanish) * New translations listbox-get-property.md (Spanish) * New translations listbox-set-property.md (Spanish) * New translations new-log-file.md (Spanish) * New translations select-log-file.md (Spanish) * New translations wa-get-context.md (Spanish) * New translations http-rules.md (Spanish) * New translations collectionclass.md (Spanish) * New translations cryptokeyclass.md (Spanish) * New translations entityclass.md (Spanish) * New translations imaptransporterclass.md (Spanish) * New translations sessionclass.md (Spanish) * New translations webserverclass.md (Spanish) * New translations cli.md (Spanish) * New translations debuglogfiles.md (Spanish) * New translations clientserver.md (Spanish) * New translations labels.md (Spanish) * New translations field-properties.md (Spanish) * New translations overview.md (Spanish) * New translations formeditor.md (Spanish) * New translations properties_markers.md (Spanish) * New translations button_overview.md (Spanish) * New translations listbox_overview.md (Spanish) * New translations properties_backgroundandborder.md (Spanish) * New translations properties_object.md (Spanish) * New translations call-chain.md (Spanish) * New translations command-name.md (Spanish) * New translations form.md (Spanish) * New translations listbox-get-property.md (Spanish) * New translations listbox-set-property.md (Spanish) * New translations new-log-file.md (Spanish) * New translations select-log-file.md (Spanish) * New translations wa-get-context.md (Spanish) * New translations client-server.md (Spanish) * New translations web.md (Spanish) * New translations updates.md (Spanish) * New translations entities.md (Spanish) * New translations orda-events.md (Spanish) * New translations privileges.md (Spanish) * New translations $filter.md (Spanish) * New translations vp-export-document.md (Spanish) * New translations vp-find.md (Spanish) * New translations vp-import-document.md (Spanish) * New translations vp-set-workbook-options.md (Spanish) * New translations getting-started.md (Spanish) * New translations http-rules.md (Spanish) * New translations qodly-studio.md (Spanish) * New translations webserver.md (Spanish) * New translations wp-export-document.md (Spanish) * New translations wp-export-variable.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations managing-formulas.md (Spanish) * New translations openaichatapi.md (Spanish) * New translations openaichatcompletionsapi.md (Spanish) * New translations openaichatcompletionsmessagesapi.md (Spanish) * New translations openaiembeddingsapi.md (Spanish) * New translations openaierror.md (Spanish) * New translations openaiimage.md (Spanish) * New translations openaimessage.md (Spanish) * New translations openaiparameters.md (Spanish) * New translations openairesult.md (Spanish) * New translations compatible-openai.md (Spanish) * New translations updates.md (Japanese) * New translations systemworkerclass.md (Japanese) * New translations privileges.md (Japanese) * New translations configuration.md (Japanese) * New translations systemworkerclass.md (Japanese) * New translations privileges.md (Japanese) * New translations systemworkerclass.md (Japanese) * New translations updates.md (Japanese) * New translations privileges.md (Japanese) * New translations updates.md (Portuguese, Brazilian) * New translations privileges.md (Portuguese, Brazilian) * New translations configuration.md (Portuguese, Brazilian) * New translations updates.md (Portuguese, Brazilian) * New translations privileges.md (Portuguese, Brazilian) * New translations collectionclass.md (Spanish) * New translations collectionclass.md (Spanish) * New translations entityclass.md (Spanish) * New translations sessionclass.md (Spanish) * New translations webserverclass.md (Spanish) * New translations clientserver.md (Spanish) * New translations formeditor.md (Spanish) * New translations properties_display.md (Spanish) * New translations privileges.md (Spanish) * New translations compiler.md (Spanish) * New translations vp-export-document.md (Spanish) * New translations getting-started.md (Spanish) * New translations authentication.md (Spanish) * New translations preemptiveweb.md (Spanish) * New translations sessions.md (Spanish) * New translations write-class-method.md (Spanish) * New translations client-server.md (Spanish) * New translations $singleton.md (Spanish) * New translations webarea_overview.md (Spanish) * New translations managing-formulas.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations select-log-file.md (Spanish) * New translations new-log-file.md (Spanish) * New translations openai.md (Spanish) * New translations openaichatcompletionslistparameters.md (Spanish) * New translations openaimessage.md (Spanish) * New translations openaimoderation.md (Spanish) * New translations openaimoderationresult.md (Spanish) * New translations openairesult.md (Spanish) * New translations compatible-openai.md (Spanish) * New translations call-chain.md (Spanish) * New translations command-name.md (Spanish) * New translations listbox-set-property.md (Spanish) * New translations orda-events.md (Spanish) * New translations create-deployment-license.md (Spanish) * New translations field-properties.md (Spanish) * New translations cryptokeyclass.md (Spanish) * New translations entityclass.md (Spanish) * New translations debuglogfiles.md (Spanish) * New translations field-properties.md (Spanish) * New translations overview.md (Spanish) * New translations formeditor.md (Spanish) * New translations properties_display.md (Spanish) * New translations orda-events.md (Spanish) * New translations compiler.md (Spanish) * New translations $singleton.md (Spanish) * New translations vp-copy-to-object.md (Spanish) * New translations vp-export-document.md (Spanish) * New translations vp-import-document.md (Spanish) * New translations vp-move-cells.md (Spanish) * New translations vp-set-workbook-options.md (Spanish) * New translations authentication.md (Spanish) * New translations sessions.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations wp-reset-attributes.md (Spanish) * New translations openai.md (Spanish) * New translations openaichatcompletionslistparameters.md (Spanish) * New translations openaimoderation.md (Spanish) * New translations openaimoderationresult.md (Spanish) * New translations openairesult.md (Spanish) * New translations write-class-method.md (Spanish) * New translations call-chain.md (Spanish) * New translations command-name.md (Spanish) * New translations create-deployment-license.md (Spanish) * New translations listbox-set-property.md (Spanish) * New translations new-log-file.md (Spanish) * New translations select-log-file.md (Spanish) * New translations trim.md (Spanish) * New translations string.md (Spanish) * New translations http-rules.md (Spanish) * New translations cryptokeyclass.md (Spanish) * New translations entityclass.md (Spanish) * New translations sessionclass.md (Spanish) * New translations webserverclass.md (Spanish) * New translations debuglogfiles.md (Spanish) * New translations field-properties.md (Spanish) * New translations formeditor.md (Spanish) * New translations properties_display.md (Spanish) * New translations write-class-method.md (Spanish) * New translations call-chain.md (Spanish) * New translations command-name.md (Spanish) * New translations create-deployment-license.md (Spanish) * New translations listbox-set-property.md (Spanish) * New translations new-log-file.md (Spanish) * New translations select-log-file.md (Spanish) * New translations string.md (Spanish) * New translations trim.md (Spanish) * New translations webarea_overview.md (Spanish) * New translations orda-events.md (Spanish) * New translations privileges.md (Spanish) * New translations compiler.md (Spanish) * New translations $singleton.md (Spanish) * New translations vp-copy-to-object.md (Spanish) * New translations vp-export-document.md (Spanish) * New translations vp-move-cells.md (Spanish) * New translations vp-set-workbook-options.md (Spanish) * New translations getting-started.md (Spanish) * New translations authentication.md (Spanish) * New translations http-rules.md (Spanish) * New translations preemptiveweb.md (Spanish) * New translations sessions.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations wp-reset-attributes.md (Spanish) * New translations managing-formulas.md (Spanish) * New translations openai.md (Spanish) * New translations openaichatcompletionslistparameters.md (Spanish) * New translations openaimessage.md (Spanish) * New translations openaimoderation.md (Spanish) * New translations openaimoderationresult.md (Spanish) * New translations openairesult.md (Spanish) * fixes * add precision for idle connection timeout * Update wa-get-url-history.md (#2990) JA fixing the Compatibility note witch was missing the "Current URL" in the translation * Update new-process.md (Changes of local process) (#2991) JA fixing changes regarding the removal or local process * Update new-process.md (Changes of local process into ver 21) (#2992) JA fixing changes regarding the removal or local process into version 21 * Update register-client.md (updating old information) (#2993) JA updating register client command so that includes latest information about the process and clients * Update register-client.md (updating old information into 21) (#2994) JA updating register client command so that includes latest information about the process and clients into version 21 * fix db param en FR * not DP AI integrated * enhanced saving example * orda events and table lock * Updated blob to print settings - removed old stuff * New Crowdin updates (#2995) * New translations updates.md (French) * New translations listbox_overview.md (French) * New translations listbox_overview.md (French) * New translations writeprointerface.md (French) * New translations license-info.md (French) * New translations listbox_overview.md (French) * New translations writeprointerface.md (French) * New translations license-info.md (French) * New translations listbox_overview.md (French) * New translations license-info.md (French) * New translations writeprointerface.md (French) * New translations updates.md (Spanish) * New translations listbox_overview.md (Spanish) * New translations quick-tour.md (Spanish) * New translations debugger.md (Spanish) * New translations clientserver.md (Spanish) * New translations formeditor.md (Spanish) * New translations listbox_overview.md (Spanish) * New translations entities.md (Spanish) * New translations privileges.md (Spanish) * New translations compiler.md (Spanish) * New translations vp-import-from-object.md (Spanish) * New translations sessions.md (Spanish) * New translations writeprointerface.md (Spanish) * New translations license-info.md (Spanish) * New translations webarea_overview.md (Spanish) * New translations managing-formulas.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations tcpeventclass.md (Spanish) * New translations new-log-file.md (Spanish) * New translations openaimessage.md (Spanish) * New translations asynchronous-call.md (Spanish) * New translations orda-events.md (Spanish) * New translations field-properties.md (Spanish) * New translations udpeventclass.md (Spanish) * New translations openaiembeddingsapi.md (Spanish) * New translations tcpeventclass.md (Spanish) * New translations udpeventclass.md (Spanish) * New translations debugger.md (Spanish) * New translations field-properties.md (Spanish) * New translations listbox_overview.md (Spanish) * New translations webarea_overview.md (Spanish) * New translations entities.md (Spanish) * New translations orda-events.md (Spanish) * New translations compiler.md (Spanish) * New translations vp-import-from-object.md (Spanish) * New translations vp-set-data-context.md (Spanish) * New translations vp-set-workbook-options.md (Spanish) * New translations configuring.md (Spanish) * New translations sessions.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations managing-formulas.md (Spanish) * New translations writeprointerface.md (Spanish) * New translations openaiembeddingsapi.md (Spanish) * New translations openaimessage.md (Spanish) * New translations asynchronous-call.md (Spanish) * New translations write-class-method.md (Spanish) * New translations command-name.md (Spanish) * New translations license-info.md (Spanish) * New translations new-log-file.md (Spanish) * New translations tcpeventclass.md (Spanish) * New translations udpeventclass.md (Spanish) * New translations quick-tour.md (Spanish) * New translations debugger.md (Spanish) * New translations clientserver.md (Spanish) * New translations field-properties.md (Spanish) * New translations formeditor.md (Spanish) * New translations listbox_overview.md (Spanish) * New translations write-class-method.md (Spanish) * New translations command-name.md (Spanish) * New translations license-info.md (Spanish) * New translations new-log-file.md (Spanish) * New translations webarea_overview.md (Spanish) * New translations entities.md (Spanish) * New translations orda-events.md (Spanish) * New translations ordaclasses.md (Spanish) * New translations privileges.md (Spanish) * New translations compiler.md (Spanish) * New translations vp-import-from-object.md (Spanish) * New translations vp-set-data-context.md (Spanish) * New translations vp-set-workbook-options.md (Spanish) * New translations configuring.md (Spanish) * New translations sessions.md (Spanish) * New translations wp-import-document.md (Spanish) * New translations managing-formulas.md (Spanish) * New translations writeprointerface.md (Spanish) * New translations openaiembeddingsapi.md (Spanish) * New translations openaimessage.md (Spanish) * New translations asynchronous-call.md (Spanish) * New translations updates.md (Japanese) * New translations listbox_overview.md (Japanese) * New translations listbox_overview.md (Japanese) * New translations writeprointerface.md (Japanese) * New translations license-info.md (Japanese) * New translations listbox_overview.md (Japanese) * New translations writeprointerface.md (Japanese) * New translations license-info.md (Japanese) * New translations listbox_overview.md (Japanese) * New translations license-info.md (Japanese) * New translations writeprointerface.md (Japanese) * New translations updates.md (Portuguese, Brazilian) * New translations listbox_overview.md (Portuguese, Brazilian) * New translations listbox_overview.md (Portuguese, Brazilian) * New translations writeprointerface.md (Portuguese, Brazilian) * New translations license-info.md (Portuguese, Brazilian) * New translations listbox_overview.md (Portuguese, Brazilian) * New translations writeprointerface.md (Portuguese, Brazilian) * New translations license-info.md (Portuguese, Brazilian) * New translations listbox_overview.md (Portuguese, Brazilian) * New translations license-info.md (Portuguese, Brazilian) * New translations writeprointerface.md (Portuguese, Brazilian) * Write Pro interface * more consistent release notes * exposed available to singletons * fix parameters vs variables confusion * ES Edit in blob to print settings and SET/Get database parameter (#2996) * Update new-process.md * Update new-process.md * Update register-client.md * Update register-client.md * Update register-client.md * Update 4d-write-pro-attributes.md * Update 4d-write-pro-attributes.md * Update 4d-write-pro-attributes.md * Update wp-new-style-sheet.md * Update wp-new-style-sheet.md * Update wp-new-style-sheet.md * Update get-database-parameter.md * Update set-database-parameter.md * Update set-database-parameter.md * Update set-database-parameter.md * Update get-database-parameter.md * Update get-database-parameter.md * Update blob-to-print-settings.md * Update blob-to-print-settings.md * Update blob-to-print-settings.md * New Crowdin updates (#2997) * New translations updates.md (French) * New translations classes.md (French) * New translations properties.md (French) * New translations updates.md (French) * New translations ordaclasses.md (French) * New translations writeprointerface.md (French) * New translations wp-set-attributes.md (French) * New translations wp-table-append-row.md (French) * New translations classes.md (French) * New translations properties.md (French) * New translations updates.md (French) * New translations ordaclasses.md (French) * New translations wp-set-attributes.md (French) * New translations wp-table-append-row.md (French) * New translations writeprointerface.md (French) * New translations classes.md (French) * New translations properties.md (French) * New translations updates.md (French) * New translations ordaclasses.md (French) * New translations wp-set-attributes.md (French) * New translations wp-table-append-row.md (French) * New translations writeprointerface.md (French) * New translations updates.md (Spanish) * New translations classes.md (Spanish) * New translations updates.md (Spanish) * New translations ordaclasses.md (Spanish) * New translations writeprointerface.md (Spanish) * New translations classes.md (Spanish) * New translations updates.md (Spanish) * New translations ordaclasses.md (Spanish) * New translations writeprointerface.md (Spanish) * New translations classes.md (Spanish) * New translations updates.md (Spanish) * New translations ordaclasses.md (Spanish) * New translations writeprointerface.md (Spanish) * New translations updates.md (Japanese) * New translations classes.md (Japanese) * New translations updates.md (Japanese) * New translations ordaclasses.md (Japanese) * New translations writeprointerface.md (Japanese) * New translations classes.md (Japanese) * New translations updates.md (Japanese) * New translations ordaclasses.md (Japanese) * New translations writeprointerface.md (Japanese) * New translations classes.md (Japanese) * New translations updates.md (Japanese) * New translations ordaclasses.md (Japanese) * New translations writeprointerface.md (Japanese) * New translations updates.md (Portuguese, Brazilian) * New translations classes.md (Portuguese, Brazilian) * New translations updates.md (Portuguese, Brazilian) * New translations ordaclasses.md (Portuguese, Brazilian) * New translations writeprointerface.md (Portuguese, Brazilian) * New translations classes.md (Portuguese, Brazilian) * New translations updates.md (Portuguese, Brazilian) * New translations ordaclasses.md (Portuguese, Brazilian) * New translations writeprointerface.md (Portuguese, Brazilian) * New translations classes.md (Portuguese, Brazilian) * New translations updates.md (Portuguese, Brazilian) * New translations ordaclasses.md (Portuguese, Brazilian) * New translations writeprointerface.md (Portuguese, Brazilian) * New translations updates.md (Japanese) * ViewPro: Fix capitalization of foreColor and add borderTop section * report fixes 4DVP * added link to blog post for code live checker * link to SpreadJS release * New Crowdin updates (#2998) * New translations parameters.md (French) * New translations parameters.md (French) * New translations classes.md (French) * New translations getting-started.md (French) * New translations parameters.md (French) * New translations updates.md (French) * New translations classes.md (French) * New translations getting-started.md (French) * New translations wp-get-attributes.md (French) * New translations parameters.md (French) * New translations classes.md (French) * New translations getting-started.md (French) * New translations wp-get-attributes.md (French) * New translations parameters.md (French) * New translations classes.md (French) * New translations getting-started.md (French) * New translations wp-get-attributes.md (French) * New translations parameters.md (Spanish) * New translations parameters.md (Spanish) * New translations classes.md (Spanish) * New translations getting-started.md (Spanish) * New translations parameters.md (Spanish) * New translations updates.md (Spanish) * New translations classes.md (Spanish) * New translations getting-started.md (Spanish) * New translations parameters.md (Spanish) * New translations classes.md (Spanish) * New translations getting-started.md (Spanish) * New translations parameters.md (Spanish) * New translations classes.md (Spanish) * New translations getting-started.md (Spanish) * New translations parameters.md (Japanese) * New translations parameters.md (Japanese) * New translations classes.md (Japanese) * New translations getting-started.md (Japanese) * New translations parameters.md (Japanese) * New translations updates.md (Japanese) * New translations dsmapping.md (Japanese) * New translations entities.md (Japanese) * New translations glossary.md (Japanese) * New translations classes.md (Japanese) * New translations getting-started.md (Japanese) * New translations license-info.md (Japanese) * New translations parameters.md (Japanese) * New translations dsmapping.md (Japanese) * New translations entities.md (Japanese) * New translations glossary.md (Japanese) * New translations classes.md (Japanese) * New translations getting-started.md (Japanese) * New translations license-info.md (Japanese) * New translations parameters.md (Japanese) * New translations license-info.md (Japanese) * New translations updates.md (Japanese) * New translations dsmapping.md (Japanese) * New translations entities.md (Japanese) * New translations glossary.md (Japanese) * New translations classes.md (Japanese) * New translations getting-started.md (Japanese) * New translations parameters.md (Portuguese, Brazilian) * New translations parameters.md (Portuguese, Brazilian) * New translations classes.md (Portuguese, Brazilian) * New translations getting-started.md (Portuguese, Brazilian) * New translations parameters.md (Portuguese, Brazilian) * New translations updates.md (Portuguese, Brazilian) * New translations classes.md (Portuguese, Brazilian) * New translations getting-started.md (Portuguese, Brazilian) * New translations parameters.md (Portuguese, Brazilian) * New translations classes.md (Portuguese, Brazilian) * New translations getting-started.md (Portuguese, Brazilian) * New translations parameters.md (Portuguese, Brazilian) * New translations classes.md (Portuguese, Brazilian) * New translations getting-started.md (Portuguese, Brazilian) * Update wa-get-url-history.md (#2999) JA adding missing compatibility information into v21 doc * Licence usage for 4D Server only * fixes * old note to remove --------- Co-authored-by: nobu teshima <[email protected]> Co-authored-by: sandritica <[email protected]> Co-authored-by: Eric Marchand <[email protected]>
1 parent 3b608cb commit 910aaa8

File tree

286 files changed

+2468
-1795
lines changed

Some content is hidden

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

286 files changed

+2468
-1795
lines changed

docs/Concepts/classes.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -768,13 +768,14 @@ A **singleton class** is a user class that only produces a single instance. For
768768

769769
### Singletons types
770770

771+
Singletons are useful to define values that need to be available from anywhere in an application, a session, or a process.
772+
771773
4D supports three types of singletons:
772774

773775
- a **process singleton** has a unique instance for the process in which it is instantiated,
774776
- a **shared singleton** has a unique instance for all processes on the machine.
775-
- a **session singleton** is a shared singleton but with a unique instance for all processes in the [session](../API/SessionClass.md). Session singletons are shared within an entire session but vary between sessions. In the context of a client-server or a web application, session singletons make it possible to create and use a different instance for each session, and therefore for each user.
777+
- a **session singleton** is a shared singleton but with a unique instance for all processes in the [session](../API/SessionClass.md). Session singletons are shared within an entire session but vary between sessions. In the context of a client-server or a web application, session singletons make it possible to create and use a different instance for each session, and therefore for each user. Session singletons are particularly appropriate with [Qodly applications](https://developer.4d.com/qodly/).
776778

777-
Singletons are useful to define values that need to be available from anywhere in an application, a session, or a process.
778779

779780
:::info
780781

@@ -817,7 +818,9 @@ The [`.isSingleton`](../API/ClassClass.md#issingleton) property of Class objects
817818
The [`.isSessionSingleton`](../API/ClassClass.md#issessionsingleton) property of Class objects allows to know if the class is a session singleton.
818819

819820

821+
### Exposed singleton functions
820822

823+
Shared and session singleton functions support the [`exposed` keyword](../ORDA/ordaClasses.md#exposed-vs-non-exposed-functions). An exposed singleton function can be directly called by REST requests. This feature is useful to design [Qodly pages calling 4D functions](https://developer.4d.com/qodly/4DQodlyPro/pageLoaders/events/bindingActionToEvents#class-functions).
821824

822825
### Examples
823826

docs/Concepts/parameters.md

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ title: Parameters
66

77
You'll often find that you need to pass data to your methods and functions. This is easily done with parameters.
88

9-
## Overview
9+
## Passing parameters
1010

1111
**Parameters** (or **arguments**) are pieces of data that a method or a class function needs in order to perform its task. The terms *parameter* and *argument* are used interchangeably throughout this manual. Parameters are also passed to built-in 4D commands. In this example, the string “Hello” is an argument to the `ALERT` built-in command:
1212

@@ -47,20 +47,19 @@ Any subroutine can return a value. Only one single output parameter can be decla
4747
Input and output values are [evaluated](#values-or-references) at the moment of the call and copied into or from local variables within the called class function or method. Variable parameters must be [declared](#declaring-parameters) in the called code.
4848

4949

50-
:::info Compatibility
51-
52-
The legacy declaration syntax, where parameters are automatically copied in sequentially numbered local variables $0, $1, etc. and declared using compiler directives such as `C_TEXT($1;$2)`, is **deprecated** as of 4D 20 R7.
53-
54-
:::
55-
56-
5750
## Declaring parameters
5851

59-
Inside called methods or class functions, parameter values are assigned to local variables. You declare parameters using a **parameter name** along with a **parameter type**, separated by colon.
52+
Inside called methods or class functions, you declare parameters using a **parameter name** along with a **parameter type**, separated by colon.
6053

6154
- For class functions, parameters are declared along with the function prototype, i.e. when using the `Function` or `Class constructor` keywords.
6255
- For methods (project methods, form object methods, database methods, and triggers), parameters are declared using the **`#DECLARE`** keyword at the beginning of the method code.
6356

57+
:::info Compatibility
58+
59+
The legacy declaration syntax, where parameters are automatically copied in sequentially numbered local variables $0, $1, etc. and declared using compiler directives such as `C_TEXT($1;$2)`, is **deprecated** as of 4D 20 R7.
60+
61+
:::
62+
6463
Examples:
6564

6665
```4d
@@ -109,6 +108,12 @@ $entitySelection:=ds.User.query("login=:1"; $user)
109108
// Check hash password...
110109
```
111110

111+
:::note
112+
113+
Do not confuse **parameter declarations** with [**variable declarations**](variables.md#declaring-variables). Using the `var` keyword with parameters will generate errors.
114+
115+
:::
116+
112117
### Returned value
113118

114119
You declare the return parameter of a function by adding an arrow (->) and the parameter definition after the input parameter(s) list. For example:

docs/Concepts/variables.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -259,8 +259,9 @@ System variables are used by [4D commands](../commands/command-index.md). Refer
259259
|---|---|---|
260260
|`OK`|Integer|Usually set to 1 after a command has displayed a dialog box and the user clicked the **OK** button, and 0 if they clicked **Cancel**. Some commands also modify the value of the `OK` system variable when a operation is successfully executed.
261261
|`Document`|Text|Contains the "long name" (full path+name) of the last file opened or created using commands such as [Open document](../commands-legacy/open-document.md) or [SELECT LOG FILE](../commands/select-log-file.md).|
262-
|`FldDelimit`, `RecDelimit`|Text|Contain the character codes that will be used respectively as a field separator (default is **Tab** (9)) and record separator (default is **carriage return** (13)) when importing or exporting text. To use a different separator, assign a new value to the system variable.|
263-
|`Error`, `Error method`, `Error line`, `Error formula`|Text, Longint|Used in an error-catching method installed by the [`ON ERR CALL`](../commands-legacy/on-err-call.md) command. See [Handling errors within the method](../Concepts/error-handling.md#handling-errors-within-the-method).|
262+
|`FldDelimit`, `RecDelimit`|Integer|Contain the character codes that will be used respectively as a field separator (default is **Tab** (9)) and record separator (default is **carriage return** (13)) when importing or exporting text. To use a different separator, assign a new value to the system variable.|
263+
|`Error`, `Error line`|Integer|Used in an error-catching method installed by the [`ON ERR CALL`](../commands-legacy/on-err-call.md) command. See [Handling errors within the method](../Concepts/error-handling.md#handling-errors-within-the-method).|
264+
|`Error method`, `Error formula`|Text|Used in an error-catching method installed by the [`ON ERR CALL`](../commands-legacy/on-err-call.md) command. See [Handling errors within the method](../Concepts/error-handling.md#handling-errors-within-the-method).|
264265
|`MouseDown`|Integer|Used in a method installed by the [`ON EVENT CALL`](../commands-legacy/on-event-call.md) command. Set to 1 when the mouse button is pushed, otherwise set to 0. |
265266
|`MouseX`, `MouseY`|Integer|Used in a method installed by the [`ON EVENT CALL`](../commands-legacy/on-event-call.md) command. <li>In a `MouseDown=1` event, `MouseX` and `MouseY` are respectively set to the vertical and horizontal coordinates of the click. Both values are expressed in pixels and use the local coordinate system of the window. </li><li>In case of a picture field or variable, `MouseX` and `MouseY` return the local coordinates of a mouse click in the [`On Clicked`](../Events/onClicked.md), [`On Double Clicked`](../Events/onDoubleClicked.md) and [`On Mouse Up`](../Events/onMouseUp.md) form events. Local coordinates of the mouse cursor are also returned in the [`On Mouse Enter`](../Events/onMouseEnter.md) and [`On Mouse Move`](../Events/onMouseMove.md) form events. For more information, see the [Mouse Coordinates in a picture](../FormEditor/pictures.md#mouse-coordinates-in-a-picture) section.</li>|
266267
|`KeyCode`|Integer|Used in a method installed by the [`ON EVENT CALL`](../commands-legacy/on-event-call.md) command. Set to the character code of the key that was just pressed. If the key is a function key, `KeyCode` is set to a special code.|

docs/Notes/updates.md

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,23 +9,13 @@ Read [**What’s new in 4D 21 R2**](https://blog.4d.com/en-whats-new-in-4d-21-r2
99

1010
#### Highlights
1111

12-
- [Code Live Checker](../code-editor/write-class-method.md#warnings-and-errors) has been enhanced to provide greater precision in error detection.
12+
- [Code Live Checker](../code-editor/write-class-method.md#warnings-and-errors) has been enhanced to provide greater precision in error detection (see [this blog post](https://blog.4d.com/better-error-handling-and-type-inference-for-4d-developers) for more information).
1313
- [**Fixed bug list**](https://bugs.4d.fr/fixedbugslist?version=21_R2): list of all bugs that have been fixed in 4D 21 R2.
1414

1515

1616
#### Behavior changes
1717

1818

19-
## 4D 21.x LTS
20-
21-
See [**Release Notes for 4D 21.x LTS**](../../21/Notes/updates).
22-
23-
24-
## 4D 20.x LTS
25-
26-
27-
See [**Release Notes for 4D 20.x LTS**](../../20/Notes/updates).
28-
2919

3020

3121
## Library table

docs/ORDA/orda-events.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ You cannot directly trigger event function execution. Events are called automati
2929

3030
:::info Compatibility note
3131

32-
ORDA entity events in the datastore are equivalent to triggers in the 4D database. However, actions triggered at the 4D database level using the 4D classic language commands or standard actions do not trigger ORDA events.
32+
ORDA entity events in the datastore are equivalent to triggers in the 4D database. However, actions triggered at the 4D database level using the 4D classic language commands or standard actions do not trigger ORDA events. Note also that, unlike triggers, ORDA entity events do not lock the entire underlying table of a dataclass while saving or dropping entities. Several events can run in parallel as long as they involve distinct entities (i.e. records).
3333

3434
:::
3535

@@ -453,7 +453,9 @@ If (This.userManualPath#"")
453453
// The user manual document file is created on the disk
454454
// This may fail if no more space is available
455455
Try
456-
$fileCreated:=$userManualFile.create()
456+
// The file content has been generated and stored in a map in Storage.docMap previously
457+
$docInfo:=Storage.docMap.query("name = :1"; This.name).first()
458+
$userManualFile.setContent($docInfo.content)
457459
Catch
458460
// No more room on disk for example
459461
$result:={/
@@ -467,6 +469,11 @@ return $result
467469
468470
```
469471

472+
:::note
473+
474+
The content of the file is generated outside the `saving` event because it can be time consuming.
475+
476+
:::
470477

471478

472479
### `Function event afterSave`

docs/ORDA/ordaClasses.md

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -972,25 +972,46 @@ $arch.save() //courseName and name are "Archaeology II"
972972

973973
## Exposed vs non-exposed functions
974974

975-
For security reasons, all of your data model class functions and alias attributes are **not exposed** (i.e., private) by default to remote requests.
975+
For security reasons, all of your data model class functions, including [computed attributes](#computed-attributes-1) and [alias attributes](#alias-attributes-1), as well as [shared singleton functions](../Concepts/classes.md#shared-singleton) are **not exposed** (i.e., private) by default to **remote requests**.
976976

977-
Remote requests include:
977+
Remote requests are:
978978

979979
- Requests sent by remote 4D applications connected through `Open datastore`
980-
- REST requests
980+
- REST requests, including requests from [Qodly pages](https://developer.4d.com/qodly/)
981981

982982
> Regular 4D client/server requests are not impacted. Data model class functions are always available in this architecture.
983983
984984
A function that is not exposed is not available on remote applications and cannot be called on any object instance from a REST request. If a remote application tries to access a non-exposed function, the "-10729 - Unknown member method" error is returned.
985985

986-
To allow a data model class function to be called by a remote request, you must explicitly declare it using the `exposed` keyword. The formal syntax is:
986+
To allow a function or an attribute to be called by a remote request, you must explicitly declare it using the `exposed` keyword. The formal syntax is:
987987

988988
```4d
989989
// declare an exposed function
990990
exposed Function <functionName>
991991
```
992992

993-
> The `exposed` keyword can only be used with Data model class functions. If used with a [regular user class](Concepts/classes.md) function, it is ignored and an error is returned by the compiler.
993+
```4d
994+
// declare an exposed alias
995+
exposed Alias <attributeName> <targetPath>
996+
```
997+
998+
```4d
999+
// declare an exposed computed attribute
1000+
exposed Function get <attributeName>
1001+
```
1002+
1003+
```4d
1004+
// declare a shared singleton function
1005+
shared singleton Class constructor()
1006+
exposed Function <functionName>
1007+
```
1008+
1009+
1010+
:::note
1011+
1012+
The `exposed` keyword can only be used with the objects decribed above. If used with a [regular user class](Concepts/classes.md) function, it is ignored and an error is returned by the compiler.
1013+
1014+
:::
9941015

9951016
### Example
9961017

docs/ViewPro/classes.md

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -151,12 +151,12 @@ The `.useFooterDropDownList` property <!-- REF #TableOptions.useFooterDropDownLi
151151
The `.backColor` property is the <!-- REF #TableStyle.backColor.Summary -->[background color](configuring.md#background--foreground) of the table<!-- END REF -->.
152152

153153

154-
### .forecolor
154+
### .foreColor
155155

156-
<!-- REF #TableStyle.forecolor.Syntax -->
157-
**.forecolor** : Text<!-- END REF -->
156+
<!-- REF #TableStyle.foreColor.Syntax -->
157+
**.foreColor** : Text<!-- END REF -->
158158

159-
The `.forecolor` property is the <!-- REF #TableStyle.forecolor.Summary -->[foreground color](configuring.md#background--foreground) of the table<!-- END REF -->.
159+
The `.foreColor` property is the <!-- REF #TableStyle.foreColor.Summary -->[foreground color](configuring.md#background--foreground) of the table<!-- END REF -->.
160160

161161

162162

@@ -200,7 +200,12 @@ The `.borderRight` property is the <!-- REF #TableStyle.borderRight.Summary -->r
200200

201201
The `.borderBottom` property is the <!-- REF #TableStyle.borderBottom.Summary -->bottom border line of the table <!-- END REF -->.
202202

203+
### .borderTop
203204

205+
<!-- REF #TableStyle.borderTop.Syntax -->
206+
**.borderTop** : [cs.ViewPro.LineBorder](#lineborder)<!-- END REF -->
207+
208+
The `.borderTop` property is the <!-- REF #TableStyle.borderTop.Summary -->top border line of the table <!-- END REF -->.
204209

205210

206211
### .borderHorizontal

docs/ViewPro/getting-started.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ title: Getting Started
1111

1212
A spreadsheet is an application containing a grid of cells into which you can enter information, execute calculations, or display pictures. 4D View Pro is powered by the [SpreadJS spreadsheet solution](https://developer.mescius.com/spreadjs) integrated in 4D.
1313

14+
:::note
15+
16+
Go to the [Library table](../Notes/updates.md#library-table) to know the SpreadJS version integrated in your 4D release.
17+
18+
:::
19+
1420
Embedding 4D View Pro areas in your forms allows you to import and export spreadsheets documents using the 4D View Pro commands.
1521

1622

docs/WritePro/writeprointerface.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,15 @@ title: 4D Write Pro Interface
44
slug: /WritePro/write-pro-interface
55
---
66

7-
4D WritePro Interface offers a set of palettes, which allow end users to easily customize a 4D Write Pro document.
7+
4D Write Pro Interface offers a set of palettes, which allow end users to easily customize a 4D Write Pro document.
88

99
A 4D developer can easily implement these palettes in their application. Thus, end users can manage all 4D Write Pro properties, such as fonts, text alignment, bookmarks, table layout, and frames.
1010

11-
The main [4D Write Pro Interface documentation](https://doc.4d.com/4Dv20/4D/20/Entry-areas.300-6263967.en.html) can be found in the *4D Design Reference manual*.
11+
## Installation & documentation
1212

13-
You will find below:
13+
4D Write Pro Interface is a **4D component** that needs to be [installed in your project](../Project/components.md#overview). 4D Write Pro Interface source files are [provided on Github](https://github.com/4d/4D-WritePro-Interface).
14+
15+
The main [4D Write Pro Interface documentation](https://doc.4d.com/4Dv20/4D/20/Entry-areas.300-6263967.en.html) can be found in the *4D Design Reference manual*. You will find below:
1416

1517
- the Table Wizard configuration documentation,
1618
- the integrated A.I. documentation.
@@ -314,7 +316,7 @@ The 4D Write Pro interface uses OpenAI, for which you need to provide your own k
314316

315317
:::
316318

317-
### Limitations (Developer Preview)
319+
### Limitations
318320

319321
In the current implementation, the feature has the following limitations:
320322

0 commit comments

Comments
 (0)