Article
· Fév 20, 2023 2m de lecture

Déploiement des données d'InterSystems IRIS à l'aide du gestionnaire de paquets ZPM Package Manager

Salut les développeurs ! Nous avons souvent besoin de déployer des données en même temps que des morceaux de code de l'application. Et pour les développeurs d'InterSystems IRIS, la question peut se poser comme suit : "Comment puis-je déployer les données que j'ai dans les globales ?"

InterSystems IRIS Globals Model QuickStart | InterSystems

Je vous propose ici l'une des approches suivantes : le déploiement de données globales à l'aide du gestionnaire de paquet ZPM package manager. **Exportation de données globales** Supposons que vous avez le serveur de base de données IRIS où vous avez une globale que vous voulez déployer. Le gestionnaire de paquets ZPM peut déployer des fichiers, vous devez donc exporter votre globale dans un fichier et construire le paquet avec ce fichier. ZPM peut déployer des globales au format XML, donc nous devons d'abord exporter une globale dans un fichier XML. Par exemple, si la globale que vous devez exporter a le nom "DataD", la commande suivante dans le terminal IRIS exportera la globale DataD dans un fichier XML :

d $System.OBJ.Export("DataD.GBL","/irisrun/repo/data/DataD.xml")

**Comment se présente la ressource** Pour compiler le paquet avec une globale, nous devons introduire certains éléments de ressource dans le module XML comme par exemple :

<Resource Name="DataD.GBL"/>

Consultez l'exemple dans la documentationRemarquez que cet élément de ressource cherchera le fichier DataD.XML, et non DataD.GBL comme vous pourriez vous y attendre. Et ZPM cherchera le fichier DataD.XML dans le dossier /gbl à l'intérieur du dossier indiqué dans l'élément . Exemple Voici un exemple de dépôt iris-dataset-countries qui contient un paquet qui déploie les globales avec les données sur différents pays. Voici module XML:

<?xml version="1.0" encoding="UTF-8"?>
<Export generator="Cache" version="25">
  <Document name="dataset-countries.ZPM">
    <Module>
      <Name>dataset-countries</Name>
      <Description>Module imports the data of Country passengers in dc.data.Tinanic class</Description>
      <Version>1.0.0</Version>
      <Packaging>module</Packaging>
      <SourcesRoot>src</SourcesRoot>
      <Resource Name="dc.data.Country.CLS"/>
      <Resource Name="dc.data.CountryD.GBL"/>
    </Module>
  </Document>
</Export>

Et nous pouvions voir la ressource :

<Resource Name="dc.data.CountryD.GBL"/>

Qui est située dans le fichier du dépôt /src/gbl/dc.data.CountryD.XML: Ainsi, Lorsque le ZPM charge le module dans IRIS, il importe le global conformément au module.xml. Vous pouvez tester l'installation de la globale (et de la classe qui lui permet de faire des requêtes) avec : USER>zpm "install dataset-countries" Vous pouvez également jouer avec l'emballage global avec les ensembles de données Countries ou Titanic.

Discussion (0)3
Connectez-vous ou inscrivez-vous pour continuer