# Composición de sendas en fórmulas

Muchas veces programamos procesos en los que debemos hacer uso de ficheros externos, para lo cual debemos componer las sendas correspondientes a los mismos mediante fórmulas.

Cuando tengamos que componer una senda en una fórmula usaremos como carácter separador el carácter / en lugar del carácter . Velneo ya se encargará de convertir la senda al formato adecuado según el sistema operativo en el que sea ejecutado el proceso.

Esto no quiere decir que no es que no esté permitido usar el carácter  como separador de directorios en las fórmulas, sí lo está; lo que sucede es que, dado que este carácter es el que se usa como identificador de secuencias de escape en cadenas de caracteres, por lo que si lo usamos como carácter separador de directorios en una fórmula, tendremos que escribirlo por duplicado \\, ya que si lo escribimos una única vez, el sistema interpretará que se trata de una secuencia de escape.

Debido al carácter multiplataforma de la herramienta, no recomendamos usar nunca sendas absolutas (ejemplo: c:/mis documentos…). Si así lo hiciésemos, la programación se complicaría pues tendríamos que componer las sendas de forma distinta según el sistema operativo. Lo idóneo es hacer uso de las [variables del sistema](/27/velneo-vdevelop/proyectos-objetos-y-editores/editores/asistente-de-formulas/variables-del-sistema.md) y de las [funciones estándar](/27/velneo-vdevelop/proyectos-objetos-y-editores/editores/asistente-de-formulas/funciones-estandar.md) de fórmulas que Velneo ofrece a este respecto, que son:

[sysCacheClientPath()](/27/velneo-vdevelop/proyectos-objetos-y-editores/editores/asistente-de-formulas/variables-del-sistema.md#syscacheclientpath): devuelve la senda de la caché local del cliente (Velneo vClient). Podemos, por tanto, usar el directotrio de la caché del cliente para alojar, clasificar esos archivos externos.

[homePath()](/27/velneo-vdevelop/proyectos-objetos-y-editores/editores/asistente-de-formulas/funciones-estandar/funciones-de-directorios.md#homepath): devuelve la senda completa del directorio *home* del sistema del usuario.

Ejemplos:

`homePath()` = "C:\Documents and Settings\Usuario" (Windows)

`homePath()` = "/home/user" (Linux)

[rootPath()](/27/velneo-vdevelop/proyectos-objetos-y-editores/editores/asistente-de-formulas/funciones-estandar/funciones-de-directorios.md#rootpath): devuelve la senda completa del directorio *home* del sistema del usuario.

Ejemplos:

`rootPath()` = "C:/" (Windows)

`rootPath()` = "/" (Linux)

[tempPath()](/27/velneo-vdevelop/proyectos-objetos-y-editores/editores/asistente-de-formulas/funciones-estandar/funciones-de-directorios.md#temppath): que devuelve la senda completa del directorio temporal del sistema del usuario.

Ejemplos:

`tempPath()` = "C:/Documents and Settings/Usuario/configuración local/Temp" (Windows).

`tempPath()` = "/tmp" (Linux).

## Excepciones

Si se trata de un parámetro de una [librería externa](/27/velneo-vdevelop/proyectos-objetos-y-editores/de-aplicacion-y-datos/libreria-externa.md) o de la ejecución de un [comando de sistema](/27/velneo-vdevelop/proyectos-objetos-y-editores/de-aplicacion-y-datos/proceso/sistema/comandos-de-sistema.md#ejecutar-comando-del-sistema), en este caso en la fórmula debemos componer la senda según los requerimientos del sistema operativo donde se ejecute.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.velneo.com/27/velneo-vdevelop/proyectos-objetos-y-editores/editores/asistente-de-formulas/composicion-de-sendas-en-formulas.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
