Mandatos externos

Si selecciona el uso de la plantilla de pasos RunExternalProgram, decida el mandato que desea utilizar antes de comenzar a crear la plantilla de pasos. A continuación se muestran algunos ejemplos de mandatos que utilizan la notación de símbolos RICOH ProcessDirector.

Copiar un archivo de impresión más reciente en un destino

En este ejemplo, el mandato cp de Linux solo copia el archivo NúmeroTrabajo.print.pdf desde el directorio de spool para el trabajo cuando el archivo de origen es más reciente que el archivo de destino:
cp -u ${getAbsoluteFileName(print, pdf, read)} /tmp/jobarchives

${getAbsoluteFileName(print, pdf, read)} es la fórmula de símbolos de RICOH ProcessDirector que devuelve el nombre del archivo de impresión PDF del directorio de spool. Si el archivo de impresión PDF no existe en el directorio de spool cuando se ejecuta el programa externo, se produce un error.

Actualizar un archivo de impresión y grabarlo en el directorio de spool.

En este ejemplo, el programa externo myprogram lee el archivo NúmeroTrabajo.print.pdf desde el directorio de spool y graba una versión actualizada del archivo en el directorio de spool utilizando la redirección:
myprogram -i ${getFileName(print, pdf, read)} > 
${getFileName(print, pdf, write)}

${getFileName(print, pdf, read)} es la fórmula de símbolos de RICOH ProcessDirector que devuelve el nombre del archivo de impresión PDF del directorio de spool. Si el archivo de impresión PDF no existe en el directorio de spool cuando el programa externo se ejecuta, RICOH ProcessDirector devuelve el nombre del archivo de entrada para el trabajo, que es NúmeroTrabajo.print.unknown. Si dicho archivo no existe en el directorio de spool, se produce un error.

Leer el archivo de alteraciones temporales de un trabajo de impresión y grabar un archivo de estadísticas en el directorio de spool

En este ejemplo, el programa externo auditstatistics lee el archivo NúmeroTrabajo.overrides.text desde el directorio de spool y graba un nuevo archivo de estadísticas NúmeroTrabajo.statistics.text en el directorio de spool:
auditstatistics inputfile=${getFileName(overrides, text, read)} 
outputfile=${getFileName(statistics, text, write)}

Usar un archivo independiente para pasar valores de propiedad a un programa externo con el archivo de impresión

En este ejemplo, el mandato cp de Linux produce un archivo CSV para el que existe un archivo de control RICOH ProcessDirector correspondiente. El archivo de control muestra los símbolos para nueve propiedades del trabajo RICOH ProcessDirector:
cp ${getControlFileName()} /aiw/aiw1/samples/${Job.ID}.info.csv

${getControlFileName()} es la fórmula de símbolos RICOH ProcessDirector que devuelve el nombre del archivo de control resuelto. RICOH ProcessDirector genera el archivo de control a partir de la plantilla de archivo de control que especifique.

El archivo de control puede utilizar el método getChildFileName para devolver el nombre de un archivo hijo, de modo que el programa externo pueda grabar un archivo en el subdirectorio children del directorio de spool. El programa externo debe grabar los nombres de archivo de los archivos hijo del trabajo con este formato:

JobNumber.UsageType.DataType.n,Job.JobType=JobTypeName
JobTypeName es el nombre del flujo de trabajo que requiere el trabajo hijo. El flujo de trabajo debe existir y debe estar habilitado.

Cuando añada un paso basado en la plantilla de pasos RunExternalProgram a un flujo de trabajo mediante el cuaderno de propiedades Tipos de trabajo, las propiedades que muestran [Recepción] en los valores por omisión del trabajo cambian para reflejar la fase real a la que añade el paso.

Invocar un mandato mediante el nombre completo de la vía de acceso

Este ejemplo utiliza el nombre completo de la vía de acceso para invocar al programa externo que proporciona el usuario mytransform para transformar un archivo a formato PDF. mytransform lee los nombres de los archivos de entrada y salida desde un archivo de control:
/opt/myprograms/bin/mytransform -c ${getControlFileName()}

Archivar un archivo de impresión en un sistema Windows

En este ejemplo, el paso externo utiliza el mandato copy de Windows para grabar una copia del archivo NúmeroTrabajo.print.pdf desde el directorio de spool a un directorio de archivado del sistema Windows:
copy ${getAbsoluteFileName(print,pdf,read)} d:\archive\pdf
    Nota:
  • El directorio del sistema Windows debe tener RICOH ProcessDirector instalado y el servidor de aplicaciones de Windows debe estar conectado al servidor primario.
  • Especifique el directorio de Windows utilizando el formato nativo de Windows para el nombre de directorio.
  • Utilice mandatos nativos de Windows en lugar de mandatos de Windows Services for UNIX (SFU) cuando sea adecuado; por ejemplo, utilice el mandato copy en lugar del mandato cp. No todos los mandatos SFU están disponibles en los sistemas Windows.
  • Dependiendo del mandato, es posible que no sea necesario que exista un sistema Windows. El mandato puede crear el directorio en el sistema Windows.
  • Asegúrese de ajustar la plantilla de pasos para ejecutar solo un servidor de aplicaciones de Windows. Debido a los formatos diferentes de los nombres de directorio de Linux, un paso basado en esta plantilla de pasos fallará si RICOH ProcessDirector intenta ejecutar el paso en un sistema que no es Windows.