InterSystems FAQ rubric

Sous Linux, utilisez la commande iris pour exécuter une routine ou une méthode à partir d'un shell et obtenir la valeur de retour.

Pour plus d'informations, veuillez consulter le document "About Instance Connections".

Voici un exemple de commande.

0 0
0 58


Dans les parties précédentes (1 et 2) nous avons parlé des globales en tant qu'arbres. Dans cet article, nous allons les considérer comme des listes éparses.

Une liste éparse - est un type de liste où la plupart des valeurs ont une valeur identique.

En pratique, vous verrez souvent des listes éparses si volumineuses qu'il est inutile d'occuper la mémoire avec des éléments identiques. Il est donc judicieux d'organiser les listes éparses de telle sorte que la mémoire ne soit pas gaspillée pour stocker des valeurs en double.

Dans certains langages de programmation, les listes éparses font partie intégrante du langage - par exemple, in J, MATLAB. Dans d'autres langages, il existe des bibliothèques spéciales qui vous permettent de les utiliser. Pour le C++, il s'agit de Eigen et d'autres bibliothèques de ce type.

Les globales sont de bons candidats pour la mise en œuvre de listes éparses pour les raisons suivantes :

2 0
0 54

InterSystems FAQ rubric

Si plusieurs produits InterSystems sont installés sur le même système, la dernière version du pilote ODBC InterSystems parmi les produits installés restera enregistrée dans le gestionnaire de pilotes.

Vous pouvez passer à n'importe quel pilote en modifiant l'entrée de la registry ci-dessous.

Veuillez noter que l'exécution de RegFiles.bat ne modifie pas le pilote ODBC.

L'entrée de la registry est la suivante.

1 0
0 19

InterSystems annonce la version de maintenance (MR) de Caché, Ensemble et Health Connect HSAP 2018.1.9. Il s'agit d'une version de maintenance avec de nombreuses mises à jour dans une grande variété de domaines.

Cache et Ensemble

Les kits d'installation complets du produit peuvent être téléchargés à partir du site Web de WRC Software Distribution :

1 0
0 13

Il est possible de construire (reconstruire) l'index pendant que des données sont enregistrées/supprimées, mais si vous construisez l'index pendant ce processus, il sera référencé pendant sa mise à jour, utilisez donc l'utilitaire dédié et procédez à la construction de l'index.

La procédure est la suivante.

1 0
0 46

Au fil des ans, je me suis souvent retrouvé dans la nécessité de créer plusieurs messages HL7 à partir d'un seul message entrant. Il s'agit généralement d'une commande ou d'un résultat provenant d'un laboratoire. Chaque fois que j'ai abordé ce problème, j'ai essayé de repartir de zéro en pensant que la tentative précédente aurait pu être mieux faite.

3 0
0 40

pour démonter/monter une base de données, utilisez les méthodes Dismount() et Mount() dans la classe SYS.Database disponible dans l'espace de noms %SYS.
NB : l'ID de la base de données est le nom du chemin absolu de son répertoire.

Vous trouverez quelques exemples de démontage/montage et de méthodes contrôlant si une base de données est montée (Mounted=1) ou non (Mounted=0), ou affichant rapidement tous les attributs d'une base de données (via zwrite)

0 0
0 26

InterSystems FAQ rubric

Pour supprimer les produits InterSystems installés sur votre système Windows, utilisez Ajouter ou supprimer des programmes dans le Panneau de configuration (dans Windows 10, sélectionnez Apps dans les Paramètres Windows).

Comme nous allons apporter des modifications au système, vous devrez vous connecter en tant qu'utilisateur disposant de privilèges d'administrateur.

1) Connectez-vous au système en tant qu'administrateur.

1 0
0 16

Les globales d'InterSystems Caché offrent des fonctionnalités très pratiques pour les développeurs. Mais pourquoi les globales sont-elles si rapides et efficaces ?

Théorie

Fondamentalement, la base de données Caché est un catalogue portant le même nom que la base de données et contenant le fichier CACHE.DAT. Sur les systèmes Unix, la base de données peut également être une partition de disque ordinaire.

1 0
0 87
Article
· Juin 3, 2022 13m de lecture
Class Query dans InterSystems IRIS

Class Query dans InterSystems IRIS (et Cache, Ensemble, HealthShare) est un outil utile qui sépare les requêtes SQL du code Object Script. En principe, cela fonctionne comme suit : supposons que vous souhaitiez utiliser la même requête SQL avec différents arguments à plusieurs endroits différents. Dans ce cas, vous pouvez éviter la duplication du code en déclarant le corps de la requête comme une Class Query, puis en appelant cette requête par son nom. Cette approche est également pratique pour les requêtes personnalisées, dans lesquelles la tâche consistant à obtenir la ligne suivante est définie par un développeur. Cela vous intéresse ? Alors lisez la suite !

1 0
0 89

InterSystems FAQ rubric

Si une relation est définie et qu'il existe un grand nombre de n dans un rapport 1:n, une grande quantité de mémoire peut être consommée en raison du traitement séquentiel de la relation.

Après avoir référencé un objet à plusieurs côtés dans un programme et l'avoir fait pivoter en interne, le simple fait de libérer la variable contenant l'OREF (en la supprimant, en définissant une autre valeur, etc.) ne libérera pas les objets liés ni l'objet de relation.

1 0
0 18

Salut les gars,

Il y a quelques jours, un client m'a contacté avec le souhait d'améliorer son application existante, qui utilise les services SOAP afin de partager la même autorisation avec sa nouvelle API d'application basée sur REST. Comme leur nouvelle application utilise OAuth2, le défi était clair : comment transmettre le token d'accès avec la requête SOAP au serveur.

Après avoir passé du temps sur Google, il s'est avéré que l'un des moyens possibles d'y parvenir consistait à ajouter un élément d'en-tête supplémentaire à l'enveloppe SOAP, puis à s'assurer que l'implémentation du WebService fait ce qui est nécessaire pour valider le jeton d'accèsю

1 0
0 24

Ce texte est la suite de mon article où j'ai expliqué la structure d'une base de données Caché. Dans cet article, j'ai décrit les types de blocs, les connexions entre eux et leur relation avec les globales. L'article est purement théorique. J'ai fait un projet qui aide à visualiser l'arbre des blocs - et cet article explique comment il fonctionne en détail.

1 0
0 54

Étant donné que SELECT ... FOR UPDATE est implémenté dans de nombreux RDBMS en tant que méthode d'acquisition de lock de ligne explicite, vous utilisez probablement cette fonctionnalité dans de nombreux cas.

Cette syntaxe n'entraîne pas d'erreur dans les produits InterSystems, mais elle n'acquiert pas les locks de ligne attendus.

Cet article vous montrera comment obtenir la même fonctionnalité.

1 0
0 95

Nous venons de publier une mise à jour mineure du gestionnaire de packages, qui a été renommé de ZPM à IPM, comme je l'expliquais en novembre. Il s'agit simplement d'une version de correction de bogue, interprétant correctement les codes de retour ROBOCOPY et corrigeant une régression qui empêchait l'installation de certains packages.

Obtenez-le ici :

0 0
0 36

InterSystems FAQ rubric

Il n'est pas nécessaire de recompiler les routines après la mise à niveau de la version, mais comme la mise à jour de la version écrase %SYS, les routines au format INT et OBJ créées par l'utilisateur (*.INT,*.OBJ) dans %SYS seront supprimées. Par conséquent, vous devez être prudent.

Les routines MAC, INT et OBJ portant les noms suivants ne sont pas supprimées.

%Z*.INT, %z*.INT, Z*.INT,z*.INT
%Z*.OBJ, %z*.OBJ, Z*.OBJ,z*.OBJ

Veuillez noter que les classes/CSP doivent être compilées après la mise à niveau.

1 0
0 12
Article
· Mars 3 9m de lecture
Un tutoriel sur les WebSockets

Intro

La plupart des communications serveur-client sur le web sont basées sur une structure de demande et de réponse. Le client envoie une demande au serveur et le serveur répond à cette demande. Le protocole WebSocket fournit un canal de communication bidirectionnel entre un serveur et un client, permettant aux serveurs d'envoyer des messages aux clients sans recevoir de demande au préalable. Pour plus d'informations sur le protocole WebSocket et son implémentation dans InterSystems IRIS, voir les liens ci-dessous.

2 0
0 14

La cause de cette erreur est que la ressource locked est déjà locked par un autre processus dans l'application et que le lock n'est pas libéré pour une raison quelconque.

S'il n'y a aucun signe que d'autres processus avec le lock, il est possible que la table de locks manque d'espace libre. Dans ce cas, le message LOCK TABLE FULL est envoyé au Message Log

1 0
0 59

InterSystems a corrigé un problème qui pouvait empêcher InterSystems IRIS® et Caché de tirer parti des pages volumineuses pour la mémoire partagée sous Windows, même si ces produits signalent que des pages volumineuses sont allouées. Cela peut avoir des effets néfastes sur les performances du système.

0 0
0 27

InterSystems FAQ rubric

Pour résoudre l'erreur <PROTECT>, supprimez l'attribut en lecture seule de la base de données de bibliothèque à l'échelle du système (IRISLIB pour InterSystems IRIS, CACHELIB pour Caché/Ensemble/HealthShare (basé sur Caché)).

Une fois que vous avez terminé d'importer la routine, n'oubliez pas de la remettre en lecture seule.

1 0
0 15

InterSystems FAQ rubric

Les mappages globaux peuvent être enregistrés à l'aide de la classe système Config.MapGlobals.

La méthode pour mapper globalement ^Sample.PersonD dans une base de données SAMPLES autre que la base de données par défaut de l'espace de noms USER est la suivante (exemple exécuté dans un terminal).

3 0
0 26

Comment rechercher une globale contenant un string spécifique ?

Vous pouvez afficher les globales dans le Management Portal et effectuer une recherche avec Ctrl + F, mais les grandes globales peuvent prendre du temps et être difficiles à afficher.

Bien sûr, vous pouvez effectuer une boucle en utilisant les fonctions $ORDER et $QUERY pour trouver la chaîne.

Mais il existe un moyen plus simple et plus pratique.

1 0
0 73

InterSystems met périodiquement à jour ses politiques et pratiques en matière de publication de logiciels afin de s'adapter aux besoins des clients.

Nous sommes en train de modifier notre cadence de publication des mises à jour afin d'être plus prévisibles pour les clients et les partenaires, et de modifier quelques autres aspects.

0 0
0 58