Construction du prototype n°3 sous SQR:
Nous utiliserons "VisualSCRIBE 5.0" comme
éditeur des fichiers source SQR. Cet éditeur ne possède
pas de fonctions particulières sauf la colorisation des mots clefs du
langage et des commentaires. Il permet aussi une visualisation directe des
résultats au format .SPF.
Cet outil est d'origine un outil d'assistance à la
génération de rapport. Quelques tests ne nous ont pas
prouvé l'efficacité de cet outil pour la création des
rapports complexes qui nous intéressent. Tout au plus pourrions-nous
l'essayer pour tester quelques requêtes SQL ou profiter de la
génération automatique de programme pour nous aider lorsque la
syntaxe des instructions ne nous sera pas familière. L'ouvrage SQR
cité en référence devrait fournir la majorité des
solutions à nos problèmes.
Le SQR n'est certainement pas un langage de dernière
génération. La structuration du programme est laissée aux
soins de l'utilisateur. Il existe toutefois des notions de procédures
Locales et Globales ainsi que la possibilité d'inclure des modules
externes par la directive #include. Toutefois, ces notions sont
spécifiques à ce langage (par exemple dans une procédure
locale, les variables locales gardent leur valeur entre deux lancements).
Pour les besoins du prototype, la programmation ne sera pas
adaptée à différents environnements, mais seulement au
SQBD "SQL base", dans un contexte uniquement US-English et dans un OS Windows.
Il n'est pas à l'ordre du jour ni de changer d'environnement ni de base
de donnée.
Nous tenterons toutefois de programmer en vue de la
réutilisation des modules même si le prototype n'aboutit pas
à la version définitive du produit.
On respectera les règles simples suivantes pour la
documentation des programmes:
- En entête de module:
File Name, Author, Creation Date, Description, Parameters.
Une liste des révisions comprenant: Date, Programmer,
version, list and details of modifications.
- En tête de chaque procédure:
Description, Input parameters, Output parameters, liste des
révisions pour les plus importantes.
- Commenter les programmes de façon à ce qu'il
soit réutilisable par un autre programmeur.
Les versions suivies d'un indice "b" seront
les versions de travail pendant la phase de prototypage. La version 1.0 sera la
première version opérationnelle, elle apparaîtra dans
l'entête du rapport. Cette version ne sera officialisée
qu'après plusieurs mois de résultats et la vérification
des chiffres obtenus.

L'outil que nous utiliserons pour exécuter nos
programmes source .SQR est SQRWT.EXE qui se
trouve dans le répertoire C:\SQR4.
Il n'existe pas d'outil de "debuggage" proprement dit. Seules
quelques fonctionnalités du langage permettent de tracer
l'exécution:
- Le langage intègre cependant des
fonctionnalités permettant d'imprimer des résultats dans une
fenêtre pendant l'exécution à l'aide des commandes SQR
show ou display. La
commande show est plus puissante que display, car elle permet
d'afficher plusieurs variables ou textes dans la même commande.
Figure 19 Fenêtre
principale de SQRWT
- Il existe aussi des possibilités de compilation
conditionnelle. La compilation de la ligne est déclenchée lorsque
l'option -DEBUG est entré dans la ligne de commande.
Dans ce cas, les lignes du source
précédées de la directive #debug sont
compilées. En fait, l'option -debug peut aussi être
suffixée par un certain nombre de chiffres ou lettres et testée
de la même façon dans le programme.
La syntaxe de la ligne de commande devient alors:
-debug<string> et le test dans le programme
#debug<string> <command line>.
- Certaines variables explicites du programme ou celles des
options -debug peuvent aussi être testées à l'aide des
directives #ifdef, #ifndef, #else et #end-if. Cela permet de créer des
portions de programme à compilation conditionnelle.
- Dans la ligne de commande, on peut aussi préciser les
directives suivantes:
-E[file name] qui permet de
générer un fichier .ERR contenant tous les messages d'erreur de
SQR. Le fichier par défaut est le <nom du program>.ERR.
-CB fait apparaître une fenêtre
d'exécution qui permet de visualiser les messages de SQR, ceux du
programme (display & show) ainsi que de saisir les
entrées du programme.
-S permet d'afficher les commandes SQL, le
nombre de fois ou elles sont exécutées, le nombre de lignes
sélectionnées.
Le programme source .SQR est directement exécutable par
le programme SQRWT. Par contre dans Maximo il est d'usage de
le compiler au format .SQT pour qu'il soit exécuté et que le code
ne soit pas visible par l'utilisateur.
La compilation s'effectue en utilisant
l'option -RS de la ligne de commande.
Le programme "SQR viewer" SQRWV.EXE dans
C:\SQR4 permet de visualiser les fichiers de sortie portable d'extension
.SPF. C'est l'outil d'édition des rapports
utilisé par Maximo.
Il existe aussi par défaut un format .LIS qui est du
texte simple sans grande utilité dans notre cas. Il est
généré en même temps que le format .SPF sauf option
contraire de la ligne de commande.

Figure 20 "SQR viewer" fenêtre
d'exemple.

Prototype n°3 sous SQR:
Minutes of meeting "Expression des besoins prototype
N°3"
|
|
Situation:
|
Base "Pride Foramer" Luanda le 19 Mai 2004.
|
|
Participants: 7 personnes.
Durée 1 heure.
|
- Ph JUNG CPI: Chef de projet. Superviseur de maintenance.
- LDAO: Directeur des opérations client TOTAL.
Initiateur du projet.
- 2*LDAM: Directeur de la maintenance LDA et son assistant.
- 3*LDARM: Rig Manager chantiers Pride Africa, Pride Angola et
Barracuda.
|
|
Rappel sur l'objectif de la
réunion:
|
- Valider le format du prototype N°3.
- Faire de nouvelles propositions ou corrections du rapport
existant.
|
|
Propositions et remarques des
participants:
|
- Le format est assez bien accepté par l'ensemble des
participants.
- Les listes WMATL sont jugées compactes, mais
conformes à la demande. Dans la mesure ou le champ est un texte libre,
il est difficile de donner d'autres informations complémentaires. Dans
tous les cas, le numéro de "Material Request" (MR) permet de trouver
tous les autres éléments d'une commande ("Purchase Order").
- Dans les "major PM prévisions", remplacer "Days" par
le nom du département trié. Les intervalles sont passés
à 1 an et 1000h à la demande des utilisateurs des chantiers. Cela
afin de pouvoir effectuer les achats nécessaires à ces
maintenances en avance. Cela inclut la moyenne des temps d'approvisionnement
normaux.
- Ajouter des graphiques donnant les répartitions des
"PM overdue" dans le temps et en pourcentage.
- Ajouter des graphiques de répartition sur une
année glissante des: Etats des PM et CM, des overdue et du % de PM/all
maintenances.
- CPI précise aux utilisateurs qu'il n'a pu tester les
données que sur quelques mois et qu'il existe peut être des
lacunes dans ces rapports. Cela ne semble pas les frapper... Il indique qu'il
faudra à l'issue du prototype lancer des tests plus complets faits par
les administrateurs Maximo de Houston.
|
|
Conclusions:
|
- Remplacement des "Days" par le département et trier
par cette valeur.
- Nous avons décidé d'ajouter les graphiques
récapitulatifs suivants:
§ Pourcentages de "PM overdue" dans le temps.
§ Répartition des différents états
des maintenances préventives et correctives sur une année
glissante.
§ Répartition des %PM sur un an glissant.
§ Répartition des % d'overdue ISM ou non sur un
an.
- Préparation de l'intégration du produit
à Maximo.
|
|