Sintassi di getFileName e getAbsoluteFileName
Per utilizzare il metodo RICOH ProcessDirectorgetFileName o il metodo getAbsoluteFileName, utilizzare l'annotazione del simbolo per fare riferimento a questi come alle formule di simbolo RICOH ProcessDirector. Utilizzare una di queste sintassi:
Sintassi 1, ricerca singola:
${getFileName(UsageKeyword, DatatypeKeyword, FileaccessKeyword)} ${getAbsoluteFileName(UsageKeyword, DatatypeKeyword, FileaccessKeyword)}
Sintassi 2, ricerca iterativa:
${getFileName(UsageKeyword, (DatatypeKeyword1, DatatypeKeyword2...), FileaccessKeyword)} ${getAbsoluteFileName(UsageKeyword, (DatatypeKeyword1, DatatypeKeyword2...), FileaccessKeyword)}
in cui:
- UsageKeyword
- Una parola chiave sensibile al maiuscolo/minuscolo che identifica il tipo di utilizzo del file di spool. I valori che gli utenti autorizzati possono specificare sono gli stessi valori che la parte usage-type del nome file di spool può contenere. Ad esempio, è possibile specificare queste parole chiave fornite da RICOH ProcessDirector: aiwlist, control, overrides o print. È inoltre possibile specificare le parole chiave definite dall'utente.
- DatatypeKeyword or (DatatypeKeyword1, DatatypeKeyword2...)
- Una parola chiave sensibile al maiuscolo/minuscolo che specifica il tipo di dati del
file di spool. I valori che gli utenti autorizzati possono specificare sono gli stessi
valori che la porzione del tipo di dati del file di spool possono contenere. Ad esempio,
è possibile specificare parole chiave fornite da RICOH ProcessDirector, come jdf, pdf o gif. È inoltre possibile specificare le parole chiave definite dall'utente.
Se si vuole cheRICOH ProcessDirector continui a cercare un altro file di spool se non trova un file di spool del tipo iniziale, è possibile specificare parole chiave del tipo di dati multipli. Separarle con virgole e racchiuderle tra parentesi. Ad esempio:
${getFileName(UsageKeyword, (print, pdf), FileaccessKeyword)}
In questo esempio, il metodo getFileName cerca innanzitutto un file di spool con il tipo di dati print. Se non trova un nome del file di spool corrispondente, prosegue con la ricerca di un file di spool con tipo di dati pdf. Se ancora non trova un nome del file di spool corrispondente, prosegue con la ricerca di un file di spool con datatype sconosciuto. E se questo file di spool non esiste, RICOH ProcessDirector genererà un messaggio d'errore.
Nota: Il punto di elaborazione in cui RICOH ProcessDirector tenta di risolvere il nome del file determina se il metodo riesce a localizzare il file o meno. Se il flusso di lavoro include l'operazione SetJobPropsFromTextFile, utilizzare il metodo getAbsoluteFileName invece del metodo getFileName. L'operazione SetJobPropsFromTextFile cerca di risolvere il nome del file che il metodo getFileName rappresenta immediatamente dopo la creazione del lavoro da parte del dispositivo di input; non tutti i file di spool sono disponibili a quel punto dell'elaborazione. RICOH ProcessDirectornon cerca di risolvere il nome del file rappresentato dal metodo getAbsoluteFileName immediatamente dopo la creazione del lavoro.È inoltre possibile specificare più valori datatype con il metodo getAbsoluteFileName come:
${getAbsoluteFileName(UsageKeyword, (pdf, postscript, text), FileaccessKeyword)}
Il metodo getAbsoluteFileName cerca i file di spool nella stessa maniera del metodo getFileName, con un'eccezione. Se non risultano file di spool con i datatype specificati il metodo getAbsoluteFileName non cercherà un file di spool con datatype unknown per impostazione predefinita.
- FileaccessKeyword
- La parola chiave di accesso al file, ovvero lettura o scrittura, specifica se il programma esterno legge il file dalla directory di spool o scrive
il file nella directory di spool. RICOH ProcessDirector crea i file in sottodirectory della directory di spool, a seconda che il programma
esterno legga o scriva un file:
- /Sottodirectory
checkpoints
- Quando il programma esterno esegue modifiche al file con un'operazione di scrittura,
RICOH ProcessDirector sposta la versione originale del file in questa sottodirectory. Se un utente autorizzato
richiede successivamente un'azione di rielaborazione, RICOH ProcessDirector può ripristinare il file di spool di origine dalla directory secondaria /
checkpoints
. Ciò assicura che il programma esterno abbia lo stesso input disponibile per l'operazione di scrittura come la prima volta che il file è stato elaborato. - Sottodirectory /
tmp
- Quando il programma esterno crea un nuovo file, RICOH ProcessDirector memorizza il nuovo file nella sottodirectory fino a che non viene completato il passo esterno che chiama il programma esterno. Quando il passo viene completato, RICOH ProcessDirector sposta il nuovo file sulla directory di spool.
Nota: I programmi esterni che creano lavori secondari devono scriverli nella sottodirectory /secondari
della directory di spool del lavoro. Il nome del file del lavoro secondario che i programmi secondari creano deve risultare nel seguente formato:JobNumber.Usagetype.Datatype,ChildGroupID,Job.JobType=JobType
ChildGroupID deve essere identico per tutti i file associati a un singolo lavoro secondario. Se il programma esterno genera più di un lavoro secondario, deve incrementare ChildGroupID per ogni serie di file associati con un nuovo lavoro secondario.Il programma esterno aggiunge ,Job.JobType= al nome del file, che è il nome del database per la proprietà del flusso di lavoro. Il valore JobType è il nome del flusso di lavoro richiesto dal lavoro secondario. Questo flusso di lavoro deve essere esistente e abilitato.
- /Sottodirectory
Esempi di lettura di getFileName e getAbsoluteFileName
In tutti questi esempi viene utilizzata la directory di spool:
/aiw/aiw1/spool/default/10000006
(Linux)
La directory di spool contiene i file di 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
In questi esempi non è stato impostato il valore della proprietà di lavoro Flusso dati di input, ad esempio mediante un valore predefinito del lavoro nel flusso di lavoro o in un'operazione di individuazione. Perciò un file di spool con datatype unknown è presente nella directory di spool:
- Per restituire il percorso e il nome del file di controllo per il lavoro, che corrisponde
a
/aiw/aiw1/spool/default/10000006/10000006.control.text
, in modo che il programma esterno possa eseguire un'operazione di lettura sul file:${getFileName(control, text, read)} ${getAbsoluteFileName(control, text, read)}
- Per restituire il percorso e il nome del file di input per il lavoro, che corrisponde
a
/aiw/aiw1/spool/10000006/10000006.print.unknown
, in modo che il programma esterno possa eseguire un'operazione di lettura sul file:${getFileName(print, unknown, read)} ${getAbsoluteFileName(print, unknown, read)}
In questi esempi viene utilizzata la directory di spool:
/aiw/aiw1/spool/default/10000009
La directory di spool contiene i file di spool:
10000009.banner_attributes.text
10000009.control.text
10000009.overrides.text
10000009.print.ps
10000009.resources.pdf
10000009.resources.log
10000009.resources.outlines
In questo esempio, il tipo di flusso di dati di input è stato rilevato e 10000009.print.ps
è la copia del file di input originale. Per ricercare un file di input in uno dei
formati PostScript supportati:
${getFileName(print, (pdf, ps), read)} ${getAbsoluteFileName(print, (pdf, ps), read)}
Entrambi i metodi cercano inizialmente un file di spool con nome 10000009.print.pdf
. Poiché quel file di spool non è presente, i metodi continueranno con la ricerca
del nome 10000009.print.ps
.
Esempi di scrittura di getFileName e getAbsoluteFileName
In tutti questi esempi viene utilizzata la directory di spool:
/aiw/aiw1/spool/default/10000006
- Per impostare un'operazione di scrittura con un programma esterno che scrive un nuovo
file delle statistiche sulla directory di spool:
${getFileName(statistics, record, write)} ${getAbsoluteFileName(statistics, record, write)}
RICOH ProcessDirector fornisce il programma esterno con il percorso e il nome del file
/aiw/aiw1/spool/default/10000006/10000006.statistics.record
. - Per impostare un'operazione di scrittura con un programma esterno che aggiorna il
file di stampa PDF nella directory di spool:
${getFileName(print, pdf, write)} ${getAbsoluteFileName(print, pdf, write)}
RICOH ProcessDirector verifica un file con il nome
10000006.print.pdf
, se esistente, nella directory secondaria deipunti di verifica
della directory di spool per il lavoro.RICOH ProcessDirector fornisce anche il programma esterno con percorso e nome del file
/aiw/aiw1/spool/default/10000006/tmp/10000006.print.pdf
.- In caso di errore del programma, la directory di spool per il lavoro resta invariata
poiché il programma esterno ha scritto in un file che RICOH ProcessDirector ha spostato nella sottodirectory /
tmp
. RICOH ProcessDirector sposta il file nella directory di spool solo se l'operazione esterna che richiama il programma esterno viene completata correttamente. - Se il programma riesce, RICOH ProcessDirector sposta il file dalla sottodirectory /
tmp
alla directory di spool. Se un file con quel nome esiste già nella directory di spool, RICOH ProcessDirector sposta quel file nella sottodirectory del punto di verifica, quindi sposta il file appena creato da /tmp
nella directory di spool per il lavoro.
- In caso di errore del programma, la directory di spool per il lavoro resta invariata
poiché il programma esterno ha scritto in un file che RICOH ProcessDirector ha spostato nella sottodirectory /