Capture d’un champ multiligne
Certains états contiennent des champs de description qui s'étendent sur plusieurs lignes. Certains champs multilignes occupent toujours un nombre de lignes fixe ; d'autres, en revanche, occupent un nombre de lignes variable. Un exemple de chacun est illustré ci-dessous.
Le champ Services contient toujours un nombre de lignes fixe.
Le champ Description de service contient un nombre de lignes variable.
Vous pouvez utiliser Monarch Classic pour extraire ces champs en en indiquant le début et la fin.
Remarque : Pour bien comprendre cette procédure, vous devez comprendre au préalable le processus de création d'un masque. Pour tous détails à ce sujet, voir Création d'un masque.
Ouvrez un état contenant les données que vous voulez capturer sur plusieurs lignes et accédez à Conception de l'état.
Sélectionnez une ligne ou un groupe de lignes contenant une seule instance du champ multiligne. Mettez en surbrillance la première ligne du champ multiligne. Il n'est pas nécessaire de sélectionner toutes les lignes occupées par le champ multiligne. Vous apprendrez plus tard comment étendre la définition de champ pour inclure les autres lignes occupées par le champ.
Cliquez sur Nouveau masque, puis choisissez un rôle de masque (en général, Détail ou Ajout).
Définissez un sélecteur apte à capturer toutes les instances du masque.
Faites défiler l'état pour vous assurer que le sélecteur a bien capturé toutes les instances du niveau sélectionné. Le sélecteur ne doit capturer, à ce niveau, que la première ligne du champ multiligne. Vous apprendrez plus tard comment en capturer les lignes restantes.
Si le sélecteur a omis des instances du niveau sélectionné, examinez ces lignes et déterminez les modifications à apporter pour les capturer. Répétez ensuite les étapes 4 et 5.
Mettez en surbrillance la première ligne du champ multiligne. Vous pouvez aussi mettre en surbrillance les champs uniligne que vous voulez extraire à l’aide du masque.
Cliquez sur la première ligne du champ multiligne pour le sélectionner, puis sur Modifier le champ sur la barre d'outils de l’Éditeur de masque. Les propriétés du champ multiligne s’affichent.
Sous l’onglet Général, tapez le nom à donner au champ dans le champ Nom et spécifiez les paramètres de chacune des options disponibles (Remarque : Ces options sont décrites en détail à la rubrique Propriétés du champ d’entrée) :
Cliquez sur l’onglet Avancée pour configurer les options de définition d'un champ multiligne.
Sélectionnez une option Début du champ pour indiquer le début du champ multiligne par rapport au haut de l’échantillon du masque :
Ligne : Sélectionnez Ligne pour indiquer un décalage absolu comme première ligne du champ par rapport au haut du masque. Le numéro de ligne que représente ce paramètre est déterminé par la position de la mise en surbrillance du champ dans l'échantillon de masque. Par exemple, si vous avez mis en surbrillance le champ de la deuxième ligne de l'échantillon de masque, cette option est représentée comme Ligne 2.
Chaîne : n sur la ligne précédente : Sélectionnez cette option pour indiquer que le champ défini n'existera que si la chaîne spécifiée est rencontrée sur la ligne précédente. Cette option est généralement utile à la capture de données HTML.
Chaîne précédente : sur la ligne active : Sélectionnez Chaîne précédente pour indiquer que la première ligne du champ commence immédiatement à droite de la chaîne indiquée, qui peut être un libellé. Entrez la chaîne en question dans la zone voisine. La longueur maximale de la chaîne est n-1, où n représente la position initiale de la colonne du champ. Par exemple, si le champ commence à la colonne 15, vous pouvez entrer une chaîne comprenant jusqu'à 14 caractères (la chaîne de recherche toute entière doit tenir à gauche du champ). Cette option est généralement utilisée pour localiser le début d'un champ en fonction de la présence d'un libellé à sa gauche.
Après le dernier champ défini : Sélectionnez cette option pour indiquer que la première ligne du champ commence deux lignes au-dessous de la dernière ligne d'un champ multiligne également extrait par le masque. Vous pouvez utiliser cette option pour capturer un champ qui se trouve immédiatement après un autre champ multiligne, auquel cas la position initiale du deuxième champ peut varier en fonction du haut du masque, mais présente un décalage absolu par rapport à la fin du premier champ multiligne. Vous pouvez sélectionner cette option pour capturer un champ multiligne ou un champ ordinaire [uniligne]. Pour la capture d'un champ uniligne, sélectionnez l'option de fin de champ à 1 ligne.
Sélectionnez une option Fin du champ pour indiquer la fin du champ multiligne.
Nombre de lignes : Sélectionnez Nombre de lignes pour terminer le champ après un nombre de lignes fixe. Utilisez cette option lorsque toutes les instances du champ comportent un même nombre de lignes. Utilisez la zone d'édition pour indiquer la hauteur en lignes du champ.
Chaîne précédente non vide de caractères : Sélectionnez cette option pour terminer le champ lorsqu'une ligne contenant une chaîne non vide se présente à gauche du champ. La longueur maximale de la chaîne est n-1, où n représente la position initiale de la colonne du champ. Par exemple, si le champ commence à la colonne 15, vous pouvez spécifier une longueur maximale de chaîne non vide égale à 14 (la chaîne tout entière doit pouvoir s'insérer à gauche du champ). Cette option est généralement utilisée pour marquer la fin d'un champ en fonction de la présence d'un champ ultérieur ou d'une étiquette de champ figurant au-dessous et à sa gauche. Ne choisissez cette option que si le nombre de lignes compris dans chaque instance du champ varie. Si le champ contient un nombre de lignes fixe, choisissez plutôt l’option Nombre de lignes décrite plus haut.
Valeurs de champ blanches : Sélectionnez cette option pour terminer le champ lorsqu'une ou plusieurs lignes blanches sont identifiées. Notez que Monarch Classic n'exige pas que la ligne entière soit blanche : seules les positions de colonne occupées par le champ doivent l'être. Entrez le nombre de valeurs de champ vides nécessaires pour terminer le champ. Ne choisissez cette option que si le nombre de lignes compris dans chaque instance du champ varie. Si le champ contient un nombre de lignes fixe, choisissez plutôt l’option Nombre de lignes décrite plus haut.
Fin de justification à gauche : Sélectionnez cette option pour terminer le champ lorsque Monarch Classic rencontre une ligne comportant un caractère blanc au niveau de la première colonne du champ, ou un caractère non blanc dans la colonne précédant immédiatement le champ. Ces conditions indiquent toutes deux que la justification à gauche a été terminée dans le champ. Cette option est utile à la capture de blocs de texte alignés à gauche. Si le bloc de texte contient une ligne blanche, comme celle qui sépare les paragraphes, Monarch Classic l'interprète toutefois comme la fin de la justification à gauche et termine le champ. Pour les blocs comportant plusieurs paragraphes, utilisez l'option Chaîne précédente non vide, Valeurs de champ blanches ou Action minimale seulement. Ne choisissez cette option que si le nombre de lignes compris dans chaque instance du champ varie. Si le champ contient un nombre de lignes fixe, choisissez plutôt l’option Nombre de lignes décrite plus haut.
Rencontre de masque : Sélectionnez Aucune pour terminer le champ lorsque Monarch Classic rencontre un autre masque, y compris une autre instance de celui en cours. Le champ sera également terminé à la rencontre d’une balise HTML.
À l'aide de la barre de défilement vertical, examinez une partie suffisante de l'état pour vous assurer que la définition du champ a bien capturé toutes les instances du champ multiligne.
Si la définition n’est pas appropriée pour l’une des instances du champ, analysez les valeurs omises ou mal capturées et déterminez les modifications à apporter à la définition (une autre option Fin du champ s’impose peut-être). Une fois vos modifications terminées, répétez cette étape.
Choisissez Accepter pour accepter la définition du masque et du champ.
Dans la vue Tableau, les données extraites doivent s’afficher comme suit.
Après vous être assuré que le sélecteur fonctionne pour la capture de toutes les lignes du niveau sélectionné et d'aucune autre, vous êtes prêt à mettre en surbrillance le champ multiligne et les champs uniligne que vous souhaitez aussi extraire.
Monarch Classic termine aussi les champs multilignes qui s'étendent sur deux pages, au niveau du caractère de saut de page (code 12), sur la deuxième page. On évite ainsi les champs se poursuivant à l'infini lorsque le mode de fin de champ choisi ne suffit pas à les terminer.
Monarch Classic applique toujours l’action de Rencontre de masque, même si l’option en soi n’est pas sélectionnée. Ne sélectionnez cette option que si aucune autre option n’est applicable.
Remarque : Utilisation d'un masque fictif pour terminer un champ multiligne.
Si vous ne pouvez utiliser aucune autre option Fin du champ pour terminer un champ multiligne et que vous ne disposez d'aucun masque approprié préalablement défini pour terminer le champ, envisagez de créer un masque fictif (blanc) destiné à cet usage. En créant un masque, vous disposerez de toutes les techniques de sélection de Monarch Classic.
Remarque : Pour fractionner le bloc de texte multiligne en lignes distinctes après l’extraction, voir la fonction TextLine.
© 2024 Altair Engineering Inc. All Rights Reserved.