OPALE - 10.0

Précaution à prendre en cas d'utilisations multiples de Designer et integrité d'un environnement

De MappingDoc

Préambule

Une mauvaise utilisation de Designer peut engendrer des problèmes de ressources générant des problèmes d'impressions. (Subtitutions de polices, etc). Pour éviter d'avoir ce genre de problème, il faut s'assurer que tous les utilisateurs de Designer pour un environnement donné (Exemple : MAP400) pointent tous vers le même fichier lstobj.txt. Ce fichier lstobj.txt est un fichier listant toutes les ressources de tous les projets Designer en leur attribuant un numéro unique. L'utilisation de plusieurs Designer engendre des doublons ou conflits de ressources au seins de l'exécution des format Designer su le serveur.

Pour ce faire, il faut s'assurer que le répertoire de partage des préférences Designer pointe bien tous sur le même répertoire.

Vérification de l'intégrité d'un environnement

Afin de savoir si un environnement est impacté par des problèmes de ressources, on peut utiliser les commandes sql listées ci-dessous. Pour un environnement "propre", les requetes suivantes doivent toutes retourner aucune ligne.

Pour ce faire, sur le serveur, taper la commande STRSQL et exécuter les requêtes suivantes

Formats multi-séquences impactés par des doublons de numéro de ressource

SELECT A.MAPNAM, A.MAPSEQ, A.OBJNAM, B.MAPSEQ, B.OBJNAM, A.OBJTYP, A.OBJNUM 
from MAPLNK A, MAPLNK B
WHERE A.MAPNAM=B.MAPNAM 
AND A.MAPSEQ<B.MAPSEQ 
AND A.OBJTYP=B.OBJTYP 
AND A.OBJNAM<>B.OBJNAM 
AND A.OBJNUM=B.OBJNUM 
ORDER BY A.MAPNAM, A.MAPSEQ, B.MAPSEQ, A.OBJTYP, A.OBJNAM

Ressources différentes ayant le même numéro d'identifiant

Travail uniquement sur les lignes 1
Pour chaque triplet {Type, Nom, Numéro}, on vérifie s'il existe un doublon pour le couple {Type,Numéro}
Tri final afin que les doublons de numéro soient côte à côte

SELECT A.OBJTYP, A.OBJNAM, A.OBJNUM
FROM
 MAPOBJ A
WHERE
 NUMLGN = 1
 AND EXISTS (
   SELECT count(*), OBJTYP, OBJNUM
   FROM MAPOBJ B
   WHERE B.NUMLGN = 1
     AND B.OBJTYP = A.OBJTYP
     AND B.OBJNUM = A.OBJNUM
   GROUP BY B.OBJNUM, B.OBJTYP
   HAVING
     count(*) > 1
 )
ORDER BY A.OBJTYP, A.OBJNUM

Formats utilisant une ou plusieurs ressources inexistantes

Jointure entre MAPOBJ et MAPLNK Liste les ressources nécessaires aux formats mais inexistante (ou présente avec un autre numéro) dans la liste des objets

select * from MAPLNK A
WHERE NOT EXISTS(
 SELECT *
 FROM MAPOBJ B
 WHERE B.OBJTYP=A.OBJTYP
 AND B.OBJNAM=A.OBJNAM
 AND B.OBJNUM=A.OBJNUM
 AND B.NUMLGN=1
 )
ORDER BY A.MAPNAM, A.MAPSEQ