diff --git a/docs/API/SMTPTransporterClass.md b/docs/API/SMTPTransporterClass.md
index 9759864254f3c0..a0ff531d193e15 100644
--- a/docs/API/SMTPTransporterClass.md
+++ b/docs/API/SMTPTransporterClass.md
@@ -159,23 +159,6 @@ The `.certificatePassword` property contains
-
-
-
-## .send()
-
-History
-
-|Release|Changes|
-|---|---|
-|17 R5|Support of mime contents|
-|17 R4|Added|
-
-
-
-
-
diff --git a/docs/Admin/data-collect.md b/docs/Admin/data-collect.md
index b917d5d5d8853e..da07aa038a5476 100644
--- a/docs/Admin/data-collect.md
+++ b/docs/Admin/data-collect.md
@@ -39,10 +39,12 @@ Some data is also collected at regular intervals.
|cacheReadCount|Object|Number of reads in the cache |
|classUsage|Object|Number of instances of certain language classes|
|connectionSystems|Collection|Client OS without the build number (in parenthesis) and number of clients using it|
+|databases[].backupSettings|Object|Current backup settings values|
|databases[].cacheSize|Number|Cache size in bytes|
|databases[].compatibilitySettings|Object|Enabled Compatibility settings|
|databases[].externalDatastoreOpened|Number|Number of calls to `Open datastore`|
|databases[].fluentUI|Boolean|True if Use Fluent UI on Windows setting is checked|
+|databases[].flushCacheInterval|Number|Defined time period between each automatic saving of the data cache|
|databases[].id|Number|Database ID|
|databases[].internalDatastoreOpened|Number|Number of times the datastore is opened by an external server|
|databases[].maxConcurrent4DClients|Number|Maximum number of simultaneous 4D Client sessions (using a 4D Client license) over the collection interval |
@@ -54,6 +56,7 @@ Some data is also collected at regular intervals.
|databases[].numberOfKeepRecordSyncInfo|Number|Number of tables with the "Enable Replication" option checked|
|databases[].numberOfRecordsMax|Number|Total number of records|
|databases[].numberOfTables|Number|Number of tables|
+|databases[].numberOfUncaughtExecutionErrors|Number|Number of times an execution error is displayed as an alert|
|databases[].qodly.webforms|Number|Number of Qodly webforms|
|databases[].remoteDebugger4DRemoteAttachments|Number|Number of attachments to the remote debugger from a remote 4D|
|databases[].remoteDebuggerQodlyAttachments|Number|Number of attachments to the remote debugger from Qodly|
@@ -94,6 +97,7 @@ Some data is also collected at regular intervals.
|isEncrypted|Boolean|True if the data file is encrypted|
|isEngined|Boolean|True if the application is merged with 4D Volume Desktop|
|isProjectMode|Boolean|True if the application is a project|
+|isShadowCopyActivated|Boolean|True if the Volume Shadow Copy feature is enabled (Windows only|
|LDAPLogin|Number|Number of calls to `LDAP LOGIN`|
|license.sffPrimaryKey|Number|Server master product number|
|machine.CPU|Text|Name, type, and speed of the processor|
@@ -104,6 +108,7 @@ Some data is also collected at regular intervals.
|maximumUsedPhysicalMemory|Number|Maximum use of physical memory|
|maximumUsedVirtualMemory|Number|Maximum use of virtual memory|
|mobile|Collection|Information on mobile sessions|
+|numberOfCrashes|Number|Number of times 4D has crashed|
|numberOfWebServices|Number|Number of methods published as Web Services|
|ODBCLogin|Number|Number of calls to `SQL LOGIN` using ODBC|
|phpCall|Number|Number of calls to `PHP execute` |
diff --git a/docs/Extensions/develop-components.md b/docs/Extensions/develop-components.md
index d4fe0bc7c7b855..587072106a1038 100644
--- a/docs/Extensions/develop-components.md
+++ b/docs/Extensions/develop-components.md
@@ -18,7 +18,7 @@ You can develop 4D components for your own needs and keep them private. You can
:::note
-You can [create a component directly from the host](#creating-components) project without needing to go through a separate matrix project
+You can [create a component directly from the host](#creating-components) project without needing to go through a separate matrix project.
:::
@@ -35,13 +35,13 @@ Creating and installing 4D components is carried out directly from 4D:
:::note
-Interpreted component code can be [edited directly from the host project](#editing-components) if the context is supported.
+Interpreted component code can be [edited](#editing-components) and [compiled](../Project/compiler.md#compile-components) directly from the host project if the context is supported.
:::
## Creating and editing components from the host
-In interpreted mode, the 4D IDE allows you to create and edit components directly from the host project. It facilitates component development and tuning in the actual context of a host project without having to leave or restart it.
+In interpreted mode, the 4D IDE allows you to create, edit, and compile components directly from the host project. It facilitates component development and tuning in the actual context of a host project without having to leave or restart it.
### Creating components
@@ -55,9 +55,10 @@ This action opens a folder selection dialog where you choose where [the componen
* If you decide to store the component **next to the project package**, 4D adds it to the [`dependencies.json`](../Project/components.md#dependenciesjson) file.
* If you decide to store the component **elsewhere**, 4D adds it to the [`dependencies.json`](../Project/components.md#dependenciesjson) file and its path is added to the [`environment4d.json`](../Project/components.md#environment4djson) file, using either a [relative or an absolute path](../Project/components.md#relative-paths-vs-absolute-paths). A relative path is used if the component is located within no more than two levels above as the `environment4d.json` file, or in its subfolders. Otherwise, an absolute path is used.
-:::note
+:::note Notes
-You cannot store a component **in the project package** but **outside the Components folder**.
+- You cannot store a component **in the project package** but **outside the Components folder**.
+- When a component is created from the host, it is assigned a [default namespace](#default-namespace).
:::
@@ -80,7 +81,7 @@ In this context, you can open, edit, and save your component code in the Code ed
[Exposed component classes](#sharing-of-classes) and [shared methods](#sharing-of-project-methods) of your component can be edited from the **Component Methods** tab of the Explorer.
-A specific icon indicates that the component contains shared code):
+A specific icon indicates that the component contains shared code:

Select **Edit...** to open your component code in the Code editor. You can edit and save it.
@@ -116,6 +117,11 @@ Standard 4D IDE features are available for the component. You can execute the fo
- run methods,
- restore from trash or empty trash.
+### Compiling components
+
+You can compile a component [directly from the host project](../Project/compiler.md#compile-components) without having to open it separately, provided it is compliant with the [requirements](../Project/compiler.md#requirements).
+
+
### Search and replace
@@ -206,7 +212,7 @@ By default, component classes cannot be called from the 4D Code Editor of the ho
### Declaring the component namespace
-To allow classes of your component to be exposed in the host projects and their loaded components, enter a value in the [**Component namespace in the class store** option in the General page](../settings/general.md#component-namespace-in-the-class-store) of the matrix project Settings. By default, the area is empty: component classes are not available outside of the component context.
+To allow classes of your component to be exposed in the host projects and their loaded components, enter a value in the [**Component namespace in the class store** option in the General page](../settings/general.md#component-namespace-in-the-class-store) of the matrix project Settings. By default, the area is empty (except when the component is [created from the host](#default-namespace)): component classes are not available outside of the component context.

@@ -237,6 +243,15 @@ Of course, it is recommended to use a distinguished name to avoid any conflict.
A component's ORDA classes are not available in its host project. For example, if there is a dataclass called Employees in your component, you will not be able to use a "cs.Mycomponent.Employee" class in the host project.
+#### Default namespace
+
+When a new component is [created from the host](#creating-components), a default namespace is automatically assigned to the component.
+
+The default namespace is the component's name, without characters that do not comply with [property naming rules](../Concepts/identifiers.md#object-properties), if any. For example, for a component named "My Component-2", the default namespace will be "MyComponent2".
+
+
+
+
### Hidden classes
Just like in any project, you can create hidden classes and functions in the component by prefixing names with an underscore ("_"). When a [component namespace is defined](#declaring-the-component-namespace), hidden classes and functions of the component will not appear as suggestions when using code completion.
@@ -250,6 +265,8 @@ $rect:=cs.eGeometry._Rectangle.new(10;20)
> Non-hidden functions inside a hidden class appear as suggestions when you use code completion with a class that [inherits](../Concepts/classes.md#inheritance) from it. For example, if a component has a `Teacher` class that inherits from a `_Person` class, code completion for `Teacher` suggests non-hidden functions from `_Person`.
+
+
## Code completion for compiled components
To make your component easier to use for developers, you can check the [**Generate syntax file for code completion when compiled** option in the General page](../settings/general.md#component-namespace-in-the-class-store) of the matrix project Settings.
diff --git a/docs/Notes/updates.md b/docs/Notes/updates.md
index 7a558454b21bf3..4794856b40c058 100644
--- a/docs/Notes/updates.md
+++ b/docs/Notes/updates.md
@@ -11,6 +11,7 @@ Read [**What’s new in 4D 21 R5**](https://blog.4d.com/whats-new-in-4d-21-r5/),
#### Highlights
- Support of S/MIME email signing through new [`4D.SMTPTransporter`](../API/SMTPTransporterClass.md) class properties: [`.certificate`](../API/SMTPTransporterClass.md#certificate) or [`.certificateName`](../API/SMTPTransporterClass.md#certificatename) (certificate providing), and [`.certificatePassword`](../API/SMTPTransporterClass.md#certificatepassword).
+- You can now [compile a component directly from the host](../Project/compiler.md#compile-components).
- Support of list forms in [**fluent UI** rendering](../FormEditor/forms.md#fluent-ui-rendering) on Windows.
- Direct access to the [4D Corner platform](https://corner.4d.com/) from the [Dependency manager](../Project/components.md#using-4d-corner).
- [**Fixed bug list**](https://bugs.4d.fr/fixedbugslist?version=21_R5): list of all bugs that have been fixed in 4D 21 R5.
diff --git a/docs/Project/compiler.md b/docs/Project/compiler.md
index c3a8988fe39092..c115826c26e907 100644
--- a/docs/Project/compiler.md
+++ b/docs/Project/compiler.md
@@ -38,7 +38,70 @@ Use the **Previous Error** / **Next Error** commands of the **Method** menu to n
The number of errors found during your first compilations may be daunting, but do not let this put you off. You will soon discover that they often spring from the same source, i.e., non-compliance with certain project conventions. The compiler always provides a [precise diagnosis](#error-file) of the errors in order to help you correct them.
-> Compilation requires an appropriate license. Without this license, it is not possible to carry out a compilation (buttons are disabled). Nevertheless, it is still possible to check the syntax and generate Typing methods.
+:::note
+
+Compilation requires an [appropriate license](../Admin/licenses.md). Without this license, it is not possible to carry out a compilation (buttons are disabled). Nevertheless, it is still possible to check the syntax and generate Typing methods.
+
+:::
+
+### Compile components
+
+History
+
+|Release|Changes|
+|---|---|
+|21 R5|Added|
+
+
+
+While developing your application, you can compile the components used by the host project directly from the host project, without having to open them separately. When the host project contains one or more *eligible* components (see [Requirements](#requirements) below), an additional menu is displayed in the Compiler window. This menu lets you select which project(s) you want to compile:
+
+- the host project only (default)
+- the host project and all its eligible components
+- a single eligible component among the list of all eligible components.
+
+
+
+:::note
+
+You can open the Compiler window from the **Methods>Component Methods** section of the Explorer: right-click on an eligible component name and select **Compiler...** from the contextuel menu.
+
+:::
+
+A list of components being compiled is displayed in the Compiler window. If an error is detected in a component, its compilation is stopped but the process continues for other components.
+
+- Components with at least one error can be unfolded to display the list of errors and appear **in bold**.
+- Components with at least one warning can be unfolded to display the list of warnings.
+- Components wihout errors cannot be unfolded.
+
+
+
+
+#### Requirements
+
+To be eligible for compilation from the host project, a component must comply with the following requirements:
+
+- the component uses the [project architecture](../Project/architecture.md),
+- the component's [interpreted code](../Concepts/interpreted.md) is available and the component is not [running in compiled mode](#run-compiled),
+- the component uses [direct typing](#enabling-direct-typing) declarations.
+
+:::note
+
+The additional menu is not displayed if the project does not contain any eligible component.
+
+:::
+
+#### Compiler features & Settings
+
+All available features of the Compiler window are applied to the selected component(s): **Compile**, **Check syntax**, **Clear compiled code**.
+
+The [Settings](../settings/) cannot be edited when a component is selected (the button is dimmed).
+
+Each component's [settings](../settings/) are applied for the compilation, except the [error file and symbol file generation options](#compilation-options): settings of the host project override the component's options. When enabled, [error and warning file](#error-file) as well as [symbol file](#symbol-file) of each component are stored in the [**Logs** folder of the host project](../Project/architecture.md#logs), within a dedicated folder (the name of the folder is the component name).
+
+When you start a compilation or a syntax check, every processed project is listed in the compiler window. If errors or warnings are detected, they are displayed in hierarchical lists beneath the corresponding project. Projects that contain errors are displayed in **bold**:
+
+
## Run Compiled
diff --git a/docs/Project/components.md b/docs/Project/components.md
index abcb8a60c5ad49..d1938e7cd0cd99 100644
--- a/docs/Project/components.md
+++ b/docs/Project/components.md
@@ -5,7 +5,7 @@ title: Dependencies
-The 4D [project architecture](../Project/architecture.md) is modular. You can provide additional functionalities to your 4D projects by installing [**components**](Concepts/components.md) and [**plug-ins**](../Concepts/plug-ins.md). Components are made of 4D code, while plug-ins can be [built using any language](../Extensions/develop-plug-ins.md).
+The 4D [project architecture](../Project/architecture.md) is modular. You can provide additional functionalities to your 4D projects by installing [**components**](../Concepts/components.md) and [**plug-ins**](../Concepts/plug-ins.md). Components are made of 4D code, while plug-ins can be [built using any language](../Extensions/develop-plug-ins.md).
You can [develop](../Extensions/develop-components.md) and [build](../Desktop/building.md) your own 4D components, or download public components proposed by 4D or the 4D community on the [**4D Corner platform**](https://corner.4d.com/).
@@ -16,7 +16,7 @@ Once installed in your 4D environment, extensions are handled as **dependencies*
## Interpreted and compiled components
-Components can be interpreted or [compiled](../Desktop/building.md).
+Components can be interpreted or [compiled](./compiler.md#compile-components).
- A 4D project running in interpreted mode can use either interpreted or compiled components.
- A 4D project running in compiled mode cannot use interpreted components. In this case, only compiled components can be used.
diff --git a/docs/assets/en/Develop/editable-component.png b/docs/assets/en/Develop/editable-component.png
index ed546ea2c08ee6..08c7f2e16442ee 100644
Binary files a/docs/assets/en/Develop/editable-component.png and b/docs/assets/en/Develop/editable-component.png differ
diff --git a/docs/assets/en/Project/compile-component.png b/docs/assets/en/Project/compile-component.png
new file mode 100644
index 00000000000000..02684ee969a8be
Binary files /dev/null and b/docs/assets/en/Project/compile-component.png differ
diff --git a/docs/assets/en/Project/compile-components-errors.png b/docs/assets/en/Project/compile-components-errors.png
new file mode 100644
index 00000000000000..918456d9d59c43
Binary files /dev/null and b/docs/assets/en/Project/compile-components-errors.png differ
diff --git a/docs/language-legacy/String/split-string.md b/docs/language-legacy/String/split-string.md
index b5fe8ad9455bc1..ea06ce97980697 100644
--- a/docs/language-legacy/String/split-string.md
+++ b/docs/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ The *separator* parameter can be a multiple-character string:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/docs/settings/security.md b/docs/settings/security.md
index e069c52c8e0867..e49534030b8f0d 100644
--- a/docs/settings/security.md
+++ b/docs/settings/security.md
@@ -11,45 +11,67 @@ This page contains options related to data access and protection for your deskto
> These settings do not apply to project databases opened in single-user mode.
-- **Design and Runtime Explorer Access**: Gives the specified group the ability to enter the Design environment of the database and display the Runtime Explorer.
+#### Design and Runtime Explorer Access
- Note that:
- - Setting an access group in the Design environment also lets you deactivate the **Create table** option in the data import dialog box. For more information about this dialog box, refer to [Importing data from files](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
+Gives the specified group the ability to enter the Design environment of the database and display the Runtime Explorer.
- - The Designer and Administrator always have access to the Design environment and Runtime Explorer, even if they are not explicitly part of the specified access group.For more information about users and user groups, refer to the [Users and groups](../Users/handling_users_groups.md) chapter.
+Note that:
+- Setting an access group in the Design environment also lets you deactivate the **Create table** option in the data import dialog box. For more information about this dialog box, refer to [Importing data from files](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
-- **Default User**: When a Default User has been set, every user that opens the database or logs onto it has the same access privileges and restrictions defined for this Default User. It is no longer necessary to enter a user name. Moreover, if you have not associated a password with the Default User, the Password dialog box no longer appears and the database opens directly.
- This option simplifies access to the database while maintaining a complete data control system.
+- The Designer and Administrator always have access to the Design environment and Runtime Explorer, even if they are not explicitly part of the specified access group.For more information about users and user groups, refer to the [Users and groups](../Users/handling_users_groups.md) chapter.
- - If you have associated a password with the Default User, a dialog box appears when the database is opened and the users must enter a password.
- - If you haven't associated a password with the Default User, the User Identification dialog box will not appear.**Note:** You can "force" the display of the User Identification dialog box when the "Default User" mode is active, for instance in order to connect as Administrator or Designer. To do so, press the **Shift** key while opening the database or connecting to it.
+#### Default User
-- **Display User List in Password Dialog Box**: If this option is checked, users must choose their name from the list of users and enter their password in the User Identification dialog box. If it is not checked, users must enter both their name and password. For more information about the two versions of the password dialog box, see the section "Access system overview" in [Access system overview](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html).
+When a Default User has been set, every user that opens the database or logs onto it has the same access privileges and restrictions defined for this Default User. It is no longer necessary to enter a user name. Moreover, if you have not associated a password with the Default User, the Password dialog box no longer appears and the database opens directly.
- - **User List in Alphabetical Order** (only available if the previous option is checked): When this option is checked, the list of users in the password entry dialog box is sorted by alphabetical order.
+This option simplifies access to the database while maintaining a complete data control system.
-- **Users can change their password**: When this option is checked, a **Change** button is displayed in the User Identification dialog box. This button lets the user access a dialog box that can be used to change their password (for more information about this dialog box, refer to the "Modification of password by user" in [Ensuring system maintenance](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). If desired, you can hide the **Change** button so that users cannot modify their passwords. To do so, just uncheck this option.
+- If you have associated a password with the Default User, a dialog box appears when the database is opened and the users must enter a password.
+- If you haven't associated a password with the Default User, the User Identification dialog box will not appear.
+**Note:** You can "force" the display of the User Identification dialog box when the "Default User" mode is active, for instance in order to connect as Administrator or Designer. To do so, press the **Shift** key while opening the database or connecting to it.
+
+#### Display User List in Password Dialog Box
+
+If this option is checked, users must choose their name from the list of users and enter their password in the User Identification dialog box. If it is not checked, users must enter both their name and password. For more information about the two versions of the password dialog box, see the section "Access system overview" in [Access system overview](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html).
+
+#### User List in Alphabetical Order (only available if the previous option is checked)
+
+When this option is checked, the list of users in the password entry dialog box is sorted by alphabetical order.
+
+#### Users can change their password
+
+When this option is checked, a **Change** button is displayed in the User Identification dialog box. This button lets the user access a dialog box that can be used to change their password (for more information about this dialog box, refer to the "Modification of password by user" in [Ensuring system maintenance](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). If desired, you can hide the **Change** button so that users cannot modify their passwords. To do so, just uncheck this option.
## Options
-- **Filtering of commands and project methods in the formula editor and in the 4D View Pro and 4D Write Pro documents**:
- For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. You can completely or partially remove this filtering using the following options.
- - **Enabled for all** (default option): Access to commands, functions and project methods is restricted for all users, including the Designer and the Administrator.
- - **Disable for the Designer and the Administrator**: This option grants full access to 4D commands and to methods only for the Designer and Administrator. It can be used to set up an unlimited access mode to commands and methods while remaining in control of the operations carried out. During the development phase, this mode can be used to freely test all the formulas, reports, and so on. During operation, it can be used to set up secure solutions that allow access to commands and methods on a temporary basis. This consists in changing the user (via the [`CHANGE CURRENT USER`](../commands/change-current-user) command) before calling a dialog box or starting a printing process that requires full access to the commands, then returning to the original user when the specific operation is completed.
- **Note:** If full access has been enabled using the previous option, this option will have no effect.
- - **Disabled for all**: This option disables control within formulas. When this option is checked, users have access to all the 4D commands and plug-ins as well as all project methods (except for invisible ones).
- **Note:** This option takes priority over the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command. When it is checked, this command does nothing.
+#### Filtering of commands and project methods in the formula editor and in the 4D View Pro and 4D Write Pro documents
+
+For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. You can completely or partially remove this filtering using the following options.
+
+- **Enabled for all** (default option): Access to commands, functions and project methods is restricted for all users, including the Designer and the Administrator.
+
+- **Disable for the Designer and the Administrator**: This option grants full access to 4D commands and to methods only for the Designer and Administrator. It can be used to set up an unlimited access mode to commands and methods while remaining in control of the operations carried out. During the development phase, this mode can be used to freely test all the formulas, reports, and so on. During operation, it can be used to set up secure solutions that allow access to commands and methods on a temporary basis. This consists in changing the user (via the [`CHANGE CURRENT USER`](../commands/change-current-user) command) before calling a dialog box or starting a printing process that requires full access to the commands, then returning to the original user when the specific operation is completed.
+**Note:** If full access has been enabled using the previous option, this option will have no effect.
+
+- **Disabled for all**: This option disables control within formulas. When this option is checked, users have access to all the 4D commands and plug-ins as well as all project methods (except for invisible ones).
+**Note:** This option takes priority over the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command. When it is checked, this command does nothing.
+
+#### Enable User Settings
+
+You need to check this option to be able to display separated dialog boxes for user settings. When this option is checked, up to three dialog boxes are available: **Structure Settings**, **User Settings**, and **User Settings for Data File**. For more information, refer to [User settings](../settings/overview.md#user-settings).
+
+#### Execute "On Host Database Event" method of the components
+
+The [On Host Database Event database method](../commands/on-host-database-event-database-method) facilitates the initialization and backup phases for 4D components. For security reasons, you must explicitly authorize the execution of this method in each host database. To do this, you must check this option. By default, it is not checked.
-- **Enable User Settings**: You need to check this option to be able to display separated dialog boxes for user settings. When this option is checked, up to three dialog boxes are available: **Structure Settings**, **User Settings**, and **User Settings for Data File**. For more information, refer to [User settings](../settings/overview.md#user-settings).
+When this option is checked:
-- **Execute "On Host Database Event" method of the components**: The [On Host Database Event database method](../commands/on-host-database-event-database-method) facilitates the initialization and backup phases for 4D components. For security reasons, you must explicitly authorize the execution of this method in each host database. To do this, you must check this option. By default, it is not checked.
+* 4D components are loaded,
+* each [On Host Database Event database method](../commands/on-host-database-event-database-method) of the component (if any) is called by the host database,
+* the code of the method is executed.
- When this option is checked:
- * 4D components are loaded,
- * each [On Host Database Event database method](../commands/on-host-database-event-database-method) of the component (if any) is called by the host database,
- * the code of the method is executed.
+When it is not checked:
- When it is not checked:
- * 4D components are loaded but they have to manage their initialization and backup phases themselves.
- * the developer of the component has to publish the component methods that must be called by the host database during these phases (startup and shutdown)
- * the developer of the host database must call the appropriate methods of the component at the right time (must be covered in the component documentation).
+* 4D components are loaded but they have to manage their initialization and backup phases themselves.
+* the developer of the component has to publish the component methods that must be called by the host database during these phases (startup and shutdown)
+* the developer of the host database must call the appropriate methods of the component at the right time (must be covered in the component documentation).
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md b/i18n/es/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
index 735808b925147b..0b96e5f7c8b06c 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
@@ -155,21 +155,6 @@ La propiedad `.certificatePassword` contiene
-
-
-
-## .send()
-
-Historia
-
-| Lanzamiento | Modificaciones |
-| ----------- | -------------------------- |
-| 17 R5 | Soporte de contenidos Mime |
-| 17 R4 | Añadidos |
-
-
-
Para obtener información sobre los códigos de estado SMTP, por favor consulte [esta página](https://www.iana.org/assignments/smtp-enhanced-status-codes/smtp-enhanced-status-codes.xhtml).
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/Concepts/components.md b/i18n/es/docusaurus-plugin-content-docs/current/Concepts/components.md
index b71b42f2538a0f..3356433af1284f 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/Concepts/components.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/Concepts/components.md
@@ -9,7 +9,7 @@ Un componente 4D es un conjunto de código y de formularios 4D que representan u
La instalación y carga de componentes en sus proyectos 4D se manejan a través del [gestor de dependencias de 4D](../Project/components.md).
-Several components are [developed by 4D](../Extensions/overview.md#components-developed-by-4d), but a lot of 4D components are also proposed by the 4D community. Use the [4D Corner platform](https://corner.4d.com/) to get a detailed list of all available 4D components.
+Several components are [developed by 4D](../Extensions/overview.md#components-developed-by-4d), but a lot of 4D components are also proposed by the 4D community. Utilice la [plataforma 4D Corner](https://corner.4d.com/) para obtener una lista detallada de todos los componentes 4D disponibles.
Varios componentes son [desarrollados por 4D](../Extensions/overview.md#components-developed-by-4d), pero muchos componentes 4D de la comunidad 4D [se pueden encontrar en GitHub](https://github.com/topics/4d-component).
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/Extensions/develop-components.md b/i18n/es/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
index 3eb442e362f6ea..82e8ae856f776c 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
@@ -7,7 +7,7 @@ title: Componentes de desarrollo
Un componente 4D es un conjunto de funciones, métodos y formularios 4D que representan una o varias funcionalidades que pueden ser [instaladas y utilizadas en aplicaciones 4D](Concepts/components.md). Por ejemplo, puede desarrollar un componente 4D de correo electrónico que gestione todos los aspectos del envío, la recepción y el almacenamiento de correos electrónicos en aplicaciones 4D.
-Puede desarrollar componentes 4D para sus propias necesidades y mantenerlos en privado. You can also [propose them to 4D Corner](https://corner.4d.com/) and [share them with the 4D community](https://github.com/topics/4d-component).
+Puede desarrollar componentes 4D para sus propias necesidades y mantenerlos en privado. También puede [proponerlas a 4D Corner](https://corner.4d.com/) y [compartirlas con la comunidad 4D](https://github.com/topics/4d-component).
## Definiciones
@@ -17,7 +17,7 @@ Puede desarrollar componentes 4D para sus propias necesidades y mantenerlos en p
:::note
-Puede [crear un componente directamente desde el proyecto local](#creating-components) sin necesidad de pasar por un proyecto matriz independiente
+Puede [crear un componente directamente desde el proyecto local](#creating-components) sin necesidad de pasar por un proyecto matriz independiente.
:::
@@ -33,13 +33,13 @@ La creación e instalación de los componentes 4D se realiza directamente desde
:::note
-El código de un componente interpretado puede [editarse directamente desde el proyecto local](#editing-components) si el contexto es compatible.
+Interpreted component code can be [edited](#editing-components) and [compiled](../Project/compiler.md#compile-components) directly from the host project if the context is supported.
:::
## Creación y edición de componentes desde el host
-En modo interpretado, el IDE 4D le permite crear y editar componentes directamente desde el proyecto local. Facilita el desarrollo y el ajuste de componentes en el contexto real de un proyecto local sin tener que abandonarlo o reiniciarlo.
+En modo interpretado, el IDE 4D le permite crear, editar y compilar componentes directamente desde el proyecto principal. Facilita el desarrollo y el ajuste de componentes en el contexto real de un proyecto local sin tener que abandonarlo o reiniciarlo.
### Creación de componentes
@@ -54,9 +54,10 @@ Esta acción abre un cuadro de diálogo de selección de carpeta en el que se el
- Si decide almacenar el componente **junto al paquete del proyecto**, 4D lo añade al archivo [`dependencies.json`](../Project/components.md#dependenciesjson).
- Si decide almacenar el componente **en otro lugar**, 4D lo añade al archivo [`dependencies.json`](../Project/components.md#dependenciesjson) y su ruta se añade al archivo [`environment4d.json`](../Project/components.md#environment4djson), utilizando una [ruta relativa o absoluta](../Project/components.md#relative-paths-vs-absolute-paths). Se utiliza una ruta relativa si el componente se encuentra a no más de dos niveles por encima como el archivo `environment4d.json`, o en sus subcarpetas. En caso contrario, se utiliza una ruta absoluta.
-:::note
+:::note Notas
-No se puede almacenar un componente **en el paquete del proyecto** pero **fuera de la carpeta Components**.
+- No se puede almacenar un componente **en el paquete del proyecto** pero **fuera de la carpeta Components**.
+- Cuando se crea un componente desde el host, se le asigna un [espacio de nombres predeterminado](#default-namespace).
:::
@@ -79,7 +80,7 @@ En este contexto, puede abrir, editar y guardar el código de su componente en e
Las [clases expuestas del componente](#sharing-of-classes) y los [métodos compartidos](#sharing-of-project-methods) de su componente pueden editarse desde la pestaña **Métodos del componente** del Explorador.
-Un icono específico indica que el componente contiene código compartido):
+Un icono específico indica que el componente contiene código compartido:

Seleccione **Editar...** para abrir el código de su componente en el editor de código. Puede editarlo y guardarlo.
@@ -114,6 +115,10 @@ Las funcionalidades estándar del IDE 4D están disponibles para el componente.
- ejecutar métodos,
- restaurar desde la papelera o vaciar la papelera.
+### Compilación de componentes
+
+You can compile a component [directly from the host project](../Project/compiler.md#compile-components) without having to open it separately, provided it is compliant with the [requirements](../Project/compiler.md#requirements).
+
### Buscar y reemplazar
Puede utilizar las [**funciones de buscar y reemplazar**](../Project/search-replace.md) del proyecto anfitrión para buscar elementos dentro del código o de los formularios de sus componentes editables. El menú **Buscar en el proyecto** permite seleccionar uno o todos los componentes como objetivo de la búsqueda:
@@ -195,7 +200,7 @@ Por defecto, las clases de los componentes no pueden ser llamadas desde el edito
### Declaración del namespace
-Para permitir que las clases de su componente se expongan en los proyectos locales y sus componentes cargados, introduzca un valor en la opción [**namespace del componente en la class store** en la página General](../settings/general.md#component-namespace-in-the-class-store) de las Propiedades del proyecto matriz. Por defecto, el área está vacía: las clases de componentes no están disponibles fuera del contexto de los componentes.
+Para permitir que las clases de su componente se expongan en los proyectos locales y sus componentes cargados, introduzca un valor en la opción [**namespace del componente en la class store** en la página General](../settings/general.md#component-namespace-in-the-class-store) de las Propiedades del proyecto matriz. By default, the area is empty (except when the component is [created from the host](#default-namespace)): component classes are not available outside of the component context.

@@ -226,6 +231,12 @@ Por supuesto, se recomienda utilizar un nombre distintivo para evitar cualquier
Las clases ORDA de un componente no están disponibles en el proyecto local. Por ejemplo, si hay una dataclass llamada Employees en su componente, no podrá utilizar una clase "cs.Mycomponent.Employee" en el proyecto local.
+#### Espacio de nombres por defecto
+
+Cuando se [crea un nuevo componente desde el host](#creating-components), se le asigna automáticamente un espacio de nombres por defecto.
+
+The default namespace is the component's name, without characters that do not comply with [property naming rules](../Concepts/identifiers.md#object-properties), if any. Por ejemplo, para un componente llamado "My Component-2", el espacio de nombres por defecto será "MyComponent2".
+
### Clases ocultas
Como en todo proyecto, puede crear clases y funciones ocultas en el componente anteponiendo a los nombres un guión bajo ("_"). Cuando se define un [namespace de componente](#declaring-the-component-namespace), las clases y funciones ocultas del componente no aparecerán como sugerencias al utilizar completar el código.
@@ -538,5 +549,5 @@ Para proteger eficazmente el código de un componente, basta con [compilar y gen
Lo animamos a que apoye a la comunidad de desarrolladores 4D compartiendo sus componentes, preferiblemente en la plataforma [GitHub](https://github.com/topics/4d-component). Recomendamos que utilice el tema **`4d-component`** para ser referenciado correctamente.
-Use the [4D Corner platform](https://corner.4d.com/) to browse among existing components, and to register your own 4D components.
+Utilice la [plataforma 4D Corner](https://corner.4d.com/) para navegar entre los componentes existentes y registrar sus propios componentes 4D.
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/Extensions/overview.md b/i18n/es/docusaurus-plugin-content-docs/current/Extensions/overview.md
index c35d462d92a5d9..3e0ad463f6f073 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/Extensions/overview.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/Extensions/overview.md
@@ -11,12 +11,12 @@ La [arquitectura del proyecto] 4D (../Project/architecture.md) es abierta y pued
- Los [**comandos SQL**](../commands/theme/SQL) permiten conectar y utilizar diversas fuentes de datos SQL.
- El [**cliente HTTP integrado**](../API/HTTPRequestClass.md) puede solicitar cualquier servidor HTTP y procesar datos.
- Las [**Áreas Web**](../FormObjects/webArea_overview.md) pueden dar acceso a páginas web o a diversos contenidos HTML dentro de sus formularios.
-- [**Componentes**](Concepts/components.md). Los componentes están hechos de código 4D. 4D le propone un conjunto de componentes utilitarios (ver más abajo) que puede instalar y utilizar en función de sus necesidades. También puedes [desarrollar sus propios componentes 4D](develop-components.md), o utilizar componentes de terceros. Many developers from the 4D community have shared 4D components. Browse the [**4D Corner platform**](https://corner.4d.com/) to get a comprehensive list of published components.
+- [**Componentes**](Concepts/components.md). Los componentes están hechos de código 4D. 4D le propone un conjunto de componentes utilitarios (ver más abajo) que puede instalar y utilizar en función de sus necesidades. También puedes [desarrollar sus propios componentes 4D](develop-components.md), o utilizar componentes de terceros. Muchos desarrolladores de la comunidad 4D han compartido componentes 4D. Navegue por la [**plataforma 4D Corner**](https://corner.4d.com/) para obtener una lista completa de componentes publicados.
- [**Plug-ins**](../Concepts/plug-ins.md). Los plug-ins pueden construirse utilizando cualquier lenguaje. Los plugins hacen cosas que 4D no hace de forma nativa (por ejemplo, una tecnología de plataforma específica), o que serían muy difíciles de escribir sólo con 4D. Como se describe en [esta página](develop-plug-ins.md), puede desarrollar sus propios plug-ins. Muchas funcionalidades están cubiertas por los plug-ins 4D existentes. Navegue por Github para tener una lista de plugins 4D públicos reunidos con el tema [`4d-plugin`](https://github.com/topics/4d-plugin).
## Componentes desarrollados por 4D
-4D propone diferentes componentes a la comunidad 4D, cubriendo muchas necesidades de desarrollo. All 4D components can be found on the [**4D Corner platform**](https://corner.4d.com/).
+4D propone diferentes componentes a la comunidad 4D, cubriendo muchas necesidades de desarrollo. Todos los componentes de 4D se pueden encontrar en la [**plataforma 4D Corner**](https://corner.4d.com/).
Un subconjunto de estos componentes se muestra por defecto en el panel de Github del [Administrador de dependencias](../Project/components.md#adding-a-github-or-gitlab-dependency), incluyendo:
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/Notes/updates.md b/i18n/es/docusaurus-plugin-content-docs/current/Notes/updates.md
index 84b26a02c23355..c9ddc1fd39502e 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/Notes/updates.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/Notes/updates.md
@@ -10,8 +10,9 @@ Lea [**Las novedades en 4D 21 R5**](https://blog.4d.com/whats-new-in-4d-21-r5/),
#### Lo más destacado
- Soporte de la firma de correo electrónico de S/MIME a través de las nuevas propiedades de clase [`4D.SMTPTransporter`](../API/SMTPTransporterClass.md): [`.certificate`](../API/SMTPTransporterClass.md#certificate) o [`.certificateName`](../API/SMTPTransporterClass.md#certificatename) (suministro del certificado) y [`.certificatePassword`](../API/SMTPTransporterClass.md#certificatepassword).
+- Ahora puede [compilar un componente directamente desde el host](../Project/compiler.md#compile-components).
- Soporte de formularios lista en la [renderización **Fluent UI**](../FormEditor/forms.md#fluent-ui-rendering) en Windows.
-- Direct access to the [4D Corner platform](https://corner.4d.com/) from the [Dependency manager](../Project/components.md#using-4d-corner).
+- Acceso directo a la [plataforma 4D Corner](https://corner.4d.com/) desde el [gestor de dependencias](../Project/components.md#using-4d-corner).
- [**Lista de bugs corregidos**](https://bugs.4d.fr/fixedbugslist?version=21_R5): lista de todos los bugs que se han corregido en 4D 21 R5.
## 4D 21 R4
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/Project/compiler.md b/i18n/es/docusaurus-plugin-content-docs/current/Project/compiler.md
index c77077f485b46f..31ac2193607226 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/Project/compiler.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/Project/compiler.md
@@ -37,7 +37,67 @@ Utilice los comandos **Error anterior** / **Error siguiente** del menú **Métod
El número de errores encontrados durante las primeras compilaciones puede ser desalentador, pero no deje que esto lo desanime. Pronto descubrirá que a menudo proceden de la misma fuente, es decir, el incumplimiento de ciertas convenciones del proyecto. El compilador siempre ofrece un [diagnóstico preciso](#error-file) de los errores para ayudarle a corregirlos.
-> La compilación requiere una licencia apropiada. Sin esta licencia, no es posible llevar a cabo una compilación (los botones están desactivados). Sin embargo, aún es posible comprobar la sintaxis y generar métodos de digitación.
+:::note
+
+La compilación requiere una [licencia apropiada](../Admin/licenses.md). Sin esta licencia, no es posible llevar a cabo una compilación (los botones están desactivados). Sin embargo, aún es posible comprobar la sintaxis y generar métodos de digitación.
+
+:::
+
+### Compilar componentes
+
+Historia
+
+| Lanzamiento | Modificaciones |
+| ----------- | -------------- |
+| 21 R5 | Añadidos |
+
+
+
+While developing your application, you can compile the components used by the host project directly from the host project, without having to open them separately. When the host project contains one or more *eligible* components (see [Requirements](#requirements) below), an additional menu is displayed in the Compiler window. Este menú le permite seleccionar el/los proyecto(s) a compilar:
+
+- solo el proyecto anfitrión (por defecto)
+- el proyecto anfitrión y todos sus componentes elegibles
+- un único componente elegible de la lista de todos los componentes elegibles.
+
+
+
+:::note
+
+Puede abrir la ventana Compilador desde la sección **Métodos>Métodos de componentes** del Explorador: haga clic derecho en el nombre de un componente elegible y seleccione **Compilador...** en el menú contextual.
+
+:::
+
+En la ventana del compilador se muestra una lista de componentes que se están compilando. Si se detecta un error en un componente, se detiene su compilación, pero el proceso continúa con los demás componentes.
+
+- Los componentes que contengan al menos un error se pueden desplegar para mostrar la lista de errores y aparecen **en negrita**.
+- Los componentes que tengan al menos una advertencia se pueden desplegar para mostrar la lista de advertencias.
+- Los componentes sin errores no se pueden desplegar.
+
+#### Requisitos
+
+Para que un componente pueda ser compilado desde el proyecto principal, debe cumplir los siguientes requisitos:
+
+- el componente utiliza la [arquitectura del proyecto](../Project/architecture.md),
+- el [código interpretado](../Concepts/interpreted.md) del componente está disponible y el componente no se está [ejecutando en modo compilado](#run-compiled),
+- el componente utiliza declaraciones de [tipado directo](#enabling-direct-typing).
+
+:::note
+
+El menú adicional no se muestra si el proyecto no contiene ningún componente elegible.
+
+:::
+
+#### Propiedades y ajustes del compilador
+
+Todas las funcionalidades disponibles de la ventana del compilador se aplican a los componentes seleccionados: **Compilar**, **Verificar sintaxis**, **Borrar código compilado**.
+
+Los [Parámetros](../settings/) no se pueden editar cuando hay un componente seleccionado (el botón aparece atenuado).
+
+Los [parámetros](../settings/) de cada componente se aplican durante la compilación, salvo las [opciones de generación de archivos de errores y de símbolos](#compilation-options): los ajustes del proyecto principal prevalecen sobre las opciones del componente. Cuando está activa esta opción, el [archivo de errores y advertencias](#error-file) y el [archivo de símbolos](#symbol-file) de cada componente se almacenan en la [carpeta **Logs** del proyecto principal](../Project/architecture.md#logs), en una carpeta específica (el nombre de la carpeta es el nombre del componente).
+
+Cuando inicia una compilación o una verificación de sintaxis, cada proyecto procesado se muestra en la ventana del compilador. Si se detectan errores o advertencias, estos se muestran en listas jerárquicas debajo del proyecto correspondiente. Los proyectos que contienen errores aparecen en **negrita**:
+
+
## Ejecutar la compilación
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/Project/components.md b/i18n/es/docusaurus-plugin-content-docs/current/Project/components.md
index 25acf1c87cd2a7..622099fc8de202 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/Project/components.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/Project/components.md
@@ -3,15 +3,15 @@ id: components
title: Dependencias
---
-[La arquitectura de los proyectos](../Project/architecture.md) 4D es modular. Puede ofrecer funcionalidades adicionales a sus proyectos 4D instalando [**componentes**](Concepts/components.md) y [**plug-ins**](../Concepts/plug-ins.md). Los componentes están hechos de código 4D, mientras que los plug-ins pueden [construirse utilizando cualquier lenguaje](../Extensions/develop-plug-ins.md).
+[La arquitectura de los proyectos](../Project/architecture.md) 4D es modular. Puede ofrecer funcionalidades adicionales a sus proyectos 4D instalando [**componentes**](../Concepts/components.md) y [**plug-ins**](../Concepts/plug-ins.md). Los componentes están hechos de código 4D, mientras que los plug-ins pueden [construirse utilizando cualquier lenguaje](../Extensions/develop-plug-ins.md).
-You can [develop](../Extensions/develop-components.md) and [build](../Desktop/building.md) your own 4D components, or download public components proposed by 4D or the 4D community on the [**4D Corner platform**](https://corner.4d.com/).
+Puede [desarrollar](../Extensions/develop-components.md) y [crear](../Desktop/building.md) sus propios componentes 4D, o descargar componentes públicos propuestos por 4D o la comunidad 4D en la [**plataforma 4D Corner**](https://corner.4d.com/).
Una vez instalados en su entorno 4D, las extensiones se manejan como **dependencias** con propiedades específicas.
## Componentes interpretados y compilados
-Los componentes pueden ser interpretados o [compilados](../Desktop/building.md).
+Los componentes pueden ser interpretados o [compilados](./compiler.md#compile-components).
- Un proyecto 4D que se ejecuta en modo interpretado puede utilizar componentes interpretados o compilados.
- Un proyecto 4D que se ejecuta en modo compilado no puede utilizar componentes interpretados. En este caso, sólo se pueden utilizar componentes compilados.
@@ -562,29 +562,29 @@ En el cuadro de diálogo "Editar la dependencia", edite el menú Regla de depend
Modificar el rango de versiones es útil, por ejemplo, si utiliza la función de actualización automática y desea bloquear una dependencia a un número de versión específico.
-### Using 4D Corner
+### Uso de 4D Corner
-The [**4D Corner platform**](https://corner.4d.com/) proposes a comprehensive list of ready-to-use 4D components, proposed from the 4D company or from the 4D community. You can browse or search the list to find any component meeting to your needs.
+The [**4D Corner platform**](https://corner.4d.com/) proposes a comprehensive list of ready-to-use 4D components, proposed from the 4D company or from the 4D community. Puede navegar o buscar en la lista para encontrar el componente que mejor se ajuste a sus necesidades.

-You can open the [4D Corner platform](https://corner.4d.com/) from the Dependency manager, either in the top of the [Add a dependency window](#adding-a-github-or-gitlab-dependency), or by selecting **Discover more components on 4D Corner...** from the menu at the bottom of the Dependency manager window:
+Puede abrir la [plataforma 4D Corner](https://corner.4d.com/) desde el administrador de dependencias, ya sea en la parte superior de la [ventana Agregar una dependencia](#adding-a-github-or-gitlab-dependency), o seleccionando **Descubra más componentes en 4D Corner...** en el menú de la parte inferior de la ventana del administrador de dependencias:
-
+
-To install a component from the 4D Corner platform:
+Para instalar un componente de la plataforma 4D Corner:
-1. Click on the "Copy link" button on the top right corner of the component tile:
+1. Haga clic en el botón "Copiar enlace" en la esquina superior derecha del título del componente:

-2. Open the Dependency manager and click on the **[+]** button.
+2. Abra el Gestor de dependencias y haga clic en el botón **[+]**.
-The dependency link is automatically added in the address area:
+El enlace de dependencia se añade automáticamente en el área de dirección:
-
+
-3. [Configure the dependency reference](#adding-a-github-or-gitlab-dependency) and click **Add**.
+3. [Configure la referencia de dependencia](#adding-a-github-or-gitlab-dependency) y haga clic en **Añadir**.
:::tip Entrada de blog relacionada
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png b/i18n/es/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png
new file mode 100644
index 00000000000000..02684ee969a8be
Binary files /dev/null and b/i18n/es/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png differ
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png b/i18n/es/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png
new file mode 100644
index 00000000000000..918456d9d59c43
Binary files /dev/null and b/i18n/es/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png differ
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md b/i18n/es/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
index c9ddd3f268c891..4644b330ed20d4 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ El parámetro *separador* puede ser una cadena de múltiples caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/server/service.md b/i18n/es/docusaurus-plugin-content-docs/current/server/service.md
index 7f3b8d6e8030c4..72ff0a0f0441a2 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/server/service.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/server/service.md
@@ -16,23 +16,23 @@ Esta operación le permite garantizar la disponibilidad de una aplicación 4D Se
:::
-To register a 4D Server application as a Service, select **Register Current Application as Service** in the [**File** menu](./menus.md#file) of 4D Server. The next time the machine is started, 4D Server will be launched automatically and the current project opened. Puede registrar cualquier número de proyectos. Cada proyecto solo se puede registrar una vez.
+To register a 4D Server application as a Service, select **Register Current Application as Service** in the [**File** menu](./menus.md#file) of 4D Server. La próxima vez que se inicie el equipo, 4D Server se ejecutará automáticamente y se abrirá el proyecto actual. Puede registrar cualquier número de proyectos. Cada proyecto solo se puede registrar una vez.
:::note
-Under Windows, this command may be grayed out when access to the service management functions is restricted. In this case, to be able to use this command, you must launch 4D Server with an administrator level (to do this, right click on the application icon and choose the **Run as administrator** command in the context menu).
+Sous Windows, cette commande peut apparaître grisée lorsque l'accès aux fonctions de gestion des services est restreint. En este caso, para poder utilizar este comando, debe iniciar 4D Server con privilegios de administrador (para ello, haga clic derecho en el icono de la aplicación y seleccione la opción Ejecutar como administrador en el menú contextual).
:::
:::warning
-When registered as service, by default 4D Server is configured to use the "Local System Account". You must change this account and select a valid user account having the access rights and settings required to use your application. In particular, if you want to be able to print, you must open the session with a user account which has default print settings. The issue is similar if you want to access network volumes. To change the account, go to **Control Panel > System and Security > Administrative Tools > Services**. In the **Services** list, right-click on **4D Server**, choose the **Properties** option, then go to the **Log On** tab and specify the account under which the server must run (setting used at next startup).
+Por defecto, cuando se registra como servicio, 4D Server está configurado para usar la "Cuenta de sistema local". Debes cambiar esta cuenta y seleccionar una cuenta de usuario válida que cuente con los derechos de acceso y la configuración necesarios para utilizar su aplicación. En particular, si desea efectuar impresiones, debe abrir la sesión con una cuenta de usuario que tenga la configuración de impresión predeterminada. El problema es similar si desea acceder a los volúmenes red. Para cambiar la cuenta, vaya a **Panel de control > Sistema y seguridad > Herramientas administrativas > Servicios**. En la lista **Servicios**, haga clic derecho en **4D Server**, seleccione la opción **Propiedades**, vaya a la pestaña **Iniciar sesión** y especifique la cuenta bajo la cual debe ejecutarse el servidor (ajuste que se aplicará en el próximo inicio).
:::
-To unregister your application, select **Unregister Current Application** from the 4D Server **File** menu. This command is dimmed if the project is not registered as a service.
+Para dar de baja su aplicación, seleccione **Dar de baja la aplicación actual** en el menú **Archivo** de 4D Server. Este comando se atenúa si el proyecto no está registrado como servicio.
-To unregister all 4D Server databases at once, select **Unregister All Server Services** from the 4D Server **File** menu. This command is dimmed if no 4D Server service is enabled.
+Para anular el registro de todas las bases de datos de 4D Server a la vez, seleccione **Anular el registro de todos los servicios del servidor** en el menú **Archivo** de 4D Server. Este comando se atenúa si no hay ningún servicio 4D Server activado.
-You cannot change the service registration status of 4D Server from within 4D Server, if the application has been launched as a service on start-up. En este caso, los tres elementos del menú están desactivados. To stop the service, use the **Services** control panel.
+You cannot change the service registration status of 4D Server from within 4D Server, if the application has been launched as a service on start-up. En este caso, los tres elementos del menú están desactivados. Para detener el servicio, utilice el panel de control **Servicios**.
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/server/sso.md b/i18n/es/docusaurus-plugin-content-docs/current/server/sso.md
index ccf5433ae5070f..ccb7953135803c 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/server/sso.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/server/sso.md
@@ -3,7 +3,7 @@ id: sso
title: Autenticación única (SSO)
---
-4D Server allows you to implement SSO (*Single Sign On*) capabilities in your client-server solutions on Windows.
+4D Server le permite implementar soluciones de autenticación única (*Single Sign On* o *SSO*) en sus aplicaciones cliente-servidor en Windows.
Implementing SSO in your 4D solutions will allow users to access the 4D application on Windows without needing to reenter their password when they are already logged into the Windows domain of their company (using Active Directory). Behind the scenes, the 4D Server application delegates the authentication to Active Directory and gets the Windows session login, which you can use to log the 4D user into the application by means of your standard login method.
@@ -11,49 +11,49 @@ Implementing SSO in your 4D solutions will allow users to access the 4D applicat
La funcionalidad SSO está disponible:
-- with 4D Server applications on Windows (4D single-user applications do not support SSO),
-- with the [QUIC or ServerNet network layer](../settings/client-server.md#network-layer) enabled.
+- con las aplicaciones 4D Server en Windows (las aplicaciones 4D monousuario no soportan la autenticación única),
+- con la [capa de red QUIC o ServerNet](../settings/client-server.md#network-layer) activada.
## Activar la funcionalidad SSO
-By default, the SSO feature is not enabled in 4D Server. To benefit from this feature, you need to set the **Authentication of user with domain server** option on the [Client-Server/Network options page](../settings/client-server.md#authentication-of-user-with-domain-server) of the Settings dialog box of 4D Server:
+De forma predeterminada, la función SSO no está activa en 4D Server. Para utilizar esta funcionalidad, debe marcar la opción **Autenticación del usuario con el servidor de dominio** en la [página de opciones de cliente-servidor/red](../settings/client-server.md#authentication-of-user-with-domain-server) del cuadro de diálogo Parámetros de 4D Server:

Al marcar esta opción, 4D se conecta de forma transparente al directorio Active del servidor de dominio Windows y obtiene los tokens de autenticación disponibles.
-This option offers standard authentication through the NTLM protocol. 4D es compatible con los protocolos NTLM y Kerberos. The protocol used is automatically selected by 4D depending on the [current configuration](#requirements-for-sso). If you want to use the Kerberos protocol, you need to fill in the additional SPN field as well (see below).
+Esta opción permite efectuar una autenticación estándar a través del protocolo NTLM. 4D es compatible con los protocolos NTLM y Kerberos. El protocolo utilizado es seleccionado automáticamente por 4D dependiendo de la [configuración actual](#requirements-for-sso). Si desea utilizar el protocolo Kerberos, también debe completar el campo SPN adicional (ver más abajo).
### Utilizar Kerberos
-If you want to use Kerberos as your authentication protocol, you also need to fill in the [**Service Principal Name** option on the Client-server/Network options page](../settings/client-server.md#service-principal-name) of the Settings dialog box:
+Si desea utilizar Kerberos como protocolo de autenticación, también debe completar la opción [**Nombre principal de servicio** en la página de opciones de cliente-servidor/red](../settings/client-server.md#service-principal-name) del cuadro de diálogo de Parámetros:

-This option declares the SPN as set in the Active Directory configuration. A service principal name is a unique identifier of a service instance. SPNs are used by Kerberos authentication to associate a service instance with a service logon account. This allows a client application to request that the service authenticates an account even if the client does not have the account name. For more information, please refer to the [SPN page on the MSDN web site](https://msdn.microsoft.com/en-us/library/windows/desktop/ms677949%28v=vs.85%29.aspx).
+Esta opción declara el SPN tal y como se configuró en Active Directory. Un nombre principal de servicio es un identificador único de una instancia de servicio. Los SPNs son utilizados por la autenticación Kerberos para asociar una instancia de servicio con una cuenta de inicio de sesión de servicio. Esto permite que una aplicación cliente solicite al servicio que autentifique una cuenta, incluso si el cliente no dispone del nombre de la cuenta. For more information, please refer to the [SPN page on the MSDN web site](https://msdn.microsoft.com/en-us/library/windows/desktop/ms677949%28v=vs.85%29.aspx).
El identificador SPN debe respetar este formato:
-- "ServiceName/FQDN_user" if the SPN is a computer attribute
-- "ServiceName/FQDN_computer" if the SPN is a user attribute
+- "ServiceName/FQDN_user" si el SPN es un atributo de máquina
+- "ServiceName/FQDN_computer" si el SPN es un atributo de usuario
Donde:
-- *ServiceName* is the name of the service which the client wants to authenticate.
+- *ServiceName* es el nombre del servicio en el que el cliente desea autenticarse.
- The *Fully Qualified Domain Name* (FQDN) is a domain name that specifies its exact location in the tree hierarchy of the Active Directory for both computers and users.
En las aplicaciones 4D, se puede configurar el SPN:
-- in the [structure settings](../Project/architecture.md#sources), for use with 4D Server.
-- or in the [user settings](../Project/architecture.md#settings-user) for deployment needs.
+- en las [propiedades de estructura](../Project/architecture.md#sources), para su uso con 4D Server.
+- o en los [parámetros del usuario](../Project/architecture.md#settings-user) para las necesidades de despliegue.
## Implementar el SSO
-When SSO features are enabled, you can rely on user authentication based on Windows session credentials to open a user session on 4D Server.
+Cuando la funcionalidad SSO está activa, puede confiar en la autenticación basada en las credenciales de la sesión de Windows para abrir una sesión de usuario en 4D Server.
-Keep in mind that the SSO feature only provides you with an authenticated login; it is up to you to pass this login to your standard 4D login method. When a 4D remote application tries to connect to the server, you have to call the [`Current client authentication`](../commands/current-client-authentication) command, which will return the user login, as defined in the Active Directory. You can then pass this login to your own identification system (using the built-in user and groups, the LDAP commands, or any custom mechanism) to open the appropriate session for the remote user in your 4D application.
+Keep in mind that the SSO feature only provides you with an authenticated login; it is up to you to pass this login to your standard 4D login method. Cuando una aplicación remota 4D intenta conectarse al servidor, hay que ejecutar el comando [`Current client authentication`](../commands/current-client-authentication), que devolverá el nombre de usuario, tal y como está definido en Active Directory. You can then pass this login to your own identification system (using the built-in user and groups, the LDAP commands, or any custom mechanism) to open the appropriate session for the remote user in your 4D application.
-This principle is illustrated in the following graphic:
+Este principio se ilustra en el siguiente gráfico:
```mermaid
flowchart LR
@@ -83,11 +83,11 @@ flowchart LR
style Ident fill:#ffffff,stroke:#365F91,stroke-width:2px
```
-The [`Current client authentication`](../commands/current-client-authentication) command must be called in the [`On Server Open Connection`](../commands-legacy/on-server-open-connection-database-method.md) database method, which is called each time a remote 4D opens a new connection to the 4D Server application. If authentication fails, you have to return a non-null value in the *$status* to reject the connection.
+El comando [`Current client authentication`](../commands/current-client-authentication) debe llamarse en el método de la base de datos [`On Server Open Connection`](../commands-legacy/on-server-open-connection-database-method.md), que se llama cada vez que un 4D remoto abre una nueva conexión a la aplicación 4D Server. Si falla la autenticación, debe devolver un valor distinto de nulo en el parámetro *$status* para rechazar la conexión.
### Uso del comando Current client authentication
-To call the [`Current client authentication`](../commands/current-client-authentication) command, use the following syntax:
+El comando [`Current client authentication`](../commands/current-client-authentication) se utiliza con la siguiente sintaxis:
```4d
$login:=Current client authentication($domain;$protocol)
@@ -95,31 +95,31 @@ $login:=Current client authentication($domain;$protocol)
Donde:
-- *$login* is the ID used by the client to log into the Active Directory (text value). You need to use this value to identify the user within your project. If the user is not correcty authenticated, an empty string is returned and no error is returned.
-- *$domain* and *$protocol* are optional text parameters. They are filled by the command and allow you to accept or reject connections depending on these values:
+- *$login* es el identificador que utiliza el cliente para iniciar sesión en Active Directory (valor de tipo texto). Debe utilizar este valor para identificar al usuario dentro de su proyecto. Si el usuario no está autenticado correctamente, se devuelve una cadena vacía y no se devuelve ningún error.
+- *$domain* y *$protocol* son parámetros texto opcionales. Se llenan por el comando y permiten aceptar o rechazar conexiones dependiendo de estos valores:
- *$domain* es el nombre de dominio del Active Directory
- - *$protocol* is the name of the protocol used by Windows to authenticate the user.
+ - *$protocol* es el nombre del protocolo que utiliza Windows para autenticar al usuario.
### Configuración requerida para el SSO
-4D Server handles various SSO configurations, depending on the current architecture and settings. The protocol used for authentication (NTLM or Kerberos) as well as information returned by the [`Current client authentication`](../commands/current-client-authentication) command depend on the actual configuration, if all requirements are respected (see below). The protocol actually used for authentication is returned in the protocol parameter of the [`Current client authentication`](../commands/current-client-authentication) command.
+4D Server admite diversas configuraciones de SSO, en función de la arquitectura y los ajustes actuales. El protocolo utilizado para la autenticación (NTLM o Kerberos), así como la información que devuelve el comando [`Current client authentication`](../commands/current-client-authentication), depende de la configuración real, siempre que se cumplan todos los requisitos (ver más abajo). The protocol actually used for authentication is returned in the protocol parameter of the [`Current client authentication`](../commands/current-client-authentication) command.
-The following table provides the requirements for using NTLM or Kerberos authentication:
+La siguiente tabla muestra los requisitos para utilizar la autenticación NTLM o Kerberos:
-| | NTLM | Kerberos |
-| ----------------------------------------------------------------------------------- | ------------------------------------------------------------------- | ----------------------------------------------------------------------- |
-| 4D Server y 4D Remote se encuentran en máquinas diferentes | sí | sí |
-| El usuario 4D Server está en el dominio | sí | sí |
-| El 4D remoto está en el mismo AD que el usuario de 4D Server | yes o no(\*) | sí |
-| El SPN se indica en 4D Server | no | yes(\*\*) |
-| Information returned by Current client authentication if requirements are respected | *login*=expected login, *domain*=expected domain, *protocol*="NTLM" | *login*=expected login, *domain*=expected domain, *protocol*="Kerberos" |
+| | NTLM | Kerberos |
+| ----------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
+| 4D Server y 4D Remote se encuentran en máquinas diferentes | sí | sí |
+| El usuario 4D Server está en el dominio | sí | sí |
+| El 4D remoto está en el mismo AD que el usuario de 4D Server | yes o no(\*) | sí |
+| El SPN se indica en 4D Server | no | yes(\*\*) |
+| Información devuelta por Current client authentication si se cumplen los requisitos | *login*=inicio de sesión esperado, *domain*=dominio esperado, *protocol*="NTLM" | *login*=inicio de sesión esperado, *domain*=dominio esperado, *protocol*="Kerberos" |
-(\*) The following specific configuration is supported: the 4D remote user is a local account on a machine that belongs to the same AD as 4D Server. In this case, the domain parameter is filled with the 4D Server machine name. Note that the support depends on actual user settings: if not available, empty strings are returned.
+(\*) The following specific configuration is supported: the 4D remote user is a local account on a machine that belongs to the same AD as 4D Server. En este caso, el parámetro dominio contiene el nombre de la máquina de 4D Server. Tenga en cuenta que esta función depende de los parámetros de usuario: si no está disponible, se devuelven cadenas vacías.
-(\*\*) If all Kerberos requirements are respected but the [`Current client authentication`](../commands/current-client-authentication) command returns "NTLM" in protocol, this means that you are facing one of the following situations:
+(\*\*) Si se cumplen todos los requisitos de Kerberos pero el comando [`Current client authentication`](../commands/current-client-authentication) devuelve "NTLM" como protocolo, esto significa que se enfrenta a una de las siguientes situaciones:
-- The SPN syntax is not valid; in other words, it does not respect the [constraints imposed by Microsoft](https://msdn.microsoft.com/en-us/library/windows/desktop/ms677949%28v=vs.85%29.aspx).
-- O bien, el SPN tiene duplicados en el AD. This issue needs to be fixed by the AD administrator.
+- La sintaxis SPN no es válida; en otras palabras, no cumple las [restricciones impuestas por Microsoft](https://msdn.microsoft.com/en-us/library/windows/desktop/ms677949%28v=vs.85%29.aspx).
+- O bien, el SPN tiene duplicados en el AD. Este problema debe solucionarlo el administrador del AD.
:::note
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/server/vss.md b/i18n/es/docusaurus-plugin-content-docs/current/server/vss.md
index 9a56f4f1987764..a219ed0c797db3 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/server/vss.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/server/vss.md
@@ -5,46 +5,46 @@ title: Volume Shadow Copy Service (VSS)
4D Server Windows comes with a dedicated **VSS writer** application that will automatically manage snapshot requests sent through Windows Volume Shadows Copy Service (VSS).
-VSS is provided by Windows Server to allow backup applications to capture snapshots (shadow copies) of any files or entire hard disks at a given moment, while applications are running. Thanks to this technology, you can recover, for example, a 4D Server database at the exact state it was at the moment of the snapshot. This mechanism requires that running application files are in a consistent state when the snapshot is performed. For this reason, a VSS-aware application must install a VSS writer application or service. This component is then "warned" by the service when a shadow copy is about to be done and tells the **VSS requestor** (basically the backup application) how to back up its file and data.
+VSS is provided by Windows Server to allow backup applications to capture snapshots (shadow copies) of any files or entire hard disks at a given moment, while applications are running. Gracias a esta tecnología, puede recuperar, por ejemplo, una base 4D Server tal y como estaba en el momento de tomar la instantánea. Este mecanismo requiere que los archivos de la aplicación en ejecución estén en un estado consistente cuando se realiza la copia. Por esta razón, una aplicación compatible con VSS debe instalar una aplicación o un servicio VSS writer. This component is then "warned" by the service when a shadow copy is about to be done and tells the **VSS requestor** (basically the backup application) how to back up its file and data.
## Requisitos del sistema del host (hipervisor)
-On the host side, the following VSS requestors are supported:
+Del lado del equipo anfitrión, se admiten los siguientes solicitantes VSS:
- VMware ESXI en toda plataforma
- Microsoft Hyper-V Server 2016
## Activación del VSS
-The VSS feature is automatically installed/updated when the 4D Server application is launched. The VSS writer application service is started if the session user has admin privileges.
+La funcionalidad VSS se instala o actualiza automáticamente al iniciar la aplicación 4D Server. El servicio de aplicación VSS writer se inicia si el usuario de la sesión tiene privilegios de administrador.
Generalmente, el escenario inicial será:
-1. 4D Server or merged Application Server is launched for the first time.
-2. If not launched with administration privileges, a warning icon is displayed.
-3. Quit and relaunch 4D Server or merged Application Server as administrator. The 4D VSS service is then automatically executed and registered in VSS.
-4. (Optional) Restart 4D Server or merged Application Server using standard privileges.
+1. Inicie 4D Server o la aplicación servidor fusionada por primera vez.
+2. Si no se inicia con privilegios de administrador, se mostrará un icono de advertencia.
+3. Salga y reinicie 4D Server o la aplicación servidor fusionada como administrador. El servicio 4D VSS se ejecuta y registra automáticamente en VSS.
+4. (Opcional) Reinicie 4D Server o la aplicación servidor fusionada con los privilegios estándar.
-The VSS writer executable is started as a service with the name "VSS \". One VSS service will run for all 4D Server instances. One VSS service will run for each different engined application (different name) running on the machine (see below).
+El ejecutable VSS writer se inicia como un servicio con el nombre "VSS \". Se ejecutará un único servicio VSS para todas las instancias de 4D Server. Se ejecutará un servicio VSS por cada aplicación con motor integrado (con un nombre distinto) que se ejecute en el equipo (ver más abajo).
The [Monitor Page](../ServerWindow/monitor.md) of the 4D Server Administration window displays the status of VSS writer service, in Application information area:

-Additional information about the Volume Shadow Copy status can be displayed in a tips when you hover the mouse over the area:
+Se puede mostrar información adicional sobre el estado Volume Shadow Copy en un globo de ayuda al pasar el ratón sobre el área:

## Acerca de VSS Writer
-The **vss_writer.exe** application is provided to handle Volume Shadow Copy Service (VSS) management for 4D applications.
+La aplicación **vss_writer.exe** se proporciona para gestionar el servicio Volume Shadow Copy Service (VSS) en las aplicaciones 4D.
:::note
-The 4D VSS management is handled through a separate application since this program must run using administration privileges.
+La gestión del VSS de 4D se realiza a través de una aplicación independiente, ya que este programa debe ejecutarse con privilegios de administrador.
:::
-The 4D VSS writer executable is automatically installed by 4D Server at first launch.
+L'exécutable VSS writer de 4D est automatiquement installé par 4D Server au premier lancement.
-The 4D VSS Writer service handles and transfers VSS messages to 4D Server. These messages are logged in the 4D Server diagnostic log, and in the Windows event viewer.
\ No newline at end of file
+El servicio 4D VSS Writer gestiona y transmite las solicitudes VSS a 4D Server. Estos mensajes se guardan en el registro de diagnóstico de 4D Server y en el Visor de eventos de Windows.
\ No newline at end of file
diff --git a/i18n/es/docusaurus-plugin-content-docs/current/settings/security.md b/i18n/es/docusaurus-plugin-content-docs/current/settings/security.md
index f0160b53b1b26e..b178e4c4ccd14a 100644
--- a/i18n/es/docusaurus-plugin-content-docs/current/settings/security.md
+++ b/i18n/es/docusaurus-plugin-content-docs/current/settings/security.md
@@ -11,48 +11,68 @@ Esta página contiene opciones relacionadas con la protección del acceso y de l
> Estos parámetros no se aplican a las bases proyecto abiertas en modo monopuesto.
-- **Acceso Diseño y al Explorador de ejecución**: da al grupo especificado la capacidad de entrar al modo Diseño de la base y mostrar el Explorador de ejecución.
+#### Acceso al entorno Diseño y al Explorador de ejecución
- Note que:
+Da al grupo especificado la capacidad de entrar en el entorno Diseño de la base de datos y mostrar el Explorador de ejecución.
- - La definición de un grupo de acceso en el entorno Diseño también permite desactivar la opción **Crear una tabla** de la caja de diálogo de importación de datos. Para más información sobre esta caja de diálogo, consulte [Importar los datos desde los archivos](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
+Note que:
- - El Diseñador y el Administrador siempre tienen acceso al entorno de diseño y al Explorador de ejecución, incluso si no son parte explícitamente del grupo de acceso específico. Para más información sobre usuarios y grupos de usuarios, consulta el capítulo [Usuarios y grupos](../Users/handling_users_groups.md).
+- La definición de un grupo de acceso en el entorno Diseño también permite desactivar la opción **Crear una tabla** de la caja de diálogo de importación de datos. Para más información sobre esta caja de diálogo, consulte [Importar los datos desde los archivos](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
-- **Usuario por defecto**: cuando se ha definido un Usuario por defecto, todos los usuarios que abren o se conectan a la base tienen los mismos privilegios y restricciones de acceso definidos para este Usuario por defecto. Ya no es necesario ingresar un nombre de usuario. Además, si no ha asociado una contraseña al usuario por defecto, la caja de diálogo Contraseña ya no aparece y la base se abre directamente.
- Esta opción simplifica el acceso a la base de datos a la vez que mantiene un sistema completo de control de datos.
+- El Diseñador y el Administrador siempre tienen acceso al entorno de diseño y al Explorador de ejecución, incluso si no son parte explícitamente del grupo de acceso específico. Para más información sobre usuarios y grupos de usuarios, consulta el capítulo [Usuarios y grupos](../Users/handling_users_groups.md).
- - Si ha asociado una contraseña al usuario predeterminado, al abrir la base aparece una caja de diálogo en el que los usuarios deben introducir una contraseña.
- - Si no ha asociado una contraseña al Usuario Predeterminado, la caja de diálogo de Identificación de Usuario no aparecerá.**Nota:** puede "forzar" la visualización de la caja de diálogo Identificación de usuario cuando el modo "Usuario por defecto" está activo, por ejemplo para conectarse como Administrador o Diseñador. Para ello, presione la tecla **Mayús** mientras abre la base de datos o se conecta a ella.
+#### Usuario por defecto
-- **Mostrar lista de usuarios en la caja de diálogo Contraseña**: si se marca esta opción, los usuarios deben elegir su nombre en la lista de usuarios e introducir su contraseña en la caja de diálogo de identificación de usuario. Si no está marcada, los usuarios deben introducir tanto su nombre como su contraseña. Para obtener más información sobre las dos versiones de la caja de diálogo de contraseña, consulte la sección "Acceso a las bases protegidas" en [Presentación del control de acceso](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html
+When a Default User has been set, every user that opens the database or logs onto it has the same access privileges and restrictions defined for this Default User. Ya no es necesario ingresar un nombre de usuario. Además, si no ha asociado una contraseña al usuario por defecto, la caja de diálogo Contraseña ya no aparece y la base se abre directamente.
- - **Ordenar la lista de los usuarios en orden alfabético** (sólo disponible si está marcada la opción anterior): cuando esta opción está seleccionada, la lista de los usuarios de la caja de diálogo de introducción de contraseña se ordena por orden alfabétic
+Esta opción simplifica el acceso a la base de datos a la vez que mantiene un sistema completo de control de datos.
-- **Los usuarios pueden cambiar su contraseña**: cuando esta opción está marcada, aparece un botón **Cambiar** en la caja de diálogo Identificación del usuario. Si lo desea, puede ocultar el botón **Cambiar** para que los usuarios no puedan modificar sus contraseñas. Este botón permite al usuario acceder a una caja de diálogo que puede utilizar para modificar su contraseña (para más información sobre esta caja de diálogo, consulte "Modificación de la contraseña por el usuario" en [Garantizar el mantenimiento del sistema](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). Para ello, desmarque esta opción.
+- Si ha asociado una contraseña al usuario predeterminado, al abrir la base aparece una caja de diálogo en el que los usuarios deben introducir una contraseña.
+- Si no ha asociado una contraseña al usuario por defecto, el cuadro de diálogo de identificación de usuario no aparecerá.
+ **Note:** You can "force" the display of the User Identification dialog box when the "Default User" mode is active, for instance in order to connect as Administrator or Designer. Para ello, presione la tecla **Mayús** mientras abre la base de datos o se conecta a ella.
+
+#### Mostrar la lista de usuarios en el cuadro de diálogo Contraseña
+
+Si se marca esta opción, los usuarios deben elegir su nombre de la lista de usuarios e introducir su contraseña en el cuadro de diálogo Identificación de usuario. Si no está marcada, los usuarios deben introducir tanto su nombre como su contraseña. Para obtener más información sobre las dos versiones de la caja de diálogo de contraseña, consulte la sección "Acceso a las bases protegidas" en [Presentación del control de acceso](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html
+
+#### Lista de usuarios en orden alfabético (solo disponible si se ha marcado la opción anterior)
+
+Cuando esta opción está marcada, la lista de usuarios del cuadro de diálogo de introducción de contraseña se ordena alfabéticamente.
+
+#### Los usuarios pueden cambiar su contraseña
+
+Cuando esta opción está marcada, se muestra el botón **Cambiar** en el cuadro de diálogo de inicio de sesión de usuario. Si lo desea, puede ocultar el botón **Cambiar** para que los usuarios no puedan modificar sus contraseñas. Este botón permite al usuario acceder a una caja de diálogo que puede utilizar para modificar su contraseña (para más información sobre esta caja de diálogo, consulte "Modificación de la contraseña por el usuario" en [Garantizar el mantenimiento del sistema](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). Para ello, desmarque esta opción.
## Opciones
-- **Filtering of commands and project methods in the formula editor and in the 4D View Pro and 4D Write Pro documents**:
- For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. Puede eliminar total o parcialmente este filtrado mediante las siguientes opciones.
- - **Activado para todos** (opción por defecto): el acceso a los comandos, funciones y métodos proyecto está restringido para todos los usuarios, incluidos el Diseñador y el Administrador.
- - **Desactivado para el Diseñador y el Administrador**: esta opción concede acceso completo a los comandos 4D y a los métodos sólo al Diseñador y al Administrador. Permite definir un modo de acceso ilimitado a los comandos y métodos sin perder el control de las operaciones efectuadas. Durante la fase de desarrollo, este modo puede utilizarse para probar libremente todas las fórmulas, informes, etc. Durante el funcionamiento, puede utilizarse para definir soluciones seguras que permitan el acceso temporal a comandos y métodos. Esto consiste en cambiar el usuario (a través del comando [`CHANGE CURRENT USER`](../commands/change-current-user)) antes de llamar a una caja de diálogo o iniciar un proceso de impresión que requiere acceso completo a los comandos, y luego volver al usuario original cuando se complete la operación específica.
- **Nota:** si se ha activado el acceso completo mediante la opción anterior, esta opción no tendrá ningún efecto.
- - **Desactivado para todos**: esta opción desactiva el control en las fórmulas. Cuando esta opción está marcada, los usuarios tienen acceso a todos los comandos 4D, plug-ins y métodos proyecto (excepto los invisibles).
- Cuando esta opción está marcada, los usuarios tienen acceso a todos los comandos 4D, plug-ins y métodos proyecto (excepto los invisibles). Cuando se selecciona, este comando no hace nada.
+#### Filtrado de comandos y métodos de proyecto en el editor de fórmulas y en los documentos de 4D View Pro y 4D Write Pro
+
+For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. Puede eliminar total o parcialmente este filtrado mediante las siguientes opciones.
+
+- **Activado para todos** (opción por defecto): el acceso a los comandos, funciones y métodos proyecto está restringido para todos los usuarios, incluidos el Diseñador y el Administrador.
+
+- **Desactivado para el Diseñador y el Administrador**: esta opción concede acceso completo a los comandos 4D y a los métodos sólo al Diseñador y al Administrador. Permite definir un modo de acceso ilimitado a los comandos y métodos sin perder el control de las operaciones efectuadas. Durante la fase de desarrollo, este modo puede utilizarse para probar libremente todas las fórmulas, informes, etc. Durante el funcionamiento, puede utilizarse para definir soluciones seguras que permitan el acceso temporal a comandos y métodos. Esto consiste en cambiar el usuario (a través del comando [`CHANGE CURRENT USER`](../commands/change-current-user)) antes de llamar a una caja de diálogo o iniciar un proceso de impresión que requiere acceso completo a los comandos, y luego volver al usuario original cuando se complete la operación específica.
+ **Nota:** si se ha activado el acceso completo mediante la opción anterior, esta opción no tendrá ningún efecto.
+
+- **Desactivado para todos**: esta opción desactiva el control en las fórmulas. Cuando esta opción está marcada, los usuarios tienen acceso a todos los comandos 4D, plug-ins y métodos proyecto (excepto los invisibles).
+ Cuando esta opción está marcada, los usuarios tienen acceso a todos los comandos 4D, plug-ins y métodos proyecto (excepto los invisibles). Cuando se selecciona, este comando no hace nada.
+
+#### Activar la configuración de usuario
+
+Debe seleccionar esta opción para poder mostrar cuadros de diálogo independientes para la configuración de usuario. Cuando esta opción está marcada, hay disponibles hasta tres cuadros de diálogo: **Propiedades estructura**, **Propiedades usuario**, y **Propiedades usuario para archivo de datos**. Para más información, consulte [Parámetros usuario](../settings/overview.md#user-settings).
-- **Autorizar las propiedades usuario**: debe marcar esta opción para poder mostrar cajas de diálogo separadas para las propiedades usuario. Cuando esta opción está marcada, hay disponibles hasta tres cuadros de diálogo: **Propiedades estructura**, **Propiedades usuario**, y **Propiedades usuario para archivo de datos**. Para más información, consulte [Parámetros usuario](../settings/overview.md#user-settings).
+#### Ejecutar el método "On Host Database Event" de los componentes
-- **Ejecutar el método "On Host Database Event" de los componentes**: el [método base On Host Database Event](../commands/on-host-database-event-database-method) facilita las fases de inicialización y copia de seguridad de los componentes 4D. Por razones de seguridad, debe autorizar explícitamente la ejecución de este método en cada base de datos local. Para hacer esto, debe marcar esta opción. Por defecto, no está marcado.
+The [On Host Database Event database method](../commands/on-host-database-event-database-method) facilitates the initialization and backup phases for 4D components. Por razones de seguridad, debe autorizar explícitamente la ejecución de este método en cada base de datos local. Para hacer esto, debe marcar esta opción. Por defecto, no está marcado.
- Cuando esta opción está seleccionada:
+Cuando esta opción está seleccionada:
- - los componentes 4D están cargados,
- - cada método base [On Host Database Event](../commands/on-host-database-event-database-method) del componente (si lo hay) es llamado por la base local,
- - se ejecuta el código del método.
+- los componentes 4D están cargados,
+- cada método base [On Host Database Event](../commands/on-host-database-event-database-method) del componente (si lo hay) es llamado por la base local,
+- se ejecuta el código del método.
- Cuando no está marcada:
+Cuando no está marcada:
- - Los componentes 4D se cargan, pero tienen que gestionar ellos mismos sus fases de inicialización y copia de seguridad.
- - el desarrollador del componente tiene que publicar los métodos del componente que deben ser llamados por la base de datos anfitriona durante estas fases (inicio y cierre)
- - el desarrollador de la base local debe llamar a los métodos apropiados del componente en el momento adecuado (debe estar contemplado en la documentación del componente).
+- Los componentes 4D se cargan, pero tienen que gestionar ellos mismos sus fases de inicialización y copia de seguridad.
+- el desarrollador del componente tiene que publicar los métodos del componente que deben ser llamados por la base de datos anfitriona durante estas fases (inicio y cierre)
+- el desarrollador de la base local debe llamar a los métodos apropiados del componente en el momento adecuado (debe estar contemplado en la documentación del componente).
diff --git a/i18n/es/docusaurus-plugin-content-docs/version-21-R3/Menus/sdi.md b/i18n/es/docusaurus-plugin-content-docs/version-21-R3/Menus/sdi.md
index 4eaedf7f8d86db..74af2b8194d9e3 100644
--- a/i18n/es/docusaurus-plugin-content-docs/version-21-R3/Menus/sdi.md
+++ b/i18n/es/docusaurus-plugin-content-docs/version-21-R3/Menus/sdi.md
@@ -1,6 +1,6 @@
---
id: sdi
-title: SDI mode on Windows
+title: Modo SDI en Windows
---
En Windows, los desarrolladores 4D pueden probar y configurar sus aplicaciones fusionadas 4D para que funcionen como aplicaciones SDI (Single-Document Interface). En las aplicaciones SDI, cada ventana es independiente de las demás y puede tener su propia barra de menús. Las aplicaciones SDI se oponen a las aplicaciones MDI (Multiple Documents Interface), en las que todas las ventanas están contenidas y dependen de la ventana principal.
diff --git a/i18n/es/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md b/i18n/es/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
index c9ddd3f268c891..4644b330ed20d4 100644
--- a/i18n/es/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
+++ b/i18n/es/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ El parámetro *separador* puede ser una cadena de múltiples caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/es/docusaurus-plugin-content-docs/version-21-R4/Menus/sdi.md b/i18n/es/docusaurus-plugin-content-docs/version-21-R4/Menus/sdi.md
index 4eaedf7f8d86db..74af2b8194d9e3 100644
--- a/i18n/es/docusaurus-plugin-content-docs/version-21-R4/Menus/sdi.md
+++ b/i18n/es/docusaurus-plugin-content-docs/version-21-R4/Menus/sdi.md
@@ -1,6 +1,6 @@
---
id: sdi
-title: SDI mode on Windows
+title: Modo SDI en Windows
---
En Windows, los desarrolladores 4D pueden probar y configurar sus aplicaciones fusionadas 4D para que funcionen como aplicaciones SDI (Single-Document Interface). En las aplicaciones SDI, cada ventana es independiente de las demás y puede tener su propia barra de menús. Las aplicaciones SDI se oponen a las aplicaciones MDI (Multiple Documents Interface), en las que todas las ventanas están contenidas y dependen de la ventana principal.
diff --git a/i18n/es/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md b/i18n/es/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
index c9ddd3f268c891..4644b330ed20d4 100644
--- a/i18n/es/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
+++ b/i18n/es/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ El parámetro *separador* puede ser una cadena de múltiples caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/es/docusaurus-plugin-content-docs/version-21/Menus/sdi.md b/i18n/es/docusaurus-plugin-content-docs/version-21/Menus/sdi.md
index 4cc25c431f1856..da415515fefb00 100644
--- a/i18n/es/docusaurus-plugin-content-docs/version-21/Menus/sdi.md
+++ b/i18n/es/docusaurus-plugin-content-docs/version-21/Menus/sdi.md
@@ -1,6 +1,6 @@
---
id: sdi
-title: SDI mode on Windows
+title: Modo SDI en Windows
---
En Windows, los desarrolladores 4D pueden probar y configurar sus aplicaciones fusionadas 4D para que funcionen como aplicaciones SDI (Single-Document Interface). En las aplicaciones SDI, cada ventana es independiente de las demás y puede tener su propia barra de menús. Las aplicaciones SDI se oponen a las aplicaciones MDI (Multiple Documents Interface), en las que todas las ventanas están contenidas y dependen de la ventana principal.
diff --git a/i18n/es/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md b/i18n/es/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
index 4fc6dee9bc65fa..74cb0831bfa810 100644
--- a/i18n/es/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
+++ b/i18n/es/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
@@ -61,8 +61,8 @@ El parámetro *separador* puede ser una cadena de múltiples caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current.json b/i18n/fr/docusaurus-plugin-content-docs/current.json
index ef0520be2de52c..296517ca3b5649 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current.json
+++ b/i18n/fr/docusaurus-plugin-content-docs/current.json
@@ -1636,15 +1636,15 @@
"description": "The label for the doc item 'Drag and Drop' in sidebar 'docs', linking to the doc Desktop/drag-and-drop"
},
"sidebar.docs.category.Records & Selections (legacy data access)": {
- "message": "Records & Selections (legacy data access)",
+ "message": "Enregistrements et sélections (accès classique aux données)",
"description": "The label for category 'Records & Selections (legacy data access)' in sidebar 'docs'"
},
"sidebar.docs.category.Records & Selections (legacy data access).link.generated-index.title": {
- "message": "Records & Selections (legacy data access)",
+ "message": "Enregistrements et sélections (accès classique aux données)",
"description": "The generated-index page title for category 'Records & Selections (legacy data access)' in sidebar 'docs'"
},
"sidebar.docs.category.Records & Selections (legacy data access).link.generated-index.description": {
- "message": "Legacy data access based upon records, selections, and sets.",
+ "message": "Accès historique aux données basé sur les enregistrements, les sélections et les ensembles.",
"description": "The generated-index page description for category 'Records & Selections (legacy data access)' in sidebar 'docs'"
},
"sidebar.docs.category.Server & Admin": {
@@ -1664,11 +1664,11 @@
"description": "The label for category '4D Server' in sidebar 'docs'"
},
"sidebar.docs.category.Administration Window": {
- "message": "Administration Window",
+ "message": "Fenêtre d'administration",
"description": "The label for category 'Administration Window' in sidebar 'docs'"
},
"sidebar.docs.category.Windows Features": {
- "message": "Windows Features",
+ "message": "Fonctionnalités Windows",
"description": "The label for category 'Windows Features' in sidebar 'docs'"
}
}
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/API/QuotaManagerClass.md b/i18n/fr/docusaurus-plugin-content-docs/current/API/QuotaManagerClass.md
index e222ecfb3aa304..a181a611ce9431 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/API/QuotaManagerClass.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/API/QuotaManagerClass.md
@@ -112,7 +112,7 @@ Session.quotas.maxEntitySetTimeout:=2400
#### Description
-The `.nbEntitySets` property contains the maximum number of REST entity sets allowed in memory for the current session.
+La propriété `.nbEntitySets` contient le nombre maximal d'entity sets REST autorisés en mémoire pour la session courante.
Par défaut, il n'y a pas de limite pour les entity sets [stockés en mémoire par les requêtes REST](../REST/$info.md) (la valeur est 0). Vous pouvez définir une limite afin de contrôler la charge utile du serveur pour une session spécifique.
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md b/i18n/fr/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
index cff6f0985e915a..5595b04cfa1566 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
@@ -68,13 +68,13 @@ La fonction `4D.SMTPTransporter.new()` the certificate used to sign emails using S/MIME (Secure/MIME), provided as a [`4D.File`](./FileClass.md) object or a Blob. This certificate contains the private key.
+La propriété `.certificate` contient le certificat utilisé pour signer les e-mails via S/MIME (Secure/MIME), fourni sous la forme d'un objet [`4D.File`](./FileClass.md) ou d'un Blob. Ce certificat contient la clé privée.
-If your certificate is already registered in your Certificate store (*keychain*), you can use [`.certificateName`](#certificatename) instead of this property. Note that you cannot use both properties simultaneously, otherwise an error is returned.
+Si votre certificat est déjà enregistré dans votre magasin de certificats (*keychain*), vous pouvez utiliser [`.certificateName`](#certificatename) à la place de cette propriété. Notez que vous ne pouvez pas utiliser les deux propriétés simultanément, sinon une erreur est retournée.
:::tip Article(s) de blog sur le sujet
-[Signing emails with S/MIME and SMTPTransporter](https://blog.4d.com/smtptransporter-signing-emails-with-s-mime)
+[Signer des e-mails avec S/MIME et SMTPTransporter](https://blog.4d.com/smtptransporter-signing-emails-with-s-mime)
:::
@@ -85,17 +85,17 @@ var $transporter : 4D.SMTPTransporter
var $options ; $result : Object
$options:=New object
-//Enter the information for the SMTP server
+//Saisir les informations pour le serveur SMTP
-//Enable S/MIME signing
-//Provide certificate file
+//Activer la signature S/MIME
+//Fournir le fichier de certificat
$options.certificate:=File("myCertificateFile.p12")
$options.certificatePassword:="myGreatPW123"
$transporter:=4D.SMTPTransporter.new($options)
$email:=New object
-//Fill the email content
+//Remplir le contenu du mail
$result:=$transporter.send($email)
```
@@ -119,13 +119,13 @@ $result:=$transporter.send($email)
#### Description
-The `.certificateName` property contains the name of the certificate used to sign emails using S/MIME (Secure/MIME) as it is registered in the system Certificate store (*keychain*). This certificate contains the private key.
+La propriété `.certificateName` contient le nom du certificat utilisé pour signer les e-mails via S/MIME (Secure/MIME), tel qu'il est enregistré dans le magasin de certificats du système (*keychain*). Ce certificat contient la clé privée.
-The certificate can also be provided directly as a file or blob using the [`.certificate`](#certificate) property. Note that you cannot use both properties simultaneously, otherwise an error is returned.
+Le certificat peut également être fourni directement sous forme de fichier ou de blob à l'aide de la propriété [`.certificate`](#certificate). Notez que vous ne pouvez pas utiliser les deux propriétés simultanément, sinon une erreur est retournée.
:::tip Article(s) de blog sur le sujet
-[Signing emails with S/MIME and SMTPTransporter](https://blog.4d.com/smtptransporter-signing-emails-with-s-mime)
+[Signer des e-mails avec S/MIME et SMTPTransporter](https://blog.4d.com/smtptransporter-signing-emails-with-s-mime)
:::
@@ -148,28 +148,13 @@ The certificate can also be provided directly as a file or blob using the [`.cer
#### Description
-The `.certificatePassword` property contains the password of the certificate used to sign emails, if required. An empty string is used if no password is required.
+La propriété `.certificatePassword` contient le mot de passe du certificat utilisé pour signer les e-mails, s'il est requis. Une chaîne vide est utilisée si aucun mot de passe n'est requis.
#### Voir également
[.certificate](#certificate)
[.certificateName](#certificatename)
-
-
-
-
-## .send()
-
-Historique
-
-| Release | Modifications |
-| ------- | --------------------------------- |
-| 17 R5 | Prise en charge des contenus Mime |
-| 17 R4 | Ajout |
-
-
-
Pour une description des codes de statut SMTP, veuillez vous reporter à [cette page](https://www.iana.org/assignments/smtp-enhanced-status-codes/smtp-enhanced-status-codes.xhtml).
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/Backup/mirror.md b/i18n/fr/docusaurus-plugin-content-docs/current/Backup/mirror.md
index d39a7741d768ac..2f42c4577ce26a 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/Backup/mirror.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/Backup/mirror.md
@@ -27,7 +27,7 @@ La base miroir ne reflète que les modifications apportées aux **données**. Ce
## Principes de fonctionnement
-Setting up a backup system using a logical mirror is based on two commands: [`New log file`](../commands/new-log-file) and [`INTEGRATE MIRROR LOG FILE`](../commands/integrate-mirror-log-file).
+La mise en place d'un système de sauvegarde à l'aide d'un miroir logique repose sur deux commandes : [`New log file`](../commands/new-log-file) et [`INTEGRATE MIRROR LOG FILE`](../commands/integrate-mirror-log-file).
Les principes suivants sont mis en œuvre :
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/Extensions/develop-components.md b/i18n/fr/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
index 3922b43fcba9e5..2df5f0e192e783 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
@@ -17,7 +17,7 @@ Vous pouvez développer des composants 4D pour vos propres besoins et les garder
:::note
-Vous pouvez [créer un composant directement à partir du projet hôte](#creating-components) sans devoir passer par un projet matrice distinct.
+You can [create a component directly from the host](#creating-components) project without needing to go through a separate matrix project.
:::
@@ -33,13 +33,13 @@ La création et l’installation des composants 4D s’effectuent directement de
:::note
-Le code d'un composant interprété peut être [modifié directement à partir du projet hôte](#editing-components) si le contexte est pris en charge.
+Interpreted component code can be [edited](#editing-components) and [compiled](../Project/compiler.md#compile-components) directly from the host project if the context is supported.
:::
## Création et modification de composants à partir de l'hôte
-En mode interprété, l'IDE 4D vous permet de créer et de modifier des composants directement à partir du projet hôte. Cela facilite le développement et la mise au point des composants dans le contexte réel d'un projet hôte, sans avoir à quitter ou à redémarrer.
+In interpreted mode, the 4D IDE allows you to create, edit, and compile components directly from the host project. Cela facilite le développement et la mise au point des composants dans le contexte réel d'un projet hôte, sans avoir à quitter ou à redémarrer.
### Création de composants
@@ -54,9 +54,10 @@ Cette action ouvre une boîte de dialogue de sélection de dossier dans laquelle
- Si vous décidez de stocker le composant **à côté du dossier racine du projet**, 4D l'ajoute au fichier [`dependencies.json`](../Project/components.md#dependenciesjson).
- Si vous décidez de stocker le composant **ailleurs**, 4D l'ajoute au fichier [`dependencies.json`](../Project/components.md#dependenciesjson) et son chemin est ajouté au fichier [`environment4d.json`](../Project/components.md#environment4djson), en utilisant un [chemin relatif ou absolu](../Project/components.md#relative-paths-vs-absolute-paths). Un chemin relatif est utilisé si le composant est situé au maximum deux niveaux au-dessus du fichier `environment4d.json`, ou dans ses sous-dossiers. Sinon, un chemin absolu est utilisé.
-:::note
+:::note Notes
-Vous ne pouvez pas stocker un composant **dans le dossier racine du projet**, **en-dehors du dossier Components**.
+- Vous ne pouvez pas stocker un composant **dans le dossier racine du projet**, **en-dehors du dossier Components**.
+- When a component is created from the host, it is assigned a [default namespace](#default-namespace).
:::
@@ -79,7 +80,7 @@ Dans ce contexte, vous pouvez ouvrir, modifier et sauvegarder le code de vos com
Les [classes exposées](#sharing-of-classes) et les [méthodes partagées](#sharing-of-project-methods) de vos composants peuvent être modifiées à partir de l'onglet **Méthodes composant** de l'Explorateur.
-Une icône spécifique indique que le composant contient du code partagé) :
+A specific icon indicates that the component contains shared code:

Sélectionnez **Modifier...** pour ouvrir le code de votre composant dans l'éditeur de code. Vous pouvez le modifier et le sauvegarder.
@@ -114,6 +115,10 @@ Les fonctionnalités standard de l'IDE 4D sont disponibles pour le composant. Vo
- exécuter des méthodes,
- restaurer à partir de la corbeille ou vider la corbeille.
+### Compiling components
+
+You can compile a component [directly from the host project](../Project/compiler.md#compile-components) without having to open it separately, provided it is compliant with the [requirements](../Project/compiler.md#requirements).
+
### Rechercher et Remplacer
Vous pouvez utiliser les [**fonctions de recherche et de remplacement**](../Project/search-replace.md) du projet hôte pour rechercher des éléments dans le code ou les formulaires de vos composants modifiables. Le menu **Chercher dans le projet** vous permet de sélectionner un ou tous les composant(s) comme cible de la recherche :
@@ -195,7 +200,7 @@ Par défaut, les classes de composants ne peuvent pas être appelées à partir
### Déclaration du namespace
-Pour permettre aux classes de votre composant d'être exposées dans les projets hôtes et leurs composants chargés, saisissez une valeur dans l'option [**namespace du composant dans le class store** de la page Général](../settings/general.md#component-namespace-in-the-class-store) des paramètres du projet matrice. Par défaut, l'espace est vide : les classes du composant ne sont pas disponibles en dehors du contexte du composant.
+Pour permettre aux classes de votre composant d'être exposées dans les projets hôtes et leurs composants chargés, saisissez une valeur dans l'option [**namespace du composant dans le class store** de la page Général](../settings/general.md#component-namespace-in-the-class-store) des paramètres du projet matrice. By default, the area is empty (except when the component is [created from the host](#default-namespace)): component classes are not available outside of the component context.

@@ -226,6 +231,12 @@ Bien entendu, il est recommandé d'utiliser un nom distinctif pour éviter tout
Les classes ORDA d'un composant ne sont pas disponibles dans le projet hôte. Par exemple, s'il existe une dataclass nommée Employees dans votre composant, vous ne pourrez pas utiliser une classe "cs.Mycomponent.Employee" dans le projet hôte.
+#### Default namespace
+
+When a new component is [created from the host](#creating-components), a default namespace is automatically assigned to the component.
+
+The default namespace is the component's name, without characters that do not comply with [property naming rules](../Concepts/identifiers.md#object-properties), if any. For example, for a component named "My Component-2", the default namespace will be "MyComponent2".
+
### Classes cachées
Comme dans tout projet, vous pouvez créer des classes et des fonctions cachées dans le composant en préfixant les noms par un caractère de soulignement ou ("_"). Lorsqu'un [namespace est défini](#declaring-the-component-namespace), les classes et fonctions cachées du composant n'apparaîtront pas comme des suggestions lors de l'utilisation de la complétion de code.
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/Notes/updates.md b/i18n/fr/docusaurus-plugin-content-docs/current/Notes/updates.md
index 3a5b52eced5372..55d9d039249e5d 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/Notes/updates.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/Notes/updates.md
@@ -10,6 +10,7 @@ Read [**What’s new in 4D 21 R5**](https://blog.4d.com/whats-new-in-4d-21-r5/),
#### Points forts
- Support of S/MIME email signing through new [`4D.SMTPTransporter`](../API/SMTPTransporterClass.md) class properties: [`.certificate`](../API/SMTPTransporterClass.md#certificate) or [`.certificateName`](../API/SMTPTransporterClass.md#certificatename) (certificate providing), and [`.certificatePassword`](../API/SMTPTransporterClass.md#certificatepassword).
+- You can now [compile a component directly from the host](../Project/compiler.md#compile-components).
- Support of list forms in [**fluent UI** rendering](../FormEditor/forms.md#fluent-ui-rendering) on Windows.
- Direct access to the [4D Corner platform](https://corner.4d.com/) from the [Dependency manager](../Project/components.md#using-4d-corner).
- [**Liste des bugs corrigés**](https://bugs.4d.fr/fixedbugslist?version=21_R5) : liste de tous les bugs qui ont été corrigés dans 4D 21 R5.
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/Project/compiler.md b/i18n/fr/docusaurus-plugin-content-docs/current/Project/compiler.md
index 6ee86ff9e8c0b5..52c70b806f48a6 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/Project/compiler.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/Project/compiler.md
@@ -37,7 +37,67 @@ Utilisez les commandes **Erreur précédente** / **Erreur suivante** du menu **M
Le nombre d'erreurs trouvées lors de vos premières compilations peut être déconcertant, mais ne vous laissez pas décourager. Vous découvrirez rapidement qu'elles proviennent souvent de la même source, à savoir la non-conformité avec certaines conventions du projet. Le compilateur fournit toujours un [diagnostic précis](#error-file) des erreurs afin de vous aider à les corriger.
-> La compilation nécessite une licence appropriée. Sans cette licence, il n'est pas possible d'effectuer une compilation (les boutons sont désactivés). Néanmoins, il est toujours possible de vérifier la syntaxe et de générer des méthodes de typage.
+:::note
+
+Compilation requires an [appropriate license](../Admin/licenses.md). Sans cette licence, il n'est pas possible d'effectuer une compilation (les boutons sont désactivés). Néanmoins, il est toujours possible de vérifier la syntaxe et de générer des méthodes de typage.
+
+:::
+
+### Compile components
+
+Historique
+
+| Release | Modifications |
+| ------- | ------------- |
+| 21 R5 | Ajout |
+
+
+
+While developing your application, you can compile the components used by the host project directly from the host project, without having to open them separately. When the host project contains one or more *eligible* components (see [Requirements](#requirements) below), an additional menu is displayed in the Compiler window. This menu lets you select which project(s) you want to compile:
+
+- the host project only (default)
+- the host project and all its eligible components
+- a single eligible component among the list of all eligible components.
+
+
+
+:::note
+
+You can open the Compiler window from the **Methods>Component Methods** section of the Explorer: right-click on an eligible component name and select **Compiler...** from the contextuel menu.
+
+:::
+
+A list of components being compiled is displayed in the Compiler window. If an error is detected in a component, its compilation is stopped but the process continues for other components.
+
+- Components with at least one error can be unfolded to display the list of errors and appear **in bold**.
+- Components with at least one warning can be unfolded to display the list of warnings.
+- Components wihout errors cannot be unfolded.
+
+#### Conditions requises
+
+To be eligible for compilation from the host project, a component must comply with the following requirements:
+
+- the component uses the [project architecture](../Project/architecture.md),
+- the component's [interpreted code](../Concepts/interpreted.md) is available and the component is not [running in compiled mode](#run-compiled),
+- the component uses [direct typing](#enabling-direct-typing) declarations.
+
+:::note
+
+The additional menu is not displayed if the project does not contain any eligible component.
+
+:::
+
+#### Compiler features & Settings
+
+All available features of the Compiler window are applied to the selected component(s): **Compile**, **Check syntax**, **Clear compiled code**.
+
+The [Settings](../settings/) cannot be edited when a component is selected (the button is dimmed).
+
+Each component's [settings](../settings/) are applied for the compilation, except the [error file and symbol file generation options](#compilation-options): settings of the host project override the component's options. When enabled, [error and warning file](#error-file) as well as [symbol file](#symbol-file) of each component are stored in the [**Logs** folder of the host project](../Project/architecture.md#logs), within a dedicated folder (the name of the folder is the component name).
+
+When you start a compilation or a syntax check, every processed project is listed in the compiler window. If errors or warnings are detected, they are displayed in hierarchical lists beneath the corresponding project. Projects that contain errors are displayed in **bold**:
+
+
## Exécuter en compilé
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/Project/components.md b/i18n/fr/docusaurus-plugin-content-docs/current/Project/components.md
index 2a444feb62fadf..4b089894256d2c 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/Project/components.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/Project/components.md
@@ -3,7 +3,7 @@ id: components
title: Dépendances
---
-[L'architecture des projets](../Project/architecture.md) 4D est modulaire. Vous pouvez ajouter des fonctionnalités supplémentaires dans vos projets 4D en installant des [**composants**](Concepts/components.md) et des [**plug-ins**](../Concepts/plug-ins.md). Les composants sont constitués de code 4D, tandis que les plug-ins peuvent être [construits à l'aide de n'importe quel langage](../Extensions/develop-plug-ins.md).
+[L'architecture des projets](../Project/architecture.md) 4D est modulaire. Vous pouvez ajouter des fonctionnalités supplémentaires dans vos projets 4D en installant des [**composants**](../Concepts/components.md) et des [**plug-ins**](../Concepts/plug-ins.md). Les composants sont constitués de code 4D, tandis que les plug-ins peuvent être [construits à l'aide de n'importe quel langage](../Extensions/develop-plug-ins.md).
You can [develop](../Extensions/develop-components.md) and [build](../Desktop/building.md) your own 4D components, or download public components proposed by 4D or the 4D community on the [**4D Corner platform**](https://corner.4d.com/).
@@ -11,7 +11,7 @@ Une fois installées dans votre environnement 4D, les extensions sont traitées
## Composants interprétés et compilés
-Les composants peuvent être interprétés ou [compilés](../Desktop/building.md).
+Les composants peuvent être interprétés ou [compilés](./compiler.md#compile-components).
- Un projet 4D fonctionnant en mode interprété peut utiliser des composants interprétés ou compilés.
- Un projet 4D exécuté en mode compilé ne peut pas utiliser de composants interprétés. Dans ce cas, seuls les composants compilés peuvent être utilisés.
@@ -570,7 +570,7 @@ The [**4D Corner platform**](https://corner.4d.com/) proposes a comprehensive li
You can open the [4D Corner platform](https://corner.4d.com/) from the Dependency manager, either in the top of the [Add a dependency window](#adding-a-github-or-gitlab-dependency), or by selecting **Discover more components on 4D Corner...** from the menu at the bottom of the Dependency manager window:
-
+
To install a component from the 4D Corner platform:
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png b/i18n/fr/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png
new file mode 100644
index 00000000000000..02684ee969a8be
Binary files /dev/null and b/i18n/fr/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png differ
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png b/i18n/fr/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png
new file mode 100644
index 00000000000000..918456d9d59c43
Binary files /dev/null and b/i18n/fr/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png differ
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md b/i18n/fr/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
index 20f922041c8f0f..c728a8c4698ed3 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ Le paramètre *séparateur* peut être une chaîne de plusieurs caractères :
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/fr/docusaurus-plugin-content-docs/current/settings/security.md b/i18n/fr/docusaurus-plugin-content-docs/current/settings/security.md
index 2e9c58cbe9de99..596e6bcee8113d 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/current/settings/security.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/current/settings/security.md
@@ -11,48 +11,68 @@ Cette page regroupe les options relatives à la protection des accès et des don
> Ces paramètres ne s'appliquent pas aux bases projets ouvertes en monoposte.
-- **Accès Développement et Explorateur d'exécution** : permet au groupe d’utilisateurs spécifié d’accéder au mode Développement de la base et d'afficher l'Explorateur d'exécution.
+#### Design and Runtime Explorer Access
- A noter que :
+Gives the specified group the ability to enter the Design environment of the database and display the Runtime Explorer.
- - La définition d’un groupe d’accès en Développement permet également de désactiver l’option **Créer une table** de la boîte de dialogue d’import de données. Pour plus d'informations sur cette boîte de dialogue, reportez-vous à [Importer des données depuis des fichiers](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
+A noter que :
- - Le Super_Utilisateur et l'Administrateur ont toujours accès à l'environnement de développement et à l'Explorateur d'exécution, même s'ils ne font pas explicitement partie du groupe d'accès spécifié. Pour plus d'information sur les utilisateurs et les groupes d'utilisateurs, veuillez vous référer au chapitre [Utilisateurs et groupes](../Users/handling_users_groups.md).
+- La définition d’un groupe d’accès en Développement permet également de désactiver l’option **Créer une table** de la boîte de dialogue d’import de données. Pour plus d'informations sur cette boîte de dialogue, reportez-vous à [Importer des données depuis des fichiers](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
-- **Utilisateur par défaut** : lorsqu’un utilisateur est défini dans ce menu, chaque utilisateur ouvrant ou se connectant à la base dispose des privilèges et restrictions d’accès qui ont été assignés à cet utilisateur par défaut. Il n’est alors plus nécessaire de saisir un nom d’utilisateur. De plus, si vous n’avez pas associé de mot de passe à l’utilisateur par défaut, la boîte de dialogue de saisie du mot de passe n’apparaît pas, la base s’ouvre directement.
- L’intérêt de cette option est de simplifier les accès multiples à la base tout en maintenant un système complet de contrôle des données.
+- Le Super_Utilisateur et l'Administrateur ont toujours accès à l'environnement de développement et à l'Explorateur d'exécution, même s'ils ne font pas explicitement partie du groupe d'accès spécifié. Pour plus d'information sur les utilisateurs et les groupes d'utilisateurs, veuillez vous référer au chapitre [Utilisateurs et groupes](../Users/handling_users_groups.md).
- - Si vous avez associé un mot de passe à l’utilisateur par défaut, une boîte de dialogue apparaît à l’ouverture de la base, les utilisateurs doivent uniquement saisir un mot de passe.
- - Si vous n'avez pas associé de mot de passe à l'Utilisateur par défaut, la boîte de dialogue d'identification de l'utilisateur ne s'affichera pas.**Note:** Vous pouvez “forcer” l'affichage de la boîte de dialogue d'identification de l'utilisateur lorsque le mode “Utilisateur par défaut” est actif, par exemple pour vous connecter en tant qu'Administrateur ou Super_Utilisateur. Pour cela, ouvrez (ou connectez-vous à) la base de données tout en maintenant la touche **Majuscule** enfoncée.
+#### Default User
-- **Afficher les utilisateurs dans la fenêtre Mots de passe** : si cette option est cochée, les utilisateurs doivent choisir leur nom dans une liste d’utilisateurs et saisir leur mot de passe dans la boîte de dialogue de saisie des mots de passe. Si cette option n’est pas cochée, les utilisateurs doivent saisir leur nom et leur mot de passe. Pour plus d’informations sur les deux versions de la boîte de dialogue de mots de passe, consultez la section "Accès au système" dans [Présentation du contrôle des accès](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html).
+When a Default User has been set, every user that opens the database or logs onto it has the same access privileges and restrictions defined for this Default User. Il n’est alors plus nécessaire de saisir un nom d’utilisateur. De plus, si vous n’avez pas associé de mot de passe à l’utilisateur par défaut, la boîte de dialogue de saisie du mot de passe n’apparaît pas, la base s’ouvre directement.
- - **Trier la liste des utilisateurs par ordre alphabétique** (option utilisable uniquement si la précédente est cochée) : Lorsque cette option est cochée, la liste des utilisateurs dans la boîte de dialogue de saisie des mots de passe est triée par ordre alphabétique.
+L’intérêt de cette option est de simplifier les accès multiples à la base tout en maintenant un système complet de contrôle des données.
-- **Les utilisateurs peuvent changer leur mot de passe** : lorsque cette option est cochée, un bouton **Changer** est affiché dans la boîte de dialogue d’ouverture ou de connexion à la base. Si vous le souhaitez, vous pouvez masquer le bouton **Changer** afin de ne pas permettre aux utilisateurs de modifier leur mot du passe. Ce bouton permet à l’utilisateur d’accéder à la boîte de dialogue qui peut être utilisée pour changer son mot de passe (pour plus d'informations sur cette boîte de dialogue, consultez la rubrique "Modification du mot de passe par l'utilisateur" dans [Assurer la maintenance du système](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). Il suffit pour cela de désélectionner cette option.
+- Si vous avez associé un mot de passe à l’utilisateur par défaut, une boîte de dialogue apparaît à l’ouverture de la base, les utilisateurs doivent uniquement saisir un mot de passe.
+- Si vous n’avez pas associé de mot de passe à l’utilisateur par défaut, aucune boîte de dialogue n’apparaît.
+ **Note:** You can "force" the display of the User Identification dialog box when the "Default User" mode is active, for instance in order to connect as Administrator or Designer. Pour cela, ouvrez (ou connectez-vous à) la base de données tout en maintenant la touche **Majuscule** enfoncée.
+
+#### Display User List in Password Dialog Box
+
+If this option is checked, users must choose their name from the list of users and enter their password in the User Identification dialog box. Si cette option n’est pas cochée, les utilisateurs doivent saisir leur nom et leur mot de passe. Pour plus d’informations sur les deux versions de la boîte de dialogue de mots de passe, consultez la section "Accès au système" dans [Présentation du contrôle des accès](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html).
+
+#### User List in Alphabetical Order (only available if the previous option is checked)
+
+When this option is checked, the list of users in the password entry dialog box is sorted by alphabetical order.
+
+#### Users can change their password
+
+When this option is checked, a **Change** button is displayed in the User Identification dialog box. Si vous le souhaitez, vous pouvez masquer le bouton **Changer** afin de ne pas permettre aux utilisateurs de modifier leur mot du passe. Ce bouton permet à l’utilisateur d’accéder à la boîte de dialogue qui peut être utilisée pour changer son mot de passe (pour plus d'informations sur cette boîte de dialogue, consultez la rubrique "Modification du mot de passe par l'utilisateur" dans [Assurer la maintenance du système](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). Il suffit pour cela de désélectionner cette option.
## Options
-- **Filtrage des commandes et méthodes de projet dans l'éditeur de formules et dans les documents 4D View Pro et 4D Write Pro** :
- Pour des raisons de sécurité, 4D restreint par défaut l'accès aux commandes, fonctions et méthodes projet dans l'[éditeur de formules](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) en mode Application ou ajoutées aux zones multistyles (en utilisant [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), documents 4D Write Pro et 4D View Pro : seules certaines fonctions et méthodes projet 4D qui ont été explicitement déclarées en utilisant la commande [`SET ALLOWED METHODS`](../commands/set-allowed-methods) peuvent être utilisées. A l'aide des options suivantes, vous pouvez supprimer complètement ou partiellement ce filtrage.
- - **Activé pour tous** (par défaut) : L'accès aux commandes, fonctions et méthodes projets est limité pour tous les utilisateurs, y compris au Super Utilisateur et à l'Administrateur.
- - **Désactivé pour le Super Utilisateur et l'Administrateur** : Cette option accorde, uniquement au Super Utilisateur et à l'Administrateur, un accès complet aux commandes et méthodes 4D. Elle peut être utilisée pour définir un mode d'accès illimité aux commandes et méthodes tout en gardant le contrôle des actions effectuées. En phase de développement, ce mode peut être utilisé pour tester librement toutes les formules, les états, etc. En cours d'exploitation, il peut être utilisé pour mettre en oeuvre des solutions sécurisées permettant un accès temporaire à toutes les commandes et méthodes. Cela consiste à changer l'utilisateur (via la commande [`CHANGE CURRENT USER`](../commands/change-current-user)) avant d'appeler une boîte de dialogue ou de démarrer un process d'impression qui nécessite un accès complet aux commandes, puis à retourner à l'utilisateur d'origine lorsque l'opération spécifique est terminée.
- **Note :** Si l'accès complet a été activé à l'aide de l'option précédente, cette option n'aura pas d'effet.
- - **Désactivé pour tous** : Cette option désactive le contrôle dans les formules. Lorsque cette option est cochée, les utilisateurs ont accès à l'ensemble des commandes, plug-ins et méthodes projets (à l'exception de ceux qui sont invisibles).
- Lorsque cette option est cochée, les utilisateurs ont accès à l'ensemble des commandes, plug-ins et méthodes projets (à l'exception de ceux qui sont invisibles). Lorsqu'elle est cochée, cette commande ne fait rien.
+#### Filtering of commands and project methods in the formula editor and in the 4D View Pro and 4D Write Pro documents
+
+For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. A l'aide des options suivantes, vous pouvez supprimer complètement ou partiellement ce filtrage.
+
+- **Activé pour tous** (par défaut) : L'accès aux commandes, fonctions et méthodes projets est limité pour tous les utilisateurs, y compris au Super Utilisateur et à l'Administrateur.
+
+- **Désactivé pour le Super Utilisateur et l'Administrateur** : Cette option accorde, uniquement au Super Utilisateur et à l'Administrateur, un accès complet aux commandes et méthodes 4D. Elle peut être utilisée pour définir un mode d'accès illimité aux commandes et méthodes tout en gardant le contrôle des actions effectuées. En phase de développement, ce mode peut être utilisé pour tester librement toutes les formules, les états, etc. En cours d'exploitation, il peut être utilisé pour mettre en oeuvre des solutions sécurisées permettant un accès temporaire à toutes les commandes et méthodes. Cela consiste à changer l'utilisateur (via la commande [`CHANGE CURRENT USER`](../commands/change-current-user)) avant d'appeler une boîte de dialogue ou de démarrer un process d'impression qui nécessite un accès complet aux commandes, puis à retourner à l'utilisateur d'origine lorsque l'opération spécifique est terminée.
+ **Note :** Si l'accès complet a été activé à l'aide de l'option précédente, cette option n'aura pas d'effet.
+
+- **Désactivé pour tous** : Cette option désactive le contrôle dans les formules. Lorsque cette option est cochée, les utilisateurs ont accès à l'ensemble des commandes, plug-ins et méthodes projets (à l'exception de ceux qui sont invisibles).
+ Lorsque cette option est cochée, les utilisateurs ont accès à l'ensemble des commandes, plug-ins et méthodes projets (à l'exception de ceux qui sont invisibles). Lorsqu'elle est cochée, cette commande ne fait rien.
+
+#### Enable User Settings
+
+You need to check this option to be able to display separated dialog boxes for user settings. Lorsque cette option est cochée, jusqu'à trois boîtes de dialogue sont disponibles pour définir les propriétés : **Propriétés structure**, **Propriétés utilisateur**, et **Propriétés utilisateur pour fichier de données**. Pour plus d'informations, reportez-vous à la section [User settings](../settings/overview.md#user-settings).
-- **Autoriser les propriétés utilisateur** : Vous devez cocher cette option si vous souhaitez utiliser la fonctionnalité d’externalisation des propriétés utilisateur. Lorsque cette option est cochée, jusqu'à trois boîtes de dialogue sont disponibles pour définir les propriétés : **Propriétés structure**, **Propriétés utilisateur**, et **Propriétés utilisateur pour fichier de données**. Pour plus d'informations, reportez-vous à la section [User settings](../settings/overview.md#user-settings).
+#### Execute "On Host Database Event" method of the components
-- **Exécuter la méthode "Sur événement base hôte" des composants** : La méthode [On Host Database Event](../commands/on-host-database-event-database-method) facilite les phases d'initialisation et de sauvegarde des composants 4D. Pour des raisons de sécurité, vous devez autoriser explicitement l’exécution de cette méthode dans chaque base hôte. Pour cela, vous devez cocher l'option. Cette option n'est pas cochée par défaut.
+The [On Host Database Event database method](../commands/on-host-database-event-database-method) facilitates the initialization and backup phases for 4D components. Pour des raisons de sécurité, vous devez autoriser explicitement l’exécution de cette méthode dans chaque base hôte. Pour cela, vous devez cocher l'option. Cette option n'est pas cochée par défaut.
- Lorsque cette option est cochée :
+Lorsque cette option est cochée :
- - les composants 4D sont chargés,
- - chaque méthode [On Host Database Event](../commands/on-host-database-event-database-method) du composant (s'il y en a) est appelée par le projet hôte,
- - le code de la méthode est exécuté.
+- les composants 4D sont chargés,
+- chaque méthode [On Host Database Event](../commands/on-host-database-event-database-method) du composant (s'il y en a) est appelée par le projet hôte,
+- le code de la méthode est exécuté.
- Lorsque cette option n’est pas cochée :
+Lorsque cette option n’est pas cochée :
- - les composants 4D sont chargés mais ils doivent gérer eux-mêmes leurs phases d’initialisation et de sauvegarde.
- - le développeur du composant doit publier les méthodes du composant qui doivent être appelées par la base hôte lors de ces phases (démarrage et fermeture)
- - le développeur de la base hôte doit appeler les méthodes appropriées du composant au bon moment (doit être exposé dans la documentation du composant).
+- les composants 4D sont chargés mais ils doivent gérer eux-mêmes leurs phases d’initialisation et de sauvegarde.
+- le développeur du composant doit publier les méthodes du composant qui doivent être appelées par la base hôte lors de ces phases (démarrage et fermeture)
+- le développeur de la base hôte doit appeler les méthodes appropriées du composant au bon moment (doit être exposé dans la documentation du composant).
diff --git a/i18n/fr/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md b/i18n/fr/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
index dffc7d6e30f77e..192d2bc5192db1 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ Le paramètre *séparateur* peut être une chaîne de plusieurs caractères :
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/API/QuotaManagerClass.md b/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/API/QuotaManagerClass.md
index e222ecfb3aa304..a181a611ce9431 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/API/QuotaManagerClass.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/API/QuotaManagerClass.md
@@ -112,7 +112,7 @@ Session.quotas.maxEntitySetTimeout:=2400
#### Description
-The `.nbEntitySets` property contains the maximum number of REST entity sets allowed in memory for the current session.
+La propriété `.nbEntitySets` contient le nombre maximal d'entity sets REST autorisés en mémoire pour la session courante.
Par défaut, il n'y a pas de limite pour les entity sets [stockés en mémoire par les requêtes REST](../REST/$info.md) (la valeur est 0). Vous pouvez définir une limite afin de contrôler la charge utile du serveur pour une session spécifique.
diff --git a/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md b/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
index 20f922041c8f0f..c728a8c4698ed3 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ Le paramètre *séparateur* peut être une chaîne de plusieurs caractères :
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/fr/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md b/i18n/fr/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
index c8cd0e9f36dc89..b41f935daf13dd 100644
--- a/i18n/fr/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
+++ b/i18n/fr/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
@@ -61,8 +61,8 @@ Le paramètre *séparateur* peut être une chaîne de plusieurs caractères :
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md b/i18n/ja/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
index 352edbb2687427..fd44294aebf264 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
@@ -155,21 +155,6 @@ $result:=$transporter.send($email)
[.certificate](#certificate)
[.certificateName](#certificatename)
-
-
-
-
-## .send()
-
-履歴
-
-| リリース | 内容 |
-| ----- | -------------- |
-| 17 R5 | MIMEコンテンツをサポート |
-| 17 R4 | 追加 |
-
-
-
SMTPステータスコードについての詳細は [こちらのページ](https://www.iana.org/assignments/smtp-enhanced-status-codes/smtp-enhanced-status-codes.xhtml) を参照ください。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/Concepts/components.md b/i18n/ja/docusaurus-plugin-content-docs/current/Concepts/components.md
index dfc03c063750de..695a26f5b3ad21 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/Concepts/components.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/Concepts/components.md
@@ -9,7 +9,7 @@ title: コンポーネント
4D プロジェクト内へのコンポーネントのインストールとロードは、[4D 依存関係マネージャー](../Project/components.md) を通して管理されます。
-いくつかのコンポーネントが[4D によって開発](../Extensions/overview.md#components-developed-by-4d)されていますが、それ以外にも4D コミュニティによるたくさんの4D コンポーネントが提供されています。 Use the [4D Corner platform](https://corner.4d.com/) to get a detailed list of all available 4D components.
+いくつかのコンポーネントが[4D によって開発](../Extensions/overview.md#components-developed-by-4d)されていますが、それ以外にも4D コミュニティによるたくさんの4D コンポーネントが提供されています。 利用可能なすべての4D コンポーネントの詳細なリストを取得するには、[4D Corner platform](https://corner.4d.com/) を使用してください。
また、[独自の 4Dコンポーネントを開発](../Extensions/develop-components.md) することもできます。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/develop-components.md b/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
index bb0b475acaa2dd..58d02f9125599f 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
@@ -7,7 +7,7 @@ title: コンポーネントの開発
4D のコンポーネントとは、[4Dアプリケーションにインストール可能](Concepts/components.md) な、1つ以上の機能を持つ 4D関数やメソッド、フォームの一式です。 たとえば、メールの送受信をおこない、それらを 4D アプリケーションに格納するための機能を持ったコンポーネントを作成できます。
-ニーズに合わせて独自の 4Dコンポーネントを開発し、それを非公開とすることができます。 You can also [propose them to 4D Corner](https://corner.4d.com/) and [share them with the 4D community](https://github.com/topics/4d-component).
+ニーズに合わせて独自の 4Dコンポーネントを開発し、それを非公開とすることができます。 また、[それらを4D Corner にアップロード](https://corner.4d.com/) して、[4D コミュニティと共有する](https://github.com/topics/4d-component)こともできます。
## 定義
@@ -17,7 +17,7 @@ title: コンポーネントの開発
:::note
-個別にマトリックスプロジェクトを作成することなく、[ホストプロジェクトから直接コンポーネントを作成する](#コンポーネントの作成) ことができます。
+他の別のマトリックスプロジェクトを開くことなく、[ホストプロジェクトから直接コンポーネントを作成](#コンポーネントの作成) することができます。
:::
@@ -33,13 +33,13 @@ title: コンポーネントの開発
:::note
-コンテキストがサポートされていれば、インタープリター版のコンポーネントのコードは[ホストプロジェクトから直接編集可能です](#コンポーネントの編集)。
+コンテキストがサポートされていれば、インタープリタコンポーネントのコードをホストプロジェクトから直接[編集](#コンポーネントの編集) し、[コンパイル](../Project/compiler.md#コンポーネントのコンパイル) することもできます。
:::
## ホストからのコンポーネント作成と編集
-インタープリターモードでは、4D IDE を使用することでホストプロジェクトからコンポーネントを直接作成および編集することができます。 これにより、ホストプロジェクトを閉じたり再起動したりすることなく、実際のコンテキストにおけるコンポーネント開発とチューニングを容易にします。
+インタープリターモードでは、4D IDE を使用することでホストプロジェクトからコンポーネントを直接作成、編集およびコンパイルすることができます。 これにより、ホストプロジェクトを閉じたり再起動したりすることなく、実際のコンテキストにおけるコンポーネント開発とチューニングを容易にします。
### コンポーネントの作成
@@ -54,9 +54,10 @@ title: コンポーネントの開発
- コンポーネントを**プロジェクトパッケージの隣** に保存することを選択した場合、4D はそれを[`dependencies.json`](../Project/components.md#dependenciesjson) ファイルに追加します。
- コンポーネントを**それ以外** の場所に保存することを選択した場合、4D はそれを[`dependencies.json`](../Project/components.md#dependenciesjson) ファイルに追加し、そのパスが[相対または絶対パス](../Project/components.md#相対パスvs絶対パス)を使用して[`environment4d.json`](../Project/components.md#environment4djson) ファイルへと追加されます。 相対パスは、`environment4d.json` ファイルから見てコンポーネントが上に2階層以内、あるいはそのサブフォルダー内に保存されている場合に使用されます。 それ以外の場合には絶対パスが使用されます。
-:::note
+:::note 注記
-コンポーネントは、**プロジェクトパッケージ内** で **Components フォルダーの外** に保存することはできません。
+- コンポーネントは、**プロジェクトパッケージ内** で **Components フォルダーの外** に保存することはできません。
+- コンポーネントがホストからコンポーネント作成した場合、それらは[デフォルトの名前空間](#デフォルトの名前空間) が割り当てられます。
:::
@@ -114,6 +115,10 @@ title: コンポーネントの開発
- メソッドの実行
- ゴミ箱からの復元、あるいはゴミ箱を空にする。
+### コンポーネントのコンパイル
+
+状況が[要件](../Project/compiler.md#要件) を満たしている場合、別途開くことなく、コンポーネントを[ホストプロジェクトから直接コンパイルする](../Project/compiler.md#コンポーネントのコンパイル) ことができます。
+
### 検索と置換
ホストプロジェクトの[**検索と置換** 機能](../Project/search-replace.md) を使用して、編集可能なコンポーネントのコードやフォーム内の要素を検索することができます。 **プロジェクト内を検索** メニューを使用することで、ひとつまたは全てのコンポーネントを検索ターゲットとして選択することができます:
@@ -195,7 +200,7 @@ EXECUTE METHOD($param)
### コンポーネント名前空間の宣言
-ホストプロジェクトおよび読み込まれているコンポーネントに対してコンポーネントのクラスを公開するには、マトリクスプロジェクトの設定の [一般ページにある **クラスストア内でのコンポーネント名前空間** オプション](../settings/general.md#クラスストア内でのコンポーネント名前空間) に値を入力します。 デフォルトでは、このエリアは空です。 つまり、コンポーネントのクラスはコンポーネント外で利用できません。
+ホストプロジェクトおよび読み込まれているコンポーネントに対してコンポーネントのクラスを公開するには、マトリクスプロジェクトの設定の [一般ページにある **クラスストア内でのコンポーネント名前空間** オプション](../settings/general.md#クラスストア内でのコンポーネント名前空間) に値を入力します。 デフォルトでは、このエリアは空です(ただしコンポーネントが[ホストから作成された](#デフォルトの名前空間) 場合を除く): コンポーネントのクラスは、コンポーネントのコンテキスト外では利用できません。

@@ -226,6 +231,12 @@ $area:=$rect.getArea()
コンポーネントの ORDAクラスは、ホストプロジェクトでは使用できません。 たとえば、コンポーネントに Employees というデータクラスがある場合、ホストプロジェクトで "cs.Mycomponent.Employee" クラスを使用することはできません。
+#### デフォルトの名前空間
+
+新しいコンポーネントが[ホストから作成された](#コンポーネントの作成) 場合、そのコンポーネントにはデフォルトの名前空間が自動的に割り当てられます。
+
+デフォルトの名前空間は、コンポーネントの名前から、[プロパティの命名規則](../Concepts/identifiers.md#オブジェクトプロパティ) に合致しない文字があればそれらを取り除いたものになります。 例えば、"My Component-2" と名前がつけられたコンポーネントは、デフォルトの名前空間は"MyComponent2" となります。
+
### 非表示クラス
アンダースコア ("_") を名前の前に付けることで、コンポーネントのクラスや関数を非表示にすることができます。 [コンポーネント名前空間が定義されている](#コンポーネント名前空間の宣言) 場合、非表示のクラスや関数はコード補完の際に提案されません。
@@ -541,5 +552,5 @@ macOS 上では、Finder からこの情報を見ることができます:
開発したコンポーネントを [GitHub](https://github.com/topics/4d-component) で公開し、4D開発者のコミュニティをサポートすることをお勧めします。 正しく参照されるためには、**`4d-component`** トピックをご利用ください。
-Use the [4D Corner platform](https://corner.4d.com/) to browse among existing components, and to register your own 4D components.
+既存のコンポーネントを探したいとき、あるいは自分独自の4D コンポーネントを登録したい場合には、[4D Corner プラットフォーム](https://corner.4d.com/) を是非ご使用ください。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/overview.md b/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/overview.md
index fa74850cebb75b..760ebb9a331717 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/overview.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/Extensions/overview.md
@@ -11,12 +11,12 @@ title: 4D アプリケーションの拡張
- [**SQL コマンド**](../commands/theme/SQL) を使用すると、様々なSQL データソースに接続して、それらを使用することができます。
- [**ビルトイン HTTP クライアント**](../API/HTTPRequestClass.md) はあらゆるHTTP サーバーへとリクエストを送り、データを処理することができます。
- [**Web エリア**](../FormObjects/webArea_overview.md) を使用するとフォーム内においてWeb ページや様々なHTML コンテンツへのアクセスを提供できるようになります。
-- [**コンポーネント**](Concepts/components.md) コンポーネントは4D コードからできています。 4D はユーティリティコンポーネントのセット(以下参照) を提供しており、これを必要に応じてインストールして使用することができます。 また[自分で独自の4D コンポーネントを開発する](develop-components.md) ことや、あるいはサードパーティ製のコンポーネントを使用することもできます。 Many developers from the 4D community have shared 4D components. Browse the [**4D Corner platform**](https://corner.4d.com/) to get a comprehensive list of published components.
+- [**コンポーネント**](Concepts/components.md) コンポーネントは4D コードからできています。 4D はユーティリティコンポーネントのセット(以下参照) を提供しており、これを必要に応じてインストールして使用することができます。 また[自分で独自の4D コンポーネントを開発する](develop-components.md) ことや、あるいはサードパーティ製のコンポーネントを使用することもできます。 たくさんの4D コミュニティのデベロッパーが4D コンポーネントを共有・公開しています。 公開されているコンポーネントの包括的なリストを取得するには、[**4D Corner プラットフォーム**](https://corner.4d.com/) をご覧ください。
- [**プラグイン**](../Concepts/plug-ins.md) プラグインはどんな言語でもビルドすることができます。 プラグインは、4D がネイティブにおこなっていないこと (例: 特定のプラットフォーム技術など) や、4D だけでは困難なことを実現します。 [このページ](develop-plug-ins.md) で説明しているように、独自のプラグインを開発することができます。 多くの機能は、既存の 4Dプラグインでカバーされています。 [`4d-plugin`](https://github.com/topics/4d-plugin) のトピックで公開されている 4Dプラグインの一覧を Github で閲覧することができます。
## 4Dによって開発されたコンポーネント
-4D は様々なコンポーネントを4D コミュニティに対して提供しており、これは幅広い開発需要をカバーしています。 All 4D components can be found on the [**4D Corner platform**](https://corner.4d.com/).
+4D は様々なコンポーネントを4D コミュニティに対して提供しており、これは幅広い開発需要をカバーしています。 全ての4D 製のコンポーネントは[**4D Corner platform**](https://corner.4d.com/) にあります。
これらのコンポーネントの一部は、デフォルトで[依存関係マネージャー](../Project/components.md#adding-a-github-or-gitlab-dependency), に登録されています。具体的には以下の通りです:
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/Notes/updates.md b/i18n/ja/docusaurus-plugin-content-docs/current/Notes/updates.md
index a7b71cc3369ee1..6c47ccb3fdf988 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/Notes/updates.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/Notes/updates.md
@@ -10,8 +10,9 @@ title: リリースノート
#### ハイライト
- [`4D.SMTPTransporter`](../API/SMTPTransporterClass.md) クラスの新しいクラスプロパティを使用したS/MIME Eメール署名のサポート: [`.certificate`](../API/SMTPTransporterClass.md#certificate) または [`.certificateName`](../API/SMTPTransporterClass.md#certificatename) (証明書の提供)、および[`.certificatePassword`](../API/SMTPTransporterClass.md#certificatepassword)。
+- [コンポーネントをホストから直接コンパイルする](../Project/compiler.md#コンポーネントのコンパイル) ことができるようになりました。
- Windows 上での [**fluent UI** レンダリング](../FormEditor/forms.md#fluent-ui-レンダリング) でのリストフォームのサポート。
-- Direct access to the [4D Corner platform](https://corner.4d.com/) from the [Dependency manager](../Project/components.md#using-4d-corner).
+- [依存関係マネージャー](../Project/components.md#4d-cornerを使用) から[4D Corner プラットフォーム](https://corner.4d.com/) へと直接アクセスできるようになりました。
- [**修正リスト**](https://bugs.4d.fr/fixedbugslist?version=21_R5): 4D 21 R5 で修正されたバグのリストです ([日本語版はこちら](https://4d-jp.github.io/2024/178/release-note-version-20r5/))。
## 4D 21 R4
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/Project/compiler.md b/i18n/ja/docusaurus-plugin-content-docs/current/Project/compiler.md
index 3677e59d350e4a..4a5f1bd7ffe9ed 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/Project/compiler.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/Project/compiler.md
@@ -37,7 +37,67 @@ title: コンパイル
初めてのコンパイルで検出されるエラーの数に辟易するかもしれませんが、気にすることはありません。 ほどなく、これらのエラーが同じ原因によるものであることに気づくでしょう。たとえば、特定のプロジェクト規約に対する違反などです。 コンパイラーは、エラーの訂正に役立つよう [正確なエラー診断](#エラーファイル) を提供します。
-> コンパイルには、適切なライセンスが必要です。 ライセンスがない場合、コンパイルを実行することはできません (ボタンが無効になります)。 その場合でも、シンタックスチェックと変数定義メソッドの生成はおこなうことができます。
+:::note
+
+Compilation requires an [appropriate license](../Admin/licenses.md). ライセンスがない場合、コンパイルを実行することはできません (ボタンが無効になります)。 その場合でも、シンタックスチェックと変数定義メソッドの生成はおこなうことができます。
+
+:::
+
+### コンポーネントのコンパイル
+
+履歴
+
+| リリース | 内容 |
+| ----- | -- |
+| 21 R5 | 追加 |
+
+
+
+While developing your application, you can compile the components used by the host project directly from the host project, without having to open them separately. When the host project contains one or more *eligible* components (see [Requirements](#requirements) below), an additional menu is displayed in the Compiler window. This menu lets you select which project(s) you want to compile:
+
+- the host project only (default)
+- the host project and all its eligible components
+- a single eligible component among the list of all eligible components.
+
+
+
+:::note
+
+You can open the Compiler window from the **Methods>Component Methods** section of the Explorer: right-click on an eligible component name and select **Compiler...** from the contextuel menu.
+
+:::
+
+A list of components being compiled is displayed in the Compiler window. If an error is detected in a component, its compilation is stopped but the process continues for other components.
+
+- Components with at least one error can be unfolded to display the list of errors and appear **in bold**.
+- Components with at least one warning can be unfolded to display the list of warnings.
+- Components wihout errors cannot be unfolded.
+
+#### 要件
+
+To be eligible for compilation from the host project, a component must comply with the following requirements:
+
+- the component uses the [project architecture](../Project/architecture.md),
+- the component's [interpreted code](../Concepts/interpreted.md) is available and the component is not [running in compiled mode](#run-compiled),
+- the component uses [direct typing](#enabling-direct-typing) declarations.
+
+:::note
+
+The additional menu is not displayed if the project does not contain any eligible component.
+
+:::
+
+#### Compiler features & Settings
+
+All available features of the Compiler window are applied to the selected component(s): **Compile**, **Check syntax**, **Clear compiled code**.
+
+The [Settings](../settings/) cannot be edited when a component is selected (the button is dimmed).
+
+Each component's [settings](../settings/) are applied for the compilation, except the [error file and symbol file generation options](#compilation-options): settings of the host project override the component's options. When enabled, [error and warning file](#error-file) as well as [symbol file](#symbol-file) of each component are stored in the [**Logs** folder of the host project](../Project/architecture.md#logs), within a dedicated folder (the name of the folder is the component name).
+
+When you start a compilation or a syntax check, every processed project is listed in the compiler window. If errors or warnings are detected, they are displayed in hierarchical lists beneath the corresponding project. Projects that contain errors are displayed in **bold**:
+
+
## コンパイル済み実行
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/Project/components.md b/i18n/ja/docusaurus-plugin-content-docs/current/Project/components.md
index d16f4ca8b0d34d..e5ce387e15ec05 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/Project/components.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/Project/components.md
@@ -3,7 +3,7 @@ id: components
title: 依存関係
---
-4D [プロジェクトアーキテクチャー](../Project/architecture.md) はモジュール式です。 [**コンポーネント**](../Concepts/components.md) や [**プラグイン**](../Concepts/plug-ins.md) をインストールすることで、4Dプロジェクトに追加機能を持たせることができます。 コンポーネントは4D コードで書かれていますが、プラグインは[あらゆる言語を使用してビルドすることができます](../Extensions/develop-plug-ins.md)。
+4D [プロジェクトアーキテクチャー](../Project/architecture.md) はモジュール式です。 [**コンポーネント**](../../Concepts/components.md) や [**プラグイン**](../Concepts/plug-ins.md) をインストールすることで、4Dプロジェクトに追加機能を持たせることができます。 コンポーネントは4D コードで書かれていますが、プラグインは[あらゆる言語を使用してビルドすることができます](../Extensions/develop-plug-ins.md)。
You can [develop](../Extensions/develop-components.md) and [build](../Desktop/building.md) your own 4D components, or download public components proposed by 4D or the 4D community on the [**4D Corner platform**](https://corner.4d.com/).
@@ -11,7 +11,7 @@ You can [develop](../Extensions/develop-components.md) and [build](../Desktop/bu
## インタープリターとコンパイル済みコンポーネント
-コンポーネントは、インタープリターまたは [コンパイル済み](../Desktop/building.md) のものが使えます。
+コンポーネントは、インタープリターまたは [コンパイル済み](./compiler.md#compile-components) のものが使えます。
- インタープリターモードで動作する 4Dプロジェクトは、インタープリターまたはコンパイル済みどちらのコンポーネントも使用できます。
- コンパイルモードで実行される 4Dプロジェクトでは、インタープリターのコンポーネントを使用できません。 この場合、コンパイル済みコンポーネントのみが利用可能です。
@@ -570,7 +570,7 @@ The [**4D Corner platform**](https://corner.4d.com/) proposes a comprehensive li
You can open the [4D Corner platform](https://corner.4d.com/) from the Dependency manager, either in the top of the [Add a dependency window](#adding-a-github-or-gitlab-dependency), or by selecting **Discover more components on 4D Corner...** from the menu at the bottom of the Dependency manager window:
-
+
To install a component from the 4D Corner platform:
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png b/i18n/ja/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png
new file mode 100644
index 00000000000000..02684ee969a8be
Binary files /dev/null and b/i18n/ja/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png differ
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png b/i18n/ja/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png
new file mode 100644
index 00000000000000..918456d9d59c43
Binary files /dev/null and b/i18n/ja/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png differ
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md b/i18n/ja/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
index bf22af9154275e..df77f49e003dcb 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ displayed_sidebar: docs
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/ja/docusaurus-plugin-content-docs/current/settings/security.md b/i18n/ja/docusaurus-plugin-content-docs/current/settings/security.md
index d57e9a1a58a982..1725ec57b07f3b 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/current/settings/security.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/current/settings/security.md
@@ -11,48 +11,68 @@ title: セキュリティページ
> これらの設定は、シングルユーザーモードで開かれたプロジェクトデータベースには適用されません。
-- **デザインおよびランタイムエクスプローラーアクセス権**: データベースのデザインモードにアクセスし、ランタイムエクスプローラーを表示する権利を特定のグループに付与します。
+#### Design and Runtime Explorer Access
- 注:
+Gives the specified group the ability to enter the Design environment of the database and display the Runtime Explorer.
- - デザインモードへのアクセスグループを設定すると、データ読み込みダイアログの **テーブルを作成** オプションが無効となります。 このダイアログボックスに関する詳細は [ファイルからデータを読み込む](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.ja.html) を参照ください。
+注:
- - Designer とAdministrator は常にデザインモードとランタイムエクスプローラーにアクセスできます。 設定されるアクセスグループのメンバーに含められる必要はありません。 ユーザーおよびグループに関する詳細は [ユーザー&グループ](../Users/handling_users_groups.md) の章をご参照ください。
+- デザインモードへのアクセスグループを設定すると、データ読み込みダイアログの **テーブルを作成** オプションが無効となります。 このダイアログボックスに関する詳細は [ファイルからデータを読み込む](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.ja.html) を参照ください。
-- **デフォルトユーザー**: デフォルトユーザーが設定されると、データベースを開く、あるいはデータベースにログインするすべてのユーザーは、このデフォルトユーザーに定義されたアクセス権と同じ制限を持つことになります。 ユーザー名の入力が不要になるだけでなく、 ユーザー名の入力が不要になるだけでなく、 デフォルトユーザーにパスワードを割り当てていない場合、パスワードダイアログボックスは表示されず、データベースが直接開かれます。
- このオプションを使用することで、完全なデータコントロールシステムを維持しつつ、データベースへのアクセスをシンプルにすることができます。
+- Designer とAdministrator は常にデザインモードとランタイムエクスプローラーにアクセスできます。 設定されるアクセスグループのメンバーに含められる必要はありません。 ユーザーおよびグループに関する詳細は [ユーザー&グループ](../Users/handling_users_groups.md) の章をご参照ください。
- - デフォルトユーザーにパスワードを割り当てた場合、データベースが開かれるときにダイアログが表示され、パスワードの入力を求められます。
- - デフォルトユーザーにパスワードを割り当てない場合、上記のダイアログは表示されません。
**注:** "デフォルトユーザー" モードが有効になっているときでも、強制的にユーザー認証ダイアログを表示させることができます。これはたとえば Administrator や Designer としてログインするために必要となります。 これには、データベースを開いたり接続したりする際に **Shift**キーを押したままにします。
+#### Default User
-- **パスワードダイアログにユーザーリストを表示する**: このオプションが選択されていると、ユーザー認証ダイアログにユーザーリストが表示され、ユーザーはその中から名前を選択し、パスワードを入力することになります。 オプションが選択されていない場合、ユーザーは名前とパスワードの両方を入力します。 パスワードダイアログボックスの 2つのバージョンに関する詳細は [アクセスシステムの概要](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.ja.html) を参照ください。
+When a Default User has been set, every user that opens the database or logs onto it has the same access privileges and restrictions defined for this Default User. ユーザー名の入力が不要になるだけでなく、 ユーザー名の入力が不要になるだけでなく、 デフォルトユーザーにパスワードを割り当てていない場合、パスワードダイアログボックスは表示されず、データベースが直接開かれます。
- - **ユーザーリストをABC順で表示する** (上記オプションが選択されているときのみ有効です): このオプションが選択されていると、ユーザー認証ダイアログボックスのユーザーリストは名前の ABC順に表示されます。
+このオプションを使用することで、完全なデータコントロールシステムを維持しつつ、データベースへのアクセスをシンプルにすることができます。
-- **ユーザーは自分のパスワードを変更可能**: このオプションが選択されていると、ユーザー認証ダイアログに **変更** ボタンが表示されます。 このボタンを使用すると、パスワードを変更するためのダイアログボックスが表示されます (このダイアログに関する詳細は [パスワードアクセスシステムの保守](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.ja.html) の "ユーザーによるパスワードの変更" を参照ください)。 必要であれば **変更** ボタンを非表示にし、パスワードの変更を禁止することができます。 それには、このオプションの選択を外します。
+- デフォルトユーザーにパスワードを割り当てた場合、データベースが開かれるときにダイアログが表示され、パスワードの入力を求められます。
+- デフォルトユーザーにパスワードを割り当てていない場合、パスワードダイアログボックスは表示されません。
+ **Note:** You can "force" the display of the User Identification dialog box when the "Default User" mode is active, for instance in order to connect as Administrator or Designer. これには、データベースを開いたり接続したりする際に **Shift**キーを押したままにします。
+
+#### Display User List in Password Dialog Box
+
+If this option is checked, users must choose their name from the list of users and enter their password in the User Identification dialog box. オプションが選択されていない場合、ユーザーは名前とパスワードの両方を入力します。 パスワードダイアログボックスの 2つのバージョンに関する詳細は [アクセスシステムの概要](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.ja.html) を参照ください。
+
+#### User List in Alphabetical Order (only available if the previous option is checked)
+
+When this option is checked, the list of users in the password entry dialog box is sorted by alphabetical order.
+
+#### Users can change their password
+
+When this option is checked, a **Change** button is displayed in the User Identification dialog box. このボタンを使用すると、パスワードを変更するためのダイアログボックスが表示されます (このダイアログに関する詳細は [パスワードアクセスシステムの保守](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.ja.html) の "ユーザーによるパスワードの変更" を参照ください)。 必要であれば **変更** ボタンを非表示にし、パスワードの変更を禁止することができます。 それには、このオプションの選択を外します。
## オプション
-- **フォーミュラエディターと 4D View Pro と 4D Write Proドキュメントで使用できるコマンドとプロジェクトメソッドの制限**:
- セキュリティのため 4D はデフォルトで、アプリケーションモードの [フォーミュラエディター](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.ja.html) においてコマンド、関数、プロジェクトメソッドへのアクセスを制限しています。これは、[`ST INSERT EXPRESSION`](../commands/st-insert-expression) コマンドによってマルチスタイルエリアに追加されるフォーミュラエディターの他、4D View Pro および 4D Write Proドキュメントにおいても同様です。[`SET ALLOWED METHODS`](../commands/set-allowed-methods) コマンドを使用して明示的に許可された 4D 関数やプロジェクトメソッドのみを使用することができます。 以下のオプションを使用して、部分的あるいは全体的にこのフィルタリングを無効にできます。
- - **すべてのユーザーを制限する** (デフォルトオプション): Designer と Administrator を含むすべてのユーザーに対し、コマンドや関数、プロジェクトメソッドへのアクセスを制限します。
- - **DesignerとAdministratorは制限しない**: このオプションは Designer と Administrator のみに、4Dコマンドやメソッドへの完全なアクセスを与えます。 他のユーザーには制限をかけつつ、管理者に無制限のアクセスを与えたい場合に使用できます。 開発段階では、このモードを使用してすべてのフォーミュラやレポート等を自由にテストできます。 運用時には、一時的にコマンドやメソッドへのアクセスを与えるためなどに使用できます。 これを行うには、コマンドへのフルアクセスが必要なダイアログを呼び出したり印刷処理を開始したりする前に ([`CHANGE CURRENT USER`](../commands/change-current-user) コマンドを使用して) ユーザーを切り替えます。そしてその処理が終了したのちに元のユーザーに戻します。
- **注:** 前のオプションを使用してフルアクセスが有効にされると、このオプションは効果を失います。
- - **誰も制限しない**: このオプションはフォーミュラの制御を無効にします。 このオプションが選択されると、ユーザーはすべての 4Dコマンドおよびプラグインコマンド、さらにはプロジェクトメソッドを使用できます (非表示のものを除く)。
- **注意:** このオプションは[`SET ALLOWED METHODS`](../commands/set-allowed-methods) コマンドよりも優先されます。 このオプションが選択されると、コマンドの効果はなくなります。
+#### Filtering of commands and project methods in the formula editor and in the 4D View Pro and 4D Write Pro documents
+
+For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. 以下のオプションを使用して、部分的あるいは全体的にこのフィルタリングを無効にできます。
+
+- **すべてのユーザーを制限する** (デフォルトオプション): Designer と Administrator を含むすべてのユーザーに対し、コマンドや関数、プロジェクトメソッドへのアクセスを制限します。
+
+- **DesignerとAdministratorは制限しない**: このオプションは Designer と Administrator のみに、4Dコマンドやメソッドへの完全なアクセスを与えます。 他のユーザーには制限をかけつつ、管理者に無制限のアクセスを与えたい場合に使用できます。 開発段階では、このモードを使用してすべてのフォーミュラやレポート等を自由にテストできます。 運用時には、一時的にコマンドやメソッドへのアクセスを与えるためなどに使用できます。 これを行うには、コマンドへのフルアクセスが必要なダイアログを呼び出したり印刷処理を開始したりする前に ([`CHANGE CURRENT USER`](../commands/change-current-user) コマンドを使用して) ユーザーを切り替えます。そしてその処理が終了したのちに元のユーザーに戻します。
+ **注:** 前のオプションを使用してフルアクセスが有効にされると、このオプションは効果を失います。
+
+- **誰も制限しない**: このオプションはフォーミュラの制御を無効にします。 このオプションが選択されると、ユーザーはすべての 4Dコマンドおよびプラグインコマンド、さらにはプロジェクトメソッドを使用できます (非表示のものを除く)。
+ **注意:** このオプションは[`SET ALLOWED METHODS`](../commands/set-allowed-methods) コマンドよりも優先されます。 このオプションが選択されると、コマンドの効果はなくなります。
+
+#### Enable User Settings
+
+You need to check this option to be able to display separated dialog boxes for user settings. このオプションが選択されると、設定をおこなうダイアログが最大 3つになります: **ストラクチャー設定**、**ユーザー設定**、そして **データファイル用のユーザー設定** です。 詳細は [ユーザー設定](../settings/overview.md#ユーザー設定) を参照ください。
-- **外部ファイルのユーザー設定を有効にする**: 外部ファイル化したユーザー設定を使用するにはこのオプションを選択します。 このオプションが選択されると、設定をおこなうダイアログが最大 3つになります: **ストラクチャー設定**、**ユーザー設定**、そして **データファイル用のユーザー設定** です。 詳細は [ユーザー設定](../settings/overview.md#ユーザー設定) を参照ください。
+#### Execute "On Host Database Event" method of the components
-- **コンポーネントの "On Host Database Event" メソッドを実行**: [On Host Database Event database method](../commands/on-host-database-event-database-method) は 4Dコンポーネントの初期化とバックアップフェーズを容易にします。 セキュリティ上の理由から、このメソッドの実行はそれぞれのホストデータベースにおいて明示的に許可されなければなりません。 そのためにはこのオプションをチェックします。 デフォルトでは、チェックされていません。
+The [On Host Database Event database method](../commands/on-host-database-event-database-method) facilitates the initialization and backup phases for 4D components. セキュリティ上の理由から、このメソッドの実行はそれぞれのホストデータベースにおいて明示的に許可されなければなりません。 そのためにはこのオプションをチェックします。 デフォルトでは、チェックされていません。
- このオプションがチェックされていると:
+このオプションがチェックされていると:
- - 4D コンポーネントがロードされます。
- - コンポーネントそれぞれの [On Host Database Event データベースメソッド](../commands/on-host-database-event-database-method) (あれば) がホストデータベースによって呼び出されます。
- - メソッドのコードが実行されます。
+- 4D コンポーネントがロードされます。
+- コンポーネントそれぞれの [On Host Database Event データベースメソッド](../commands/on-host-database-event-database-method) (あれば) がホストデータベースによって呼び出されます。
+- メソッドのコードが実行されます。
- このオプションがチェックされていないと:
+このオプションがチェックされていないと:
- - 4D コンポーネントはロードはされるものの、初期化とバックアップフェーズはコンポーネントによって管理されなければなりません。
- - コンポーネントの開発者は、これらのフェーズ (スタートアップとシャットダウン) 中にホストデータベースによって呼び出されなければならないコンポーネントメソッドを公開する必要がります。
- - ホストデータベースの開発者は、コンポーネントの適切なメソッドを適切なタイミングで呼び出さなければなりません (コンポーネントのドキュメンテーションにて解説が必要です)。
+- 4D コンポーネントはロードはされるものの、初期化とバックアップフェーズはコンポーネントによって管理されなければなりません。
+- コンポーネントの開発者は、これらのフェーズ (スタートアップとシャットダウン) 中にホストデータベースによって呼び出されなければならないコンポーネントメソッドを公開する必要がります。
+- ホストデータベースの開発者は、コンポーネントの適切なメソッドを適切なタイミングで呼び出さなければなりません (コンポーネントのドキュメンテーションにて解説が必要です)。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md b/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
index bf22af9154275e..df77f49e003dcb 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ displayed_sidebar: docs
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/settings/security.md b/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/settings/security.md
index 4a6528f7bb3567..d57e9a1a58a982 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/settings/security.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/version-21-R3/settings/security.md
@@ -33,7 +33,7 @@ title: セキュリティページ
## オプション
-- **フォーミュラエディタと 4D View Pro と 4D Write Proドキュメントで使用できるコマンドとプロジェクトメソッドの制限**:
+- **フォーミュラエディターと 4D View Pro と 4D Write Proドキュメントで使用できるコマンドとプロジェクトメソッドの制限**:
セキュリティのため 4D はデフォルトで、アプリケーションモードの [フォーミュラエディター](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.ja.html) においてコマンド、関数、プロジェクトメソッドへのアクセスを制限しています。これは、[`ST INSERT EXPRESSION`](../commands/st-insert-expression) コマンドによってマルチスタイルエリアに追加されるフォーミュラエディターの他、4D View Pro および 4D Write Proドキュメントにおいても同様です。[`SET ALLOWED METHODS`](../commands/set-allowed-methods) コマンドを使用して明示的に許可された 4D 関数やプロジェクトメソッドのみを使用することができます。 以下のオプションを使用して、部分的あるいは全体的にこのフィルタリングを無効にできます。
- **すべてのユーザーを制限する** (デフォルトオプション): Designer と Administrator を含むすべてのユーザーに対し、コマンドや関数、プロジェクトメソッドへのアクセスを制限します。
- **DesignerとAdministratorは制限しない**: このオプションは Designer と Administrator のみに、4Dコマンドやメソッドへの完全なアクセスを与えます。 他のユーザーには制限をかけつつ、管理者に無制限のアクセスを与えたい場合に使用できます。 開発段階では、このモードを使用してすべてのフォーミュラやレポート等を自由にテストできます。 運用時には、一時的にコマンドやメソッドへのアクセスを与えるためなどに使用できます。 これを行うには、コマンドへのフルアクセスが必要なダイアログを呼び出したり印刷処理を開始したりする前に ([`CHANGE CURRENT USER`](../commands/change-current-user) コマンドを使用して) ユーザーを切り替えます。そしてその処理が終了したのちに元のユーザーに戻します。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md b/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
index bf22af9154275e..df77f49e003dcb 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ displayed_sidebar: docs
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/settings/security.md b/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/settings/security.md
index 4a6528f7bb3567..d57e9a1a58a982 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/settings/security.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/version-21-R4/settings/security.md
@@ -33,7 +33,7 @@ title: セキュリティページ
## オプション
-- **フォーミュラエディタと 4D View Pro と 4D Write Proドキュメントで使用できるコマンドとプロジェクトメソッドの制限**:
+- **フォーミュラエディターと 4D View Pro と 4D Write Proドキュメントで使用できるコマンドとプロジェクトメソッドの制限**:
セキュリティのため 4D はデフォルトで、アプリケーションモードの [フォーミュラエディター](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.ja.html) においてコマンド、関数、プロジェクトメソッドへのアクセスを制限しています。これは、[`ST INSERT EXPRESSION`](../commands/st-insert-expression) コマンドによってマルチスタイルエリアに追加されるフォーミュラエディターの他、4D View Pro および 4D Write Proドキュメントにおいても同様です。[`SET ALLOWED METHODS`](../commands/set-allowed-methods) コマンドを使用して明示的に許可された 4D 関数やプロジェクトメソッドのみを使用することができます。 以下のオプションを使用して、部分的あるいは全体的にこのフィルタリングを無効にできます。
- **すべてのユーザーを制限する** (デフォルトオプション): Designer と Administrator を含むすべてのユーザーに対し、コマンドや関数、プロジェクトメソッドへのアクセスを制限します。
- **DesignerとAdministratorは制限しない**: このオプションは Designer と Administrator のみに、4Dコマンドやメソッドへの完全なアクセスを与えます。 他のユーザーには制限をかけつつ、管理者に無制限のアクセスを与えたい場合に使用できます。 開発段階では、このモードを使用してすべてのフォーミュラやレポート等を自由にテストできます。 運用時には、一時的にコマンドやメソッドへのアクセスを与えるためなどに使用できます。 これを行うには、コマンドへのフルアクセスが必要なダイアログを呼び出したり印刷処理を開始したりする前に ([`CHANGE CURRENT USER`](../commands/change-current-user) コマンドを使用して) ユーザーを切り替えます。そしてその処理が終了したのちに元のユーザーに戻します。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/version-21/Project/components.md b/i18n/ja/docusaurus-plugin-content-docs/version-21/Project/components.md
index 64eaf7bc280827..c7f9d50a17ba22 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/version-21/Project/components.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/version-21/Project/components.md
@@ -20,11 +20,11 @@ title: 依存関係
### パッケージフォルダー
-コンポーネントのパッケージフォルダー(*MyComponent.4dbase* フォルダー) には以下のものを含めることができます:
+コンポーネントのパッケージフォルダー (*MyComponent.4dbase* フォルダー) には以下のものを含めることができます:
-- **インタープリタ版コンポーネント**の場合: 標準の[Project フォルダー](../Project/architecture.md)。 [プロジェクトの**Components** フォルダー](architecture.md#コンポーネント)にインストールする場合には、パッケージフォルダー名の末尾を **.4dbase** にする必要があります。
+- **インタープリター版コンポーネント**の場合: 標準の [Project フォルダー](../Project/architecture.md)。 [プロジェクトの**Components** フォルダー](architecture.md#コンポーネント)にインストールする場合には、パッケージフォルダー名の末尾を **.4dbase** にする必要があります。
- **コンパイル版コンポーネント**の場合:
- - .4DZ ファイル、*Resources* フォルダー、*Info.plist* ファイルを格納している"Contents" フォルダー(推奨されるアーキテクチャ)
+ - .4DZ ファイル、*Resources* フォルダー、*Info.plist* ファイルを格納している"Contents" フォルダー推奨されるアーキテクチャー)
- *Resources* などの他のフォルダーを格納している.4DZ ファイル。
:::note
@@ -48,7 +48,7 @@ title: 依存関係
4Dプロジェクトにコンポーネントを読み込むには、以下の方法があります:
-- コンポーネントファイルを[プロジェクトの**Components**フォルダー](architecture.md#components)内にコピーする(インタープリタ版コンポーネントパッケージフォルダーはフォルダー名の末尾が".4dbase" になっている必要があります、上記参照)。
+- コンポーネントファイルを[プロジェクトの**Components**フォルダー](architecture.md#components)内にコピーする(インタープリター版コンポーネントパッケージフォルダーはフォルダー名の末尾が".4dbase" になっている必要があります、上記参照)。
- または、プロジェクトの **dependencies.json** ファイルでコンポーネントを宣言します。これは、[**依存関係インターフェースを使用して依存関係を追加**](#github依存関係の追加) するときに、ローカルファイルに対して自動的におこなわれます。
**dependencies.json** ファイルで宣言されているコンポーネントは、異なる場所に保存できます:
@@ -324,7 +324,7 @@ GitHubでリリースが作成されると、そこに**タグ**と**バージ
- **一次依存関係**: `dependencies.json` ファイル内で明示的に宣言したコンポーネント
- **二次依存関係**: 一次依存関係または他の二次依存関係が必要とするコンポーネントで、自動的に解決され、インストールされます。
-依存関係マネージャは、それぞれのコンポーネントが持つ `dependencies.json` ファイルを読み込み、可能な限り指定されたバージョンを遵守しつつ全ての必要な依存関係を回帰的にインストールします。 これによって、ネストされた依存関係を手動で特定し、一つずつ追加しなくても済むようになります。
+依存関係マネージャーは、それぞれのコンポーネントが持つ `dependencies.json` ファイルを読み込み、可能な限り指定されたバージョンを遵守しつつ全ての必要な依存関係を回帰的にインストールします。 これによって、ネストされた依存関係を手動で特定し、一つずつ追加しなくても済むようになります。
- **コンフリクトの解決**: 複数の依存関係が同じコンポーネントの[異なるバージョン](#defining-a-github-dependency-version-range) を必要とする場合、依存関係マネージャは全ての重なったバージョン範囲を満たすバージョンを探し出すことでコンフリクトを自動的に解決しようとします。 一次依存関係が二次依存関係とコンフリクトを起こした場合には、一次依存関係が優先されます。 一次依存関係が二次依存関係とコンフリクトを起こした場合には、一次依存関係が優先されます。
@@ -430,7 +430,7 @@ GitHubでリリースが作成されると、そこに**タグ**と**バージ
コンポーネントアイコンとロケーションロゴが追加情報を提供します:
-- コンポーネントロゴは、それが 4D またはサードパーティーによる提供かを示します。
+- コンポーネントロゴは、それが 4D またはサードパーティによる提供かを示します。
- ローカルコンポーネントと GitHubコンポーネントは、小さなアイコンで区別できます。

@@ -482,7 +482,7 @@ GitHubでリリースが作成されると、そこに**タグ**と**バージ

-接続が確立されると、入力エリアの右側に GitHubアイコン  が表示されます。 このアイコンをクリックすると、既定のブラウザでリポジトリを開くことができます。 このアイコンをクリックすると、既定のブラウザでリポジトリを開くことができます。
+接続が確立されると、入力エリアの右側に GitHubアイコン  が表示されます。 このアイコンをクリックすると、既定のブラウザでリポジトリを開くことができます。 このアイコンをクリックすると、既定のブラウザーでリポジトリを開くことができます。
:::note
@@ -520,7 +520,7 @@ GitHub 依存関係は[**dependencies.json**](#dependenciesjson) ファイル内
### GitHub 依存関係の更新
-依存関係マネージャはGitHub 上の更新を統合的に管理する方法を提供します。 以下の機能がサポートされています: 以下の機能がサポートされています:
+依存関係マネージャーは GitHub 上の更新を統合的に管理する方法を提供します。 以下の機能がサポートされています:
- 利用可能なバージョンの自動および手動でのチェック
- コンポーネントの自動および手動での更新
@@ -543,7 +543,7 @@ GitHub 依存関係は[**dependencies.json**](#dependenciesjson) ファイル内

-- 全ての依存関係に対して更新をチェックするためには、依存関係マネージャウィンドウの下部から**オプション**をクリックし、**更新をチェックする** を選択します。
+- すべての依存関係に対して更新をチェックするためには、依存関係マネージャーウィンドウの下部から **オプション** をクリックし、**更新をチェックする** を選択します。

@@ -561,11 +561,11 @@ GitHub 依存関係は[**dependencies.json**](#dependenciesjson) ファイル内
依存関係はいつでも更新することができ、また単一の依存関係に対してでも、依存関係全てに対してでも更新することが可能です:
-- 単一の依存関係を更新するためには、依存関係を右クリックし、コンテキストメニュー内から、あるいは依存関係マネージャウィンドウの下部の**オプション**メニューから、**次回起動時に\ を更新** を選択します:
+- 単一の依存関係を更新するためには、依存関係を右クリックし、コンテキストメニュー内から、あるいは依存関係マネージャーウィンドウの下部の **オプション** メニューから、**次回起動時に\ を更新** を選択します:

-- 全ての依存関係を一度に更新するためには、依存関係マネージャウィンドウの下部から**オプション** メニューをクリックし、**次回起動時に全ての依存関係を更新する** を選択します:
+- 全ての依存関係を一度に更新するためには、依存関係マネージャーウィンドウの下部から **オプション** メニューをクリックし、**次回起動時に全ての依存関係を更新する** を選択します:

@@ -578,7 +578,7 @@ GitHub 依存関係は[**dependencies.json**](#dependenciesjson) ファイル内
#### 自動アップデート
-依存関係マネージャウィンドウの下部の**オプション**メニューから、**自動アップデート** オプションを選択することができます。
+依存関係マネージャーウィンドウの下部の**オプション**メニューから、**自動アップデート** オプションを選択することができます。
このオプションがチェックされている場合(デフォルトでチェック)、GitHub コンポーネントで[コンポーネントバージョン設定](#github依存関係バージョン範囲の定義) に合致している新しいバージョンは、次回プロジェクト起動時に自動的に更新されます。 このオプションは手動で更新を洗濯する必要性を排除することで、日々の依存関係アップデートの管理を容易にします。
diff --git a/i18n/ja/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md b/i18n/ja/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
index a5c89566176ce4..db2c2437633b50 100644
--- a/i18n/ja/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
+++ b/i18n/ja/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
@@ -61,8 +61,8 @@ displayed_sidebar: docs
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md b/i18n/pt/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
index 16bb4c329b87f6..2db439b531a58c 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/current/API/SMTPTransporterClass.md
@@ -155,21 +155,6 @@ The `.certificatePassword` property contains
-
-
-
-## .send()
-
-História
-
-| Release | Mudanças |
-| ------- | ------------------------ |
-| 17 R5 | Suporte de conteúdo Mime |
-| 17 R4 | Adicionado |
-
-
-
Para obter informações sobre os códigos de estado SMTP, consulte [esta página](https://www.iana.org/assignments/smtp-enhanced-status-codes/smtp-enhanced-status-codes.xhtml).
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/Extensions/develop-components.md b/i18n/pt/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
index e3eb4ee03ddf86..4f58051d8cc732 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/current/Extensions/develop-components.md
@@ -17,7 +17,7 @@ Você pode desenvolver componentes 4D para suas próprias necessidades e mantê-
:::note
-You can [create a component directly from the host](#creating-components) project without needing to go through a separate matrix project
+You can [create a component directly from the host](#creating-components) project without needing to go through a separate matrix project.
:::
@@ -33,13 +33,13 @@ Criar e instalar componentes 4D é realizado diretamente a partir de 4D:
:::note
-Interpreted component code can be [edited directly from the host project](#editing-components) if the context is supported.
+Interpreted component code can be [edited](#editing-components) and [compiled](../Project/compiler.md#compile-components) directly from the host project if the context is supported.
:::
## Creating and editing components from the host
-In interpreted mode, the 4D IDE allows you to create and edit components directly from the host project. It facilitates component development and tuning in the actual context of a host project without having to leave or restart it.
+In interpreted mode, the 4D IDE allows you to create, edit, and compile components directly from the host project. It facilitates component development and tuning in the actual context of a host project without having to leave or restart it.
### Creating components
@@ -54,9 +54,10 @@ This action opens a folder selection dialog where you choose where [the componen
- If you decide to store the component **next to the project package**, 4D adds it to the [`dependencies.json`](../Project/components.md#dependenciesjson) file.
- If you decide to store the component **elsewhere**, 4D adds it to the [`dependencies.json`](../Project/components.md#dependenciesjson) file and its path is added to the [`environment4d.json`](../Project/components.md#environment4djson) file, using either a [relative or an absolute path](../Project/components.md#relative-paths-vs-absolute-paths). A relative path is used if the component is located within no more than two levels above as the `environment4d.json` file, or in its subfolders. Otherwise, an absolute path is used.
-:::note
+:::note Notas
-You cannot store a component **in the project package** but **outside the Components folder**.
+- You cannot store a component **in the project package** but **outside the Components folder**.
+- When a component is created from the host, it is assigned a [default namespace](#default-namespace).
:::
@@ -79,7 +80,7 @@ In this context, you can open, edit, and save your component code in the Code ed
[Exposed component classes](#sharing-of-classes) and [shared methods](#sharing-of-project-methods) of your component can be edited from the **Component Methods** tab of the Explorer.
-A specific icon indicates that the component contains shared code):
+A specific icon indicates that the component contains shared code:

Select **Edit...** to open your component code in the Code editor. You can edit and save it.
@@ -114,6 +115,10 @@ Standard 4D IDE features are available for the component. You can execute the fo
- run methods,
- restore from trash or empty trash.
+### Compiling components
+
+You can compile a component [directly from the host project](../Project/compiler.md#compile-components) without having to open it separately, provided it is compliant with the [requirements](../Project/compiler.md#requirements).
+
### Search and replace
You can use the [**Search and replace** features](../Project/search-replace.md) of the host project to search elements within the code or the forms of your editable components. The **Search in project** menu allows you to select one or all components as search target:
@@ -196,7 +201,7 @@ By default, component classes cannot be called from the 4D Code Editor of the ho
### Declaração do namespace
-Para permitir que as classes de seu componente sejam expostas nos projetos host e em seus componentes carregados, insira um valor na opção [**Namespace do componente na class store** na página General](../settings/general.md#component-namespace-in-the-class-store) das Configurações do projeto da matriz. Por padrão, a área está vazia: as classes de componentes não estão disponíveis fora do contexto do componente.
+Para permitir que as classes de seu componente sejam expostas nos projetos host e em seus componentes carregados, insira um valor na opção [**Namespace do componente na class store** na página General](../settings/general.md#component-namespace-in-the-class-store) das Configurações do projeto da matriz. By default, the area is empty (except when the component is [created from the host](#default-namespace)): component classes are not available outside of the component context.

@@ -227,6 +232,12 @@ Obviamente, é recomendável usar um nome distinto para evitar qualquer conflito
As classes ORDA de um componente não estão disponíveis no seu projeto host. Por exemplo, se houver uma classe de dados chamada Employees em seu componente, você não poderá usar uma classe "cs. Mycomponent. Employee" no projeto host.
+#### Default namespace
+
+When a new component is [created from the host](#creating-components), a default namespace is automatically assigned to the component.
+
+The default namespace is the component's name, without characters that do not comply with [property naming rules](../Concepts/identifiers.md#object-properties), if any. For example, for a component named "My Component-2", the default namespace will be "MyComponent2".
+
### Classes ocultas
Assim como em qualquer projeto, você pode criar classes e funções ocultas no componente prefixando os nomes com um sublinhado ("_"). Quando um [componente namespace for definido](#declaring-the-component-namespace), classes ocultas e funções do componente não aparecerão como sugestões ao usar a conclusão do código.
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/Notes/updates.md b/i18n/pt/docusaurus-plugin-content-docs/current/Notes/updates.md
index 972b90ae389a4b..23953bd4a906a4 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/current/Notes/updates.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/current/Notes/updates.md
@@ -10,6 +10,7 @@ Leia [**O que há de novo no 4D 21 R5**](https://blog.4d.com/whats-new-in-4d-21-
#### Destaques
- Support of S/MIME email signing through new [`4D.SMTPTransporter`](../API/SMTPTransporterClass.md) class properties: [`.certificate`](../API/SMTPTransporterClass.md#certificate) or [`.certificateName`](../API/SMTPTransporterClass.md#certificatename) (certificate providing), and [`.certificatePassword`](../API/SMTPTransporterClass.md#certificatepassword).
+- You can now [compile a component directly from the host](../Project/compiler.md#compile-components).
- Support of list forms in [**fluent UI** rendering](../FormEditor/forms.md#fluent-ui-rendering) on Windows.
- Direct access to the [4D Corner platform](https://corner.4d.com/) from the [Dependency manager](../Project/components.md#using-4d-corner).
- [**Lista de erros corrigida**](https://bugs.4d.fr/fixedbugslist?version=21_R5): lista de todos os bugs corrigidos em 4D 21 R5.
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/Project/compiler.md b/i18n/pt/docusaurus-plugin-content-docs/current/Project/compiler.md
index 8cc10852d6ca3f..7a89a5949e6f21 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/current/Project/compiler.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/current/Project/compiler.md
@@ -37,7 +37,67 @@ Utilice los comandos **Error anterior** / **Error siguiente** del menú **Métod
O número de erros encontrados durante as suas primeiras compilações podem ser um desafio, mas não deixe isso te avisar. Logo você descobrirá que eles muitas vezes nascem da mesma fonte, ou seja, não conformidade com certas convenções do projeto. El compilador siempre ofrece un [diagnóstico preciso](#error-file) de los errores para ayudarle a corregirlos.
-> A compilação requer uma licença adequada. Sem esta licença, não é possível realizar uma compilação (os botões estão desativados). No entanto, ainda é possível verificar a sintaxe e gerar métodos de digitação.
+:::note
+
+Compilation requires an [appropriate license](../Admin/licenses.md). Sem esta licença, não é possível realizar uma compilação (os botões estão desativados). No entanto, ainda é possível verificar a sintaxe e gerar métodos de digitação.
+
+:::
+
+### Compile components
+
+História
+
+| Release | Mudanças |
+| ------- | ---------- |
+| 21 R5 | Adicionado |
+
+
+
+While developing your application, you can compile the components used by the host project directly from the host project, without having to open them separately. When the host project contains one or more *eligible* components (see [Requirements](#requirements) below), an additional menu is displayed in the Compiler window. This menu lets you select which project(s) you want to compile:
+
+- the host project only (default)
+- the host project and all its eligible components
+- a single eligible component among the list of all eligible components.
+
+
+
+:::note
+
+You can open the Compiler window from the **Methods>Component Methods** section of the Explorer: right-click on an eligible component name and select **Compiler...** from the contextuel menu.
+
+:::
+
+A list of components being compiled is displayed in the Compiler window. If an error is detected in a component, its compilation is stopped but the process continues for other components.
+
+- Components with at least one error can be unfolded to display the list of errors and appear **in bold**.
+- Components with at least one warning can be unfolded to display the list of warnings.
+- Components wihout errors cannot be unfolded.
+
+#### Requisitos
+
+To be eligible for compilation from the host project, a component must comply with the following requirements:
+
+- the component uses the [project architecture](../Project/architecture.md),
+- the component's [interpreted code](../Concepts/interpreted.md) is available and the component is not [running in compiled mode](#run-compiled),
+- the component uses [direct typing](#enabling-direct-typing) declarations.
+
+:::note
+
+The additional menu is not displayed if the project does not contain any eligible component.
+
+:::
+
+#### Compiler features & Settings
+
+All available features of the Compiler window are applied to the selected component(s): **Compile**, **Check syntax**, **Clear compiled code**.
+
+The [Settings](../settings/) cannot be edited when a component is selected (the button is dimmed).
+
+Each component's [settings](../settings/) are applied for the compilation, except the [error file and symbol file generation options](#compilation-options): settings of the host project override the component's options. When enabled, [error and warning file](#error-file) as well as [symbol file](#symbol-file) of each component are stored in the [**Logs** folder of the host project](../Project/architecture.md#logs), within a dedicated folder (the name of the folder is the component name).
+
+When you start a compilation or a syntax check, every processed project is listed in the compiler window. If errors or warnings are detected, they are displayed in hierarchical lists beneath the corresponding project. Projects that contain errors are displayed in **bold**:
+
+
## Executar a compilação
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/Project/components.md b/i18n/pt/docusaurus-plugin-content-docs/current/Project/components.md
index dd1d081d339ce1..7eac9601ec935a 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/current/Project/components.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/current/Project/components.md
@@ -3,7 +3,7 @@ id: components
title: Dependencies
---
-A [arquitetura dos projetos](../Project/architecture.md) 4D é modular. Você pode fornecer funcionalidades adicionais aos seus projetos 4D instalando [**componentes**](Concepts/components.md) e [**plug-ins**](Concepts/plug-ins.md). Components are made of 4D code, while plug-ins can be [built using any language](../Extensions/develop-plug-ins.md).
+A [arquitetura dos projetos](../Project/architecture.md) 4D é modular. Você pode fornecer funcionalidades adicionais aos seus projetos 4D instalando [**componentes**](../Concepts/components.md) e [**plug-ins**](Concepts/plug-ins.md). Components are made of 4D code, while plug-ins can be [built using any language](../Extensions/develop-plug-ins.md).
You can [develop](../Extensions/develop-components.md) and [build](../Desktop/building.md) your own 4D components, or download public components proposed by 4D or the 4D community on the [**4D Corner platform**](https://corner.4d.com/).
@@ -11,7 +11,7 @@ Once installed in your 4D environment, extensions are handled as **dependencies*
## Componentes interpretados e compilados
-Componentes podem ser interpretados ou [compilados](../Desktop/building.md).
+Componentes podem ser interpretados ou [compilados](./compiler.md#compile-components).
- Um projeto 4D em modo interpretado pode usar componentes interpretados ou compilados.
- Um projeto 4D em execução no modo compilado não pode usar componentes interpretados. Por isso não pode ser usado em um componente.
@@ -570,7 +570,7 @@ The [**4D Corner platform**](https://corner.4d.com/) proposes a comprehensive li
You can open the [4D Corner platform](https://corner.4d.com/) from the Dependency manager, either in the top of the [Add a dependency window](#adding-a-github-or-gitlab-dependency), or by selecting **Discover more components on 4D Corner...** from the menu at the bottom of the Dependency manager window:
-
+
To install a component from the 4D Corner platform:
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png b/i18n/pt/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png
new file mode 100644
index 00000000000000..02684ee969a8be
Binary files /dev/null and b/i18n/pt/docusaurus-plugin-content-docs/current/assets/en/Project/compile-component.png differ
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png b/i18n/pt/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png
new file mode 100644
index 00000000000000..918456d9d59c43
Binary files /dev/null and b/i18n/pt/docusaurus-plugin-content-docs/current/assets/en/Project/compile-components-errors.png differ
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md b/i18n/pt/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
index 022577359c5d99..8cbb5e3061acc9 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/current/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ O parâmetro *separador* pode ser uma string de múltiplos caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/pt/docusaurus-plugin-content-docs/current/settings/security.md b/i18n/pt/docusaurus-plugin-content-docs/current/settings/security.md
index 44be15e06a5088..f7fadd0494ba25 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/current/settings/security.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/current/settings/security.md
@@ -11,48 +11,68 @@ Esta página contém opções relacionadas ao acesso e à proteção de dados pa
> Essas configurações não se aplicam às bases de dados do projeto abertas no modo de usuário único.
-- **Acceso Diseño y al Explorador de ejecución**: da al grupo especificado la capacidad de entrar al modo Diseño de la base y mostrar el Explorador de ejecución.
+#### Design and Runtime Explorer Access
- Note que:
+Gives the specified group the ability to enter the Design environment of the database and display the Runtime Explorer.
- - La definición de un grupo de acceso en el entorno Diseño también permite desactivar la opción **Crear una tabla** de la caja de diálogo de importación de datos. Para más información sobre esta caja de diálogo, consulte [Importar los datos desde los archivos](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
+Note que:
- - The Designer and Administrator always have access to the Design environment and Runtime Explorer, even if they are not explicitly part of the specified access group.For more information about users and user groups, refer to the [Users and groups](../Users/handling_users_groups.md) chapter.
+- La definición de un grupo de acceso en el entorno Diseño también permite desactivar la opción **Crear una tabla** de la caja de diálogo de importación de datos. Para más información sobre esta caja de diálogo, consulte [Importar los datos desde los archivos](https://doc.4d.com/4Dv20/4D/20.2/Importing-data-from-files.300-6750325.en.html).
-- **Usuario por defecto**: cuando se ha definido un Usuario por defecto, todos los usuarios que abren o se conectan a la base tienen los mismos privilegios y restricciones de acceso definidos para este Usuario por defecto. Já não é necessário introduzir um nome de usuário. Além disso, se você não tiver associado uma senha com o usuário padrão, a caixa de diálogo de senha não aparece mais e o banco de dados abre diretamente.
- Esta opção simplifica o acesso ao banco de dados, mantendo um sistema completo de controle de dados.
+- The Designer and Administrator always have access to the Design environment and Runtime Explorer, even if they are not explicitly part of the specified access group.For more information about users and user groups, refer to the [Users and groups](../Users/handling_users_groups.md) chapter.
- - Se você associou uma senha ao usuário padrão, uma caixa de diálogo aparece quando o banco de dados está aberto e os usuários devem inserir uma senha.
- - If you haven't associated a password with the Default User, the User Identification dialog box will not appear.**Note:** You can "force" the display of the User Identification dialog box when the "Default User" mode is active, for instance in order to connect as Administrator or Designer. Para ello, presione la tecla **Mayús** mientras abre la base de datos o se conecta a ella.
+#### Default User
-- **Mostrar lista de usuarios en la caja de diálogo Contraseña**: si se marca esta opción, los usuarios deben elegir su nombre en la lista de usuarios e introducir su contraseña en la caja de diálogo de identificación de usuario. Se essa opção não estiver marcada, os usuários deverão digitar o nome e a senha. Para obtener más información sobre las dos versiones de la caja de diálogo de contraseña, consulte la sección "Acceso a las bases protegidas" en [Presentación del control de acceso](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html
+When a Default User has been set, every user that opens the database or logs onto it has the same access privileges and restrictions defined for this Default User. Já não é necessário introduzir um nome de usuário. Além disso, se você não tiver associado uma senha com o usuário padrão, a caixa de diálogo de senha não aparece mais e o banco de dados abre diretamente.
- - **Ordenar la lista de los usuarios en orden alfabético** (sólo disponible si está marcada la opción anterior): cuando esta opción está seleccionada, la lista de los usuarios de la caja de diálogo de introducción de contraseña se ordena por orden alfabétic
+Esta opção simplifica o acesso ao banco de dados, mantendo um sistema completo de controle de dados.
-- **Los usuarios pueden cambiar su contraseña**: cuando esta opción está marcada, aparece un botón **Cambiar** en la caja de diálogo Identificación del usuario. Si lo desea, puede ocultar el botón **Cambiar** para que los usuarios no puedan modificar sus contraseñas. This button lets the user access a dialog box that can be used to change their password (for more information about this dialog box, refer to the "Modification of password by user" in [Ensuring system maintenance](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). Para o fazer, basta desmarcar esta opção.
+- Se você associou uma senha ao usuário padrão, uma caixa de diálogo aparece quando o banco de dados está aberto e os usuários devem inserir uma senha.
+- If you haven't associated a password with the Default User, the User Identification dialog box will not appear.
+ **Note:** You can "force" the display of the User Identification dialog box when the "Default User" mode is active, for instance in order to connect as Administrator or Designer. Para ello, presione la tecla **Mayús** mientras abre la base de datos o se conecta a ella.
+
+#### Display User List in Password Dialog Box
+
+If this option is checked, users must choose their name from the list of users and enter their password in the User Identification dialog box. Se essa opção não estiver marcada, os usuários deverão digitar o nome e a senha. Para obtener más información sobre las dos versiones de la caja de diálogo de contraseña, consulte la sección "Acceso a las bases protegidas" en [Presentación del control de acceso](https://doc.4d.com/4Dv20/4D/20.2/Access-system-overview.300-6750353.en.html
+
+#### User List in Alphabetical Order (only available if the previous option is checked)
+
+When this option is checked, the list of users in the password entry dialog box is sorted by alphabetical order.
+
+#### Users can change their password
+
+When this option is checked, a **Change** button is displayed in the User Identification dialog box. Si lo desea, puede ocultar el botón **Cambiar** para que los usuarios no puedan modificar sus contraseñas. This button lets the user access a dialog box that can be used to change their password (for more information about this dialog box, refer to the "Modification of password by user" in [Ensuring system maintenance](https://doc.4d.com/4Dv20/4D/20.2/Ensuring-system-maintenance.300-6750352.en.html)). Para o fazer, basta desmarcar esta opção.
## Opções
-- **Filtering of commands and project methods in the formula editor and in the 4D View Pro and 4D Write Pro documents**:
- For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. Você pode remover completamente ou parcialmente esta filtragem usando as seguintes opções.
- - **Activado para todos** (opción por defecto): el acceso a los comandos, funciones y métodos proyecto está restringido para todos los usuarios, incluidos el Diseñador y el Administrador.
- - **Desactivado para el Diseñador y el Administrador**: esta opción concede acceso completo a los comandos 4D y a los métodos sólo al Diseñador y al Administrador. Ele pode ser usado para definir um modo de acesso ilimitado para comandos e métodos, enquanto permanece no controle das operações realizadas. Durante a fase de desenvolvimento, este modo pode ser usado para testar livremente todas as fórmulas, relatórios e assim por diante. Durante a operação, pode ser usado para configurar soluções seguras que permitam o acesso a comandos e métodos temporários. This consists in changing the user (via the [`CHANGE CURRENT USER`](../commands/change-current-user) command) before calling a dialog box or starting a printing process that requires full access to the commands, then returning to the original user when the specific operation is completed.
- **Nota:** si se ha activado el acceso completo mediante la opción anterior, esta opción no tendrá ningún efecto.
- - **Desactivado para todos**: esta opción desactiva el control en las fórmulas. Quando esta opção estiver marcada, os usuários terão acesso a todos os comandos 4D e plug-ins, bem como a todos os métodos do projeto (exceto para os invisíveis).
- Quando esta opção estiver marcada, os usuários terão acesso a todos os comandos 4D e plug-ins, bem como a todos os métodos do projeto (exceto para os invisíveis). Quando está selecionado, este comando não faz nada.
+#### Filtering of commands and project methods in the formula editor and in the 4D View Pro and 4D Write Pro documents
+
+For security reasons, by default 4D restricts access to the commands, functions and project methods in the [Formula editor](https://doc.4d.com/4Dv20/4D/20.2/Formula-editor.200-6750079.en.html) in Application mode or added to multistyle areas (using [`ST INSERT EXPRESSION`](../commands/st-insert-expression)), 4D Write Pro and 4D View Pro documents: only certain 4D functions and project methods that have been explicitly declared using the [`SET ALLOWED METHODS`](../commands/set-allowed-methods) command can be used. Você pode remover completamente ou parcialmente esta filtragem usando as seguintes opções.
+
+- **Activado para todos** (opción por defecto): el acceso a los comandos, funciones y métodos proyecto está restringido para todos los usuarios, incluidos el Diseñador y el Administrador.
+
+- **Desactivado para el Diseñador y el Administrador**: esta opción concede acceso completo a los comandos 4D y a los métodos sólo al Diseñador y al Administrador. Ele pode ser usado para definir um modo de acesso ilimitado para comandos e métodos, enquanto permanece no controle das operações realizadas. Durante a fase de desenvolvimento, este modo pode ser usado para testar livremente todas as fórmulas, relatórios e assim por diante. Durante a operação, pode ser usado para configurar soluções seguras que permitam o acesso a comandos e métodos temporários. This consists in changing the user (via the [`CHANGE CURRENT USER`](../commands/change-current-user) command) before calling a dialog box or starting a printing process that requires full access to the commands, then returning to the original user when the specific operation is completed.
+ **Nota:** si se ha activado el acceso completo mediante la opción anterior, esta opción no tendrá ningún efecto.
+
+- **Desactivado para todos**: esta opción desactiva el control en las fórmulas. Quando esta opção estiver marcada, os usuários terão acesso a todos os comandos 4D e plug-ins, bem como a todos os métodos do projeto (exceto para os invisíveis).
+ Quando esta opção estiver marcada, os usuários terão acesso a todos os comandos 4D e plug-ins, bem como a todos os métodos do projeto (exceto para os invisíveis). Quando está selecionado, este comando não faz nada.
+
+#### Enable User Settings
+
+You need to check this option to be able to display separated dialog boxes for user settings. Cuando esta opción está marcada, hay disponibles hasta tres cuadros de diálogo: **Propiedades estructura**, **Propiedades usuario**, y **Propiedades usuario para archivo de datos**. Para mais informações, consulte [Parâmetros do usuário](../settings/overview.md#user-settings).
-- **Autorizar las propiedades usuario**: debe marcar esta opción para poder mostrar cajas de diálogo separadas para las propiedades usuario. Cuando esta opción está marcada, hay disponibles hasta tres cuadros de diálogo: **Propiedades estructura**, **Propiedades usuario**, y **Propiedades usuario para archivo de datos**. Para mais informações, consulte [Parâmetros do usuário](../settings/overview.md#user-settings).
+#### Execute "On Host Database Event" method of the components
-- **Execute "On Host Database Event" method of the components**: The [On Host Database Event database method](../commands/on-host-database-event-database-method) facilitates the initialization and backup phases for 4D components. Por razões de segurança, você deve autorizar explicitamente a execução deste método em cada banco de dados de host. Para o efeito, é necessário marcar esta opção. Por padrão, não está marcada.
+The [On Host Database Event database method](../commands/on-host-database-event-database-method) facilitates the initialization and backup phases for 4D components. Por razões de segurança, você deve autorizar explicitamente a execução deste método em cada banco de dados de host. Para o efeito, é necessário marcar esta opção. Por padrão, não está marcada.
- Quando esta opção está seleccionada:
+Quando esta opção está seleccionada:
- - os componentes 4D são carregados,
- - each [On Host Database Event database method](../commands/on-host-database-event-database-method) of the component (if any) is called by the host database,
- - o código do método é executado.
+- os componentes 4D são carregados,
+- each [On Host Database Event database method](../commands/on-host-database-event-database-method) of the component (if any) is called by the host database,
+- o código do método é executado.
- Quando não é verificado:
+Quando não é verificado:
- - Os componentes 4D são carregados, mas eles têm que gerenciar suas fases de inicialização e backup por conta própria.
- - o desenvolvedor do componente tem que publicar os métodos do componente que devem ser chamados pelo banco de dados de host durante estas fases (inicialização e desligamento)
- - o desenvolvedor da base de dados de host deve chamar os métodos apropriados do componente no momento certo (deve ser coberto na documentação do componente).
+- Os componentes 4D são carregados, mas eles têm que gerenciar suas fases de inicialização e backup por conta própria.
+- o desenvolvedor do componente tem que publicar os métodos do componente que devem ser chamados pelo banco de dados de host durante estas fases (inicialização e desligamento)
+- o desenvolvedor da base de dados de host deve chamar os métodos apropriados do componente no momento certo (deve ser coberto na documentação do componente).
diff --git a/i18n/pt/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md b/i18n/pt/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
index 022577359c5d99..8cbb5e3061acc9 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/version-21-R3/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ O parâmetro *separador* pode ser uma string de múltiplos caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/pt/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md b/i18n/pt/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
index 022577359c5d99..8cbb5e3061acc9 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/version-21-R4/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ O parâmetro *separador* pode ser uma string de múltiplos caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/i18n/pt/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md b/i18n/pt/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
index 04b8fd31fe1b62..52ea650ab59cca 100644
--- a/i18n/pt/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
+++ b/i18n/pt/docusaurus-plugin-content-docs/version-21/commands-legacy/split-string.md
@@ -61,8 +61,8 @@ O parâmetro *separador* pode ser uma string de múltiplos caracteres:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/versioned_docs/version-21-R3/language-legacy/String/split-string.md b/versioned_docs/version-21-R3/language-legacy/String/split-string.md
index b5fe8ad9455bc1..ea06ce97980697 100644
--- a/versioned_docs/version-21-R3/language-legacy/String/split-string.md
+++ b/versioned_docs/version-21-R3/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ The *separator* parameter can be a multiple-character string:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/versioned_docs/version-21-R4/language-legacy/String/split-string.md b/versioned_docs/version-21-R4/language-legacy/String/split-string.md
index b5fe8ad9455bc1..ea06ce97980697 100644
--- a/versioned_docs/version-21-R4/language-legacy/String/split-string.md
+++ b/versioned_docs/version-21-R4/language-legacy/String/split-string.md
@@ -61,8 +61,8 @@ The *separator* parameter can be a multiple-character string:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```
diff --git a/versioned_docs/version-21/commands-legacy/split-string.md b/versioned_docs/version-21/commands-legacy/split-string.md
index feed9df309b0ba..1f29f2dd4a1cf5 100644
--- a/versioned_docs/version-21/commands-legacy/split-string.md
+++ b/versioned_docs/version-21/commands-legacy/split-string.md
@@ -61,8 +61,8 @@ The *separator* parameter can be a multiple-character string:
```4d
var $vt : Text
var $col : Collection
- $vt:="NameSmithage40"
- $col:=Split string($vt;"")
+ $vt:="NameSmithage40"
+ $col:=Split string($vt;"")
//$col=["Name","Smith","age","40"]
```