versión 11.3 (Modificado)
SET DATABASE PARAMETER ({aTabla; }selector; valor)
Parámetro | Tipo | Descripción | |
aTabla | Tabla | Tabla para la cual definir el parámetro o | |
Tabla por defecto si se omite este parámetro | |||
selector | Entero largo | Código del parámetro de la base a modificar | |
valor | Ent. largo | Alfa | Valor del parámetro |
Descripción
El comando SET DATABASE PARAMETER permite modificar varios parámetros internos de la base de datos 4D.
El selector designa el parámetro a modificar. 4D ofrece tiene constantes predefinidas, ubicadas en el tema "Database Parameters". La siguiente tabla lista cada constante, describe su alcance e indica si los eventuales cambios se conservan entre dos sesiones:
Constante selector | Valor | Alcance | Conservación |
Seq Order Ratio | 1 | **** Selector desactivado**** | - |
Seq Access Optimization | 2 | **** Selector desactivado**** | - |
Seq Distinct Values Ratio | 3 | **** Selector desactivado**** | - |
Index Compacting | 4 | **** Selector desactivado**** | - |
Seq Query Select Ratio | 5 | **** Selector desactivado **** | - |
Minimum Web Process | 6 | 4D local, 4D Server (*) | Sí |
Maximum Web Process | 7 | 4D local, 4D Server (*) | Sí |
Web conversion mode | 8 | Proceso actual | - |
Database cache size | 9 | Aplicación 4D (*) (**) | - |
4D Local Mode Scheduler | 10 | Aplicación 4D (*) | Sí |
4D Server Scheduler | 11 | Aplicación 4D (*) | Sí |
4D Remote Mode Scheduler | 12 | Aplicación 4D (*) | Sí |
4D Server Timeout | 13 | Aplicación 4D si el valor es positivo (***) | Sí |
4D Client Timeout | 14 | Aplicación 4D si el valor es positivo (***) | Sí |
Port ID | 15 | 4D local, 4D Server (*) | - |
IP Address to listen | 16 | 4D local, 4D Server (*) | Sí |
Character set | 17 | 4D local, 4D Server (*) | Sí |
Max Concurrent Web Processes | 18 | 4D local, 4D Server (*) | Sí |
Client Minimum process Web | 19 | Todos los equipos 4D Client (*) | Sí |
Client Maximum process Web | 20 | Todos los equipos 4D Client (*) | Sí |
Client Max Web requests size | 21 | Todos los equipos 4D Client (*) | Sí |
Client Port ID | 22 | Todos los equipos 4D Client (*) | Sí |
Client IP Address to listen | 23 | Todos los equipos 4D Client (*) | Sí |
Client Character set | 24 | Todos los equipos 4D Client (*) | Sí |
Client Max Concurrent Web Proc | 25 | Todos los equipos 4D Client (*) | Sí |
Cache writing mode | 26 | ****Selector desactivado **** | - |
Maximum Web requests size | 27 | 4D local, 4D Server (*) | Sí |
4D Server Log Recording | 28 | 4D Server, 4D Client (*) | - |
Web Log Recording | 29 | 4D local, 4D Server (*) | Sí |
Client Web Log Recording | 30 | Todos los equipos 4D Client (*) | Sí |
Table Sequence Number | 31 | Aplicación 4D | Sí |
Real Display Precision | 32 | Aplicación 4D | - |
TCP_NODELAY | 33 | Aplicación 4D (*) | - |
Debug Log Recording | 34 | Aplicación 4D (*) | - |
Client Server Port ID | 35 | Base de datos (*) | Sí |
WEDD Signature | 36 | Base de datos (*) | Sí |
Invert Objects | 37 | Base de datos (*) | Sí |
HTTPS Port ID | 39 | 4D local, 4D Server (*) | Sí |
Client HTTPS Port ID | 40 | Todos los equipos 4D Client (*) | Sí |
Unicode mode | 41 | Base de datos (*) | Sí |
Temporary memory size | 42 | Aplicación 4D (*) | - |
SQL Autocommit | 43 | Base de datos (*) | Sí |
SQL Engine Case Sensitivity | 44 | Base de datos (*) | Sí |
Client Log Recording | 45 | Equipo remoto 4D (*) | - |
Query By Formula On Server | 46 | Tabla y proceso actual | - |
Order By Formula On Server | 47 | Tabla y proceso actual | - |
Auto Synchro Resources Folder | 48 | Equipo remoto 4D(*) | - |
QUERY BY FORMULA Joins | 49 | Proceso actual(*) | - |
HTTP Compression Level | 50 | Aplicación 4D (*) | - |
HTTP Compression Threshold | 51 | Aplicación 4D (*) | - |
(*) El parámetro tabla se ignora en este caso.
(**) Este selector es de sólo lectura (ver el comando Get database parameter).
(***) Si el parámetro valor es negativo, el parámetro es local para el proceso actual y se reinicializa para la siguiente petición.
valor designa el valor del parámetro. El valor a pasar depende del parámetro que quiera modificar.
Estos son los valores posibles para cada selector:
Selector = 1 (Seq Order Ratio)
Este selector se ha desactivado ya que corresponde a un mecanismo que se ha optimizado en 4D versión 11.
Selector = 2 (Seq Access Optimization)
Este selector se ha desactivado ya que corresponde a un mecanismo que se ha optimizado en 4D versión 11.
Selector = 3 (Seq Distinct Values Ratio)
Este selector se ha desactivado ya que corresponde a un mecanismo que se ha optimizado en 4D versión 11.
Selector = 4 (Index Compacting)
This selector has been disabled since it corresponds to a mechanism that has been optimized in 4D versión 11.
Selector = 5 (Seq Query Select Ratio)
Este selector se ha desactivado ya que corresponde a un mecanismo que se ha optimizado en 4D versión 11.
Selector = 6 (Minimum Web Process)
Valores posibles: 0 -> 32 767
Descripción: Número mínimo del proceso Web a mantener en modo no contextual con 4D en modo local y 4D Server. Por defecto, el valor es 0 (ver a continuación).
Selector = 7 (Maximum Web Process)
Valores posibles: 0 -> 32,767
Descripción: Número máximo de procesos Web a mantener en modo no contextual con 4D en modo local y 4D Server. Por defecto, el valor es 10.
En modo no contextual, para que el servidor Web se reactive, 4D retrasa los procesos Web 5 segundos y los reutiliza para ejecutar las eventuales futuras peticiones HTTP. En términos de rendimiento, este principio es realmente más ventajoso que la creación de un nuevo proceso para cada petición. Una vez se reutiliza este proceso Web, se retrasa nuevamente por 5 segundos. Cuando se alcanza el número máximo de procesos Web, el proceso Web se aborta. Si ninguna petición ha sido atribuida a un proceso Web durante los 5 segundos de la demora, el proceso se aborta, excepto si se ha alcanzado el número mínimo de procesos Web (en ese caso el proceso se retrasa nuevamente).
Estos parámetros le permiten ajustar el funcionamiento de su servidor Web en función del número de peticiones, la memoria disponible, etc.
Selector = 8 (Web conversion mode)
Valores posibles: 0, 1, 2 o 3
0= (modo por defecto) Conversión al formato HTML 4.0 si el navegador lo permite. De lo contrario, formato HTML 3.2 + uso de array.
1= 6.0.x conversion mode
2= 6.5 conversion mode
3= Conversion to the HTML 4.0 format + CSS-P (since version 6.5.2)
Descripción: modo de conversión de los formularios 4D para la Web con 4D en modo local y 4D Server. Por defecto, el servidor Web 4D utiliza las hojas de estilos en cascada (CSS1) para generar páginas HTML similares a los formularios mostrados en 4D. Con este funcionamiento, los formularios podrían afectar la correcta conversión de los formularios en bases de datos creadas con versiones de 4D anteriores a la versión 6.7. Por esta razón, usted tiene la posibilidad de definir el modo de conversión de los formularios.
Este modo se define únicamente para el proceso (contexto Web) en el cual se llama al comando SET DATABASE PARAMETER. Puede llamarse desde el Método de base On Web Connection para asegurar la compatibilidad de todos los formularios de una base o justo antes de de llamar un formulario en particular. Si el comando se llama desde fuera del modo contextual o de un proceso Web, no tiene efecto.
Nota: se puede utilizar un selector adicional con el comando Get database parameter: Database Cache Size (9). Este selector no puede utilizarse con el comando SET DATABASE PARAMETER. Para mayor información, consulte la descripción del comando Get database parameter.
Selector = 10 (4D Local Mode Scheduler)
Selector = 11 (4D Server Scheduler)
Selector = 12 (4D Remote Mode Scheduler)
Valores posibles: para estos tres selectores, el parámetro valor se expresa de la forma hexadecimal 0x00aabbcc detallada a continuación:
aa = número mínimo de tics por llamada al sistema (0 a 100 incluido).
bb = número máximo de tics por llamada al sistema (0 a 100 incluido).
cc = Número de tics entre llamadas al sistema (0 a 20 incluido).
Si uno de los valores está fuera del rango, 4D lo fija como máximo. Igualmente, puede pasar uno de los siguientes valores estándar en el parámetro valor:
valor = -1: prioridad máxima otorgada a 4D,
valor = -2: prioridad media otorgada a 4D,
valor = -3: prioridad mínima otorgada a 4D.
Descripción: este parámetro permite fijar dinámicamente las llamadas internas sistema de 4D. Dependiendo del selector, el valor del administrador de llamadas sistema será definido por:
- 4D modo local cuando el comando se llama desde 4D monousuario (selector=10).
- 4D Server cuando el comando se llama desde 4D Server (selector=11).
- 4D modo remoto cuando el comando se llama desde 4D Client (selector=12).
Nota: el funcionamiento del selector 12 (4D Client Scheduler) difiere dependiendo de si el comando SET DATABASE PARAMETER se ejecuta en el equipo servidor o en el equipo cliente:
- Si el comando se ejecuta en el equipo servidor, se aplicará el nuevo valor a todos los equipos cliente que se conecten posteriormente.
- Si el comando se ejecuta en el equipo cliente, el nuevo valor se aplica inmediatamente al equipo cliente como también a todos los equipos clientes que se conecten al servidor posteriormente.
Puede utilizar esta operación para implementar una gestión dinámica e individualizada de la prioridad para cada equipo cliente. El principio consiste en ejecutar el comando una primera vez en el equipo cliente a configurar, luego una segunda vez en el equipo servidor con el valor por defecto, que luego será utilizado por los equipos cliente que se conecten posteriormente.
Este funcionamiento es efectivo en 4D a partir de las versiones 6.8.6, 2003.3 y 2004.
Advertencia: la configuración de estos selectores de manera inapropiada puede conducir a una seria degradación del rendimiento de la aplicación. Es recomendable sólo modificar los valores por defecto con total conocimiento de causa.
Selector = 13 (4D Server Timeout)
Descripción: este parámetro permite cambiar el valor del tiempo muerto (timeout) de 4D Server. Por defecto, el valor del tiempo muerto de 4D Server se define en la página "Cliente-Servidor/Configuración" de la ventana de Preferencias, en el equipo servidor.
El selector 4D Server Timeout le permite fija, con la ayuda del parámetro valor, un nuevo tiempo muerto, expresado en minutos. Esta funcionalidad es particularmente útil para aumentar el timeout antes de ejecutar en el equipo cliente una operación bloqueante y de larga duración, tal como la impresión de un gran número de páginas, que pueda provocar una desconexión.
Dispone de dos opciones:
- Pasar un valor positivo en el parámetro valor y efectuar una modificación global y permanente: el nuevo valor se aplica a todos los procesos y se guarda en las Preferencias de la aplicación.
- Pasar un valor negativo en el parámetro valor y efectuar una modificación restringida y temporal: el nuevo valor se aplica únicamente al proceso que llama (los otros procesos conservan los valores por defecto) y reinicia tan pronto como el servidor recibe una señal de actividad del cliente por ejemplo, tan pronto como la operación termina. Esta opción es útil para administrar operaciones largas iniciadas por los plug-ins 4D.
Para definir una conexión "No timeout", pase 0 en valor.
(Ver ejemplo 1).
Selector = 14 (4D Client Timeout)
Descripción: este parámetro permite cambiar el valor del tiempo de demora de conexión del 4D Client. Por defecto el valor del tiempo de demora de conexión utilizado por 4D Client se define en la página "Cliente-Servidor/Configuración" de la caja de diálogo de preferencias en el equipo cliente.
Para mayor información sobre este selector, consulte la descripción del selector 4D Server Timeout selector Descripción (13).
El selector 4D Client Timeout puede utilizarse en casos muy específicos.
Selector = 15 (Port ID)
Descripción: este parámetro permite cambiar por rápidamente el número de puerto TCP utilizado por el servidor Web 4D con 4D en modo local y 4D Server. El valor por defecto es 80, puede definirse en la página "Web/Configuración" de las Preferencias.
El número del puerto TCP se define en la página "Web/Configuración" de la caja de diálogo de Preferencias. Puede utilizar las constantes del tema "TCP Port Numbers" para el parámetro valor.
El selector Port ID es útil en el caso de los servidores Web 4D compilados y fusionados con 4D Desktop (donde no hay acceso al entorno Diseño). Para mayor información sobre el número del puerto TCP, consulte la sección Parámetros del servidor Web.
Selector = 16 (IP Address to listen)
Descripción: este parámetro permite indicar por programación al usuario la dirección IP en la cual el servidor Web debe recibir las peticiones HTTP con 4D en modo local y 4D Server. Por defecto, no se especifica ninguna dirección en particular (valor = 0). Este parámetro se define en las Preferencias de la base.
El selector IP Address to listen es útil en el caso de los servidores Web 4D compilados y fusionados con 4D Desktop (en los que no hay acceso al entorno Diseño).
Pase en el parámetro valor la dirección IP en forma hexadecimal. Para designar una dirección IP como "a.b.c.d", debe escribir:
C_LONGINT($addr) $addr:=($a<<24)|($b<<16)|($c<<8)|$d SET DATABASE PARAMETER(IP Address to listen;$addr)
Ver también el ejemplo 2. Para mayor información sobre cómo designar la dirección IP, consulte la sección Parámetros del servidor Web.
Selector = 17 (Character set)
Valores posibles: los valores posibles dependen del modo de ejecución de la base relativo al conjunto de caracteres.
Modo Unicode: cuando la aplicación se opera en modo Unicode, los valores a pasar para esta parámetro son identificadores de conjuntos de caracteres (MIBEnum, identificadore definidos por IANA, ver la siguiente dirección: http://www.iana.org/assignments/character-sets). Esta es la lista de identificadores que corresponde a los conjuntos de caracteres soportados por el servidor Web de 4D:
4 = ISO-8859-1
12 = ISO-8859-9
13 = ISO-8859-10
17 = ShiftJIS
2026 = Big5
38 = euc-kr
106 = UTF-8
2250 = Windows-1250
2251 = Windows-1251
2253 = Windows-1253
2255 = Windows-1255
2256 = Windows-1256
Nota: en el contexto del parámetro Character set, el comando Get database parameter devuelve el nombre IANA del conjunto de caracteres en el parámetro opcional stringValue.
Modo compatibilidad ASCII:
0: Western European
1: Japanese
2: Chinese
3: Korean
4: User-defined
5: Reserved
6: Central European
7: Cyrillic
8: Arabic
9: Greek
10: Hebrew
11: Turkish
12: Baltic
Nota:
para mayor información sobre modo Unicode, favor consultar la descripción del selector 41.
Selector = 18 (Max Concurrent Web Processes)
Valores posibles: puede pasar cualquier valor entre 10 y 32 000. El valor por defecto es 32 000.
Descripción: este parámetro permite definir el límite estrictamente superior del proceso Web concurrente de todo Tipo (contextual, no-contextual o perteneciente a la reserva de proceso ver el selector 7, Maximum Web Process) soportado por el servidor Web con 4D en modo local y 4D Server. Cuando este número (menos uno) se alcanza, 4D no crea más nuevos procesos y devuelve el mensaje "Servidor no disponible" (estado HTTP 503 - Servicio no disponible) para todas las peticiones.
Este parámetro permite prevenir la saturación del servidor Web 4D, la cual se puede producir durante el envío masivo de peticiones o de una demanda excesiva de creación de contextos. Este parámetro también puede definirse en la caja de diálogo de Preferencias (ver la sección Parámetros del servidor).
En teoría, el número máximo de procesos Web es el resultado de la siguiente fórmula: Memoria disponible/Tamaño de la pila del proceso Web. Otra solución es visualizar la información de los procesos Web mostrados en el Explorador de ejecución: se indican el número actual de procesos Web y el número máximo alcanzado desde el inicio del servidor Web.
Nota: si pasa un valor inferior al límite superior de la "reserva" del proceso (selector 7) este límite se reduce al valor del selector 18. Si es necesario, el límite inferior de la reserva (selector 6) también se ajusta.
Selector = 19 (Client Minimum process Web)
Selector = 20 (Client Maximum process Web)
Selector = 21 (Client Max Web requests size)
Selector = 22 (Client Port ID)
Selector = 23 (Client IP Address to listen)
Selector = 24 (Client Character set)
Selector = 25 (Client Max Concurrent Web Proc)
Valores posibles: idénticos a aquellos de los selectores 4D en modo local o 4D Server (ver los selectores 6 a 8, 15 a 18 y 27).
Descripción: estos selectores se utilizan para especificar los parámetros de funcionamiento de los equipos 4D Client utilizados como servidores Web.
Los valores definidos utilizando estos selectores se aplican a todos los equipos 4D Client utilizados como servidores Web. Si quiere definir los valores para ciertos equipos 4D Client únicamente, utilice la caja de diálogo de Preferencias de 4D Client.
Selector = 26 (Cache writing mode)
Este selector se ha desactivado ya que corresponde a un mecanismo que se ha optimizado en 4D versión 11.
Selector = 27 (Maximum Web requests size)
Valores posibles: 500 000 a 2 147 483 648.
Descripción: tamaño máximo (en bytes) de las peticiones HTTP entrantes (POST) que el servidor Web está autorizado a procesar. Por defecto, el valore es 2 000 000, es decir un poco menos de 2 MB.
El valor máximo (2 147 483 648) significa en la práctica que no hay límites.
Este límite se utiliza para evitar la saturación del servidor Web por las peticiones entrantes que son muy grandes. Cuando una petición alcanza este límite, el servidor 4D Web lo rechaza.
Selector = 28 (4D Server Log Recording)
Valores posibles: 0 ó de 1 a X (0 = sin registro, 1 a X = número secuencial, añadido al nombre del archivo).
Descripción: inicia o detiene el registro de las peticiones estándar recibidas por 4D Server (excluyendo peticiones Web). Por defecto, el valor es 0 (peticiones no registradas).
4D Server permite registrar en un archivo histórico cada petición recibida por el equipo servidor. Cuando se activa este mecanismo, el archivo de historial se crea junto al archivo de estructura de la base. Su nombre es "4DRequestsLogX," donde X es el número secuencial del historial. Una vez el archivo alcanza un tamaño de 10 MB, se cierra y se genera un nuevo archivo, con un número secuencial incrementado. Si ya existe un archivo con el mismo nombre, es reemplazado directamente. Puede definir el número de inicio de la secuencia utilizando el parámetro valor.
Este archivo de texto almacena diferente información relacionada con la petición en un formato tabulado simple: hora, número de proceso, usuario, tamaño de la petición, duración del proceso, etc. Esta información puede ser particularmente útil en la fase de puesta a punto de la aplicación o con propósitos estadísticos. Pueden ser importadas, por ejemplo, a una hoja de cálculo para ser procesadas.
Nota: es posible activar o desactivar manualmente el registro de peticiones utilizando el atajo Ctrl+Alt+L bajo Windows o el comando+Opción+L bajo Mac OS.
Selector = 29 (Web Log Recording)
Valores posibles: 0 = no registrar (por defecto), 1 = Registrar en formato CLF, 2 = Registrar en formato DLF, 3 = Registrar en formato ELF, 4 = Registrar en formato WLF.
Descripción: iniciar o detener el registro de peticiones Web recibidas por el servidor Web de 4D en modo local o de 4D Server. Por defecto, el valor es 0 (no registrar las peticiones).
El historial de peticiones Web se guarda como un archivo de texto llamado "logweb.txt" que se ubica automáticamente junto al archivo de estructura de la base. El formato de este archivo está determinado por el valor que se pasa. Para mayor información sobre los diferentes formatos del historial de peticiones, consulte la sección Información sobre el sitio Web.
Este archivo también puede activarse en la página "Web/Avanzado" de las Preferencias de 4D.
Advertencia: los formatos 3 y 4 son formatos personalizables cuyo contenido debe ser definido previamente en las Preferencias de la aplicación en la página "Web/Formato de log". Si utiliza uno de estos formatos sin que ninguno de sus campos haya sido seleccionado en esta página, el archivo de peticiones no se generará.
Selector = 30 (Client Web Log Recording)
Valores posibles: 0 = No registrar (por defecto), 1 = Registrar en formato CLF, 2 = Registrar en formato DLF, 3 = Registrar en formato ELF, 4 = Registrar en formato WLF.
Descripción: iniciar o detener el registro de las peticiones Web recibidas por los servidores Web de todos los equipos cliente. Por defecto, el valor es 0 (no registrar peticiones).
El funcionamiento de este selector es idéntico al del selector 29; sin embargo, este selector se aplica a todos los equipos 4D Client utilizados como servidores Web. Si sólo quiere definir los valores para ciertos equipos cliente únicamente, utilice la caja de diálogo de Preferencias de 4D Client.
Selector = 31 (Table Sequence Number)
Valores posibles: todo valor de tipo entero largo.
Descripción: este selector se utiliza para modificar u obtener el número único actual de registros de la tabla pasada como parámetro. "Número actual" significa "último número utilizado": si modifica este valor utilizando SET DATABASE PARAMETER, el siguiente registro se creará con un número que consiste en el valor pasado + 1 (este nuevo número es el devuelto por el comando Sequence number).
Por defecto, este número único está definido por 4D y corresponde al orden de creación de los registros. Para información adicional, consulte la documentación del comando Sequence number.
Selector = 32 (Real Display Precision)
Valores posibles: todo valor de tipo Entero largo.
Descripción: este selector permite modificar u obtener el número de cifras no significativas truncadas a la derecha por el algoritmo de visualización de pantalla. Este valor se define para la aplicación y sesión actual.
Por defecto, el valor de esta opción es 4. El valor 0 indica que se utiliza el valor por defecto y que el parámetro no ha sido modificado durante la sesión.
Por razones históricas, 4D trabaja con números reales almacenados en 10 bytes y los convierte a 8 bytes durante el proceso (ver la sección Visualización de números reales). Esto es completamente transparente y no afecta los cálculos; sin embargo ciertos resultados podrían no ser visualizados como se espera. Por ejemplo, la operación 4,1-4,09 muestra el resultado 0.009999999999999780000, pero buscando 0.01 se encuentra el valor correcto.
Así es como 4D procede para mostrar un número real: tomemos el valor 8.97499999999996158 obtenido por un cálculo (el valor 8.975 será normalmente el resultado esperado). El algoritmo que permite redondear de la manera más precisa elimina los últimos cuatro dígitos (6158) por defecto y luego verifica si el último dígito es un 0 o un 9. Si es un 0, el algoritmo vuelve al primer cero y elimina los otros. Si el valor es 9, el algoritmo regresa al primer 9 y redondea la parte decimal al valor superior. En nuestro ejemplo, el valor 8.974999999999996158 se transforma en 8.975.
Puede pasar que algunos resultados terminen con 5 cifras no significativas, como por ejemplo 8.9749999999999986158. En este caso, el algoritmo no redondea correctamente el valor porque el último dígito no es ni 0 ni 9 y entonces no hará nada.
Usted podría querer que el algoritmo de precisión trunque más o menos cifras de acuerdo a las características específicas de su base. En este caso, pase un valor personalizado. Excepto para cero (elección de valor interno de 4D), este valor indicará el número de dígitos truncados por el algoritmo de precisión.
Recuerde que ese parámetro no afecta la visualización de los números, ni tampoco su procesamiento interno.
Selector = 33 (TCP_NODELAY)
Valores posibles: 0 ó 1 (0 = desactivar, 1 = activar)
Descripción: activación o desactivación de la opción red TCP_NODELAY. Esta opción, interna al protocolo TCP/IP, controla un mecanismo de optimización de las comunicaciones de red. Puede fijarse por separado para el equipo servidor y los equipos cliente. Por defecto, el valor es 1 (opción activada) en todos los equipos (servidor y clientes).
En casos específicos, en particular en el caso de las conexiones cliente/servidor por ADSL o por red privada virtual (VPN), la desactivación de esta opción puede mejorar notablemente el rendimiento de la aplicación. Esta operación debe efectuarse con precaución y debe estar acompañada por una prueba de carga en diferentes configuraciones cliente/servidor.
Si modifica este valor, necesitará reiniciar la aplicación para que el nuevo valor sea tenido en cuenta.
Selector = 34 (Debug Log Recording)
Valores posibles: 0, 1 ó 2 (0 = no registrar, 1 = registrar, 2 = registrar en modo detallado)
Descripción: iniciar o detener el registro secuencial de los eventos de programación de 4D, destinado para la depuración de la aplicación. Por defecto, el valor es 0 (no se guardan los eventos).
Cuando se activa este modo, pueden registrarse diferentes tipos de información, en especial:
- Para cada evento, el número de milisegundos desde la creación del archivo y el número de proceso ([n]),
- La ejecución de cada comando 4D (cmd) y cada llamada del plug-in (plugInName); en este caso, el nivel de la pila se indica en (n),
- Cada llamada del método de proyecto (meth), del método de objeto (obj) y del método de formulario (form),
- Cuando el modo detallado se activa (valor = 2), la información adicional relacionada con los plug-ins se guarda: eventos en las áreas de plug-ins (EventCode) y llamadas de 4D para los plug-ins (externCall).
Los eventos se guardan en un archivo llamado "4DDebugLog.txt" que se ubica automáticamente en junto al archivo de estructura de la base. Cada evento se graba de manera sistemática en el archivo antes de su ejecución, lo cual garantiza la presencia en el archivo incluso cuando la aplicación se cierra inesperadamente. Tenga en cuenta que el archivo se borra y reescribe cada vez que se lanza la aplicación.
Esta opción puede activarse para todo tipo de aplicación 4D (4D modo local, 4D Server, 4D Client, 4D Desktop), en modo interpretado o compilado.
Nota: esta opción se ofrece con únicamente con propósitos de depuración y no debe utilizarse en producción ya que puede llevar a la deterioración del rendimiento de la aplicación así como a la saturación del disco.
Selector = 35 (Client Server Port ID)
Valores posibles: 0 a 65535
Descripción: este parámetro puede ser utilizado para cambiar el puerto TCP en el que 4D Server publica la base (con destino a los equipos 4D Client) por programación. Por defecto, el valor es 19813.
La personalización de este valor significa que varias aplicaciones 4D cliente-servidor pueden ser utilizadas en el mismo equipo con el protocolo TCP; en este caso, debe indicar un número de puerto diferente para cada aplicación.
El valor se almacena en el archivo de estructura. Puede ser definido con 4D en modo local (monopuesto) pero sólo se tiene en cuenta en configuración cliente-servidor.
Cuando modifica este valor, es necesario restaurar el equipo servidor con el fin de que el nuevo valor sea tenido en cuenta.
Selector = 36 (WEDD Signature)
Valores posibles: Cadena de 1 a 255 caracteres.
Descripción: este parámetro puede ser utilizado para modificar la firma WEDD de la base de datos abierta (archivo de estructura y archivo de datos). Por defecto, la firma está vacía (el parámetro no está definido). Recuerde que la firma tiene en cuenta si los caracteres están en mayúsculas o minúsculas.
La firma WEDD se utiliza para asociar un archivo de estructura a un archivo de datos. Un archivo de estructura que contiene una firma WEDD sólo puede abrirse con el archivo de datos que contiene la misma firma WEDD y viceversa. Para mayor información sobre la firma WEDD, por favor consulte el Manual de Diseño.
La definición de este valor por programación facilita la distribución de las actualizaciones de las aplicaciones que tienen una firma personalizada.
Nota: cuando utiliza este selector con el comando Get database parameter, la cadena definida como firma WEDD se devuelve en el parámetro opcional valorAlfa y el comando devuelve 0.
Selector = 37 (Invert Objects)
Valores posibles: 0, 1 ó 2 (0 = modo desactivado, 1 = modo automático, 2 = modo activo)
Descripción: configuración del modo "inversión de objetos". Este modo permite invertir los formularios, objetos, barras de menú, etc. , en modo Aplicación cuando la base se muestra en Windows en un idioma de derecha a izquierda. Este modo también puede configurarse en la página Base de datos/Gestión de datos de las Preferencias de la aplicación.
- El valor 0 indica que el modo nunca se activa, cualquiera que sea la configuración del sistema (corresponde al valor en las Preferencias).
- Valor 1 indica que el modo se activa o desactiva en función de la configuración del sistema (corresponde al valor automático en las Preferencias).
- Valor 2 indica que el modo está activado, sin importar la configuración del sistema (corresponde al valor Sí en las Preferencias).
Para mayor información, consulte el Manual de Diseño de 4D.
Selector = 39 (HTTPS Port ID)
Valores posibles: 0 a 65 535
Descripción: este selector permite modificar por programación el número del puerto TCP utilizado por el servidor Web de 4D en modo local y de 4D Server para las conexiones seguras vía SSL (protocolo HTTPS). El número de puerto HTTPS se define en la página "Web/Configuración" de la caja de diálogo de Preferencias. Para mayor información, consulte la sección Parámetros del servidor Web.
Por defecto, el valor es 443 (valor estándar). Puede utilizar las constantes del tema "TCP Port Numbers" en el parámetro valor.
Selector = 40 (Client HTTPS Port ID)
Valores posibles: 0 a 65 535
Descripción: este selector permite modificar por programación el número del puerto TCP utilizado por los servidores Web de los equipos cliente para las conexiones seguras vía SSL (protocolo HTTPS). Por defecto, el valor es 443 (valor estándar).
Este selector opera de la misma forma que el selector 39; sin embargo, aplica a todos los equipos cliente 4D Client utilizados como servidores Web. Si sólo quiere modificar el valor de algunos equipos cliente específicos, utilice la caja de diálogo de las Preferencias de 4D Client.
Selector = 41 (Unicode mode)
Valores posibles: 0 (mode compatibilidad) ó 1 (modo Unicode)
Descripción: modo de ejecución actual de la base, con respecto al conjunto de caracteres. 4D soporta al carácter Unicode pero puede funcionar en modo "compatibilidad" (basado en el conjunto de caracteres Mac ASCII). Por defecto, la base de datos convertida se ejecuta en modo compatibilidad (0) y las bases creadas con la versión 11 o mayores se ejecutan en modo Unicode. El modo de ejecución puede ser controlado por medio de una opción en las Preferencias y también puede leerse o (por pruebas) modificarse vía este selector. La modificación de esta opción requiere que la base se reinicie para que sea tenida en cuenta. Note que no es posible modificar este valor en un componente, sólo puede leerlo.
Selector = 42 (Temporary memory size)
Valores posibles: entero largo positivo > 50 000 000
Descripción: tamaño de la memoria temporal expresada en bytes. Por defecto, este tamaño es 50 000 000 (50 MB).
4D utiliza una memoria temporal especial dedicada a las operaciones de indexación y ordenación. El propósito de esta memoria es proteger la memoria caché "estándar" durante operaciones masivas. Cuando se alcanza el tamaño máximo del máximo de la memoria temporal (caso crítico), 4D interrumpe automáticamente la última operación solicitada con el fin de evitar penalizar los otros procesos. En la mayoría de los casos, la configuración por defecto de la memoria temporal será suficiente. Sin embargo, en algunas aplicaciones específicas que efectúan ordenaciones e indexaciones de manera intensiva, aumentar el tamaño de esta memoria y podría mejorar el rendimiento notablemente. El valor ideal deberá ser determinado empíricamente de acuerdo a las funcionalidades específicas de la aplicación y generalmente será el resultado de pruebas reales con volúmenes.
Selector = 43 (SQL Autocommit)
Valores posibles: 0 (desactivación) ó 1 (activación)
Descripción: activación o desactivación del modo SQL auto-commit. Por defecto, el valor es 0 (modo desactivado)
El modo auto-commit se utiliza para fortalecer la integridad referencial de la base. Cuando este modo se activa, las peticiones SELECT, INSERT, UPDATE y DELETE (SIUD) se incluyen de manera automática en las transacciones cuando no han sido ejecutadas dentro de una transacción. Este modo también puede definirse en las Preferencias de la base.
Selector = 44 (SQL Engine Case Sensitivity)
Valores posibles: 0 (no tiene en cuenta la distinción entre mayúsculas y minúsculas) ó 1 (distinción entre mayúsculas y minúsculas)
Descripción: activación o desactivación de la distinción entre mayúsculas y minúsculas para las comparaciones de cadenas efectuadas por el motor SQL.
Por defecto, el valor es 1 (distinción entre mayúsculas y minúsculas): el motor SQL diferencia entre las mayúsculas y las minúsculas cuando compara cadenas (ordenaciones y búsquedas). Por ejemplo "ABC"= "ABC" pero "ABC" # "Abc." En algunos casos, por ejemplo para alinear el funcionamiento del motor SQL con el motor 4D, usted podría querer que las comparaciones con cadenas no distingan entre mayúsculas y minúsculas ("ABC"="Abc").
Esta opción también puede definirse en la página SQL/Configuración de las Preferencias de la aplicación.
Selector = 45 (Client Log Recording)
Valores posibles: 0 o de 1 a X (0 = sin registrar, 1 a X= número secuencial, asociado al nombre del archivo)
Descripción: inicia o detiene el registro de peticiones estándar efectuadas por el equipo cliente 4D que ejecutó el comando (excluyendo peticiones Web). Por defecto, el valor es 0 (no registro de peticiones).
4D permite registrar el historial de peticiones efectuadas por el equipo cliente. Cuando este mecanismo está activo, se crean dos archivos en el equipo cliente, en la subcarpeta de la carpeta local de la base. Se llaman "4DRequestsLog_X" y "4DRequestsLog_ProcessInfo_X," donde X es el número secuencial del historial. Una vez el archivo 4DRequestsLog alcance un tamaño de 10 MB, se cierra y se genera uno nuevo, con un número secuencial incrementado. Si ya existe un archivo con el mismo nombre, se reemplaza directamente. Puede definir el número de inicio de la secuencia utilizando el parámetro valor.
Estos archivos texto almacenan diferente información sobre cada petición en un formato tabulado simple: hora, número de proceso, tamaño de la petición, duración del proceso, etc. Esta información es particularmente útil durante la fase de desarrollo de la aplicación o para fines estadísticos.
Selector = 46 (Query By Formula On Server)
Valores posibles: 0 (utilizar la configuración de la base), 1 (ejecutar en el servidor) o 2 (ejecutar en el cliente)
Descripción: ubicación de la ejecución de los comandos QUERY BY FORMULA y QUERY SELECTION BY FORMULA para la tabla pasada en el parámetro.
Cuando utiliza una base en modo cliente-servidor, los comandos de búsqueda "por fórmula" pueden ejecutarse en el servidor o en el equipo cliente:
- en bases creadas con 4D v11 SQL, estos comandos son ejecutados en el servidor.
- en bases convertidas, estos comandos se ejecutan en el equipo cliente, como en las versiones anteriores de 4D.
- en bases de datos convertidas, una preferencia especifica (página Aplicación/Compatibilidad) permite modificar globalmente el lugar de ejecución de estos comandos.
Esta diferencia de lugar de ejecución influye no sólo en el rendimiento de la aplicación (la ejecución en el servidor es generalmente más rápida) sino también en la programación. De hecho, el valor de los componentes de la fórmula (en particular las variables llamadas vía un método) difiere de acuerdo al contexto de ejecución. Puede utilizar este selector para adaptar puntualmente el funcionamiento de su aplicación.
Si pasa 0 en el parámetro valor, la ubicación de ejecución de los comandos de búsqueda "por fórmula" dependerá de la configuración de la base: en bases creadas con 4D v11 SQL, estos comandos serán ejecutados en el servidor. En las bases convertidas, serán ejecutados en el cliente o en el servidor en función de las preferencias de la base. Pase 1 ó 2 en valor para "forzar" la ejecución de los comandos respectivamente en el servidor o en el cliente.
Ver ejemplo 4.
Selector = 47 (Order By Formula On Server)
Valores: 0 (utilizar la configuración de la base), 1 (ejecutar en el servidor) o 2 (ejecutar en el cliente)
Descripción: ubicación de la ejecución del comando ORDER BY FORMULA para la tabla pasada en el parámetro.
Cuando se utiliza una base en modo cliente-servidor, el comando ORDER BY FORMULA puede ejecutarse o bien en el servidor o en el equipo cliente. Este selector puede utilizarse para especificar la ubicación de ejecución de este comando (servidor o cliente). Para mayor información, consulte la descripción del selector 46, Query By Formula On Server.
Selector = 48 (Auto Synchro Resources Folder)
Valores: 0 (no sincronización), 1 (auto sincronización) ó 2 (preguntar)
Descripción: modo de sincronización dinámica de la carpeta Resources del equipo cliente 4D habiendo ejecutado el comando con el del servidor.
Cuando el contenido de la carpeta Resources ha sido modificado o un usuario ha solicitado sincronización (por ejemplo vía el explorador de recursos o siguiendo la ejecución del comando NOTIFY RESOURCES FOLDER MODIFICATION), el servidor notifica los clientes conectados.
Tres modos de sincronización son posibles del lado del cliente. El selector Auto Synchro Resources Folder permite definir el modo a utilizar para el equipo cliente y la sesión actual:
- 0 (valor por defecto) = no sincronización dinámica (se ignora la petición de sincronización)
- 1 = sincronización dinámica automática
- 2 = visualización de una caja de diálogo en los equipos cliente, con posibilidad de permitir o rechazar la sincronización.
El modo de sincronización también puede definirse globalmente en las Preferencias de la aplicación.
Selector = 49 (QUERY BY FORMULA Joins)
Valores posibles: 0 (utilizar configuración de la base), 1 (siempre utiliza relaciones automáticas) ó 2 (utilizar las joins SQL si es posible)
Descripción: modo de funcionamiento de los comandos QUERY BY FORMULA y QUERY SELECTION BY FORMULA relativos al uso de "joins SQL" .
En las bases de datos creadas a partir de la versión 11.2 de 4D v11 SQL, estos comandos efectúan joins basados en el modelo de joins SQL. Este mecanismo permite modificar la selección de una tabla en función de una búsqueda efectuada en otra tabla sin que las tablas estén conectadas por una relación automática (condición necesaria en versiones anteriores de 4D).
El selector QUERY BY FORMULA Joins le permite definir el modo de funcionamiento de los comandos de búsqueda por fórmula para el proceso actual:
- valor = 0: utilizar los parámetros actuales de la base (valor por defecto). En las bases de datos creadas a partir de la versión 11.2 de 4D v11 SQL, las "joins SQL" siempre son activadas para las búsquedas por fórmula. En bases de datos convertidas, este mecanismo está inactivo por defecto por razones de compatibilidad pero puede implementarse vía una preferencia.
- valor = 1: siempre utilizar la relaciones automáticas (= funcionamiento de las versiones anteriores de 4D). En este modo, una relación es necesaria para definir la selección de una tabla en función de las búsquedas efectuadas en otra tabla. 4D no efectúa "joins SQL".
- valor = 2: utilizar las joins SQL si es posible (= funcionamiento por defecto de las bases creadas en versión 11.2 y superiores de 4D v11 SQL ). En este modo, 4D establece las "joins SQL" para las búsquedas por fórmula cuando la fórmua es apropiada para ello (con dos excepciones, ver la descripción del comando QUERY BY FORMULA o QUERY SELECTION BY FORMULA).
Selector = 50 (HTTP Compression Level)
Valores posibles: 1 a 9 (1 = más rápido, 9 = más comprimido) o -1 = la mejor compresión.
Descripción: define el nivel de compresión para todos los intercambios HTTP comprimidos para servicios Web (peticiones cliente o respuestas servidor). Los intercambios comprimidos son una optimización que puede implementar cuando tiene dos aplicaciones 4D que se comunican vía servicios Web (ver el comando SET WEB SERVICE OPTION). Este selector le permite optimizar intercambios dándole prioridad a la velocidad de ejecución (menor compresión) o a la cantidad de compresión (menor velocidad). La elección del valor depende del tamaño y tipo de dato intercambiado. Pase de 1 a 9 en el parámetro valor donde 1 es la compresión más rápida y 9 la más alta. Igualmente pude pasar -1 para obtener un compromiso entre velocidad y tasa de compresión. Por defecto, el nivel de compresión es 1 (compresión más rápida).
Selector = 51 (HTTP Compression Threshold)
Valores posibles: todo valor de tipo Entero largo.
Descripción: en el marco de intercambio de servicios Web 4D en modo optimizado (ver arriba), define el tamaño umbral para peticiones debajo del cual los intercambios no deben comprimirse. Esta configuración es útil para evitar perder tiempo de máquina comprimiendo intercambios pequeños.
Pase el tamaño expresado en bytes en valor. Por defecto, el umbral de compresión es 1 024 bytes.
Ejemplos
1. La siguiente instrucción evitará un posible problema de timeout:
`Aumento del timeout a 3 horas para el proceso actual SET DATABASE PARAMETER (4D Server Timeout;-60*3) `Ejecución de una operación larga sin control de 4D ... WR PRINT MERGE (Area;3;0) ...
2. La dirección IP 192.193.194.195 se fijará con la siguiente instrucción:
SET DATABASE PARAMETER(IP Address to listen;0xC0C1C2C3)
3. Este código puede utilizarse para cambiar el conjunto de caracteres actual y reiniciar la base:
Current_unicode_mode:=Get database parameter(Unicode mode) SET DATABASE PARAMETER(Unicode mode;1-Current_unicode_mode) OPEN DATA FILE(Data file)
4. Este ejemplo forza temporalmente la ejecución de un comando búsqueda por fórmula en el equipo cliente:
curVal:=
Get database parameter([tabla1];
Query By Formula On Server) `
Almacena la configuración actual SET DATABASE PARAMETER([tabla1];Query By Formula On Server;1) `Forza la ejecución en el equipo cliente
Ver también
Get database parameter, QUERY SELECTION.