| Conférencier |
Transcription |
| John Moore |
Bonjour, merci de me rejoindre. Je m'appelle John Moore et aujourd'hui, nous allons parler de Lupine, un framework que j'ai développé pour créer, publier, gérer et surveiller les modules complémentaires JMP. |
| |
Tout d'abord, un petit mot sur moi. Je m'appelle John Moore et je suis diplômé en ingénierie et en gestion, mais avant tout, je suis un passionné de données. J'ai travaillé chez Elanco Animal Health comme analyste pendant 19 ans. |
| |
J'ai un fils, un mari, un chien et, actuellement, environ 80 000 abeilles. |
| |
Alors, vous savez, comment en sommes-nous arrivés là ? Eh bien, chez Elanco, nous avons des TC, qui sont des consultants techniques, généralement des vétérinaires ou des nutritionnistes, répartis dans le monde entier, et nous les avons formés à utiliser JMP et à utiliser les scripts JMP. |
| |
Et beaucoup de ces centres de formation n'ont qu'un accès intermittent à Internet, tout simplement parce qu'ils sont très isolés. |
| |
On se retrouvait donc avec une situation où les scripts circulaient de manière ad hoc entre les utilisateurs. Il n'y avait aucun système de contrôle de version. On ignorait qui utilisait quel script. |
| |
L'exportation et la mise à jour des scripts étaient complexes. J'ai donc créé Lupine afin de standardiser nos scripts, d'assurer un contrôle de version et de permettre à chacun de savoir facilement qui faisait quoi et qui utilisait quels scripts. |
| |
Nous pouvions facilement diffuser les mises à jour et, en prime, nous avons intégré quelques formules dans l'éditeur de formules. |
| |
Alors, jetons un coup d'œil à Lupine. Une fois Lupine installé, vous verrez qu'il est très simple. Il n'y a qu'un seul menu Lupine dans JMP, avec l'option « Rechercher les mises à jour ». |
| |
Lorsque vous consultez la fonction de vérification des mises à jour, vous verrez la liste de tous les modules complémentaires gérés par Lupine. |
| |
Et si ce n'est pas à jour, un message l'indiquera. Si c'est à jour, un simple « OK » s'affichera. C'est très simple : voici les modules complémentaires disponibles. Avez-vous la version la plus récente ? |
| |
Dans l'éditeur de formules également, comme nous avons constaté que nous utilisions fréquemment certaines formules, par exemple, mois/année, qui renvoie le premier jour de l'année, |
| |
Le mois de la date est écoulé. Nous avons un trimestre annuel, une saison. Nous avons aussi une semaine de comptage qui permet de gérer des éléments comme le début et la fin de la semaine. |
| |
Lupine utilise également un système de journalisation de l'utilisation. Ainsi, chaque fois qu'un utilisateur exécute un script géré par Lupine, un fichier journal est créé. Nous savons donc qui a utilisé quel script, quel module complémentaire et à quel moment. Cela nous permet de déterminer quels scripts sont utiles et lesquels ne le sont pas. |
| |
Supposons donc que vous souhaitiez installer Lupine au sein de votre organisation. |
| |
Bien, première étape : télécharger des fichiers zip. Nous avons un fichier zip Lupine, un gestionnaire Lupine et un modèle Lupine. |
| |
Nous avons également l'exemple de Lupine. Je vous suggère donc de trouver un dossier et d'y télécharger les trois fichiers. |
| |
L'étape suivante, en tant que responsable de la configuration, consiste à déterminer où placer les dossiers réseau. Deux dossiers réseau sont essentiels pour Lupine. |
| |
La première étape consiste à ajouter des dossiers de dépôt. Il s'agit d'un dossier qui contiendra tous vos modules complémentaires, ainsi que le fichier PublishedAddins.jmp qui contient les métadonnées de ces modules. |
| |
L'autre élément à prendre en compte est notre dossier central de journaux. Il s'agit du dossier qui contiendra tous les fichiers journaux téléchargés, créés à chaque exécution d'un script géré par Lupine. |
| |
Vous pouvez donc voir ici un exemple de tous les modules complémentaires présents dans notre fichier de modules complémentaires publiés. Et voici un exemple de… |
| |
Les fichiers journaux. Chaque fichier journal possède un identifiant unique. Nous y reviendrons plus tard, mais sachez que lorsque nous les récupérons, nous ne téléchargeons que le plus récent afin que vous n'ayez pas à tout télécharger à chaque fois. |
| |
Une fois que vous avez décidé où placer ces fichiers, il faut indiquer à Lupine où ils se trouvent. Pour ce faire, ouvrez le dossier Lupine après l'avoir décompressé. |
| |
et dans le sous-dossier de gestion des ajouts, vous verrez ce fichier appelé setup et c'est cette partie qu'il faut rechercher dans le programme d'installation. |
| |
C'est ici que vous définissez le chemin d'accès à notre dépôt et celui de nos journaux centraux. En production, vous devrez utiliser ces emplacements réseau, mais pour cet exemple simple, je les ai créés sur ma machine. C'est ici que vous définiriez votre chemin réseau. |
| |
Une fois cela fait, il est temps de créer Lupine pour votre organisation. Dans le dossier Lupine, copiez tous les fichiers, sauf le fichier `gitattributes` si nécessaire. J'utilise GitHub Desktop pour gérer mon dépôt. |
| |
Scripts. Je le recommande vivement. Ça m'a vraiment simplifié la vie. Mais vous ne voulez pas les inclure dans votre script, alors prenez tout sauf le fichier gitattributes. Vous allez faire un clic droit dessus, puis choisir « Envoyer vers » et… |
| |
Envoyez-les dans un dossier zip compressé. Cela créera un fichier zip contenant tous ces fichiers. Les fichiers d'extension JMP sont en réalité des fichiers zip. Nous allons donc renommer celui-ci en Lupine.jmpaddin. |
| |
Une fois que vous l'avez nommé, il suffit de double-cliquer dessus pour l'installer. Lupine sera alors installé sur votre ordinateur. Nous n'allons rien faire avec pour l'instant, mais il est là. Vous le trouverez dans la barre de menus. |
| |
Ensuite, parlons de Lupine Manager. Il s'agit d'un module complémentaire distinct conçu pour l'administrateur. |
| |
et assurer le suivi et la mise à jour de tous les modules complémentaires au sein d'une organisation. Il est donc peu probable que cela se trouve sur l'ordinateur de l'utilisateur lambda, tout simplement parce que |
| |
Ce n'est pas utile. En revanche, il s'agit d'un ensemble d'outils qui vous aideront, en tant que gestionnaire, à gérer les modules complémentaires. |
| |
La première chose à faire lorsque vous ouvrez Lupine Manager est d'aller dans Configuration, puis nous allons vous dire |
| |
Notre fichier d'utilisateurs uniques, qui contient tous les utilisateurs uniques de votre organisation, ainsi que les données de journalisation. |
| |
OK, donc la table des utilisateurs uniques associe les identifiants des utilisateurs. Nous récupérons donc les identifiants des utilisateurs sur votre ordinateur. |
| |
Mon identité, par exemple, ne signifie rien de particulièrement significatif. La mienne est 00126545. |
| |
Nous aimerions associer cela à un élément mentionnant John Moore. C'est précisément le rôle des utilisateurs uniques. Le fichier de données journalisées comporte une ligne pour chaque journal. Il s'agit donc d'un résumé de tous les fichiers journaux créés précédemment. Nous pouvons ainsi les analyser à loisir. |
| |
Bon, supposons que vous vouliez commencer à utiliser Lupine Manager. |
| |
La première étape consiste à indiquer les modules complémentaires que vous souhaitez gérer. Pour ce faire, rendez-vous dans « Créer un module complémentaire », puis dans « Gérer les modules complémentaires disponibles ». |
| |
Cette section sera alors vide. Une fois dessus, cliquez sur « Ajouter un module complémentaire », puis sélectionnez les dossiers contenant les fichiers des modules complémentaires que vous souhaitez contrôler. |
| |
Une fois cela fait, vous verrez que ces éléments seront listés dans les modules complémentaires disponibles. Cliquez sur « Créer des modules complémentaires ». Vous avez alors deux options : « Créer un module complémentaire » va simplement créer… |
| |
Un fichier supplémentaire est ajouté dans le dossier contenant les scripts ; c'est très pratique pour les tests. Je souhaite effectuer une compilation rapide pour vérifier son bon fonctionnement. |
| |
La compilation et la publication auront le même effet, mais elles copieront également le module complémentaire dans le dossier de votre dépôt de modules complémentaires et mettront à jour votre fichier de modules complémentaires publiés. Vous serez alors prêt à le distribuer à l'entreprise : vos tests seront effectués et le module sera opérationnel. |
| |
Maintenant, si vous souhaitez importer toutes ces données de journalisation, il vous suffit d'aller dans Importer et traiter les données de journalisation ; le système importera tous les nouveaux fichiers de journalisation et les ajoutera à votre fichier de données de journalisation. |
| |
Nous avons ici un récapitulatif des utilisateurs, qui est un tableau rapide indiquant qui utilise quel module complémentaire. Cela vous donne donc un aperçu très rapide de |
| |
qui sont mes principaux utilisateurs de ce module complémentaire. Vous savez, ici, nous pouvons voir, pour cet exemple, que Lupine et LupineManager sont très utilisés ; LupineExample1 un peu ; LupinExample, beaucoup moins. |
| |
Supposons que vous ayez installé Lupine et Lupine Manager. Vous avez maintenant des modules complémentaires que vous souhaitez gérer avec Lupine. Voyons donc comment procéder. |
| |
La première chose à faire est d'accéder au modèle d'extension Lupine et de le copier. Ce fichier contient tous les scripts nécessaires et tout ce qui permet à Lupine de fonctionner avec votre extension. Copiez-le. |
| |
Nous allons maintenant procéder par étapes. La première consiste à modifier le fichier addin.def. |
| |
Nous allons créer tous les scripts dont vous aurez besoin dans votre module complémentaire, ou les mettre à jour si vous les possédez déjà. |
| |
La création de l'extension permettra de personnaliser les menus pour un affichage correct. En cliquant dessus, vous devriez voir ce que vous souhaitez. Une fois le menu corrigé, nous recréerons l'extension pour la tester et vérifier son bon fonctionnement. Après les tests, nous pourrons la publier. |
| |
Parlons donc de ce fichier addin.def ; addin.def est un tout petit fichier texte, mais il est indispensable pour chaque module complémentaire. Il contient les informations essentielles concernant le module complémentaire. |
| |
Quel est son identifiant et son nom ? Vous devrez donc les modifier pour qu'ils correspondent au nom de votre module complémentaire. |
| |
Et c'est une opération ponctuelle. Une fois effectuée, vous n'aurez plus besoin de modifier ce paramètre pour l'extension. Donc, il n'y a qu'une seule fois où vous le ferez : lors de la configuration. |
| |
Ensuite, vous devez décider quel script je vais intégrer dans ce module complémentaire ? J’ai maintenant créé un… |
| |
Lupine crée un fichier journal. |
| |
C'est ce qui va créer le fichier journal pour tout module complémentaire utilisant Lupine. C'est donc ce qui génère les journaux et permet le suivi des versions. |
| |
Je recommande donc de placer cet en-tête à la fin… au début de tous vos fichiers. Votre script vous permettra d'effectuer le suivi, car c'est lui qui vous permettra de surveiller les opérations. |
| |
Maintenant que tous vos scripts sont en place, l'étape suivante consiste à personnaliser l'apparence du fichier de menu. Pour l'instant, il contient simplement l'inscription « templates ». |
| |
Nous allons commencer par construire ceci. Tout comme pour Lupine, nous avons sélectionné tous les fichiers sauf les fichiers gitattributes, fait un clic droit, compressé, puis renommé. |
| |
Nous allons procéder de la même manière. Le problème, c'est que le menu sera incorrect, car il utilise encore le menu par défaut. Il faut donc le modifier pour qu'il corresponde à nos besoins. |
| |
D'accord, une fois que vous l'aurez installé, vous verrez votre nouveau script ici, votre nouveau module complémentaire ici, le modèle. Nous allons faire un clic droit |
| |
En haut du menu, vous verrez une longue liste. Tout en bas, vous trouverez « Personnaliser ». Il vous suffit d'aller dans « Menus et barres d'outils ». Une fois là-bas, vous verrez quelque chose comme ceci. |
| |
La première chose à faire est d'indiquer à JMP ce que nous souhaitons modifier. Nous voulons modifier le menu associé à notre module complémentaire, actuellement appelé « modèle ». |
| |
Nous allons donc cliquer sur le bouton « Modifier ». Une multitude d'options s'offrent à nous. Mais ce que nous voulons faire, c'est cliquer sur le bouton radio « Compléments JMP » et ensuite descendre jusqu'à… |
| |
Le module complémentaire qui nous intéresse. D'accord. Ici, j'ai laissé ceci comme modèle, mais si vous... puisque vous l'avez déjà modifié dans le fichier addin.def, ce sera ce que ça donnera. |
| |
Une fois que vous aurez fait cela, vous verrez les petits morceaux. |
| |
Les éléments appartenant à votre module complémentaire apparaîtront en bleu ici, à gauche. |
| |
Voici donc ce que nous allons modifier et changer pour que cela corresponde à ce que nous souhaitons pour notre nouveau module complémentaire. |
| |
Alors, jetons un coup d'œil à ceci. J'ai inclus la section « À propos » dans la partie « Nouveautés » comme script standard, mais lorsque vous l'aurez installée, vous verrez qu'elle pointe vers… |
| |
Ce module complémentaire modèle ne vous convient pas. Vous avez choisi le nom de votre propre module. Nous allons donc cliquer sur « Exécuter le module complémentaire dans ce fichier ». |
| |
Cliquez sur « Utiliser » puis sélectionnez le dossier « Ajouter » et enfin l'extension souhaitée. JMP sera ainsi dirigé vers les nouveaux scripts que vous venez de créer. Cliquez ensuite sur « Parcourir ». |
| |
Ensuite, nous pouvons parcourir et accéder au script précis que nous souhaitons et dire : « Non, non, je ne veux pas l’utiliser dans le modèle. Je veux que vous l’utilisiez dans mon nouveau module complémentaire. » |
| |
De même, nous pouvons faire la même chose avec l'élément « Nouveautés » du menu. |
| |
Et une fois que vous avez fait tout ça, il ne reste plus qu'à ajouter les autres éléments que nous souhaitons. |
| |
Si vous effectuez un clic droit sur la zone bleue, vous verrez ces options pour insérer avant, insérer après, où vous pourrez ajouter ou supprimer des éléments de votre menu. |
| |
Vous pouvez donc ajouter des éléments, la plupart étant des commandes. Vous pouvez également créer un sous-menu pour approfondir le sujet, ou insérer un séparateur pour former une petite ligne horizontale. |
| |
Vous allez donc créer votre menu, y placer tous les éléments que vous... pour les scripts que vous venez de créer. |
| |
Et ensuite, nous allons le sauvegarder, mais nous allons le sauvegarder deux fois. |
| |
Lorsque vous l'enregistrez ici, cela aura simplement pour effet de modifier la version du module complémentaire installée sur votre ordinateur. |
| |
C'est bien, mais il faudrait aussi l'enregistrer dans le dossier où vous créez l'extension. Ainsi, lors de la prochaine compilation, le fichier de menu sera correct. |
| |
Après avoir cliqué sur Enregistrer, nous allons cliquer sur Enregistrer sous et accéder au dossier contenant nos fichiers d'extension. |
| |
Très bien, nous avons nos scripts. Notre fichier addin.def est défini et notre menu est prêt. |
| |
L'étape suivante consiste à construire et tester le produit. Généralement, je l'envoie aux utilisateurs. Ils me disent ce qui fonctionne et ce qui ne fonctionne pas. |
| |
Ensuite, je pourrai le publier. Une fois publié, un message vous invitera à mettre à jour les informations. |
| |
Le plus important, et cela concerne Lupine Manager, c'est de modifier la date de sortie. Cela permet aux utilisateurs de savoir qu'une version plus récente est disponible. |
| |
Une version est disponible, c'est exact. Donc... ce qui va se passer, c'est que cette version sera comparée à la date de publication, et c'est cette dernière que Lupine utilisera pour vous dire : « Hé, il existe une version plus récente à télécharger. » |
| |
Vous pouvez donc y ajouter des notes, comme des notes de révision. Voici les modifications que j'ai apportées cette fois-ci. Ce sont les principales mises à jour et améliorations que j'ai apportées à mon module complémentaire. Une fois cela fait, si vous cliquez sur Publier, |
| |
Lupine Manager prendra alors une copie de ce module complémentaire et la placera dans le dossier qui crée le module complémentaire, là où se trouve le code source. |
| |
Il le publiera également dans le dépôt de modules complémentaires et mettra à jour le fichier des modules complémentaires publiés pour y inclure la version la plus récente. |
| |
Et surtout, la date de sortie doit y figurer. Ainsi, si un utilisateur clique sur « Rechercher les mises à jour », un message lui indiquera qu'une nouvelle version de ce module complémentaire est disponible et lui proposera de la télécharger. Il pourra alors cliquer dessus pour l'installer sur son ordinateur. |
| |
Bon, c'était une introduction vraiment brève. |
| |
J'espère que vous trouverez ici suffisamment d'informations pour réaliser cette tâche vous-même. Dans le cas contraire, n'hésitez pas à me contacter à l'adresse john_moore@elanco.com. Je serai ravi de vous aider à la mettre en place. |
| |
Un grand merci, et encore merci. Au revoir. |