Utilización de elementos de trayectoria en los objetos

Traducido automáticamente de Deepl

4D facilita la vida de sus desarrolladores con dos nuevos comandos para gestionar sin esfuerzo las rutas de los archivos o carpetas. Ahorre un tiempo valioso con el comando Path to object que, en una sola línea de código, extrae la extensión, el nombre del archivo o la carpeta padre. Luego puede modificar y recombinar los diferentes atributos del objeto para componer una nueva ruta con Object to path.

Extraer elementos de la ruta

Con Path to objectpuede dividir fácilmente las rutas en varias partes, devueltas como atributos de objetos:

  • Carpeta principal
  • Nombre
  • Extensión
  • Es una carpeta o no

// Dividir una ruta escrita con el delimitador del sistema
$pathSys:=Rutaal objeto("C:\4D\\recursos\imágenes\4D.jpg")
//$pathSys. parentFolder="C:\4D\recursos\imágenes\"
//$pathSys.name="4D"
//$pathSys.extension=".jpg"
//$pathSys.isFolder=False

Tenga en cuenta que el comando soporta tanto las rutas del sistema como las de POSIX. También puede decir si usted pasó una carpeta o un archivo basado en el último carácter del parámetro de entrada de la ruta.

Construir ruta

Ahora tiene una forma sencilla de modificar los elementos de una ruta y reconstruirla con el Object to path . Es muy fácil.

// Duplicar un documento en su propia carpeta:
$ruta:="c:\tmp\fichero.txt"
$o:=Rutaa objeto($ruta)
// Renombrar el documento
$o.nombre:=$o.nombre+"_copia"
// Hacer una copia del documento
COPIAR DOCUMENTO($ruta;objeto a ruta($o))

También puede utilizar el objeto devuelto en cualquier comando 4D que solicite una ruta:

$o:=Rutaal objeto("C:\4D\\recursos\imágenes\4D.jpg")
$doc:=Seleccionardocumento($o.nombre+$o.extensión;$o.extensión; "Guardar como";Entrada del nombre del archivo)

Los comandos Path to object y Object to path deben utilizarse ahora para sustituir las llamadas a los comandos obsoletos, _o_Document type y _o_SET DOCUMENT TYPE.

Mejora del rendimiento

Siempre es bueno mencionar que 4D v16 R6 aprovecha al máximo las modernas APIs del sistema en macOS para la manipulación de archivos y carpetas. Hemos ejecutado pruebas de referencia realizando varias operaciones como listar el contenido de las carpetas, comprobar las propiedades de los archivos, leer o copiar archivos pequeños, en carpetas con miles de archivos.

Los resultados muestran que el tiempo de ejecución es 6 veces más rápido en general y hasta 30 veces más rápido cuando se listan los archivos presentes en una ubicación determinada.

Fabrice Mainguené
- Product Owner -Fabrice Mainguené se unió al equipo de 4D Program en noviembre de 2016. Como Product Owner, está a cargo de escribir las historias de usuario y luego traducirlas a especificaciones funcionales. Su papel es también asegurarse de que la implementación de la característica entregada cumple con las necesidades del cliente. Después de obtener una licenciatura en Ciencias de la Computación en el CNAM, Fabrice se unió a una pequeña empresa de publicación de software como desarrollador Windev. A continuación, trabajó para diferentes empresas del sector industrial y comercial como desarrollador de Windev y de la web, así como asesor técnico de nuevas funcionalidades.