Sintaxis de getFileName y getAbsoluteFileName

Puede utilizar los métodos getFileName y getAbsoluteFileName para que devuelvan el nombre de un archivo específico del directorio de spool. Esto resulta útil porqueRICOH ProcessDirector asigna un número de trabajo exclusivo para cada trabajo e incluye el número de trabajo en los nombres de archivo. La diferencia principal entre los dos métodos es que getAbsoluteFileName falla si no existe el archivo solicitado específicamente. getFileName puede devolver el nombre de un archivo de spool alternativo.

Para utilizar el método RICOH ProcessDirectorgetFileName o el método getAbsoluteFileName, utilice la anotación de símbolos para hacer referencia a los mismos como fórmulas de símbolos de RICOH ProcessDirector. Utilice una de estas sintaxis:

Sintaxis 1, búsqueda individual:

${getFileName(UsageKeyword, DatatypeKeyword, FileaccessKeyword)}

${getAbsoluteFileName(UsageKeyword, DatatypeKeyword, FileaccessKeyword)}

Sintaxis 2, búsqueda iterativa:

${getFileName(UsageKeyword, (DatatypeKeyword1, DatatypeKeyword2...), 
FileaccessKeyword)}

${getAbsoluteFileName(UsageKeyword, (DatatypeKeyword1, 
DatatypeKeyword2...), FileaccessKeyword)}

donde:

UsageKeyword
Una palabra clave sensible a las mayúsculas y minúsculas que identifica el tipo de utilización del archivo de spool. Los usuarios autorizados pueden especificar los mismos valores que la parte tipo tipoutilización del nombre de archivo de spool puede contener. Por ejemplo, puede especificar estas claves suministradas por RICOH ProcessDirector: aiwlist, control, anular o imprimir. También pueden especificar palabras clave definidas por el usuario.
PalabraclaveTipoDatos o bien (PalabraclaveTipoDatos1, PalabraclaveTipoDatos2...)
Una palabra clave sensible a las mayúsculas y minúsculas que especifica el tipo de datos del archivo de spool. Los valores que los usuarios autorizados pueden especificar son los mismos que la parte del tipo de datos del archivo de spool puede contener. Por ejemplo, puede especificar palabras clave suministradas por RICOH ProcessDirector, como jdf, pdf o gif. También pueden especificar palabras clave definidas por el usuario.

Si desea que RICOH ProcessDirector continúe buscando otro archivo de spool, si no encuentra un archivo de spool del tipo inicial, puede especificar varias palabras clave tipodatos. Separe estas palabras con comas y enciérrelas entre paréntesis. Por ejemplo:

${getFileName(UsageKeyword, (print, pdf), FileaccessKeyword)}

En este ejemplo, el método getFileName busca primero un archivo de spool con un tipo de datos print. Si no encuentra un nombre de archivo de spool coincidente, busca un archivo de spool con un tipo de datos pdf. Si aún no encuentra un nombre de archivo de spool coincidente, busca un archivo de spool con un tipodatos de unknown. Si no existe ese archivo de spool, RICOH ProcessDirector emite un mensaje de error.

Nota: El punto de proceso en el cual RICOH ProcessDirector intenta resolver el nombre del archivo determina si el método localizar el archivo. Si el flujo de trabajo incluye el paso SetJobPropsFromTextFile, utilice el método getAbsoluteFileName, en lugar del método getFileName. El paso SetJobPropsFromTextFile intenta resolver el nombre de archivo que representa el método getFileName inmediatamente después de que el dispositivo de entrada cree el trabajo y no todos los archivos de spool están disponibles en ese punto del proceso. RICOH ProcessDirectorno intenta resolver el nombre de archivo que representa el método getAbsoluteFileName inmediatamente después de la creación del trabajo.

También puede especificar varios valores de tipos de datos con el método getAbsoluteFileName, por ejemplo:

${getAbsoluteFileName(UsageKeyword, (pdf, postscript, text), 
FileaccessKeyword)}

El método getAbsoluteFileName busca archivos de spool del mismo modo que el método getFileName, con una excepción. Si no existen archivos de spool con alguno de los tiposdatos especificados, el valor por omisión es que el método getAbsoluteFileName no busca ningún archivo de spool con un tipodatos de unknown.

FileaccessKeyword
La clave de acceso a archivo, que es lectura o escritura, especifica si el programa externo lee el archivo desde el directorio de spool o si escribe el archivo en el directorio de spool. RICOH ProcessDirector crea archivos en subdirectorios del directorio de spool, en función de si el programa externo lee o escribe un archivo:
Subdirectorio checkpoints
Cuando el programa externo realiza cambios en el archivo a través de una operación de escritura, RICOH ProcessDirector mueve la versión original del archivo a este subdirectorio. Si un usuario autorizado solicita posteriormente volver a procesarlo, RICOH ProcessDirector puede restaurar el archivo de spool original desde el subdirectorio /checkpoints. Esto garantiza que el programa externo tenga disponible la misma entrada para su operación de escritura que la primera vez que procesó el archivo.
Subdirectorio tmp
Cuando el programa externo crea un nuevo archivo, RICOH ProcessDirector almacena el nuevo archivo en este subdirectorio hasta que el paso externo que llama al programa externo se completa. Cuando el paso se completa, RICOH ProcessDirector mueve el nuevo archivo al directorio de spool.
Nota: Los programas externos que crean trabajos hijo deben escribirlos en el subdirectorio hijo del directorio de spool del trabajo. El nombre de archivo del trabajo hijo que crea el programa externo debe estar en este formato:
JobNumber.Usagetype.Datatype,ChildGroupID,Job.JobType=JobType
El valor IDGrupoHijos debe ser igual para todos los archivos asociados a un trabajo hijo individual. Si el programa externo genera más de un trabajo hijo, debe aumentar el IDGrupoHijos para cada conjunto de archivos asociado al nuevo trabajo hijo.

El programa externo añade ,Job.JobType= al nombre de archivo, que es el nombre de base de datos para la propiedad del flujo de trabajo. El valor TipoTrabajo es el nombre del flujo de trabajo que requiere el trabajo hijo; dicho flujo de trabajo debe existir y debe estar habilitado.

Ejemplos de lectura de getFileName y getAbsoluteFileName

Todos estos ejemplos utilizan el directorio de spool:

  • /aiw/aiw1/spool/default/10000006 (Linux)
  • C:\aiw\aiw1\spool\default\10000006 (Windows)

El directorio de spool contiene estos archivos de spool:

10000006.banner_attributes.text
10000006.control.text
10000006.overrides.text
10000006.print.pdf
10000006.print.unknown
10000006.resources.pdf
10000006.resources.log
10000006.resources.outlines

Para estos ejemplos, el valor de la propiedad de trabajo Corriente de datos de entrada no se ha establecido de ninguna manera, como, por ejemplo, a través de un valor por omisión de trabajo en el flujo de trabajo o de un paso de detección. Por lo tanto, hay un archivo de spool con un tipo de datos unknown en el directorio de spool:

  • Para devolver la vía de acceso y el nombre del archivo de control para el trabajo, que es /aiw/aiw1/spool/default/10000006/10000006.control.text (Linux) o C:\aiw\aiw1\spool\default\10000006\10000006.control.text (Windows), de forma que el programa externo pueda realizar una operación de lectura en el archivo:
    ${getFileName(control, text, read)}
    
    ${getAbsoluteFileName(control, text, read)}
  • Para devolver la vía de acceso y el nombre del archivo de entrada para el trabajo, que es /aiw/aiw1/spool/10000006/10000006.print.unknown (Linux) o C:\aiw\aiw1\spool\10000006\10000006.print.unknown (Windows), de forma que el programa externo pueda realizar una operación de lectura en el archivo:
    ${getFileName(print, unknown, read)}
    
    ${getAbsoluteFileName(print, unknown, read)}

Estos ejemplos utilizan el directorio de spool:

  • /aiw/aiw1/spool/default/10000009(Linux)
  • C:\aiw\aiw1\spool\default\10000009 (Windows)

El directorio de spool contiene estos archivos de spool:

10000009.banner_attributes.text
10000009.control.text
10000009.overrides.text
10000009.print.ps
10000009.resources.pdf
10000009.resources.log
10000009.resources.outlines

En este ejemplo se detectó el tipo de corriente de datos de entrada y 10000009.print.ps es la copia del archivo de entrada original. Para buscar un archivo de entrada en los formatos PostScript soportados:

${getFileName(print, (pdf, ps), read)}

${getAbsoluteFileName(print, (pdf, ps), read)}

Ambos métodos buscan primero un archivo de spool denominado 10000009.print.pdf. Puesto que no existe ese archivo de spool, los métodos siguen buscando un archivo de spool denominado 10000009.print.ps.

Ejemplos de escritura de getFileName y getAbsoluteFileName

Todos estos ejemplos utilizan el directorio de spool:

  • /aiw/aiw1/spool/default/10000006 (Linux)
  • C:\aiw\aiw1\spool\default\10000006 (Windows)
  • Para configurar una operación de escritura de un programa externo que escribe un nuevo archivo de registros de estadísticas en el directorio de spool:
    ${getFileName(statistics, record, write)}
    
    ${getAbsoluteFileName(statistics, record, write)}

    RICOH ProcessDirector proporciona el programa externo con la vía de acceso y el nombre de archivo /aiw/aiw1/spool/default/10000006/10000006.statistics.record en Linux y C:\aiw\aiw1\spool\default\10000006\10000006.control.text en Windows.

  • Para configurar una operación de escritura de un programa externo que actualiza el archivo de impresión PDF en el directorio de spool:
    ${getFileName(print, pdf, write)}
    
    ${getAbsoluteFileName(print, pdf, write)}

    RICOH ProcessDirector establece un punto de comprobación en el archivo denominado 10000006.print.pdf, si existe, en el subdirectorio checkpoints del directorio de spool del trabajo.

    RICOH ProcessDirector proporciona asimismo el programa externo con la vía de acceso y el nombre de archivo /aiw/aiw1/spool/default/10000006/tmp/10000006.print.pdf en Linux y C:\aiw\aiw1\spool\default\10000006\tmp\10000006.print.pdf en Windows.

    • Si el programa falla, el directorio de spool del trabajo no cambia porque el programa externo escribió en un archivo que RICOH ProcessDirector ha movido al subdirectorio tmp. RICOH ProcessDirector solo mueve el archivo al directorio de spool si el paso externo que llama al programa externo se completa correctamente.
    • Si el programa se ejecuta correctamente, RICOH ProcessDirector traslada el archivo desde el subdirectorio tmp al directorio de spool. Si ya existe un archivo con ese nombre en el directorio de spool, RICOH ProcessDirector traslada el archivo al subdirectorio del punto de comprobación, a continuación, pasa el archivo recién creado desde tmp al directorio de spool del trabajo.