Conditions préalables :
Avant de configurer une règle Suppression d'entité, vous devez vérifier que la classe d'entités schématiques requise pour l'exécution de la règle figure dans le jeu de données schématiques et qu'elle est associée au modèle de diagramme schématique sur lequel la règle doit être spécifiée.
La règle Suppression d'entité permet de supprimer toutes les entités schématiques, ou certaines d'entre elles, implémentées par une classe d'entités schématiques donnée à partir des diagrammes schématiques. La règle Suppression d'entité ne préserve pas la topologie du réseau pendant son exécution. Par exemple, si des nœuds schématiques sont configurés comme devant être supprimés, la règle n'essaiera pas de reconnecter leurs liens connectés à un nœud cible, comme le font les règles de réduction. La suppression des nœuds entraîne également la suppression de leurs liens connectés du diagramme résultant.
Vous pouvez choisir de supprimer toutes les entités schématiques implémentées par la classe d'entités schématiques de nœud spécifiée, ou seulement une partie, filtrées selon les éléments suivants :
- Un filtre SQL qui est appliqué sur la table d'objets/classe d'entités réelle associée à cette classe d'entités schématiques.
- Un attribut schématique particulier dans les entités schématiques qui se connectent aux entités schématiques candidates à la suppression, ou n'importe quel champ particulier dans les classes d'entités/tables d'objets réelles associées aux classes d'entités schématiques qui implémentent les entités schématiques qui se connectent aux entités schématiques candidates à la suppression.
- Un critère étendu personnalisé qui a été développé spécialement pour déterminer quelles entités schématiques doivent être supprimées.
Les étapes ci-dessous portent sur la configuration de l'onglet Propriétés de règle de suppression des entités qui s'affiche lorsque vous cliquez sur le bouton Propriétés de règle de la barre d'outils de l'onglet Règles, alors qu'une règle Suppression d'entité est déjà ajoutée à cet onglet. Pour en savoir plus sur l'ajout de toute nouvelle règle sur l'onglet Règles et sur l'affichage de la boîte de dialogue Propriétés de règle, reportez-vous à la rubrique Spécification d'une règle schématique sur un modèle de diagramme schématique.
Pour toute règle Suppression d'entité qui vient d'être ajoutée sur l'onglet Règles, le fait de cliquer sur le bouton Propriétés de règle sur la barre d'outils de l'onglet Règles ouvre la boîte de dialogue Propriétés de règle comme suit :
- Saisissez une description de la règle dans la zone de texte Description.
Cette description s'affiche sur l'onglet Règles de l'élément de règle associé et pendant la génération et la mise à jour du diagramme schématique, pour informer les utilisateurs que la règle est exécutée.
- Choisissez le nom de la classe d'entités schématiques de nœud à supprimer dans la liste déroulante Sélectionner la classe d'entités schématiques à supprimer.
Toutes les classes d'entités schématiques associées au modèle de diagramme schématique sont disponibles dans cette liste.
A ce stade de la configuration de la règle, toutes les entités schématiques implémentées par cette classe d'entités schématiques sélectionnée sont configurées pour être supprimées.
- Sélectionnez Supprimer les nœuds orphelins causés par un lien supprimé si vous souhaitez que les nœuds qui deviennent orphelins après la suppression des liens soient également automatiquement supprimés du diagramme obtenu.
- Si vous souhaitez désigner un filtre SQL sur la classe d'entités schématiques indiquée, de façon que seuls certains nœuds soient supprimés, procédez comme suit :
- Cliquez sur le bouton Modifier situé à droite de la zone SQL Filter on associated feature/object class.
La boîte de dialogue Requête SQL s'ouvre.
- Créez l'expression SQL que vous souhaitez.
Le filtrage fonctionne sur les champs stockés sur la classe d'entités ou la classe d'objets associée à la classe d'entités schématiques spécifiée.
- Cliquez sur OK.
La boîte de dialogue Requête SQL se ferme et le filtre SQL vous venez de spécifier apparaît automatiquement dans la zone Filtre SQL sur la classe d'entités / d'objets associée.
Le filtre SQL spécifié permettra de déterminer le sous-ensemble des entités schématiques candidates à la suppression. Celles qui ne répondent pas au filtre SQL ne seront pas supprimées pendant l'exécution de règle.
- Cliquez sur le bouton Modifier situé à droite de la zone SQL Filter on associated feature/object class.
- Si vous souhaitez que les entités schématiques candidates à la suppression dépendent d'un attribut schématique dans les entités schématiques qui les connectent ou dans un champ stocké dans les classes d'entités SIG associées aux classes d'entités schématiques qui implémentent les entités schématiques qui les connectent, procédez comme suit :
- Activez la case à cocher Attribut des entités connectées.
- Saisissez le nom du champ ou de l'attribut schématique qui sera utilisé.
- Lorsque la classe d'entités schématiques sélectionnée à supprimer implémente des nœuds, la règle s'applique aux liens connectés aux nœuds candidats à la suppression.
Pour chaque lien schématique qui se connecte à un nœud candidat à la suppression, la règle recherche en premier un attribut schématique présentant ce nom sur le lien schématique. Si aucun attribut schématique présentant ce nom n'est détecté, la règle recherche un champ portant le même nom sur l'entité SIG associée au lien schématique.
- Lorsque la classe d'entités schématiques sélectionnée à supprimer implémente des liens, la règle s'applique aux nœuds de fin et d'origine du lien candidat à la suppression.
Pour chaque nœud schématique qui se connecte à un lien candidat à la suppression, la règle recherche en premier un attribut schématique présentant ce nom sur le nœud schématique. Si aucun attribut schématique présentant ce nom n'est détecté, la règle recherche un champ portant le même nom sur l'entité SIG associée au nœud schématique.
- Lorsque la classe d'entités schématiques sélectionnée à supprimer implémente des nœuds, la règle s'applique aux liens connectés aux nœuds candidats à la suppression.
- Choisissez Différent de ou Egal à si la valeur de cet attribut/ce champ doit être égale ou non pour toutes les entités schématiques connectée afin que l'entité schématique candidate à la suppression soit finalement supprimée.
- Lorsque la classe d'entités schématiques sélectionnée à supprimer implémente des nœuds, le fait de choisir Différent de provoque la suppression du nœud schématique candidat à la suppression uniquement si l'attribut/le champ schématique spécifié n'existe pas pour certains liens connectés, ou s'il existe pour tous les liens connectés mais avec des valeurs de champs différentes. Le fait de choisir Egal à entraîne la suppression du nœud schématique candidat à la suppression uniquement si l'attribut/le champ schématique spécifié existe avec la même valeur pour tous ses liens connectés.
- Lorsque la classe d'entités schématiques sélectionnée à supprimer implémente des liens, le fait de choisir Différent de provoque la suppression du lien schématique candidat à la suppression uniquement si l'attribut/le champ schématique spécifié n'existe pas pour l'un des nœuds d'extrémité ou d'origine, ou s'il existe à la fois pour les nœuds d'extrémité et d'origine mais avec des valeurs de champs différentes. Le fait de choisir Egal à provoque la suppression du lien schématique candidat à la suppression uniquement si l'attribut/le champ schématique spécifié existe avec la même valeur à la fois pour ses nœuds d'extrémité et d'origine.
- Vous pouvez aussi spécifier un critère étendu spécifique pour filtrer le nœud candidat à la suppression. Pour utiliser un tel critère, vous devez procéder comme suit :
- Sélectionnez la case à cocher Use extended criteria.
- Choisissez les critères étendus souhaités dans la liste déroulante.
Pour la règle Suppression d'entité, un critère étendu personnalisé est un composant qui implémente l'interface esriSchematic.ISchematicFeatureRemovalExtended.
Le composant de critère étendu s'applique aux entités schématiques candidates à la suppression en fonction de l'ensemble des autres options de suppression spécifiées. Il détermine si chaque nœud doit ou non être supprimé après l'exécution de la règle.
- Cliquez sur OK pour fermer la boîte de dialogue Rule Properties.