Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
153 commits
Select commit Hold shift + click to select a range
37052c5
New translations application-info.md (Spanish)
arnaud4d Jan 14, 2026
a2cd8cd
New translations entityclass.md (Spanish)
arnaud4d Jan 14, 2026
d1bd7c1
New translations formeditor.md (Spanish)
arnaud4d Jan 14, 2026
e8ed7e2
New translations application-info.md (Spanish)
arnaud4d Jan 14, 2026
8d599ca
New translations footer.json (French)
arnaud4d Jan 14, 2026
5b11aef
New translations code.json (Spanish)
arnaud4d Jan 14, 2026
c83a2c3
New translations footer.json (Spanish)
arnaud4d Jan 14, 2026
34ea86b
New translations footer.json (Japanese)
arnaud4d Jan 14, 2026
ac2b742
New translations footer.json (Portuguese, Brazilian)
arnaud4d Jan 14, 2026
53bb00a
New translations webarea_overview.md (French)
arnaud4d Jan 15, 2026
a791116
New translations webarea_overview.md (Spanish)
arnaud4d Jan 15, 2026
4fa0465
New translations webarea_overview.md (Japanese)
arnaud4d Jan 15, 2026
4b19700
New translations webarea_overview.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
09c8530
New translations fileclass.md (Spanish)
arnaud4d Jan 15, 2026
dde125c
New translations functionclass.md (Spanish)
arnaud4d Jan 15, 2026
95c79a9
New translations webformclass.md (Spanish)
arnaud4d Jan 15, 2026
fb52e21
New translations data-collect.md (Spanish)
arnaud4d Jan 15, 2026
fd0551b
New translations quick-tour.md (Spanish)
arnaud4d Jan 15, 2026
0a72462
New translations clientserver.md (French)
arnaud4d Jan 15, 2026
7f27c43
New translations clientserver.md (Spanish)
arnaud4d Jan 15, 2026
5ce5aa6
New translations clientserver.md (Japanese)
arnaud4d Jan 15, 2026
e653a83
New translations clientserver.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
ffd1c1e
New translations develop-components.md (Spanish)
arnaud4d Jan 15, 2026
3b08b3a
New translations createstylesheet.md (Spanish)
arnaud4d Jan 15, 2026
cf4a6da
New translations forms.md (Spanish)
arnaud4d Jan 15, 2026
e10e092
New translations properties_formproperties.md (Spanish)
arnaud4d Jan 15, 2026
717f9e9
New translations properties_appearance.md (Spanish)
arnaud4d Jan 15, 2026
1b61cdf
New translations installation.md (Spanish)
arnaud4d Jan 15, 2026
5a386a2
New translations updates.md (Spanish)
arnaud4d Jan 15, 2026
230a599
New translations privileges.md (Spanish)
arnaud4d Jan 15, 2026
45e800c
New translations components.md (Spanish)
arnaud4d Jan 15, 2026
3013249
New translations $orderby.md (Spanish)
arnaud4d Jan 15, 2026
11ffb6f
New translations transformation-tags.md (Spanish)
arnaud4d Jan 15, 2026
ba9fa3e
New translations interface.md (Spanish)
arnaud4d Jan 15, 2026
c7d1bbd
New translations open-datastore.md (Spanish)
arnaud4d Jan 15, 2026
b631b39
New translations web-server.md (Spanish)
arnaud4d Jan 15, 2026
a576a9b
New translations webarea_overview.md (French)
arnaud4d Jan 15, 2026
17f44d8
New translations webarea_overview.md (Spanish)
arnaud4d Jan 15, 2026
4ea2259
New translations http-request-handler.md (Spanish)
arnaud4d Jan 15, 2026
4725cb7
New translations webarea_overview.md (Japanese)
arnaud4d Jan 15, 2026
a01f92b
New translations webarea_overview.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
755a3ef
New translations wp-import-document.md (Spanish)
arnaud4d Jan 15, 2026
c16af4a
New translations functionclass.md (Spanish)
arnaud4d Jan 15, 2026
21501fa
New translations data-collect.md (Spanish)
arnaud4d Jan 15, 2026
a4a2bfc
New translations clientserver.md (French)
arnaud4d Jan 15, 2026
939e828
New translations clientserver.md (Spanish)
arnaud4d Jan 15, 2026
b17fc13
New translations clientserver.md (Japanese)
arnaud4d Jan 15, 2026
89a2175
New translations clientserver.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
3748be2
New translations develop-components.md (Spanish)
arnaud4d Jan 15, 2026
9b4c0ea
New translations open-datastore.md (Spanish)
arnaud4d Jan 15, 2026
c180736
New translations webarea_overview.md (French)
arnaud4d Jan 15, 2026
b6efd28
New translations webarea_overview.md (Spanish)
arnaud4d Jan 15, 2026
764db75
New translations webarea_overview.md (Japanese)
arnaud4d Jan 15, 2026
767968c
New translations webarea_overview.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
4830164
New translations privileges.md (Spanish)
arnaud4d Jan 15, 2026
127cfd3
New translations components.md (Spanish)
arnaud4d Jan 15, 2026
0b80f7c
New translations http-request-handler.md (Spanish)
arnaud4d Jan 15, 2026
2e1c3c9
New translations wp-import-document.md (Spanish)
arnaud4d Jan 15, 2026
bd1b061
New translations web-event.md (Spanish)
arnaud4d Jan 15, 2026
4c541ca
New translations web-form.md (Spanish)
arnaud4d Jan 15, 2026
cab6fe4
New translations web-event.md (Spanish)
arnaud4d Jan 15, 2026
93db661
New translations web-form.md (Spanish)
arnaud4d Jan 15, 2026
5eecd39
New translations search-replace.md (Spanish)
arnaud4d Jan 15, 2026
300c151
New translations user-new.md (Spanish)
arnaud4d Jan 15, 2026
2737267
New translations sessions.md (Spanish)
arnaud4d Jan 15, 2026
8de417a
New translations sessions.md (Spanish)
arnaud4d Jan 15, 2026
6437d00
New translations application-info.md (Spanish)
arnaud4d Jan 15, 2026
d0c1e8e
New translations form-theme.md (Spanish)
arnaud4d Jan 15, 2026
69bd9b1
New translations fileclass.md (Spanish)
arnaud4d Jan 15, 2026
d04da36
New translations functionclass.md (Spanish)
arnaud4d Jan 15, 2026
e9e368b
New translations webformclass.md (Spanish)
arnaud4d Jan 15, 2026
73c337b
New translations data-collect.md (Spanish)
arnaud4d Jan 15, 2026
34e6d8e
New translations clientserver.md (French)
arnaud4d Jan 15, 2026
e18f3dd
New translations quick-tour.md (Spanish)
arnaud4d Jan 15, 2026
290e139
New translations clientserver.md (Spanish)
arnaud4d Jan 15, 2026
a6491fd
New translations clientserver.md (Japanese)
arnaud4d Jan 15, 2026
341ec2b
New translations clientserver.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
704dd50
New translations sessions.md (Spanish)
arnaud4d Jan 15, 2026
0249985
New translations develop-components.md (Spanish)
arnaud4d Jan 15, 2026
709aac3
New translations createstylesheet.md (Spanish)
arnaud4d Jan 15, 2026
aac8192
New translations forms.md (Spanish)
arnaud4d Jan 15, 2026
9bdfcba
New translations properties_formproperties.md (Spanish)
arnaud4d Jan 15, 2026
c42b562
New translations properties_appearance.md (Spanish)
arnaud4d Jan 15, 2026
26bc481
New translations webarea_overview.md (French)
arnaud4d Jan 15, 2026
a3c5aca
New translations webarea_overview.md (Spanish)
arnaud4d Jan 15, 2026
37bdcdb
New translations webarea_overview.md (Japanese)
arnaud4d Jan 15, 2026
71cb465
New translations webarea_overview.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
4039b03
New translations installation.md (Spanish)
arnaud4d Jan 15, 2026
283b587
New translations updates.md (Spanish)
arnaud4d Jan 15, 2026
c9f3e17
New translations privileges.md (Spanish)
arnaud4d Jan 15, 2026
a735728
New translations components.md (Spanish)
arnaud4d Jan 15, 2026
8aba109
New translations search-replace.md (Spanish)
arnaud4d Jan 15, 2026
d91e383
New translations $orderby.md (Spanish)
arnaud4d Jan 15, 2026
fbe3eb5
New translations configuration.md (Spanish)
arnaud4d Jan 15, 2026
02f3556
New translations transformation-tags.md (Spanish)
arnaud4d Jan 15, 2026
58c4ddf
New translations http-request-handler.md (Spanish)
arnaud4d Jan 15, 2026
60e3293
New translations wp-import-document.md (Spanish)
arnaud4d Jan 15, 2026
3c66a9d
New translations user-new.md (Spanish)
arnaud4d Jan 15, 2026
cc47782
New translations application-info.md (Spanish)
arnaud4d Jan 15, 2026
acc5bde
New translations form-theme.md (Spanish)
arnaud4d Jan 15, 2026
269715d
New translations open-datastore.md (Spanish)
arnaud4d Jan 15, 2026
36777bd
New translations web-event.md (Spanish)
arnaud4d Jan 15, 2026
49aaec5
New translations web-form.md (Spanish)
arnaud4d Jan 15, 2026
4a58367
New translations web-server.md (Spanish)
arnaud4d Jan 15, 2026
96e4fd4
New translations interface.md (Spanish)
arnaud4d Jan 15, 2026
4deb1d2
New translations webadmin.md (French)
arnaud4d Jan 15, 2026
044cd96
New translations webadmin.md (Spanish)
arnaud4d Jan 15, 2026
6375441
New translations webadmin.md (Japanese)
arnaud4d Jan 15, 2026
08f9d4d
New translations webadmin.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
cc7ef2e
New translations updates.md (French)
arnaud4d Jan 15, 2026
e2ce524
New translations updates.md (Spanish)
arnaud4d Jan 15, 2026
ebc50ee
New translations updates.md (Japanese)
arnaud4d Jan 15, 2026
ac8ec69
New translations updates.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
df61bd5
New translations overview.md (French)
arnaud4d Jan 15, 2026
f5409d1
New translations overview.md (Spanish)
arnaud4d Jan 15, 2026
32154eb
New translations overview.md (Japanese)
arnaud4d Jan 15, 2026
9660ffb
New translations overview.md (Portuguese, Brazilian)
arnaud4d Jan 15, 2026
80318ca
New translations http-request-handler.md (French)
arnaud4d Jan 16, 2026
b74f2a9
New translations http-request-handler.md (Spanish)
arnaud4d Jan 16, 2026
dfd019b
New translations http-request-handler.md (Japanese)
arnaud4d Jan 16, 2026
25a5fdd
New translations http-request-handler.md (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
0666d29
New translations updates.md (French)
arnaud4d Jan 16, 2026
cdf0c0d
New translations updates.md (Spanish)
arnaud4d Jan 16, 2026
1781301
New translations updates.md (Japanese)
arnaud4d Jan 16, 2026
da53a3a
New translations updates.md (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
e749b54
New translations http-request-handler.md (French)
arnaud4d Jan 16, 2026
52c8adc
New translations http-request-handler.md (Spanish)
arnaud4d Jan 16, 2026
9dd8f9c
New translations http-request-handler.md (Japanese)
arnaud4d Jan 16, 2026
cb085e3
New translations http-request-handler.md (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
b8a3793
New translations sessions.md (French)
arnaud4d Jan 16, 2026
1a20065
New translations sessions.md (Spanish)
arnaud4d Jan 16, 2026
716a7e6
New translations sessions.md (Japanese)
arnaud4d Jan 16, 2026
6b67aa4
New translations sessions.md (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
f184428
New translations updates.md (French)
arnaud4d Jan 16, 2026
6a4aed8
New translations updates.md (Spanish)
arnaud4d Jan 16, 2026
7724ee2
New translations updates.md (Japanese)
arnaud4d Jan 16, 2026
0e7a8a2
New translations updates.md (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
420b68b
New translations http-request-handler.md (French)
arnaud4d Jan 16, 2026
dcbf0f7
New translations http-request-handler.md (Spanish)
arnaud4d Jan 16, 2026
4cb8a38
New translations http-request-handler.md (Japanese)
arnaud4d Jan 16, 2026
78d45e2
New translations http-request-handler.md (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
c8ca180
New translations develop-mode.png (French)
arnaud4d Jan 16, 2026
d3979cb
New translations develop-mode.png (French)
arnaud4d Jan 16, 2026
b390a64
New translations develop-mode.png (French)
arnaud4d Jan 16, 2026
e9485eb
New translations develop-mode.png (Spanish)
arnaud4d Jan 16, 2026
4f356a4
New translations develop-mode.png (Spanish)
arnaud4d Jan 16, 2026
789a628
New translations develop-mode.png (Spanish)
arnaud4d Jan 16, 2026
4348310
New translations develop-mode.png (Japanese)
arnaud4d Jan 16, 2026
184c655
New translations develop-mode.png (Japanese)
arnaud4d Jan 16, 2026
c7159c1
New translations develop-mode.png (Japanese)
arnaud4d Jan 16, 2026
ac0dfa6
New translations develop-mode.png (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
3b175e0
New translations develop-mode.png (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
378cf94
New translations develop-mode.png (Portuguese, Brazilian)
arnaud4d Jan 16, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions i18n/es/code.json
Original file line number Diff line number Diff line change
Expand Up @@ -773,7 +773,7 @@
"message": "Sesiones"
},
"theme.IconExternalLink.ariaLabel": {
"message": "(opens in new tab)",
"message": "(se abre en una nueva pestaña)",
"description": "The ARIA label for the external link icon"
},
"theme.SearchModal.searchBox.placeholderText": {
Expand All @@ -785,7 +785,7 @@
"description": "The placeholder text when in AI question mode"
},
"theme.SearchModal.searchBox.placeholderTextAskAiStreaming": {
"message": "Answering...",
"message": "Contestando...",
"description": "The placeholder text for search box when AI is streaming an answer"
},
"theme.SearchModal.searchBox.enterKeyHint": {
Expand Down Expand Up @@ -813,23 +813,23 @@
"description": "The title for recent conversations"
},
"theme.SearchModal.startScreen.removeRecentConversationButtonTitle": {
"message": "Remove this conversation from history",
"message": "Eliminar esta conversación de la historia",
"description": "The title for remove recent conversation button"
},
"theme.SearchModal.resultsScreen.askAiPlaceholder": {
"message": "Ask AI: ",
"message": "Pregúntale a la IA: ",
"description": "The placeholder text for Ask AI input"
},
"theme.SearchModal.askAiScreen.disclaimerText": {
"message": "Answers are generated with AI which can make mistakes. Verify responses.",
"message": "Las respuestas se generan con IA que pueden causar errores. Verifique las respuestas.",
"description": "The disclaimer text for AI answers"
},
"theme.SearchModal.askAiScreen.relatedSourcesText": {
"message": "Related sources",
"description": "The text for related sources"
},
"theme.SearchModal.askAiScreen.thinkingText": {
"message": "Thinking...",
"message": "Pensando...",
"description": "The text when AI is thinking"
},
"theme.SearchModal.askAiScreen.copyButtonText": {
Expand Down Expand Up @@ -857,15 +857,15 @@
"description": "The text for thanks for feedback"
},
"theme.SearchModal.askAiScreen.preToolCallText": {
"message": "Searching...",
"message": "Buscando...",
"description": "The text before tool call"
},
"theme.SearchModal.askAiScreen.duringToolCallText": {
"message": "Searching for ",
"description": "The text during tool call"
},
"theme.SearchModal.askAiScreen.afterToolCallText": {
"message": "Searched for",
"message": "Buscado por",
"description": "The text after tool call"
},
"theme.SearchModal.footer.submitQuestionText": {
Expand Down
24 changes: 12 additions & 12 deletions i18n/es/docusaurus-plugin-content-docs/current/API/FileClass.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ También puede ejecutar una función utilizando las funciones [`apply()`](#apply

#### Paso de parámetros

You can pass parameters to your formulas using a sequential parameter syntax based upon `$1, $2,...,$n`. The numbering of the $ parameters represents the order in which they will be passed to the formula. Por ejemplo, puede escribir:
Puede pasar parámetros a sus fórmulas utilizando una sintaxis secuencial de parámetros basada en `$1, $2,...,$n`. La numeración de los parámetros $ representa el orden en que se pasarán a la fórmula. Por ejemplo, puede escribir:

```4d
var $f : Object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ La clase `WebForm` contiene funciones y propiedades que permiten manejar sus com

The components of web pages are <!-- REF WebFormClass.componentName.Summary -->objects that are available directly as properties<!-- END REF --> of these web pages.

The returned objects are of the [`4D.WebFormItem`](WebFormItemClass.md) class. Estos objetos tienen funciones que puede utilizar para gestionar sus componentes de forma dinámica.
Los objetos devueltos son de la clase [`4D.WebFormItem`](WebFormItemClass.md). Estos objetos tienen funciones que puede utilizar para gestionar sus componentes de forma dinámica.

#### Ejemplo

Expand All @@ -50,7 +50,7 @@ shared singleton Class constructor()

:::info

While `myForm` may not display typical object properties when examined in the debugger, it behaves as if it were the actual `webForm` object. You can interact with the underlying `webForm` object's properties and functions through `myForm`. For example, you can dynamically manipulate page components or transmit messages to web pages using specialized functions like `myForm.setMessage()`.
While `myForm` may not display typical object properties when examined in the debugger, it behaves as if it were the actual `webForm` object. Puede interactuar con las propiedades y funciones del objeto `webForm` subyacente a través de `myForm`. For example, you can dynamically manipulate page components or transmit messages to web pages using specialized functions like `myForm.setMessage()`.

:::

Expand All @@ -72,7 +72,7 @@ The `.disableState()` function <!-- REF #WebFormClass.disableState().Summary -->

Esta función no hace nada si:

- the *state* is currently not enabled in the web page,
- el *state* no está habilitado actualmente en la página web,
- el *estado* no existe para la página web.

Si [activa](#enablestate) o desactiva varios estados en la misma función usuario, todas las modificaciones se envían al mismo tiempo al cliente una vez finalizada la función.
Expand All @@ -97,7 +97,7 @@ The `.enableState()` function <!-- REF #WebFormClass.enableState().Summary -->en

Esta función no hace nada si:

- the *state* has already been enabled on the web page,
- el *estado* ya ha sido activado en la página web,
- el *estado* no existe para la página web.

Si activa o [desactiva](#disablestate) varios estados dentro de la misma función usuario, todas las modificaciones se envían al mismo tiempo al cliente una vez que la función termina.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ id: data-collect
title: Recopilación de datos
---

Para que nuestros productos sean siempre mejores, recogemos automáticamente los datos relativos a las estadísticas de uso de las aplicaciones 4D Server en funcionamiento. Collected data is transferred with no impact on the user experience. No se recopila información personal. For more information on 4D policy regarding personal data protection, please got to [this page](https://us.4d.com/privacy-policy).
Para que nuestros productos sean siempre mejores, recogemos automáticamente los datos relativos a las estadísticas de uso de las aplicaciones 4D Server en funcionamiento. Los datos recogidos se transfieren sin ningún impacto en la experiencia del usuario. No se recopila información personal. For more information on 4D policy regarding personal data protection, please got to [this page](https://us.4d.com/privacy-policy).

La sección siguiente lo explica:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,8 +137,6 @@ Esta opción se marca automáticamente si ha utilizado la [caja de diálogo de c

:::

:::note

## Configuración sin interfaz

Todas las [propiedades del servidor de administración Web](#settings) se almacenan en el archivo `WebAdmin.4DSettings`. Hay un archivo `WebAdmin.4DSettings` por defecto por cada aplicación 4D y 4D Server, por lo que es posible desplegar varias aplicaciones en la misma máquina local.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -428,5 +428,5 @@ Las siguientes convenciones se utilizan en la documentación del lenguaje 4D:

- los caracteres{ }`(llaves) indican parámetros opcionales. Por ejemplo,`.delete( { option : Integer } )\` significa que el parámetro *option* puede omitirse al llamar a la función.
- la palabra clave `any` se utiliza para parámetros que pueden ser de cualquier tipo (número, texto, booleano, fecha, hora, objeto, colección...).
- the `{; ...*param* : Type}` notation indicates an unlimited number of parameters of the same type. For example, `.concat( value : any { ;...valueN : any } ) : Collection` means that an unlimited number of values of any type can be passed to the function.
- la notación `{; ...*param* : Type}` indica un número ilimitado de parámetros del mismo tipo. For example, `.concat( value : any { ;...valueN : any } ) : Collection` means that an unlimited number of values of any type can be passed to the function.
- the `{; ...(*param* : Type ; *param2* : Type) }` notation indicates an unlimited number of groups of parameters. For example, `COLLECTION TO ARRAY ( collection : Collection ; array : Array {; propertyName : Text}{; ...(array : Array ; propertyName : Text) } )` means that an unlimited number of couple values of type array/text can be passed to the command.
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Si el proyecto publicado no aparece en la lista **Disponible**, seleccione **Per
- Si dos servidores se ejecutan simultáneamente en la misma máquina, la dirección IP debe ir seguida de dos puntos y del número de puerto, por ejemplo: `192.168.92.104:19814`.
- Por defecto, el puerto de publicación de un 4D Server es el 19813. Este número puede modificarse en los parámetros del proyecto.

> La opción **Activar modo desarrollo** abre la conexión remota en un modo especial de lectura/escritura y requiere acceder a la carpeta del proyecto desde el 4D remoto (opción de compatibilidad).
> The [**Activate development mode**](#development-mode) option opens the remote connection in a special read/write mode and requires to access the project folder from the remote 4D.

Una vez que esta página asigna un servidor, al hacer clic en el botón **Aceptar** podrá conectarse al servidor.

Expand All @@ -61,7 +61,7 @@ Una vez establecida la conexión con el servidor, el proyecto remoto aparecerá

- Una versión .4dz actualizada del proyecto se produce automáticamente cuando es necesario, \*es decir, \*cuando el proyecto ha sido modificado y recargado por 4D Server. El proyecto se recarga:
- automáticamente, cuando la ventana de la aplicación 4D Server pasa al frente del sistema operativo o cuando la aplicación 4D en la misma máquina guarda una modificación (ver abajo).
- cuando se ejecuta el comando `RELOAD PROJECT`. Llamar a este comando es necesario cuando, por ejemplo, se ha sacado una nueva versión del proyecto desde la plataforma de control de fuentes.
- when the [`RELOAD PROJECT`](../commands-legacy/reload-project.md) command is executed. Llamar a este comando es necesario cuando, por ejemplo, se ha sacado una nueva versión del proyecto desde la plataforma de control de fuentes.

### Actualización de los archivos de proyecto en las máquinas remotas

Expand All @@ -71,7 +71,7 @@ Cuando se ha producido una versión .4dz actualizada del proyecto en 4D Server,

Cuando 4D se conecta a un 4D Server en la misma máquina, la aplicación se comporta como 4D en modo monopuesto y el entorno de diseño le permite editar los archivos del proyecto. Esta funcionalidad le permite desarrollar una aplicación cliente/servidor en el mismo contexto de despliegue.

> When 4D connects to a 4D Server on the same machine, the **development mode** is automatically activated, whatever the [Activate development mode](#opening-a-remote-project) option status.
> When 4D connects to a 4D Server on the same machine, the **development mode** is automatically activated, whatever the [Development mode](#development-mode) status.

Cada vez que 4D realiza una acción **Guardar todo** desde el entorno de diseño (explícitamente desde el menú **Archivo** o implícitamente al cambiar al modo aplicación, por ejemplo), 4D Server recarga sincronizadamente los archivos del proyecto. 4D espera a que 4D Server termine de recargar los archivos del proyecto antes de continuar.

Expand All @@ -85,3 +85,42 @@ Sin embargo, debe prestar atención a las siguientes diferencias de comportamien

> No se recomienda instalar plug-ins o componentes a nivel de la aplicación 4D o 4D Server.

## Development mode

The **Development mode** in 4D Server is a special project opening mode that allows read/write access for connected remote 4D applications. El proyecto debe estar disponible en [modo **interpretado**](../Concepts/interpreted.md).

Este modo permite que uno o varios desarrolladores trabajen simultáneamente en el mismo proyecto en el entorno Diseño. Cuando se abre un proyecto en **modo Desarrollo**:

- Los archivos de proyecto están disponibles en lectura/escritura para que pueda editar métodos, formularios, etc.
- Several remote 4D can concurrently open the same interpreted project files and edit them. Un sistema de bloqueo automático impide el acceso simultáneo a un mismo recurso.
- Las modificaciones se ponen a disposición de todos los desarrolladores remotos. Note however that there is no automatic push to remote developers, they need to refresh to get latest versions of files (a refresh is done each time the developer switches from design mode to application mode for example, or selects **Save all** from the **File** menu).

To use this mode, select the **Activate development mode** option in the [connection dialog box](#opening-a-remote-project) from your remote 4D. You are prompted to **Select 4D project file**: you need to select the [.project file](../Project/architecture.md#applicationname4dproject-file) that 4D Server has opened. Si selecciona un archivo diferente, un cuadro de diálogo de alerta le avisa de que el modo de desarrollo no está disponible. It means that the remote 4D must have access to the project folder over the network (the whole project folder must be shared, i.e. the root folder of the project).

:::caution

For performance reasons with this configuration, it is strongly recommended that the project folder be stored on a dedicated file server (e.g. a NAS) on a local network.

:::

:::note

When both the server and the remote 4D are on the same machine, [additional rules applies](#using-4d-and-4d-server-on-the-same-machine).

:::

He aquí un resumen de la arquitectura del modo de desarrollo:

![](../assets/en/Desktop/develop-mode.png)

:::note Compatibilidad

This feature is designed for small-size development teams who are used to work on binary databases and want to benefit from project features while maintaining their current organisation. However, for multi-user development on 4D projects, we recommend using a standard architecture where developers work on their machine and manage their work using source control repository tools (Git, SVN, etc.). This organisation provides a great flexibility by allowing developers to work on different branches, and compare, merge, or revert modifications.

:::

:::tip Entrada de blog relacionada

[Developing Concurrently on 4D Server in Project Mode](https://blog.4d.com/developing-concurrently-on-4d-server-in-project-mode/)

:::
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Sin embargo, a diferencia del código ejecutado en las sesiones de usuario web,

No obstante, puede [**compartir** una sesión de escritorio con una sesión web](#sharing-a-desktop-session-for-web-accesses) para que un usuario de escritorio pueda acceder a su aplicación 4D a través de una interfaz web, utilizando por ejemplo páginas Qodly y áreas web.

## Session types {#session-types}
## Tipos de sesiones {#session-types}

Las sesiones de escritorio incluyen:

Expand All @@ -29,13 +29,13 @@ El siguiente diagrama muestra los diferentes tipos de sesión y cómo interactú

![](../assets/en/Desktop/sessions.png)

## Remote user sessions {#remote-user-sessions}
## Sesiones de usuarios remotos {#remote-user-sessions}

En el servidor, en los "procesos de usuario" (es decir, procesos relacionados con usuarios remotos), el comando [`Session`](../commands/session.md) devuelve un objeto `session` que describe la sesión de usuario actual. Este objeto se maneja a través de las funciones y propiedades de la [clase `Session`](../API/SessionClass.md).

:::note

On a remote 4D, the [`Session`](../commands/session) command always returns null.
En un 4D remoto, el comando [`Session`](../commands/session) siempre devuelve null.

:::

Expand All @@ -62,13 +62,13 @@ El objeto `session` del usuario remoto está disponible en:
- las [funciones ORDA del modelo de datos](../ORDA/ordaClasses.md) (excepto las declaradas con la palabra clave [`local`](../ORDA/ordaClasses.md#local-functions)),
- métodos base como [`On Server Open Connection`](../commands/on-server-open-connection-database-method) y [`On Server Close Connection`](../commands/on-server-close-connection-database-method).

## Stored procedure sessions {#stored-procedure-sessions}
## Sesiones de procedimientos almacenados {#stored-procedure-sessions}

En el servidor, todos los [procedimientos almacenados](https://doc.4d.com/4Dv20/4D/20/Stored-Procedures.300-6330553.en.html) comparten la misma sesión de usuario virtual.

### Utilización

You can share data between all processes of a stored procedure session using the [`session.storage`](../API/SessionClass.md#storage) shared object.
Puede compartir datos entre todos los procesos de una sesión de procedimiento almacenados utilizando el objeto compartido [`session.storage`](../API/SessionClass.md#storage).

### Disponibilidad

Expand All @@ -78,7 +78,7 @@ El objeto `session` de los procedimientos almacenados está disponible desde:
- las [funciones ORDA del modelo de datos](../ORDA/ordaClasses.md) llamadas desde un procedimiento almacenado,
- los métodos base como [`On Server Startup`](../commands/on-server-startup-database-method) y [`On Server Shutdown`](../commands/on-server-shutdown-database-method).

## Standalone sessions {#standalone-sessions}
## Sesiones autónomas {#standalone-sessions}

Una sesión independiente es la sesión de un solo usuario que se ejecuta cuando trabaja localmente con 4D.

Expand All @@ -90,7 +90,7 @@ La sesión autónoma se puede utilizar para desarrollar y probar su aplicación

El objeto `session` de una aplicación autónoma está disponible desde todos los métodos y código ejecutado en la aplicación 4D.

## Sharing a desktop session for web accesses {#sharing-a-desktop-session-for-web-accesses}
## Compartir una sesión de escritorio para los accesos web {#sharing-a-desktop-session-for-web-accesses}

Las sesiones de escritorio pueden utilizarse para gestionar los accesos web a la aplicación por parte del mismo usuario y, de este modo, gestionar sus [privilegios](../ORDA/privileges.md). Esta posibilidad es especialmente útil para aplicaciones Cliente/Servidor en las que se utilizan [páginas Qodly](https://developer.4d.com/qodly/4DQodlyPro/pageLoaders/pageLoaderOverview) para la interfaz, que se ejecutan en máquinas remotas. Con esta configuración, sus aplicaciones disponen de modernas interfaces web basadas en CSS, pero siguen beneficiándose de la potencia y la sencillez del desarrollo cliente/servidor integrado. En tales aplicaciones, las páginas Qodly se ejecutan dentro de las [áreas Web](../FormObjects/webArea_overview.md) 4D estándar.

Expand All @@ -110,7 +110,7 @@ Cuando se crea un token OTP en un entorno cliente/servidor, es necesario ejecuta

:::tip Entrada de blog relacionada

[Integre páginas Qodly en un área web 4D sin costo adicional](https://blog.4d.com/embed-qodly-pages-in-a-4d-web-area-without-extra-cost)
[Integre páginas Qodly en un área web 4D sin costo adicional](https://blog.4d.com/share-your-4d-remote-client-session-with-web-accesses/)

:::

Expand Down
Loading
Loading