Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com

Inicio

 
4D v19.8
Get 4D folder

Get 4D folder 


 

Get 4D folder {( carpeta {; *} )} -> Resultado 
Parámetro Tipo   Descripción
carpeta  Entero largo in Tipo de carpeta (si se omite = carpeta activa 4D)
Operador in Devuelve la carpeta de la base local
Resultado  Cadena in Ruta de acceso a la carpeta designada

El comando Get 4D folder devuelve la ruta de acceso a la carpeta 4D activa de la aplicación actual o de la carpeta del entorno 4D especificada por el parámetro carpeta, si se pasa. Este comando le permite obtener la ruta de acceso actual a las carpetas utilizadas por la aplicación 4D. Utilizando este comando, asegura que su código funcionará correctamente en todas las plataformas que se ejecuten en un sistema localizado.

En carpeta, puede pasar una de las siguientes constantes, ubicadas en el tema "Entorno 4D":

Constante Tipo Valor
4D Client database folder Entero largo 3
Active 4D Folder Entero largo 0
Current resources folder Entero largo 6
Data folder Entero largo 9
Database folder Entero largo 4
Database folder Unix syntax Entero largo 5
HTML Root folder Entero largo 8
Licenses folder Entero largo 1
Logs folder Entero largo 7
MobileApps folder Entero largo 10

Abajo encontrará una descripción de cada carpeta:

Notas preliminares sobre los nombres de las carpetas:

  • {Disk} es el disco donde está instalado el sistema.
  • La palabra Usuario representa el nombre del usuario que abrió la sesión.

Las aplicaciones del entorno 4D utilizan una carpeta especifica para almacenar la siguiente información:

  • Archivos de preferencias utilizados por las aplicaciones 4D
  • Archivo Shortcuts.xml (atajos de teclado personalizados)
  • Carpeta Macros v2 (macro comandos del editor de métodos)
  • Carpeta Favorites v1x, por ejemplo Favorites v13 (rutas de acceso de las bases locales y remotas que se hayan abierto)
  • Carpeta Logs para registros de mantenimiento y cuando los datos son de solo lectura

La carpeta 4D activa se llama 4D y se encuentra por defecto en la siguiente ubicación:

  • En Windows 7 y siguientes: {Disk}:\Users\<userName>\AppData\Roaming\
  • En macOS: {Disk}:Users:<userName>:Library:Application Support:

Carpeta que contiene los archivos de licencia del equipo.

La carpeta Licenses se encuentra en la siguiente ubicación:

  • En Windows 7 y superiores: {Disco}:\Datos de programa\4D\Licences\
  • En OS X: {Disco}:Library:Application Support:4D:Licenses

Notas:

  • En el caso de una aplicación fusionada con 4D Volume Desktop, la carpeta de licencias está incluída en el paquete de la aplicación.
  • Si la carpeta de licencias no puede crearse en el sistema por falta de autorización, se crea en la siguiente ubicación:
    • En Windows 7 y superiores: {Disco}:\Usuarios\<userName>\AppData\Roaming\4D\Licenses
    • En OS X: {Disco}:Usuarios:<userName>:Library:Application Support:4D:Licenses

Ruta de la carpeta que contiene el archivo de datos actual. La ruta de acceso se expresa utilizando la sintaxis estándar de la plataforma actual.

Carpeta de la base 4D creada en cada equipo 4D Client para guardar archivos y carpetas relacionadas con la base (recursos, plug-ins, carpeta Resources, etc.).
La carpeta 4D Client Database está en la siguiente ubicación en cada equipo cliente:

  • En Windows: {Disk}:\Users\<userName>\AppData\Local\4D\<databaseName_Address_Port_key>
  • En macOS: {Disk}:Users:<userName>:Library:Caches:4D:<databaseName_Address_Port_key>

Nota: el valor llave se incrementa (y la carpeta local de la base de datos 4D se duplica) cuando se ejecuta simultáneamente otra instancia de la aplicación cliente en la misma máquina.

Carpeta que contiene el archivo de estructura de la base. La ruta de acceso se expresa utilizando la sintaxis estándar de la plataforma actual.

Con la aplicación 4D Client, esta constante es estrictamente equivalente a la constante anterior 4D Client Database Folder: el comando devuelve la ruta de acceso de la carpeta creada localmente.

Carpeta que contiene el archivo de estructura de la base. Esta constante designa la misma carpeta que la anterior pero la ruta de acceso que devuelve se expresa utilizando sintaxis Unix (Posix), de tipo/Usuarios/... Esta sintaxis se usa principalmente cuando utiliza el comando LAUNCH EXTERNAL PROCESS bajo OS X.

Carpeta Resources de la base. Esta carpeta contiene los elementos adicionales (imágenes, textos) utilizados por la interfaz de la base. Un componente puede tener su propia carpeta Resources.

En modo cliente/servidor, esta carpeta permite organizar la transferencia de datos personalizados (imágenes, archivos, subcarpetas...) entre el equipo servidor y los equipos clientes. El contenido de esta carpeta se actualiza automáticamente cada vez que un equipo cliente se conecta. Todos los mecanismos de referenciación asociados a la carpeta Resources son soportados en modo cliente/servidor (carpeta .lproj, XLIFF, imágenes...). Adicionalmente, 4D ofrece varias herramientas que pueden utilizarse para administrar y actualizar esta carpeta dinámicamente, particularmente un explorador de recursos.

Notas: 

  • si la carpeta Resources no existe para la base, se creará ejecutando el comando Get 4D folder con la constante Current resources folder.
  • En Windows, en los proyectos cliente fusionados, la ubicación de esta carpeta se modifica si se utiliza la llave BuildApp ShareLocalResourcesOnWindowsClient .

La carpeta Logs de la base, ubicada al mismo nivel del archivo de datos, centraliza los archivos de historial de la base actual:

  • conversión de la base,
  • peticiones al servidor web,
  • diario de actividades backup/restaurar,
  • depuración de los comandos,
  • peticiones 4D server (generadas en equipos cliente y en el servidor).

Notas

  • Una carpeta Logs adicional, ubicada en la carpeta de preferencias del usuario del sistema (Active 4D Folder), se utiliza para los archivos de registro de mantenimiento (compactar, verificar, reparar). Se recomienda llamar a Get 4D file(archivo de registro de compactación), por ejemplo, cuando desee acceder a dichos archivos de registro. Esta carpeta de registros también se utiliza en los casos en que la carpeta de registros normales no se puede escribir.
  • si la carpeta Logs no existe para la base, ejecutando el comando Get 4D folder con la constante Logs folder se provoca su creación.

Carpeta raíz HTML actual de la base. La ruta de acceso devuelta se expresa con la sintaxis estándar de la plataforma actual. La carpeta raíz HTML es la carpeta en la cual el servidor web de 4D busca las páginas y archivos web solicitados. Por defecto, se llama WebFolder y se encuentra junto al archivo de estructura. Su ubicación puede definirse en la página Web/Configuración de las Preferencias o dinámicamente vía el comando WEB SET ROOT FOLDER.
Si el comando Get 4D folder se llama desde un 4D remoto, la ruta devuelta es la del equipo remoto, no la de 4D Server.

El parámetro opcional * es útil en el caso de una arquitectura que utiliza componentes: permite determinar la base (local o componente) para la cual quiere obtener la ruta de acceso a la carpeta. Este parámetro sólo es válido para las carpetas Database Folder, Database Folder Unix Syntax y Current Resources folder. Se ignora en todos los demás casos.
Cuando el comando se llama desde un componente:

  • Si pasa el parámetro *, el comando devuelve la ruta de acceso de la carpeta de la base local,
  • Si no pasa el parámetro *, el comando devuelve la ruta de acceso de la carpeta Componentes.
    La carpeta de la base (Database Folder y Database Folder Unix Syntax) devuelta difiere en función del tipo de arquitectura del componente:
    • En el caso de una carpeta/paquete .4dbase, el comando devuelve la ruta de acceso de la carpeta/paquete .4dbase,
    • En el caso de un archivo .4db ó .4dc, el comando devuelve la ruta de acceso de la carpeta "Componentes",
    • En el caso de un alias o atajo, el comando devuelve la ruta de acceso de la carpeta que contiene la base matriz original. El resultado difiere de acuerdo al formato de esta base (carpeta/paquete .4dbase o archivo .4db/.4dc), como se describió anteriormente.
           Cuando el comando se llama desde la base local, devuelve la ruta de acceso de la carpeta de la base local, sin importar si se pasa o no el parámetro *.

Carpeta que contiene todos los archivos de sesión existentes (.json) utilizados por la aplicación 4D para hacer referencia a sesiones de usuarios de aplicaciones móviles (es decir, sesiones de 4D para aplicaciones iOS). Los archivos de sesión se agrupan en subcarpetas de aplicaciones y se crean automáticamente. Para más información, consulte la documentación de 4D for iOS.

Esta carpeta se encuentra en el mismo nivel que el archivo de datos 4D actual.

Durante el inicio de una base monousuario, usted quiere cargar (o crear) sus propios parámetros en un archivo ubicado en la carpeta 4D. Para hacer esto, en el Método base On Startup, puede escribir código similar a este:

 $vsPrefDocName:=Get 4D folder+"MyPrefs.prf" //Construir la ruta de acceso al archivo Preferencias
  // Verificar si el archivo existe
 If(Test path name($vsPrefDocName)#Is a document)
    $vtPrefDocRef:=Create document($vsPrefDocName.prf) //Si no, crearlo
 Else
    $vtPrefDocRef:=Open document($vsPrefDocName.prf) //Si sí, abrirlo
 End if
 If(OK=1)
  //Procesar el contenido del documento
    CLOSE DOCUMENT($vtPrefDocRef)
 Else
  //Manejar el error
 End if

Este ejemplo ilustra el uso de la constante Database Folder Unix Syntax bajo Mac OS para listar el contenido de la carpeta de la base:

 $posixpath:="\""+Get 4D folder(Database folder Unix syntax)+"\""
 $myfolder:="ls -l "+$posixpath
 $in:=""
 $out:=""
 $err:=""
 LAUNCH EXTERNAL PROCESS($myfolder;$in;$out;$err)

Nota: bajo Mac OS, es necesario colocar las rutas de acceso entre comillas cuando contienen los nombres de archivos o de carpetas con espacios. La secuencia de escape "\" permite insertar el carácter comillas en la cadena. También puede utilizar la instrucción Char(Double quote).

Si el parámetro carpeta no es válido o si la ruta de acceso devuelta está vacía, la varible sistema OK toma el valor 0.



Ver también 

COMPONENT LIST
System folder
Temporary folder
Test path name
WEB SET ROOT FOLDER

 
PROPIEDADES 

Producto: 4D
Tema: Entorno 4D
Número 485

Este comando modifica la variable sistema OKThis command can be run in preemptive processesComportamiento diferente en modo remoto

 
CONTENIDO DE LA PÁGINA 
 
HISTORIA 

Modificado: 4D v11 SQL Release 2
Modificado: 4D v13
Modificado: 4D v16
Modificado: 4D v17 R2

 
PALABRAS CLAVES 

Folder

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v19)
Manual de lenguaje 4D ( 4D v19.1)
Manual de lenguaje 4D ( 4D v19.4)
Manual de lenguaje 4D ( 4D v19.5)
Manual de lenguaje 4D ( 4D v19.6)
Manual de lenguaje 4D ( 4D v19.7)
Manual de lenguaje 4D ( 4D v19.8)