Class ScriptStep
- java.lang.Object
-
- fr.gpmsi.ScriptStep
-
public class ScriptStep extends Object
Etape de script. Les étapes de script résultent de l'exécution des méthodes deGroovyScriptsBase
. A l'intérieur des blocs 'onItem', l'objet 'item' possède des variables, qui dépendent du type de l'étape. Les étapes admises actuellement (avec les variables disponibles) sont :- RSS : 'RUM' (ou 'rum'), 'line', 'linenr'
- RSA : 'RSA' (ou 'rsa'), 'line', 'linenr'
- RHS : 'RHS' (ou 'rhs'), 'line', 'linenr'
- RHA : pas encore implemente
- CSV : 'row' (
CsvRow
), 'linenr' - SINGLE : pas de variable, execute une fois le corps et sort
- LINE : 'line', 'linenr'
- VIDHOSP : 'vidhosp', 'line', 'linenr'
- RSFACE : 'RSF' (ou 'rsf'), 'line', 'linenr'
- MONO : 'MONO' (ou 'mono'), 'line', 'linenr'
- XLPOI : 'row' , 'linenr' (EN COURS DE DEV)
- DBF : 'row', 'linenr' (EN COURS DE DEV)
inputReader
, soit uninputFilePath
. LeinputReader
a priorité sur leinputFilePath
.ScriptStep n'envoie rien par défaut sur la sortie standard, mais permet de déclarer un outputWriter via un appel à
outputWriter
ou un outputFilePath via un appel àoutput
. Les scripts qui s'exécutent dans un ScriptStep sont encouragés à utiliser ces deux variables pour déclarer le fichier de sortie ou le flux de sortie, et à les utiliser pour ecrire leurs resultats ; cependant il n'y a pas d'obligation à utiliser ces variables.L'étape de script XLPOI ouvre par défaut l'onglet 0 (le premier onglet du fichier excel). On peut lui dire d'ouvrir un autre onglet en donnant son nom par un appel à
sheetName
, ou son numéro par un appel àsheetNumber
(sheetName
a priorité sursheetNumber
)Pour certaines étapes il est nécessaire de préciser explicitement les métadonnées à utiliser. On peut faire cela en définissant la valeur de
metaHint
pour aider à trouver la bonne version d'une métadonnées (par exemple l'année pour un les métadonnées RSFACE), ou bien on peut définir directement la valeurmetaName
pour donner le nom de la métadonnée à trouver. Si le fichier des métadonnées n'est pas un fichier fourni par défaut dans la librairie on peut donner le chemin du répertoire où chercher ce fichier de métadonnées viametaDir
.Par exemple pour lire un fichier TRA de 2022 qui est dans
C:\t\mon-tra.txt
on mettrainput
à"C:\t\mon-tra.txt"
etmetaName
àtra2016
. gpmsi trouvera tout seul le fichiergpmsi2016.csv
qui est dans les ressources de la librairie pmsixml.La librairie utilisée pour lire les données csv est OpenCsv. S'y référer pour voir tout ce que fait cette librairie qui permet d'analyser fiablement le csv. Cette librairie peut utiliser un caractère d'échappement pour représenter le caractère de "quotation" (habituellement le guillemet : "). Cependant ici on met par défaut ce caractère d'échappement à 0 car ce mécanisme n'est pas utilisé couramment par Excel et cela cause plus de bugs que d'autres choses. Si vous en avez besoin, remettez le caractère de votre choix à l'aide de la méthode
setCsvEscapeCharacter(char)
.
-
-
Field Summary
Fields Modifier and Type Field Description static int
ST_CSV
Etape CSVstatic int
ST_DBF
Etape DBF pour lecture d'un fichier DBF enregistrement par enregistrementstatic int
ST_LINE
Etape traitement des lignes d'un fichierstatic int
ST_MONO
Etape MONO pour tous les fichiers mono-niveau, comme les FICHCOMP, FICHSUP, etc.static int
ST_RHA
Etape RHA (pas encore implémentée)static int
ST_RHS
Etape RHSstatic int
ST_RSA
Etape RSAstatic int
ST_RSFACE
Etape RSF-ACEstatic int
ST_RSS
Etape RSSstatic int
ST_SINGLE
Etape avec une seule exécution, peu utiliséstatic int
ST_VIDHOSP
Etape VIDHOSPstatic int
ST_XLPOI
Etape XLPOI pour les fichiers Excel simples (qui sont comme des fichiers csv) lus par Apache POI
-
Constructor Summary
Constructors Constructor Description ScriptStep(GroovyScriptsBase owner)
Constructeur
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
callOnEnd()
Appeler les closures de fin d'exécution de l'étape (se fait en interne, l'appel direct est utilisé uniquement pour du débogage).void
callOnInit()
Initialisation.ScriptStep
childStepCsv(Closure<?> dcl)
Experimental : chainage d'une etape 'csv' (comma separated values) apres cette etapeScriptStep
childStepLine(Closure<?> dcl)
Experimental : chainage d'une etape 'line' (traitement ligne par ligne) apres cette etapeScriptStep
childStepMono(Closure<?> dcl)
Experimental : chainage d'une etape 'mono' (pmsi generique mono niveau) apres cette etapeScriptStep
childStepRha(Closure<?> dcl)
Experimental : chainage d'une etape 'rha' (resume hebdomadaire anonymise) apres cette etapeScriptStep
childStepRhs(Closure<?> dcl)
Experimental : chainage d'une etape 'rhs' (resume hebdomadaire standardise) apres cette etapeScriptStep
childStepRsa(Closure<?> dcl)
Experimental : chainage d'une etape 'rsa' (resume de sortie anonymise) apres cette etapeScriptStep
childStepRsface(Closure<?> dcl)
Experimental : chainage d'une etape 'rsface' (resume standard de facturation d activites et consultations externes) apres cette etapeScriptStep
childStepRss(Closure<?> dcl)
Experimental : chainage d'une etape 'rss' (resume standardise de sortie) apres cette etapeScriptStep
childStepSingle(Closure<?> dcl)
Experimental : chainage d'une etape 'single' (etape unique isolee) apres cette etapeScriptStep
childStepVidhosp(Closure<?> dcl)
Experimental : chainage d'une etape 'vidhosp' (variables identifiantes d hospitalisation) apres cette etapeint
ci(String name)
Nom plus court pourgetCsvColumnIndex(String)
void
countOfCsvLinesToSkip(int countOfCsvLinesToSkip)
forme courte pour pouvoir écrire en Groovy quelque chose commevoid
csvEscapeCharacter(char csvEscapeCharacter)
Identique àsetCsvEscapeCharacter(char)
void
csvQuoteCharacter(char csvQuoteCharacter)
Identique àsetCsvQuoteCharacter(char)
void
csvSeparator(char csvSeparator)
Identique àsetCsvSeparator(char)
mais plus clair lorsqu'on utilise groovyString
formatAsFrenchDate(Date d)
Formater au format français (dd/MM/yyyy).String
formatLocalAsFrenchDate(LocalDate ld)
Formater au format français (dd/MM/yyyy)ScriptStep
getChildScriptStep()
Retourner lde ScriptStep fils.int
getCountOfCsvLinesToSkip()
Retourner le nombre de lignes initiales à sauter (ignorer) lors de la lecture d'un fichier csv.int
getCsvColumnCount()
Retourner le nombre de colonnes Csvint
getCsvColumnIndex(String name)
Renvoyer l'index de la colonne csv (ou xl) qui a le nom donné ou -1 si il n'y a pas de colonne avec ce nom.char
getCsvEscapeCharacter()
Retourner le caractère d'échappement csv.String[]
getCsvHeaderRow()
Retourner le tableau des colonnes d'en-têtechar
getCsvQuoteCharacter()
Retourner le caractère de "quote" qui sert à délimiter le texte et ainsi forcer le contenu en texte simple.char
getCsvSeparator()
Retourner le séparateur csvString[]
getDbfHeaderRow()
Retourner le tableau d'en-tête qui contient les titres de colonne pour le fichier Dbf.String
getInputFilePath()
Retourner le chemin du fichier d'entrée (qui a été défini par la fonction "input")Reader
getInputReader()
Retourner le Reader qui sert à prendre les caractères en entréeString
getMetaHint()
Donner une aide pour trouver la métadonnéeString
getMetaName()
Retourner le nom de la métadonnée à utiliser (pour PmsiXml en particulier)String
getMetasDir()
Retourner le chemin du répertoire à utiliser pour lire les métadonnées supplémentaires qui ne sont pas disponibles en tant que ressource.String
getName()
Retourner le nom de cette étape.Closure<?>
getOnEnd()
Retourner la closure (fonction) à utiliser lorsque l'étape est terminéeClosure<?>
getOnInit()
Retourner la closure (fonction) à utiliser pour l'initialisation de cette étapeClosure<?>
getOnItem()
Retourner la closure (fonction) à utiliser pour chaque élément de l'étapeString
getOutputFilePath()
Retourner le chemin du fichier de sortieWriter
getOutputWriter()
Retourner le Writer actuel qui est utilisé pour la sortie des caractèresScriptStep
getParentScriptStep()
Retourner le ScriptStep parentString
getSheetName()
Accès à la variable sheetNameInteger
getSheetNumber()
Acces à la variable sheetNumber qui donne le numéro de l'onglet à ouvrirint
getStepType()
Retourner le type d'étape (step)int
getXlpoiColumnCount()
Retourner le nombre de colonnes Excel (via Apache POI)int
getXlpoiColumnIndex(String name)
Synonyme degetCsvColumnIndex(String)
String[]
getXlpoiHeaderRow()
Retourner le tableau d'en-tête qui contient les titres de colonne.void
input(String path)
Définir le chemin du fichier d'entrée Fait la même chose quesetInputFilePath(String)
void
input(String path, String encoding)
Définir le chemin du fichier d'entrée et l'encodage dans le même temps.void
inputEncoding(String enc)
définir l'encodage.void
inputReader(Reader inputReader)
forme courte pour pouvoir écrire en Groovy quelque chose comme :boolean
isTruncatedInputAccepted()
Est-ce que des données tronquées sont acceptées (pour PmsiXml notamment) ?void
metaHint(String metaHint)
nom a utiliser pour syntaxe DSLvoid
metaName(String metaName)
nom a utiliser pour pour syntaxe DSL pour donner le nom de la métadonnée.void
metasDir(String metasDirPath)
nom a utiliser pour pour syntaxe DSLvoid
name(String str)
Définit le nom de cette étape.void
onEnd(Closure<?> dcl)
Définit la closure (fonction) pour la fin d'exécution.void
onInit(Closure<?> dcl)
Définit la closure (fonction) pour l'initialisation.void
onItem(Closure<?> dcl)
Définit la closure (fonction) qui est appelée pour chaque élément.void
output(String path)
Définir le chemin du fichier de sortie.void
outputWriter(Writer outputWriter)
forme courte pour pouvoir écrire en Groovy quelque chose commevoid
processItems()
Ici "onItem" n'est pas appelé pour le "childStep".void
processNextItem()
Traiter l'item suivantvoid
setCountOfCsvLinesToSkip(int countOfCsvLinesToSkip)
Définir le nombre de lignes à ignorer lors de la lecture d'un fichier csv.void
setCsvEscapeCharacter(char csvEscapeCharacter)
Définir le caractère qui servira pour les séquences d'échappement (défaut : '\\', pour désactiver, utiliser '\0'.void
setCsvHeaderRow(String[] newRow)
Définir (ou redéfinir) la rangée d'en-tête pour Csv (ou Xl).void
setCsvQuoteCharacter(char csvQuoteCharacter)
Définir le caractère qui sera utilisé pour délimiter le texte.void
setCsvSeparator(char csvSeparator)
Définir le séparateur qui sera utilisé pour construire le CSVReader (défaut : ';')void
setInputEncoding(String enc)
Définit l'encodage utilisé par le fichier d'entrée.void
setInputFilePath(String inputFilePath)
Définir le chemin du fichier d'entréevoid
setInputReader(Reader inputReader)
Définir le Reader qui va servir à prendre les caractères en entréevoid
setMetaHint(String metaHint)
Définir l'aide à donner pour la métadonnéevoid
setMetaName(String metaName)
Définir le nom de la métadonnée à utiliser (pour PmsiXml en particulier).void
setMetasDir(String metasDirPath)
Définir le chemin du répertoire à utiliser pour lire les métadonnées supplémentaires qui ne sont pas disponibles en tant que ressource.void
setName(String name)
Définir le nom de cette étapevoid
setOnEnd(Closure<?> onEnd)
Définir la closure (fonction) à utiliser lorsque l'étape est terminéevoid
setOnInit(Closure<?> onInit)
Définir la closure (fonction) à utiliser pour l'initialisation de cette étapevoid
setOnItem(Closure<?> onItem)
Définir la closure (fonction) à utiliser pour chaque élément de l'étapevoid
setOutputFilePath(String outputFilePath)
Définir le chemin du fichier de sortievoid
setOutputWriter(Writer outputWriter)
Définir le Writer qui sera utilisé pour la sortie des caractèresvoid
setSheetName(String sheetName)
Accès à la variable sheetName.void
setSheetNumber(Integer sheetNumber)
Acces à la variable sheetNumber qui donne le numéro de l'onglet à ouvrir.void
setStepType(int stepType)
Définir le type d'étape (step)void
setTruncatedInputAccepted(boolean truncatedInputAccepted)
Définit si des données tronquées doivent être acceptéesvoid
sheetName(String sheetName)
Acces à la variable sheetName via la fonction sheetName, cela permet l'appel dans un bloc via groovyvoid
sheetNumber(Integer sheetNumber)
Acces à la variable sheetNumber via la fonction sheetNumber, cela permet l'appel dans un bloc via groovy
-
-
-
Field Detail
-
ST_RSS
public static final int ST_RSS
Etape RSS- See Also:
- Constant Field Values
-
ST_RSA
public static final int ST_RSA
Etape RSA- See Also:
- Constant Field Values
-
ST_RHS
public static final int ST_RHS
Etape RHS- See Also:
- Constant Field Values
-
ST_RHA
public static final int ST_RHA
Etape RHA (pas encore implémentée)- See Also:
- Constant Field Values
-
ST_CSV
public static final int ST_CSV
Etape CSV- See Also:
- Constant Field Values
-
ST_SINGLE
public static final int ST_SINGLE
Etape avec une seule exécution, peu utilisé- See Also:
- Constant Field Values
-
ST_LINE
public static final int ST_LINE
Etape traitement des lignes d'un fichier- See Also:
- Constant Field Values
-
ST_VIDHOSP
public static final int ST_VIDHOSP
Etape VIDHOSP- See Also:
- Constant Field Values
-
ST_RSFACE
public static final int ST_RSFACE
Etape RSF-ACE- See Also:
- Constant Field Values
-
ST_MONO
public static final int ST_MONO
Etape MONO pour tous les fichiers mono-niveau, comme les FICHCOMP, FICHSUP, etc.- See Also:
- Constant Field Values
-
ST_XLPOI
public static final int ST_XLPOI
Etape XLPOI pour les fichiers Excel simples (qui sont comme des fichiers csv) lus par Apache POI- See Also:
- Constant Field Values
-
ST_DBF
public static final int ST_DBF
Etape DBF pour lecture d'un fichier DBF enregistrement par enregistrement- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ScriptStep
public ScriptStep(GroovyScriptsBase owner) throws FieldParseException, IOException, MissingMetafileException
Constructeur- Parameters:
owner
- Propriétaire de cette étape, uneGroovyScriptsBase
- Throws:
FieldParseException
- -IOException
- -MissingMetafileException
- -
-
-
Method Detail
-
input
public void input(String path)
Définir le chemin du fichier d'entrée Fait la même chose quesetInputFilePath(String)
- Parameters:
path
- Le chemin
-
input
public void input(String path, String encoding)
Définir le chemin du fichier d'entrée et l'encodage dans le même temps.- Parameters:
path
- Le cheminencoding
- L'encodage
-
inputEncoding
public void inputEncoding(String enc)
définir l'encodage. Synonyme desetInputEncoding(String)
- Parameters:
enc
- L'encodage
-
setInputEncoding
public void setInputEncoding(String enc)
Définit l'encodage utilisé par le fichier d'entrée. N.B. : c'est org.apache.commons.io.input.BOMInputStream qui est utilisé en interne, donc l'encodage UTF-8 fonctionnera même s'il y a un "BOM" (Byte Order Mark).- Parameters:
enc
- L'encodage (par ex. "UTF-8" ou "windows-1252")
-
output
public void output(String path)
Définir le chemin du fichier de sortie. Synonyme desetOutputFilePath(String)
.- Parameters:
path
- Le chemin du fichier de sortie.
-
name
public void name(String str)
Définit le nom de cette étape.- Parameters:
str
- Le nom
-
onInit
public void onInit(Closure<?> dcl)
Définit la closure (fonction) pour l'initialisation. Synonyme desetOnInit(Closure)
.- Parameters:
dcl
- La closure
-
onItem
public void onItem(Closure<?> dcl)
Définit la closure (fonction) qui est appelée pour chaque élément. Synonyme desetOnItem(Closure)
.- Parameters:
dcl
- La closure
-
onEnd
public void onEnd(Closure<?> dcl)
Définit la closure (fonction) pour la fin d'exécution. Synonyme desetOnEnd(Closure)
.- Parameters:
dcl
- La closure
-
childStepRss
public ScriptStep childStepRss(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'rss' (resume standardise de sortie) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepRsa
public ScriptStep childStepRsa(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'rsa' (resume de sortie anonymise) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepRhs
public ScriptStep childStepRhs(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'rhs' (resume hebdomadaire standardise) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepRha
public ScriptStep childStepRha(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'rha' (resume hebdomadaire anonymise) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepCsv
public ScriptStep childStepCsv(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'csv' (comma separated values) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepSingle
public ScriptStep childStepSingle(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'single' (etape unique isolee) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepLine
public ScriptStep childStepLine(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'line' (traitement ligne par ligne) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepVidhosp
public ScriptStep childStepVidhosp(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'vidhosp' (variables identifiantes d hospitalisation) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepRsface
public ScriptStep childStepRsface(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'rsface' (resume standard de facturation d activites et consultations externes) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
childStepMono
public ScriptStep childStepMono(Closure<?> dcl) throws FieldParseException, IOException, MissingMetafileException
Experimental : chainage d'une etape 'mono' (pmsi generique mono niveau) apres cette etape- Parameters:
dcl
- la déclaration de closure- Returns:
- Le ScriptStep cree
- Throws:
MissingMetafileException
- si une métadonnée de fichier n'a pas été trouvéeIOException
- si erreur entree sortieFieldParseException
- si une erreur a lieu lors de l'analyse d'un champ
-
getInputFilePath
public String getInputFilePath()
Retourner le chemin du fichier d'entrée (qui a été défini par la fonction "input")- Returns:
- Le chemin
-
setInputFilePath
public void setInputFilePath(String inputFilePath)
Définir le chemin du fichier d'entrée- Parameters:
inputFilePath
- Le chemin
-
getStepType
public int getStepType()
Retourner le type d'étape (step)
-
setStepType
public void setStepType(int stepType)
Définir le type d'étape (step)
-
getName
public String getName()
Retourner le nom de cette étape. Utile à utiliser lorsque l'on émet des messages.- Returns:
- Le nom
-
setName
public void setName(String name)
Définir le nom de cette étape- Parameters:
name
- Le nom
-
getOnInit
public Closure<?> getOnInit()
Retourner la closure (fonction) à utiliser pour l'initialisation de cette étape- Returns:
- La closure
-
setOnInit
public void setOnInit(Closure<?> onInit)
Définir la closure (fonction) à utiliser pour l'initialisation de cette étape- Parameters:
onInit
- La closure
-
getOnItem
public Closure<?> getOnItem()
Retourner la closure (fonction) à utiliser pour chaque élément de l'étape- Returns:
- La closure
-
setOnItem
public void setOnItem(Closure<?> onItem)
Définir la closure (fonction) à utiliser pour chaque élément de l'étape- Parameters:
onItem
- La closure à utiliser.
-
getOnEnd
public Closure<?> getOnEnd()
Retourner la closure (fonction) à utiliser lorsque l'étape est terminée- Returns:
- La closure
-
setOnEnd
public void setOnEnd(Closure<?> onEnd)
Définir la closure (fonction) à utiliser lorsque l'étape est terminée- Parameters:
onEnd
- La closure
-
callOnInit
public void callOnInit() throws IOException
Initialisation. Appelle le code utilisateur d'initialisation, et ensuite si besoin cree leinputReader
(ou leinputStream
pour xlpoi) s'il n'est pas defini.- Throws:
IOException
- si erreur d'entrée/sortie
-
callOnEnd
public void callOnEnd()
Appeler les closures de fin d'exécution de l'étape (se fait en interne, l'appel direct est utilisé uniquement pour du débogage).
-
processItems
public void processItems() throws FieldParseException, MissingMetafileException
Ici "onItem" n'est pas appelé pour le "childStep". C'est au code utilisateur de l'appeler selon les besoins.- Throws:
FieldParseException
- si erreur lors de l'analyse d'un champMissingMetafileException
- si une métadonnée de définition n'est pas trouvée
-
processNextItem
public void processNextItem() throws FieldParseException, MissingMetafileException, IOException
Traiter l'item suivant- Throws:
FieldParseException
- Si erreur lors de l'analyse d'un champ par PmsiXmlMissingMetafileException
- Si définition manquante pour PmsiXmlIOException
- Si erreur d'E/S lors de la lecture ou l'écriture
-
getCsvSeparator
public char getCsvSeparator()
Retourner le séparateur csv- Returns:
- Le caractère séparateur csv (par défaut ";")
-
setCsvSeparator
public void setCsvSeparator(char csvSeparator)
Définir le séparateur qui sera utilisé pour construire le CSVReader (défaut : ';')- Parameters:
csvSeparator
- Le séparateur
-
getCsvEscapeCharacter
public char getCsvEscapeCharacter()
Retourner le caractère d'échappement csv.- Returns:
- Le caractère d'échappement csv
-
setCsvEscapeCharacter
public void setCsvEscapeCharacter(char csvEscapeCharacter)
Définir le caractère qui servira pour les séquences d'échappement (défaut : '\\', pour désactiver, utiliser '\0'.- Parameters:
csvEscapeCharacter
- Le caractère à utiliser
-
getCsvQuoteCharacter
public char getCsvQuoteCharacter()
Retourner le caractère de "quote" qui sert à délimiter le texte et ainsi forcer le contenu en texte simple.- Returns:
- Le caractère de "quote"
-
setCsvQuoteCharacter
public void setCsvQuoteCharacter(char csvQuoteCharacter)
Définir le caractère qui sera utilisé pour délimiter le texte. Défaut : '"'- Parameters:
csvQuoteCharacter
- Le caractère à utiliser
-
csvSeparator
public void csvSeparator(char csvSeparator)
Identique àsetCsvSeparator(char)
mais plus clair lorsqu'on utilise groovy- Parameters:
csvSeparator
- Le séparateur csv (typiquement ";", ou "\t", ou ",")
-
csvEscapeCharacter
public void csvEscapeCharacter(char csvEscapeCharacter)
Identique àsetCsvEscapeCharacter(char)
- Parameters:
csvEscapeCharacter
- Le caractère
-
csvQuoteCharacter
public void csvQuoteCharacter(char csvQuoteCharacter)
Identique àsetCsvQuoteCharacter(char)
- Parameters:
csvQuoteCharacter
- Le caractère
-
getOutputFilePath
public String getOutputFilePath()
Retourner le chemin du fichier de sortie- Returns:
- le chemin du fichier de sortie
-
setOutputFilePath
public void setOutputFilePath(String outputFilePath)
Définir le chemin du fichier de sortie- Parameters:
outputFilePath
- Le chemin du fichier de sortie
-
formatAsFrenchDate
public String formatAsFrenchDate(Date d)
Formater au format français (dd/MM/yyyy).- Parameters:
d
- La date à formater. si null retourne une chaîne vide.- Returns:
- Une String de d au format français.
-
formatLocalAsFrenchDate
public String formatLocalAsFrenchDate(LocalDate ld)
Formater au format français (dd/MM/yyyy)- Parameters:
ld
- La date (de type LocalDate) à formater. si null retourne une chaîne vide.- Returns:
- Une String de ld au format français
Note Obligé de renommer de formatAsFrenchDate en formatLocalAsFrenchDate car
malgré mes efforts lorsque ld est null j'ai une erreur
Ambiguous method overloading
même en faisant des casts en LocalDate.
-
getMetaName
public String getMetaName()
Retourner le nom de la métadonnée à utiliser (pour PmsiXml en particulier)- Returns:
- Le nom de la métadonnée
-
metaName
public void metaName(String metaName)
nom a utiliser pour pour syntaxe DSL pour donner le nom de la métadonnée. Synonyme desetMetaName(String)
- Parameters:
metaName
- Le nom de métadonnée pour trouver le fichier
-
setMetaName
public void setMetaName(String metaName)
Définir le nom de la métadonnée à utiliser (pour PmsiXml en particulier).- Parameters:
metaName
- Le nom de la métadonnée
-
getMetaHint
public String getMetaHint()
Donner une aide pour trouver la métadonnée- Returns:
- L'aide à donner pour trouver la métadonnée
-
metaHint
public void metaHint(String metaHint)
nom a utiliser pour syntaxe DSL- Parameters:
metaHint
- L'indice pour aider à retrouver les métadonnées
-
setMetaHint
public void setMetaHint(String metaHint)
Définir l'aide à donner pour la métadonnée- Parameters:
metaHint
- Aide pour la métadonnée
-
getMetasDir
public String getMetasDir()
Retourner le chemin du répertoire à utiliser pour lire les métadonnées supplémentaires qui ne sont pas disponibles en tant que ressource. Les métadonnées qui sont dans ce repertoire sont prioritaires, et sont chargées avant de rechercher dans les fichiers de ressource.- Returns:
- Le chemin du répertoire
-
setMetasDir
public void setMetasDir(String metasDirPath)
Définir le chemin du répertoire à utiliser pour lire les métadonnées supplémentaires qui ne sont pas disponibles en tant que ressource. Les métadonnées qui sont dans ce repertoire sont prioritaires, et sont chargées avant de rechercher dans les fichiers de ressource.- Parameters:
metasDirPath
- Le chemin du répertoire
-
metasDir
public void metasDir(String metasDirPath)
nom a utiliser pour pour syntaxe DSL- Parameters:
metasDirPath
- Le chemin pour rechercher les fichiers de métadonnées
-
isTruncatedInputAccepted
public boolean isTruncatedInputAccepted()
Est-ce que des données tronquées sont acceptées (pour PmsiXml notamment) ?- Returns:
- true si des données tronquées sont acceptées
-
setTruncatedInputAccepted
public void setTruncatedInputAccepted(boolean truncatedInputAccepted)
Définit si des données tronquées doivent être acceptées- Parameters:
truncatedInputAccepted
- Un boolean qui autorise ou non les données tronquées
-
getCsvHeaderRow
public String[] getCsvHeaderRow()
Retourner le tableau des colonnes d'en-tête- Returns:
- Le tableau des titres de colonne
-
getCsvColumnCount
public int getCsvColumnCount()
Retourner le nombre de colonnes Csv- Returns:
- Le nombre de colonnes
-
getXlpoiColumnCount
public int getXlpoiColumnCount()
Retourner le nombre de colonnes Excel (via Apache POI)- Returns:
- Le nombre de colonnes
-
getXlpoiHeaderRow
public String[] getXlpoiHeaderRow()
Retourner le tableau d'en-tête qui contient les titres de colonne.- Returns:
- Le tableau des titres de colonne pour XlPoi
-
getDbfHeaderRow
public String[] getDbfHeaderRow()
Retourner le tableau d'en-tête qui contient les titres de colonne pour le fichier Dbf.- Returns:
- Le tableau des titres de colonne pour Dbf
-
setCsvHeaderRow
public void setCsvHeaderRow(String[] newRow)
Définir (ou redéfinir) la rangée d'en-tête pour Csv (ou Xl). Utile notamment lorsqu'il faut sauter un certain nombre de rangées avant d'arriver à la bonne ligne qui contient des noms de colonne.- Parameters:
newRow
- un tableau de Strings
-
getCsvColumnIndex
public int getCsvColumnIndex(String name)
Renvoyer l'index de la colonne csv (ou xl) qui a le nom donné ou -1 si il n'y a pas de colonne avec ce nom.- Parameters:
name
- Le nom de la colonne- Returns:
- le numéro de colonne (commence à 0), -1 si non trouvé
-
getXlpoiColumnIndex
public int getXlpoiColumnIndex(String name)
Synonyme degetCsvColumnIndex(String)
- Parameters:
name
- Le nom de la colonne- Returns:
- le numéro de colonne (commence à 0), -1 si non trouvé
-
ci
public int ci(String name)
Nom plus court pourgetCsvColumnIndex(String)
- Parameters:
name
- Le nom de la colonne- Returns:
- le numéro de colonne (commence à 0), -1 si non trouvé
-
getInputReader
public Reader getInputReader()
Retourner le Reader qui sert à prendre les caractères en entrée- Returns:
- le reader
-
setInputReader
public void setInputReader(Reader inputReader)
Définir le Reader qui va servir à prendre les caractères en entrée- Parameters:
inputReader
- Le Reader à utiliser
-
inputReader
public void inputReader(Reader inputReader)
forme courte pour pouvoir écrire en Groovy quelque chose comme :inputReader new StringReader()
- Parameters:
inputReader
- LeReader
à utiliser
-
getOutputWriter
public Writer getOutputWriter()
Retourner le Writer actuel qui est utilisé pour la sortie des caractères- Returns:
- Le Writer actuel
-
setOutputWriter
public void setOutputWriter(Writer outputWriter)
Définir le Writer qui sera utilisé pour la sortie des caractères- Parameters:
outputWriter
- Le Writer à définir
-
outputWriter
public void outputWriter(Writer outputWriter)
forme courte pour pouvoir écrire en Groovy quelque chose commeoutputWriter new StringWriter()
- Parameters:
outputWriter
- LeWriter
à utiliser
-
getChildScriptStep
public ScriptStep getChildScriptStep()
Retourner lde ScriptStep fils.- Returns:
- Le ScriptStep fils.
-
getParentScriptStep
public ScriptStep getParentScriptStep()
Retourner le ScriptStep parent- Returns:
- le Script Step parent
-
getCountOfCsvLinesToSkip
public int getCountOfCsvLinesToSkip()
Retourner le nombre de lignes initiales à sauter (ignorer) lors de la lecture d'un fichier csv. Utile lorsque les programmes produisent un fichier avec des lignes de description qui précèdents les lignes csv proprement dites (par exemple : Excel). Par défaut : 0.- Returns:
- le nombre de lignes à ignorer
-
setCountOfCsvLinesToSkip
public void setCountOfCsvLinesToSkip(int countOfCsvLinesToSkip)
Définir le nombre de lignes à ignorer lors de la lecture d'un fichier csv.- Parameters:
countOfCsvLinesToSkip
- Le nombre de lignes à ignorer
-
countOfCsvLinesToSkip
public void countOfCsvLinesToSkip(int countOfCsvLinesToSkip)
forme courte pour pouvoir écrire en Groovy quelque chose commecountOfCsvLinesToSkip 5
- Parameters:
countOfCsvLinesToSkip
- Le nombre de lignes à sauter avant de lire les données csv proprement dites
-
getSheetNumber
public Integer getSheetNumber()
Acces à la variable sheetNumber qui donne le numéro de l'onglet à ouvrir- Returns:
- sheetNumber Le numéro de l'onglet à ouvrir (commence à 0, peut être null)
-
setSheetNumber
public void setSheetNumber(Integer sheetNumber)
Acces à la variable sheetNumber qui donne le numéro de l'onglet à ouvrir. Valeur par défaut : null, ce qui a pour effet d'ouvrir le premier onglet (si sheetName est null aussi)- Parameters:
sheetNumber
- Le numéro de l'onglet à ouvrir (commence à 0, peut être null)
-
sheetNumber
public void sheetNumber(Integer sheetNumber)
Acces à la variable sheetNumber via la fonction sheetNumber, cela permet l'appel dans un bloc via groovy- Parameters:
sheetNumber
- Le numéro de l'onglet à ouvrir (commence à 0, peut être null)
-
getSheetName
public String getSheetName()
Accès à la variable sheetName- Returns:
- La valeur de sheetName
-
setSheetName
public void setSheetName(String sheetName)
Accès à la variable sheetName. Par défaut : null. Lorsque sheetName n'est pas null, c'est elle qui a priorité pour indiquer l'onglet à ouvrir.- Parameters:
sheetName
- Nom de l'onglet à ouvrir
-
sheetName
public void sheetName(String sheetName)
Acces à la variable sheetName via la fonction sheetName, cela permet l'appel dans un bloc via groovy- Parameters:
sheetName
- Nom de l'onglet à ouvrir
-
-