FeatureReader
Lit les entités à partir de n'importe quel format supporté par FME. Une lecture complète est effectuée pour chaque entité qui entre dans le port Initiator. Les entités résultant de la lecture sont produites soit par des ports de sortie nommés, soit par le port de sortie générique.
Les entités lues peuvent être limitées en spécifiant une clause WHERE ou un filtre spatial pour les formats qui les prennent en charge. La plupart des paramètres et des contraintes du Reader peuvent être configurés dynamiquement à partir des valeurs d'attributs des entités d'entrée.
En outre, une entité de schéma représentant la définition du type de caractéristique est produite pour chaque type de caractéristique rencontré. Les caractéristiques du schéma peuvent être utilisées pour configurer les définitions de type d'entité pour l'écriture dynamique.
Ports d'entrée
Ce port reçoit les entités qui initient la lecture des entités.
Ports de sortie
Port de sortie pour les entités schéma. S'il est connecté, une entité schéma est produite pour chaque type d'entités unique rencontré pendant la lecture. La sortie de l'entité de schéma est garantie avant toute entité de données du même type et n'est produite qu'une seule fois par traduction.
La lecture des schémas peut affecter les performances. Si le port de sortie des entités de schéma n'est pas connecté ou si l'option Entités à lire est définie sur Entités données, la lecture des schémas n'aura pas lieu et les performances ne seront pas affectées. Si une liste de types d'entités à lire a été spécifiée, la lecture des schémas s'arrête dès que les schémas de tous les types d'entités énumérés ont été édités. Si aucun type de caractéristique à lire n'est indiqué, la lecture des schémas se fera sur chaque entité de l'initiateur.
Les performances peuvent être améliorées lors de la lecture de schémas uniquement en configurant le Transformer pour ne pas lire les entités de données. Cela se fait en réglant Entités à lire sur Entités schéma ou en s'assurant que les ports de sortie <Generic, <Initiator>, et le type d'entité nommée ne sont pas connectés.
Les paramètres de Contraintes ou de Gestion des attributs et de la géométrie ne s'appliquent pas aux schémas.
Les entités ressortent de ce port lorsqu'elle n'ont pas de port nommé spécifique.
En cas de succès, les entités Initiator d'origine ressortent via ce port avec l'attribut _matched_records qui stocke le nombre d'entités lues.
En cas d'erreur de lecture, l'entité d'origine ressort par ce port avec l'attribut _reader_error qui contient le dernier message d'erreur.
Note: Les entités <Rejected> ne sont accessibles que si le traitement est exécuté avec l'inspection d'entités, ou si les ports <Generic> ou <Initiator> sont connectés à un autre Transformers (comme un Junction).
Ports de sortie peuvent être générés pour un ou plusieurs types d'entités à lire.
Paramètres - Lecture
Données source (Reader)
Spécifier le format et l’emplacement des données à interroger, incluant d’éventuels paramètres.
Contraintes
Entrez les types d'entités qui seront lus. Les types d'entités peuvent être sélectionnés dans une liste générée par le Reader en cliquant sur le bouton Parcourir. Pour certains formats, le paramètre peut être laissé vide pour indiquer que tous les types d'entités doivent être lus.
Lorsqu'il est publié, ce paramètre peut être représenté par une liste fixe, une liste fixe avec alias, ou rester dynamique.
Les types d'entités peuvent également provenir d'un attribut existant ou être générés à partir d'une expression. Pour spécifier les types d'entités, séparez chaque type d'entité par un espace. Si le nom d'un type de caractéristique contient un espace ou un guillemet double, placez le nom du type de caractéristique entre guillemets doubles et échappez les guillemets doubles internes par un guillemet double supplémentaire. Par exemple, un type d'entité nommé "ma table "spéciale"" devient "ma table "spéciale"".
Note: Note : les anciennes versions de FeatureReader utilisant une colonne comme séparateur fonctionnent comme avant mais peuvent être mises à jour (Voir la section Délimiteur de type d'entités).
Cette option permet aux anciennes versions du FeatureReader de changer le séparateur pour les types d'entités multiples dans un attribut pour qu'il soit un espace au lieu de deux points. Le séparateur deux-points est déprécié ; une fois que l'espace a été sélectionné, le deux-points ne peut pas être re-sélectionné.
Cette option n'est active que pour les versions 4 et supérieure de FeatureReader et lorsque les types d'entités à lire sont choisis à partir d'attributs.
Pour les formats supportant cette fonctionnalité, seules les entités qui remplissent les critères de la clause WHERE sont lues.
Une clause WHERE est utilisée pour filtrer les résultats et prend la forme suivante :
column_name operator value
Les attributs FME peuvent être utilisés pour substituer les valeurs dans la clause WHERE avec la syntaxe
@Value(<attribute>)
Par exemple, "ID" = @Value(road_id)
Les paramètres publiés peuvent être utilisés pour substituer les valeurs dans la clause WHERE avec la syntaxe
$(User Parameter)
Par exemple, "PATHID" =$(ROAD_DID)
Sélectionnez uniquement les entités qui remplissent la relation spatiale spécifiée avec l'entité Initiator. Voir Relations spatiales définies pour une description des relations spatiales autorisées. Sélectionnez <Pas de filtre spatial> lorsqu'aucun filtrage spatial n'est souhaité. Sélectionnez Envelope OGC-Intersects pour lire uniquement les entités dont l'enveloppe intersecte l'enveloppe de l'entité Initiator.
Les performances du filtre spatial peuvent varier en fonction du filtre spatial appliqué et de la prise en charge ou non d'un index spatial par le Reader. Le filtrage spatial se fait en deux étapes : les entités candidates sont d'abord lues, puis le filtre le plus coûteux est appliqué. Pour les Readers qui prennent en charge un index spatial, les entités candidates sont récupérées en effectuant une enveloppe de recherche sur le Reader, ce qui peut améliorer considérablement les performances car toutes les entités ne sont pas lues. Pour les Readers qui ne prennent pas en charge un index spatial ou lorsque la relation OGC-Disjoint est sélectionnée, toutes les entités sont considérées comme des entités candidates et sont donc toutes lues. Consultez la section Faits saillants du format pour savoir si le Reader prend en charge l'index spatial.
Notez que lorsque vous paramétrez le filtre spatial à partir d'un attribut, la valeur peut être de n'importe quel type visible dans la liste déroulante.
Limite le nombre d'entités de données à chaque lecture. Si elle est laissée vide ou définie à un nombre inférieur à un, toutes les entités sont lues.
Entités Schéma/Données
Entités de schéma et de données : Les entités de schéma et les entités de données sont lues et sorties selon que leurs ports de sortie correspondants sont connectés ou non. Pour les caractéristiques de données, il s'agit des ports de sortie <Initiator>, <Generic>, et du type d'entités nommée. Pour les entités de schéma, il s'agit du port de sortie <Schema>.
Entités schémas : seuls les schémas sont lus, les données ne sont pas lues.
Entités données : seules les données sont lues, les schémas ne sont pas lus.
Activer le cache
Par défaut, ce Transformer relit les données source originales pour chaque entité Initiator. Pour améliorer les performances (par exemple, avec des services Web, des bases de données ou des URL), vous pouvez choisir de créer un cache prétraité pour améliorer la vitesse lors de la relecture des données source originales.
Le cache expire après la 'durée de validité' spécifiée ou si le fichier des données d'origine est modifié.
Note: La valeur de Durée de validité du cache est également un composant du cache prétraité. Cela signifie que différentes valeurs de Durée de validité du cache correspondent à différentes versions du jeu de données mis en cache. Par exemple, si le FeatureReader est défini avec une Durée de validité du cache de 1 heure, puis défini une deuxième fois avec le même jeu de données, mais avec une Durée de validité du cache de 2 heures, il y aura deux copies en cache de ce jeu de données.
Paramètres - Sortie
Ports de sortie
Les ports de sortie peuvent être générés en option pour tous les types d'entités disponibles à la lecture ou pour un sous-ensemble de ceux-ci. Les entités qui n'ont pas de port de sortie généré sortiront par le port de sortie générique. Pour que des ports de sortie soient générés, le Reader doit être entièrement spécifié et accessible.
Un port est généré pour chaque type d'entités lu.
Les ports seront générés de nouveau quand tout paramètre d'un Reader est modifié ainsi que lorsque la case Regénérer est cochée.
Aucun port de sortie supplémentaire n'est généré. Tous les types d'entités sortiront par le port de sortie générique.
Saisissez une liste de types d'entités qui seront utilisés pour générer les ports de sortie. Les types de données peuvent également être sélectionnés à partir d'une liste générée par le Reader en cliquant sur le bouton Parcourir.
Si cette option est activée, les ports de sortie sont régénérés à la sortie (avec OK) de la boîte de dialogue des paramètres. La régénération est disponible lorsque le paramètre Ports de sortie est défini sur Un par type d'entités ou Spécifié.
Gestion des attributs et de la géométrie
Fusionner attributs Initiator et Resultat : Les entités de sortie contiendront tous les attributs non conflictuels des résultats de la lecture ainsi que tous les attributs non conflictuels de l'entité Initiateur. Ce mode traitera les attributs conflictuels en fonction du paramètre de résolution de conflits.
Utiliser uniquement les attributs des entités lues : les entités en sortie contiennent uniquement les attributs des entités résultats (lues).
Utiliser uniquement les attributs des entités Initiator : les entités en sortie contiennent uniquement les attributs des entités Initiator et pas ceux des entités lues.
Préfixer les attributs des entités Initiator : les entités en sortie contiennent les attributs des entités lues ainsi que ceux des entités Initiator, mais ces derniers sont préfixés via la chaîne indiquée dans le paramètre Préfixe.
Utiliser les valeurs des entités lues : si un conflit d'attributs apparaît, les valeurs des entités lues sont utilisées.
Utiliser les valeurs des entités Initiator: si un conflit d'attributs apparaît, les valeurs des entités Initiator sont lues.
Activé lorsque le mode de Traitement des attributs vaut Regrouper les attributs Initiator et Resultat.
Si Oui, lorsqu'il y a des attributs avec le même nom sur les entités Initiator et Result, si l'un d'entre eux a une valeur <null>, alors la valeur de l'autre attribut sera utilisée.
Si Non, la sélection de la résolution des conflits sera strictement respectée, y compris le maintien des valeurs nulles.
Si le paramètre Traitement des attributs est défini à Préfixer les attributs des entités Initiator, un préfixe est ajouté aux valeurs des attributs des entités Initiator.
Utiliser les valeurs des entités lues : la géométrie des entités lues est utilisée.
Initiator: la géométrie des entités Initiator est utilisée.
Agrégat Initiator et Resultat : La géométrie de l'entité est un agrégat de la géométrie de l'entité Initiateur suivie de la géométrie du résultat de la lecture. La géométrie agrégée sera étiquetée avec le système de coordonnées du résultat de la lecture. La géométrie de l'initiateur ne sera pas reprojetée. Cela peut créer des résultats inattendus si elle se trouve dans un système de coordonnées différent. Pour de meilleurs résultats, assurez-vous que la géométrie de l'initiateur a le même système de coordonnées que la géométrie lue.
Port <Generic>
Entrez les noms des attributs à exposer sur le port de sortie <Generic>. Les attributs seront ordonnés dans la même séquence que celle spécifiée dans la liste.
Exemples
Éditer les paramètres des Transformers
À l'aide d'un ensemble d'options de menu, les paramètres du Transformer peuvent être attribués en faisant référence à d'autres éléments du traitement. Des fonctions plus avancées, telles qu'un éditeur avancé et un éditeur arithmétique, sont également disponibles dans certains Transformers. Pour accéder à un menu de ces options, cliquez sur à côté du paramètre applicable. Pour plus d'informations, voir Options de menus et paramètres de Transformer.
Définir les valeurs
Il existe plusieurs façons de définir une valeur à utiliser dans un Transformer. La plus simple est de simplement taper une valeur ou une chaîne de caractères, qui peut inclure des fonctions de différents types comme des références d'attributs, des fonctions mathématiques et de chaînes de caractères, et des paramètres d'espace de travail. Il existe un certain nombre d'outils et de raccourcis qui peuvent aider à construire des valeurs, généralement disponibles dans le menu contextuel déroulant adjacent au champ de valeur.
Utilisation de l'éditeur de texte
L'éditeur de texte fournit un moyen efficace de construire des chaînes de textes (dont les expressions régulières) à partir de données source diverses, telles que des attributs, des paramètres et des constantes, et le résultat est directement utilisé dans le paramètre.
Utilisation de l'éditeur arithmétique
L'éditeur arithmétique fournit un moyen simple de construire des expressions mathématiques à partir de plusieurs données source, telles que des attributs et des fonctions, et le résultat est directement utilisé dans un paramètre.
Valeur conditionnelle
Définit des valeurs selon un ou plusieurs tests.
Fenêtre de définition de conditions
Contenu
Les expressions et chaînes de caractères peuvent inclure des fonctions, caractères, paramètres et plus.
Lors du paramétrage des valeurs - qu'elles soient entrées directement dans un paramètre ou construites en utilisant l'un des éditeurs - les chaînes de caractères et les expressions contenant des fonctions Chaîne de caractères, Math, Date et heure ou Entité FME auront ces fonctions évaluées. Par conséquent, les noms de ces fonctions (sous la forme @<nom_de_fonction>) ne doivent pas être utilisés comme valeurs littérales de chaîne de caractères.
Ces fonctions manipulent les chaînes de caractères. | |
Caractères spéciaux |
Un ensemble de caractères de contrôle est disponible dans l'éditeur de texte. |
Plusieurs fonctions sont disponibles dans les deux éditeurs. | |
Fonctions Date/heure | Les fonctions de dates et heures sont disponibles dans l'Editeur texte. |
Ces opérateur sont disponibles dans l'éditeur arithmétique. | |
Elles retournent des valeurs spécifiques aux entités. | |
Les paramètres FME et spécifiques au projet peuvent être utilisés. | |
Créer et modifier un paramètre publié | Créer ses propres paramètres éditables. |
Options - Tables
Les Transformers avec des paramètres de style table possèdent des outils additionnels pour remplir et manipuler des valeurs.
Réordonner
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
|
Couper, Copier et Coller
|
Activé une fois que vous avez cliqué sur un élément de ligne. Les choix comprennent :
Copier, copier et coller peuvent être utilisés au sein d'un Transformer ou entre Transfromers. |
Filtre
|
Commencez à taper une chaîne de caractères, et la matrice n'affichera que les lignes correspondant à ces caractères. Recherche dans toutes les colonnes. Cela n'affecte que l'affichage des attributs dans le Transformer - cela ne change pas les attributs qui sont sortis. |
Importer
|
Le bouton d'import remplit la table avec un jeu de nouveaux attributs lus depuis un jeu de données. L'application spécifique varie selon les Transformers. |
Réinitialiser/Rafraîchir
|
Réinitialise la table à son état initial, et peut fournir des options additionnelles pour supprimer des entrées invalides. Le comportement varie d'un Transformer à l'autre. |
Note : Tous les outils ne sont pas disponibles dans tous les Transformers.
FME Community
FME Community iest l'endroit où trouver des démos, des tutoriaux, des articles, des FAQ et bien plus encore. Obtenez des réponses à vos questions, apprenez des autres utilisateurs et suggérez, votez et commentez de nouvelles entités.
Rechercher des exemples et informations à propos de ce Transformer dans FME Community.
Mots clefs : query Querier OracleQuerier RasterReader