Syntaxe des méthodes getFileName et getAbsoluteFileName
Pour pouvoir utiliser l'une des méthodes RICOH ProcessDirectorgetFileName ou getAbsoluteFileName, utilisez la notation des symboles pour la référencer en tant que formule de symbole RICOH ProcessDirector. Utilisez l'une des syntaxes suivantes :
Syntaxe 1, recherche simple :
${getFileName(UsageKeyword, DatatypeKeyword, FileaccessKeyword)} ${getAbsoluteFileName(UsageKeyword, DatatypeKeyword, FileaccessKeyword)}
Syntaxe 2, recherche itérative :
${getFileName(UsageKeyword, (DatatypeKeyword1, DatatypeKeyword2...), FileaccessKeyword)} ${getAbsoluteFileName(UsageKeyword, (DatatypeKeyword1, DatatypeKeyword2...), FileaccessKeyword)}
,
- MotCléSyntaxe
- Mot clé, sensible à la casse, qui identifie le type d'utilisation du fichier spoule. Les valeurs que les utilisateurs autorisés peuvent indiquer sont les mêmes que celles disponibles pour la partie relative au type d'utilisation du nom de fichier spoule. Par exemple, vous pouvez spécifier les mots clés suivants, fournis par RICOH ProcessDirector : aiwlist, control, overrides ou print. Vous pouvez également indiquer vos propres mots clés définis par l'utilisateur.
- MotCléTypeDonnées ou (MotCléTypeDonnées1, MotCléTypeDonnées2...)
- Mot clé, sensible à la casse, qui indique le type de données du fichier spoule. Les
valeurs que les utilisateurs autorisés peuvent indiquer sont les mêmes que celles
disponibles pour la partie relative au type de données du fichier spoule. Par exemple,
vous pouvez spécifier des mots clés fournis par RICOH ProcessDirector, tels que jdf, pdf ou gif. Vous pouvez également indiquer vos propres mots clés définis par l'utilisateur.
Si vous voulez qu'RICOH ProcessDirector continue à chercher un autre fichier spoule s'il n'en trouve pas du type initial, vous pouvez indiquer plusieurs mots clés liés au type de données. Séparez-les par des virgules et mettez-les entre parenthèses. Par exemple :
${getFileName(UsageKeyword, (print, pdf), FileaccessKeyword)}
Dans cet exemple, la méthode getFileName recherche d'abord un fichier spoule avec un type de données print. Si elle ne trouve pas de nom de fichier spoule correspondant, elle recherche un fichier spoule avec un type de données pdf. Si elle ne trouve toujours pas de nom de fichier spoule correspondant, elle recherche un fichier spoule avec un type de données unknown. Si ce fichier spoule n'existe pas, RICOH ProcessDirector émet un message d'erreur.
Remarque: Le point de traitement auquel RICOH ProcessDirector essaie de déterminer le nom du fichier détermine si la méthode trouve le fichier. Si le flot de travaux comprend l'étape SetJobPropsFromTextFile, utilisez la méthode getAbsoluteFileName plutôt que la méthode getFileName. Le modèle d'étape SetJobPropsFromTextFile tente de résoudre le nom de fichier que la méthode getFileName représente immédiatement après création du travail par l'unité d'entrée, et tous les fichiers spoule ne sont pas disponibles à ce point de traitement. RICOH ProcessDirector ne tente pas de résoudre le nom de fichier que la méthode getAbsoluteFileName représente immédiatement après la création du travail.Avec la méthode getAbsoluteFileName, vous pouvez également définir plusieurs valeurs de type de données, tels les exemples suivants :
${getAbsoluteFileName(UsageKeyword, (pdf, postscript, text), FileaccessKeyword)}
La méthode getAbsoluteFileName recherche des fichiers spoule de la même manière que la méthode getFileName, à une exception près. S'il n'existe aucun fichier spoule présentant les types de données indiqués, la méthode getAbsoluteFileName ne recherche par défaut aucun fichier spoule avec le type de données unknown.
- MotCléAccèsFichier
- Le mot clé relatif à l'accès au fichier, qui est read ou write, indique si un programme externe lit le fichier depuis le répertoire spoule ou écrit
le fichier dans le répertoire spoule. RICOH ProcessDirector crée des fichiers dans des sous-répertoires du répertoire spoule, selon que le programme
externe lit ou écrit un fichier :
- Sous-répertoire
checkpoints
- Lorsqu'un programme externe effectue des modifications dans un fichier par une opération
d'écriture, RICOH ProcessDirector déplace la version originale du fichier vers ce sous-répertoire. Si un utilisateur
autorisé requiert plus tard une action de retraitement, RICOH ProcessDirector peut restaurer le fichier spoule d'origine à partir du sous-répertoire
checkpoints
. Ainsi, le programme externe possède la même entrée disponible pour son opération d'écriture que lorsqu'il a traité le fichier la première fois. - Sous-répertoire
tmp
- Lorsque le programme externe crée un nouveau fichier, RICOH ProcessDirector enregistre le nouveau fichier dans ce répertoire jusqu'à ce que l'action externe qui a appelé le programme externe soit terminée. Lorsque l'action est terminée, RICOH ProcessDirector déplace le nouveau fichier vers le répertoire spoule.
Remarque: Les programmes externes qui créent des travaux enfant doivent les écrire dans le sous-répertoirechildren
du répertoire spoule du travail. Le nom de fichier du travail enfant créé par le programme externe doit avoir le format suivant :JobNumber.Usagetype.Datatype,ChildGroupID,Job.JobType=JobType
La variable IDGroupeEnfant doit être identique pour tous les fichiers associés à un travail enfant unique. Si le programme externe génère plusieurs travaux enfant, il doit incrémenter la valeur IDGroupeEnfant pour chaque ensemble de fichiers associés à un nouveau travail enfant.Le programme externe ajoute ,Job.JobType= au nom de fichier, qui est le nom de la base de données de la propriété du flot de travaux. La valeur TypeTravail est le nom du flux de travail requis par le travail enfant ; ce flux doit exister et il doit être activé.
- Sous-répertoire
Exemples de lecture des méthodes getFileName et getAbsoluteFileName
Tous ces exemples utilisent le répertoire spoule :
/aiw/aiw1/spool/default/10000006
(AIX et Linux)C:\aiw\aiw1\spool\default\10000006
(Windows)
Le répertoire spoule contient les fichiers spoules suivants :
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
Pour ces exemples, la valeur de la propriété du travail Flot de données en entrée n'a pas été définie d'une manière spécifique, comme au moyen d'un travail par défaut dans le flot de travaux ou une étape de détection. Par conséquent, un fichier spoule avec un type de données unknown se trouve dans le répertoire spoule :
- Renvoi du chemin d'accès et du nom du fichier de contrôle du travail, à savoir
/aiw/aiw1/spool/default/10000006/10000006.control.text
(AIX et Linux) ouC:\aiw\aiw1\spool\default\10000006\10000006.control.text
(Windows), de sorte que le programme externe puisse effectuer une opération de lecture sur le fichier :${getFileName(control, text, read)} ${getAbsoluteFileName(control, text, read)}
- Renvoi du chemin d'accès et du nom du fichier en entrée du travail, à savoir
/aiw/aiw1/spool/10000006/10000006.print.unknown
(AIX et Linux) ouC:\aiw\aiw1\spool\10000006\10000006.print.unknown
(Windows), de sorte que le programme externe puisse effectuer une opération de lecture sur le fichier :${getFileName(print, unknown, read)} ${getAbsoluteFileName(print, unknown, read)}
Cet exemple utilise ce répertoire spoule :
/aiw/aiw1/spool/default/10000009
(AIX et Linux)C:\aiw\aiw1\spool\default\10000009
(Windows)
Le répertoire spoule contient les fichiers spoules suivants :
10000009.banner_attributes.text
10000009.control.text
10000009.overrides.text
10000009.print.ps
10000009.resources.pdf
10000009.resources.log
10000009.resources.outlines
Dans cet exemple, le type de flot de données en entrée a été détecté ; 10000009.print.ps
est une copie du fichier en entrée d'origine. Recherche d'un fichier en entrée dans
l'un des formats PostScript pris en charge :
${getFileName(print, (pdf, ps), read)} ${getAbsoluteFileName(print, (pdf, ps), read)}
Les deux méthodes recherchent d'abord un fichier spoule nommé 10000009.print.pdf
. Puisque le fichier spoule n'existe pas, les méthodes recherchent un fichier spoule
nommé 10000009.print.ps
.
Exemples d'écriture des méthodes getFileName et getAbsoluteFileName
Tous ces exemples utilisent le répertoire spoule :
/aiw/aiw1/spool/default/10000006
(AIX et Linux)C:\aiw\aiw1\spool\default\10000006
(Windows)
- Configurer une opération d'écriture par un programme externe chargé d'écrire un nouveau
fichier d'enregistrement de statistiques :
${getFileName(statistics, record, write)} ${getAbsoluteFileName(statistics, record, write)}
RICOH ProcessDirector fournit au programme externe le chemin d'accès et le nom de fichier
/aiw/aiw1/spool/default/10000006/10000006.statistics.record
sous AIX ou Linux etC:\aiw\aiw1\spool\default\10000006\10000006.statistics.record
sous Windows. - Configurer une opération d'écriture par un programme externe chargé de mettre à jour
le fichier d'impression PDF dans le répertoire spoule :
${getFileName(print, pdf, write)} ${getAbsoluteFileName(print, pdf, write)}
RICOH ProcessDirector contrôle un fichier portant le nom
10000006.print.pdf
, s'il existe, dans le sous-répertoirecheckpoint
du répertoire spoule du travail.RICOH ProcessDirector fournit également au programme externe le chemin d'accès et le nom de fichier
/aiw/aiw1/spool/default/10000006/tmp/10000006.print.pdf
sous AIX ou Linux etC:\aiw\aiw1\spool\default\10000006\tmp\10000006.print.pdf
sous Windows.- Si le programme échoue, le répertoire spoule du travail est inchangé, car le programme
externe a écrit dans un fichier RICOH ProcessDirector déplacé dans le sous-répertoire
tmp
. RICOH ProcessDirector ne déplace le fichier dans le répertoire spoule que si l'étape externe ayant appelé le programme externe se termine avec succès. - Si le programme aboutit, RICOH ProcessDirector place le fichier du sous-répertoire
tmp
dans le répertoire spoule. Si un fichier avec le même nom existe déjà dans le répertoire spoule, RICOH ProcessDirector place ce fichier dans le sous-répertoire de point de contrôle, puis transfère le nouveau fichier créé detmp
dans le répertoire spoule du travail.
- Si le programme échoue, le répertoire spoule du travail est inchangé, car le programme
externe a écrit dans un fichier RICOH ProcessDirector déplacé dans le sous-répertoire