4D v14.3

Get 4D folder

Inicio

 
4D v14.3
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 activa de 4D de la aplicación actual o a 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. Utilizando este comando, asegura que su código funcionará correctamente en todas las plataformas.

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
Database folder Entero largo 4
Database folder Unix syntax Entero largo 5
Extras folder Entero largo 2
HTML Root folder Entero largo 8
Licenses folder Entero largo 1
Logs folder Entero largo 7

Esta es una descripción de cada una de las carpetas:

Notas preliminares sobre los nombres de las carpetas:

  • {Disco} es el disco donde está instalado el sistema.
  • La palabra Usuario representa el nombre del usuario que abrió la sesión.
  • Con algunas versiones de Mac OS, los nombres de las carpetas son traducidos:
    - La carpeta Library se llama Libreria

Las aplicaciones del entorno 4D utilizan la carpeta 4D 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 v11, Favorites v12, Favorites v13... (rutas de acceso de las bases locales y remotas que se hayan abierto)

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

  • En Windows 7 y siguientes: {Disco}:\Users\Usuario actual\AppData\Roaming\4D
  • Bajo Mac OS: {Disco}:Usuarios:Usuario actual:Library:Application Support:4D

    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\Usuario\AppData\Roaming\4D\Licenses
      • En OS X: {Disco}:Usuarios:UsuariolLibrary:Application Support:4D:Licenses

    Carpeta con contenido personalizado descargado para cada equipo cliente.

    Nota de compatibilidad: a partir de la versión 11.2 de 4D v11 SQL, no es recomendable utilizar las carpeta Extras para la comunicación personalizada entre el servidor y los equipos distantes. Ahora se recomienda para este propósito utilizar la carpeta Resources (ver la descripción de la carpeta Resources actual a continuación. Sin embargo, la carpeta Extras aún es soportada por 4D Server para mantener la compatibilidad de las aplicaciones existentes.

    Nota: si la carpeta Extras no existe en la base, se creará ejecutando el comando Get 4D folder con la constante Extras Folder.

    Carpeta de la base 4D creada en local en cada equipo 4D Client para guardar archivos y carpetas relacionadas con la base (recursos, plug-ins, carpeta Extras, etc.).

    La carpeta 4D Client Database está en la siguiente ubicación en cada equipo cliente:

    • En Windows Windows 7 y superiores: {Disco}:\Usuarios\Usuario\AppData\Local\4D\NombreDeLaBase_Direccion
    • En Mac OS: {Disco}:Usuarios:Usuario:Libreria:Caches:4D:NombreDeLaBase_Direccion

    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. La carpeta Resources está ubicada junto al archivo de estructura de la base.

    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.

    Nota: si la carpeta Resources no existe para la base, se creará ejecutando el comando Get 4D folder con la constante Current Resources folder.

    La carpeta Logs de la base. Esta carpeta centraliza los archivos log de la base actual. Se crea al mismo nivel del archivo de estructura y contiene los siguientes archivos log:

    • conversión de la base,
    • peticiones al servidor web,
    • verificación y reparación de los datos
    • verificación y reparación de la estructura
    • diario de actividades backup/restaurar
    • depuración de los comandos
    • peticiones 4D server (generadas en equipos cliente y en el servidor).
    Nota: si la carpeta Logs no existe para la base, ejecutando el comando Get 4D folder con la constante Logs Folder.

    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 *.

    Durante el inicio de una base monousuario, usted quiere cargar (o crear) sus propios parámetros y almacenarlos en un archivo ubicado en la carpeta 4D. Para hacer esto, en el método de base On Startup Database Method, puede escribir las siguientes líneas:

     MAP FILE TYPES("PREF";"PRF";"Preferences file")
      ` Asocia el tipo de archivo PREF en Mac OS a la extensión de archivo .PRF en Windows
     $vsPrefNombreDoc:=Get 4D folder+"MisPrefs" ` Construir la ruta de acceso al archivo Preferencias
      ` Verificar si el archivo existe
     If(Test path name($vsPrefNombreDoc+(".PRF"*Num(On Windows)))#Is a document)
        $vtPrefDocRef:=Create document($vsPrefNombreDoc;"PREF") ` Si no, crearlo
     Else
        $vtPrefDocRef:=Open document($vsPrefNombreDoc;"PREF") ` 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.

     
    PROPIEDADES 

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

    Este comando modifica la variable sistema OKComportamiento diferente en modo remoto

     
    HISTORIA 

    Modificado: 4D v11 SQL Release 2
    Modificado: 4D v13

     
    PALABRAS CLAVES 

    Folder

     
    ARTICLE USAGE

    Manual de lenguaje 4D ( 4D v14 R2)
    Manual de lenguaje 4D ( 4D v14 R3)
    Manual de lenguaje 4D ( 4D v14.3)
    Manual de lenguaje 4D ( 4D v14 R4)

    Inherited from : Get 4D folder ( 4D v11 SQL Release 6)
    Parent of : Get 4D folder ( 4D v13.5)