Cette publication est le résultat direct d'une collaboration avec un client d'InterSystems qui est venu me consulter pour le problème suivant :

SELECT COUNT(*) FROM MyCustomTable

Cela prend 0,005 secondes, pour un total de 2300 lignes. Cependant :

4 0
1 65

Rubrique FAQ InterSystems

Vous pouvez définir des pages d'erreur individuelles en fonction des différents types de messages d'erreur ou de réponses système de la passerelle Web :

  • erreur de serveur
  • serveur occupé
  • serveur indisponible
  • délai d'attente du serveur
  • connexion fermée

Les paramètres sont définis sur l'écran Gestion de passerelle Web ([Portail d'Administration] > [Administration système] > [Configuration] > [Gestion de passerelle Web] > [Configuration] > [Default Parameters]).

Dans la section "Error Pages" du menu "Default Parameters", indiquez le nom de fichier de la page html à afficher ou l'URL vers laquelle rediriger la réponse lorsqu'une erreur se produit.

3 1
0 36
Article
· Nov 17, 2023 3m de lecture
Comment cacher le programme source

Rubrique Questions fréquentes (FAQ) d'InterSystems

Pour les routines (*.mac)

Vous pouvez masquer la source en exportant/important uniquement le fichier *.obj généré après la compilation du programme source.

L'exemple d'exécution de la commande spécifie EX1Sample.obj et EX2Sample.obj, qui sont générés par la compilation de EX1Sample.mac et EX2Sample.mac, comme cibles d'exportation et les exporte dans le deuxième fichier argument.

Après avoir changé d'espace de noms, j'utilise le fichier XML exporté pour effectuer l'importation.

3 0
0 36

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

InterSystems FAQ rubric

Record maps sont utilisés pour faire correspondre efficacement des fichiers contenant des enregistrements délimités ou des enregistrements de largeur fixe aux classes de messages utilisées par la fonction d'interopérabilité, et pour faire correspondre des fichiers de classes de messages de la fonction d'interopérabilité à des fichiers texte.

2 0
0 6

Rubrique FAQ InterSystems

Ici, nous présenterons un exemple de code pour l'enregistrement et le référencement des plannings de tâches.

①Exemple d'enregistrement du calendrier des tâches

*Créez une tâche à exécuter do ^TEST tous les jours à 1h00.

2 0
0 8

Rubrique FAQ InterSystems

La page de gestion de Web/CSP Gateway est généralement configurée de manière à ne pas être accessible à partir des machines clientes.

Pour y accéder depuis n'importe quel client, procédez comme suit :

2 0
0 7

Aperçu général

Des performances prévisibles en matière d'E/S de stockage avec une faible latence sont essentielles pour assurer l'évolutivité et la fiabilité de vos applications. Cette série de benchmarks a pour but d'informer les utilisateurs d'IRIS qui envisagent de déployer des applications dans AWS sur les performances des volumes EBS gp3.

Résumé

  • Une bande LVM peut augmenter le nombre d'IOPS et le débit au-delà des limites de performance d'un volume EBS unique.
  • Une bande LVM réduit la latence de lecture.
2 0
0 52

Introduction

Dans le premier article de cette série, nous examinerons le modèle entité-attribut-valeur (EAV) dans les bases de données relationnelles pour voir comment il est utilisé et à quoi il sert. Ensuite, nous comparerons les concepts du modèle EAV aux globales.

2 0
0 482

Un système de stockage global d'aspect plus industriel

Dans le premier article de cette série, nous avons étudié le modèle entité-attribut-valeur (EAV) dans les bases de données relationnelles, et nous avons examiné les avantages et les inconvénients du stockage de ces entités, attributs et valeurs dans des tables. Nous avons appris que, malgré les avantages de cette approche en termes de flexibilité, elle présente de réels inconvénients, notamment une inadéquation fondamentale entre la structure logique des données et leur stockage physique, qui entraîne diverses difficultés.

Pour résoudre ces problèmes, nous avons décidé de voir si l'utilisation de globales - qui sont optimisées pour le stockage d'informations hiérarchiques - serait efficace pour les tâches que l'approche EAV traite habituellement.

Dans la Partie 1, nous avons créé un catalogue pour une boutique en ligne, d'abord en utilisant des tables, puis en utilisant une seule globale. Maintenant, essayons d'implémenter la même structure pour quelques globales.

Dans la première globale, ^catalog, nous allons stocker la structure du répertoire. Dans la deuxième globale, ^good, nous allons stocker les marchandises. Et dans la globale ^index, nous allons stocker les index. Puisque nos propriétés sont liées à un catalogue hiérarchique, nous ne créerons pas de globale séparée pour elles.

Avec cette approche, pour chaque entité (à l'exception des propriétés), nous avons une globale séparée, ce qui est bon du point de vue de la logique. Voici la structure du catalogue global :

2 0
0 215

Rubrique FAQ InterSystems

Vous pouvez voir l'espace disponible libre pour la base de données à l'aide du bouton radio « Vue de l'espace libre » dans le portail de gestion : Exploitation du système > Bases de données.

Et il peut être obtenu par programmation par la requête FreeSpace de la classe système SYS.Database.

2 0
0 30

Introduction

Depuis qu'InterSystems a récemment annoncé l'arrêt du support d'InterSystems Studio à partir de la version 2023.2 au profit du développement exclusif d'extensions pour l'IDE Visual Studio Code (VSC), estimant que ce dernier offre une expérience supérieure par rapport à Studio, beaucoup d'entre nous, développeurs, avons changé ou commencé à utiliser VSC. Beaucoup se sont peut-être demandé comment ouvrir le Terminal pour effectuer des opérations, car VSC n'a pas de panneau de sortie comme Studio, ni de fonctionnalité intégrée pour ouvrir le terminal IRIS, sauf en téléchargeant les plugins développés par InterSystems.

2 0
0 35
Article
· Fév 25 3m de lecture
Le terminateur de ligne ensorcelé

Je souhaite aborder les problèmes désagréables liés à la lecture d'un texte plat en ASCII, UTF*
excluant explicitement HTML, EBCDIC, et autres encodages.
D'après Wikipediail existe au moins 8 variantes de caractères de contrôle.

  • CR+LF est typique de Windows
  • LF est typique du monde Linux/UNIX
  • CR est le préféré de Mac

Comme vous pouvez le déduire des noms, l'inspiration vient des machines à écrire mécaniques.

2 1
0 23

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 9

EnsLib.HL7.Message.cls fournit de nombreuses méthodes API pour manipuler un message HL7. RemoveSegmentAt(), par exemple, peut être utilisé pour supprimer un segment par chemin ou par index, mais pas plus d'un segment à la fois. Il peut arriver que vous ayez besoin de supprimer tous les segments d'un groupe ou même de nombreux groupes de segments du message HL7. Bien sûr, vous pouvez itérer à travers chaque segment dans chaque groupe et les supprimer un par un, mais il y a un moyen beaucoup plus facile.

1 0
0 52

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 11

Bonjour chers développeurs,

Dans cette publication, nous aimerions vous dire comment tirer le meilleur parti de la communauté des développeurs, pour apprendre le plus possible des experts d'InterSystems sur la technologie !

Prêtez attention à ces étapes pour devenir un utilisateur avancé de notre communauté !

1 0
0 61

Salut les Devs !

Pour moi, l'une des choses les plus pénibles à propos d'ObjectScript est de taper ##class(Class).Method() pour appeler une méthode de classe dans le code ou dans un terminal. J'ai même soumis une idée pour le simplifier en ObjectScript.

Mais! Il y a une nouvelle fonctionnalité dans VSCode ObjectScript qui vient d'être introduite dans le plugin - Copy Invocation !

1 0
0 28

Vous ne le réalisez peut-être pas, mais votre compte de connexion InterSystems peut être utilisé pour accéder à un très large éventail de services InterSystems pour vous aider à apprendre et à utiliser InterSystems IRIS et d'autres technologies InterSystems plus efficacement. Continuez à lire pour en savoir plus sur la façon de débloquer de nouvelles connaissances et outils techniques à l’aide de votre compte de connexion InterSystems. Aussi - après avoir lu, veuillez participer au sondage en bas, afin que nous puissions voir en quoi cet article vous a été utile !

1 0
0 12

[Introduction]

La famille InterSystems IRIS a un utilitaire intéressant : ^SystemPerformance (aussi connu comme ^pButtons pour Caché et Ensemble) qui génère les informations sur les performances de la base de données dans un fichier HTML lisible. Lorsque vous exécutez ^SystemPerformance sur IRIS pour Windows, un fichier HTML est créé dans lequel notre propre journal de performances mgstat et notre journal de performances Windows sont inclus.

1 1
0 37

InterSystems FAQ rubric

Lorsque vous exécutez une routine dans le terminal et qu'une erreur se produit dans le programme, si vous n'avez pas défini correctement le piège à erreurs, le programme entrera en mode de débogage comme indiqué ci-dessous.

1 0
0 3

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 72

InterSystems FAQ rubric

Les définitions de classe créées par les utilisateurs sont stockées dans des classes de définition de classe. Ils peuvent être utilisés pour obtenir une liste de définitions de classe à partir d'un programme.

Remarque : Les classes de définition de classe font référence à toutes les classes contenues dans le package %Dictionary.

1 0
0 18