Bernard Engine · Doc

Expresiones y rutas

Bernard no guarda la ruta de un archivo tal cual: guarda una expresión, un texto en el que algunas partes se sustituyen por valores de Bernard. Así, un mismo archivo puede tener la ruta correcta en un puesto Windows, en un puesto Linux o en un servidor remoto.

Esta página explica el lenguaje de las expresiones, la herramienta Path Edit, que permite controlarlas y corregirlas, y las variaciones de ruta por sistema operativo y por sede. Para crear un archivo y gestionar sus versiones, consulta Gestión de archivos.

Qué es una expresión

Una expresión es un texto normal en el que algunas partes se escriben entre < y >. Bernard sustituye cada una de esas partes por un valor.

Las rutas de archivo son expresiones. Cualquier propiedad de tipo texto que el administrador haya marcado como Is Interpreted también lo es (consulta Root Settings).

Ejemplo, para un archivo de un plano:

D:\prod\<Parent.Name>\<Name>

Si el plano se llama sh010 y su padre SEQ010, la ruta obtenida es D:\prod\SEQ010\sh010.

Una ruta se construye paso a paso: la expresión de un archivo puede citar un archivo del padre, cuya expresión cita a su vez un archivo del abuelo, desde la carpeta del proyecto hasta el archivo.

Los nombres usados entre < y > no distinguen mayúsculas de minúsculas: <Name> y <name> son idénticos.

La sintaxis

Para obtener Escribe Ejemplo Da
una propiedad del objeto <Propiedad> <Name> sh010
una propiedad de un padre <Parent.Propiedad> <Parent.Name> SEQ010
un elemento de una lista, por su posición <Lista[n]> <Files[0]> el primer archivo de la lista
un elemento de una lista, por su nombre <Lista[nombre]> <Files[env_bg]> el archivo llamado « env_bg »
un texto en mayúsculas o minúsculas .upper() o .lower() <Name.upper()> SH010
una parte de un texto <Propiedad[inicio:fin]> <Envelope[0:3]>, con el valor « letter » let
la versión del archivo, con ceros <self.version[##]> versión actual 5 05
una secuencia de imágenes <Start Frame:End Frame[###]> imágenes 1 a 100 un número por imagen, con 3 cifras
un cálculo +, - <1 + 5> 6
una repetición <for x in Lista [cuerpo]> <for f in Files [<f.Name>;]> plate;env_bg;
una variable de entorno del puesto <env.NOMBRE> o <ENV.NOMBRE> <ENV.PROD_ROOT>\<Name> D:\prod\sh010
un objeto concreto <root>, <item>, <compound>, <children>, <user>, <computer>, <datetime>, <id> <compound> el compound de la tarea

Algunas precisiones:

Un ejemplo completo

Un archivo « Model » de un plano, cuya versión actual es la 5. Su expresión, en Windows:

<Parent.Files[0]>\Model_v<self.version[##]>.obj

<Parent.Files[0]> es el primer archivo del padre (aquí, la carpeta del plano). Según la variación de ruta y la versión, Bernard da:

Caso Ruta obtenida
variación Local, versión actual P:\demo\SH0010\Model_v05.obj
variación Local, versión 2 solicitada P:\demo\SH0010\Model_v02.obj
una variación de recurso compartido de red \\nas01\demo\SH0010\Model_v05.obj

(Los nombres de unidad y de recurso compartido son ficticios.)

Los mensajes de error

Cuando una expresión no se puede interpretar, Bernard muestra un mensaje entre asteriscos en lugar del valor, y Path Edit subraya en rojo el nombre en cuestión.

Mensaje Causa Qué hacer
* Error: '…' not found on … * la propiedad o el nombre no existe en el objeto corregir la ortografía, o añadir la propiedad al objeto
* Variable (…) is not set in your environment * la variable de entorno no existe en este puesto definirla en el puesto y reiniciar Bernard
* Error: Unable to interpret '…' * la expresión está mal formada comprobar los < y > y los corchetes
* Recursion Error: '…' * una propiedad se cita a sí misma quitar la cita circular
* Error: Only one value expected from list for '…' * se usa una lista sin elegir un elemento añadir [n], o [nombre]
* Error: '…' not found in the list for '…' * el nombre citado entre corchetes no está en la lista corregir el nombre
* Error: Context Node Not Found (possibly deleted) * el objeto de partida se ha eliminado restaurar el objeto, o corregir la expresión

El editor de expresiones

Cuando modificas una expresión (en una propiedad interpretada, en Path Edit o en la pestaña Paths Variation), el editor:

Editor de expresiones: coloreado de la sintaxis, nombre desconocido subrayado en rojo

Path Edit

Para qué sirve: controlar y corregir las rutas de todos los archivos de una selección. Para una variación y un sistema dados, la vista muestra la expresión de cada archivo y la ruta que da.

Dónde abrirlo: Windows › Path Edit, y luego selecciona un elemento (o una carpeta, o un proyecto).

Vista Path Edit: expresiones, rutas obtenidas y errores de interpretación

Lo que puedes hacer

Un ejemplo de uso: el disco del proyecto cambia de letra, de D: a P:. Marca los archivos afectados, busca D:\prod con Ctrl+H, reemplaza por P:\prod, comprueba la vista previa con Show the replacements y haz clic en Replace all.

Lo que puede bloquear: modificar las rutas de una variación requiere el permiso Can modify file paths for specific Path Variations (consulta Roles Setting).

Variaciones de ruta por sistema y por sede

Un mismo archivo no tiene la misma ruta en todas partes: en un puesto Windows del estudio, en un puesto Linux, en un recurso compartido de red, en un proveedor externo. Bernard lo resuelve con las variaciones de ruta.

Cómo funciona

  1. Las variaciones son categorías del estudio. Local existe por defecto. El administrador añade otras: un almacenamiento compartido, otra sede, un servidor SFTP (la variación lleva entonces la casilla Is SFTP).
  2. Cada archivo lleva una expresión por variación y por sistema: Windows, Linux, macOS.
  3. Cada puesto tiene su variación actual, Current Path Variation, Local por defecto. Su sistema se detecta automáticamente.
  4. Bernard elige la expresión de la variación del puesto y de su sistema, la interpreta y guarda el resultado en memoria.
  5. Las copias se hacen de una variación a otra: descargar copia hacia la variación del puesto, enviar copia desde ella (consulta Gestión de archivos).

Si falta la expresión, Bernard no se detiene:

Dónde verlas y ajustarlas

Un ejemplo: un puesto de oficina y un puesto remoto

El estudio tiene dos variaciones, Local y NAS. Un archivo tiene dos expresiones:

Variación Windows Linux
Local P:\demo\<Parent.Name>\<Name> /mnt/demo/<Parent.Name>/<Name>
NAS \\nas01\demo\<Parent.Name>\<Name> /nas/demo/<Parent.Name>/<Name>

Un artista en Windows, cuya variación actual es Local, abre P:\demo\SEQ010\sh010. Cuando descarga el archivo desde el servidor remoto, Bernard lo copia a esa ruta. Un puesto Linux que también usa la variación Local obtiene /mnt/demo/SEQ010/sh010.

(Las rutas y los nombres de recurso compartido son ficticios.)

Lo que puede bloquear: modificar las rutas de una variación requiere el permiso Can modify file paths for specific Path Variations.

Para ir más lejos