Comprendre les emplacements des fichiers et les attachements de référence dans MicroStation


 Produit(s):MicroStation
 Version(s):N\A
 Environnent:N\A
 Domaine:Configuration
 Sous-Domaine:N\A

Aperçu
Cet article a été créé à partir d'un article MSM en ligne archivé de 2002 écrit par Barry Bentley, Ph.D.
Attacher les références a toujours été l'une des fonctionnalités les plus importantes de MicroStation. Dans cet article, nous explorons les différentes façons dont MicroStation V8 (et version récentes) peut enregistrer le nom du fichier pour l’attachement de référence et l'algorithme qu'il utilise pour localiser les références lorsqu'un DGN est ouvert.
Lorsqu'un fichier est attaché en tant que référence, le fichier principal, auquel il est attaché, doit enregistrer le nom du fichier afin qu'il puisse être ouvert dans les futures sessions. La façon dont le nom du fichier est sauvegardé a été la source de frustration des utilisateurs dans le passé et a subi quelques améliorations au fur et à mesure que MicroStation a évolué.
La manière la plus évidente de stocker le nom du fichier est simplement de sauvegarder le répertoire complet du fichier de référence. C'est-à-dire, si le fichier est sauvegardé dans C:\activeProjects\project704\structural\steel.dgn, il suffit de stocker cette chaîne complète dans le fichier principal. Alors que dans MicroStation J (aussi appelé « V7 ») et les versions antérieures l'utilisateur devait forcer ce résultat, cette procédure n’était pas la procédure recommandée.
Le problème avec cette approche est qu'il est totalement non flexible. Si l'ensemble du projet est déplacé vers un disque différent ou un répertoire différent sur le même ordinateur, le fichier de référence ne sera pas retrouvé. Si le projet est conservé sur un serveur de fichiers, le point de partage est susceptible d'être différent pour différents utilisateurs, et la référence peut être située sur certains ordinateurs mais pas sur d'autres. La seule solution est d'entrer dans chaque fichier et de modifier chaque référence attachée.
Image 1: Un exemple de structure de répertoire de projet.
 
Pour cette raison, le comportement par défaut pour les fichiers de référence sélectionnés graphiquement est de stocker uniquement le nom du fichier et l'extension des références, puis s'appuiera sur l'utilisateur ou l'administrateur du projet pour définir correctement la variable de configuration du chemin de recherche de fichier de référence MS_RFDIR pour chaque projet. MS_RFDIR peut être configuré sur une liste de répertoires (séparés par des points-virgules) ; MicroStation recherche chaque répertoire pour les références attachées.
L'avantage de cette approche est que le fait de déplacer un projet, ou des parties d'un projet, ne nécessite aucun changement aux fichiers DGN. Il nécessite des modifications à la variable MS_RFDIR. Un inconvénient est que MS_RFDIR doit être défini différemment pour chaque projet.

Utilisation des variables de configuration

Une autre approche prise en charge depuis MicroStation V4 est de définir des variables de configuration spécifiques et d'utiliser la variable de configuration pour établir le répertoire dans lequel réside le fichier de référence. Par exemple, considérez la structure de répertoire de projet suivante illustrée dans l’Image 1. Un administrateur de projet peut définir des variables de configuration (Image 2). Les références peuvent ensuite être jointes en sélectionnant l'attache de référence P704BORDERS:border_a.dgn ou en utilisant l'option Sélection de la variable de configuration dans le menu Répertoire de la boîte de dialogue de sélection du fichier de référence. Dans les deux cas, MicroStation stocke le nom de fichier sous P704BORDERS: border_a.dgn.
Image 2 : variables de configuration.
 
L'avantage de cette approche est évident ; Si le projet est déplacé (par exemple, vers c:\InActiveProjects\ ou vers un serveur de fichiers), le seul changement nécessaire est de redéfinir les variables de configuration. En fait, l'administrateur du projet astucieux définirait probablement les variables de configuration comme le montre Image 3, puis il faudra redéfinir uniquement PROJECT704 - les autres variables de configuration se redéfinissent automatiquement.

Nom de fichier realatif à la variable de configuration

Une amélioration aux fonctionnalités de MicroStation J a permis aux fichiers de référence à être spécifiée comme "relative" à une variable de configuration. Ainsi, compte tenu de la structure du répertoire dans l'exemple ci-dessus, l'administrateur du projet pourrait définir une variable de configuration unique, PROJECT704, et la référence ci-dessus pourrait être jointe à l'aide de la référence de saisie de référence PROJECT704:borders\border_a.dgn.
Image 3 : Variables de configuration révisées.
 
L'avantage de cette approche est qu'il n'y a qu'une seule variable de configuration, donc les utilisateurs ne doivent pas trop s’inquiéter à la variable à utiliser.
Il existe deux inconvénients à cette méthode. Tout d'abord, il n'y a aucun moyen pratique d'obtenir ce résultat lors de la sélection d'un fichier de référence à l'aide de la boîte de dialogue de sélection de fichier de référence. Deuxièmement, il "verrouille" la structure du répertoire du projet. L'ensemble du projet peut facilement être déplacé vers un autre répertoire racine ou un serveur de fichiers, mais la structure du répertoire interne ne peut être modifiée qu'en modifiant les references attachées.
Une autre façon intéressante de l'utilisation des noms de fichiers relatifs à la variable de configuration est l’utilisation de la variable de configuration intégrée _DGNDIR, qui lui indique toujours le répertoire du fichier maître actuel.
Comme avantage, il n’est pas nécessaire de définir des variables de configuration, mais les mêmes inconvénients ci-dessus s'appliquent encore : la structure interne du répertoire du projet doit être stable et il n'y a toujours aucun moyen d'obtenir ce résultat à partir du processus de sélection de fichier graphique.

Noms de fichiers relatifs au fichier Maître

Dans MicroStation V8 (version 08.00.01.19 et versions ultérieures), il existe une nouvelle capacité pour stocker les noms de fichiers de référence relatifs au fichier maître. Cet effet est similaire à celui décrit ci-dessus, lorsque les noms de fichiers sont stockés par rapport à la variable de configuration _DGNDIR, mais il existe un avantage distinct lorsque l'imbrication de référence en direct de MicroStation V8 est utilisée.
Si le fichier maître fait référence à un fichier dans un autre répertoire qui a ses références relatives à _DGNDIR, ces références imbriquées ne seront pas nécessairement trouvées car _DGNDIR fait maintenant référence au répertoire du fichier maître plutôt que le répertoire du fichier de référence de niveau supérieur. MicroStation V8 stocke le chemin relatif directement pour éviter ce problème.
Un autre avantage est qu'il est possible de spécifier des chemins relatifs lors de l'utilisation de la boîte de dialogue de sélection du fichier de référence. L’option « Enregistrer chemin relatif » dans l’ (Image 4) indique à MicroStation de stocker le chemin relatif au fichier DGN.
Pour les administrateurs système qui ne veulent pas autoriser les chemins relatifs, la variable de configuration suivante MS_DISALLOWRELATIVEREFPATH peut être définie sur 1 pour supprimer cette option dans la boîte de dialogue « Attacher référence » et interdire les chemins relatifs. 
Image 4: La boîte de dialogue Attacher référence.
L'utilisation de chemins relatifs élimine la nécessité de définir des variables de configuration spécifiques au projet ou de redéfinir MS_RFDIR, mais, comme indiqué ci-dessus, il limite la flexibilité en exigeant qu'un projet maintienne une structure de répertoire interne inchangée.
Les chemins relatifs ne devraient pas être utilisés pour les fichiers références qui se trouvent dans un autre projet, ou qui sont partagés entre différents projets.

Recherche de fichiers de référence en MicroStation V8

Pour chaque fichier de référence, MicroStation stocke une spécification (chemin) du fichier de la référence attachée. Le chemin du fichier stocké est affiché à l'utilisateur dans la boîte de dialogue références. Lorsqu'une référence est attachée, MicroStation examine la manière dont le fichier a été choisi et décide de stocker les spécifications du fichier qui donnera aux utilisateurs les meilleurs résultats en termes de flexibilité et de facilité de maintenance.
Si une variable de configuration est sélectionnée à partir de la boîte de dialogue de sélection de fichier de référence ou entrée comme une partie du nom dans l’entrée au clavier de la référence, la variable de configuration est toujours retenue dans le cadre de la spécification du fichier. Le fichier est spécifié par rapport à une variable de configuration dans l’entrée au clavier de la référence, la variable de configuration et le chemin relatif sont toujours conservés dans la spécification du fichier. Si un chemin relatif est spécifié dans la boîte de dialogue de sélection de fichier de référence ou comme partie du nom dans la pièce jointe de référence, le chemin relatif est toujours retenu. Sinon, seul le nom du fichier est conservé.
À partir de MicroStation V8, MicroStation enregistre également le chemin complet du fichier où se trouvait le fichier de référence. Il est très pratique pour l'utilisateur d'attacher le fichier de référence, car cela signifie qu'il sera toujours possible de localiser le fichier de référence lors de la réouverture du fichier maître (à moins qu’il ne soit déplacé ou supprimé). Cependant, étant donné que les autres participants au projet n'ont peut-être pas la même structure de répertoire ou les mêmes structures de partage de fichiers, la spécification complète du fichier pourrait ne pas leur permettre de localiser le fichier. Par conséquent, ce comportement peut être évité en définissant la variable de configuration MS_DISALLOWFULLREFPATH, et de nombreux administrateurs de projet choisissent de le faire.
Lorsque MicroStation ouvre un fichier, il recherche des références dans les endroits suivants et dans l'ordre suivant :

1.       Si la spécification du fichier contient une variable de configuration, MicroStation regardera dans ce répertoire d'abord, en utilisant le chemin relatif, le cas échéant.

2.       Recherchera dans une liste de répertoires, qui est composé de tous les répertoires pour le (s) fichier (s) parent (s) de la référence. Si une référence est directement associée au fichier maître, le chemin de recherche consiste uniquement dans le répertoire du fichier maître. S'il s'agit de références imbriquées, le chemin d'accès se compose des répertoires de chaque fichier parent, en commençant par le plus profondément imbriqué. À partir de la mise à jour MicroStation V8 8.00.01, les répertoires recherchés incluent le chemin relatif, le cas échéant, dans la spécification du fichier.

3.       Recherchera dans tous les répertoires indiqués dans MS_RFDIR, en conservant le chemin relatif, le cas échéant, dans la spécification du fichier.

4.       Recherchera le répertoire "actuel". Il s'agit du répertoire MicroStation, si MicroStation est démarré à partir du groupe de programmes MicroStation ou le répertoire du fichier DGN ouvert depuis l'explorateur Windows (en double cliquant sur le fichier).

5.       Recherchera dans la spécification complète du fichier dans la pièce jointe de référence, s'il y en a une.

Cet algorithme de recherche est conçu pour maximiser les chances que chaque participant au projet trouve le fichier de référence correct.

 

A propos de l'auteur

Barry Bentley, Ph.D., a co-fondé Bentley Systems, Incorporated, en 1984 avec son frère, Keith. Membre du conseil d'administration depuis la création de Bentley, M. Bentley était également président du conseil d'administration de Bentley de 1984 à 1994. Il continue de participer activement au développement de MicroStation et d'autres produits Bentley.

Autres sources linguistiques

English