Actuellement, les privilèges SQL (SELECT, INSERT, UPDATE, DELETE) sont gérés au niveau des tables, ce qui peut s'avérer très fastidieux lorsque vous devez administrer de nombreux rôles dans une organisation et les synchroniser avec des modèles de données en constante évolution.
En gérant les privilèges au niveau des schémas, cela permettra d'accorder des privilèges SELECT et d'autres privilèges DML à *tous* ou *plusieurs schémas* à un rôle|utilisateur, corrigeant ainsi le besoin de synchroniser manuellement les nouvelles tables|vues avec les rôles.
Je reçois généralement des plaintes de nos clients concernant l'actualisation automatique des pages Web BPL et DTL. C'est un problème courant parmi les utilisateurs débutants, mais pour les développeurs expérimentés aussi, ils oublient d'enregistrer les modifications régulièrement et automatiquement la page Web est rechargée, perdant tout le travail effectué.
Peut-être qu'une sauvegarde automatique résoudrait ce problème qui produit un profond sentiment de haine et de ressentiment envers la technologie InterSystems parmi nos clients.
Bonjour La Communauté,
toute personne ayant (de près ou de loin, avec une préférence pour la 1ère option), une connaissance de l'utilisation d'Amazon QuickSight avec IRIS, est invitée à faire part de son expérience dans cette discussion.
En vous remerciant par avance.

Il s'agit d'un exemple d'application qui démontre comment utiliser le référentiel FHIR InterSystems IRIS for Health pour construire un référentiel FHIR avec l'autorisation OAuth2, le point de terminaison FHIR sera le serveur de ressources tandis que Google OpenId sera le serveur d'autorisation.
Bonjour,
J'ai une globale dont la structure est à plusieurs niveaux et j'essaie à travers une class et une requête SQL d'afficher un tableau qui comprend toutes les valeurs et les niveaux.
Bonjour,
quelle est notre expérience de l'intégration de Microsoft Dynamics avec IRIS/Ensemble ?
Si vous avez une expérience avec IRIS/Ensemble utilisant des flux d'interopérabilité avec Microsoft Dynamics, veuillez la partager dans cette discussion.
Cordialement,
Sylvain
iris-docker-multi-stage-script
Un script python pour garder vos images docker iris en forme ;)

Sans changer votre dockerfile ou votre code vous pouvez réduire la taille de votre image de 50% ou plus !
TL;DR
Nommez l'image de constructeur builder et l'image finale final et ajoutez ceci à la fin de votre fichier Dockerfile :
Modifiez votre fichier Dockerfile pour utiliser une construction multi-étapes :
ARG IMAGE=intersystemsdc/irishealth-community:latest
FROM $IMAGE as builder
Ajoutez ceci à la fin de votre fichier Dockerfile:
FROM $IMAGE as final
ADD --chown=${ISC_PACKAGE_MGRUSER}:${ISC_PACKAGE_IRISGROUP} https://github.com/grongierisc/iris-docker-multi-stage-script/releases/latest/download/copy-data.py /irisdev/app/copy-data.py
RUN --mount=type=bind,source=/,target=/builder/root,from=builder \
cp -f /builder/root/usr/irissys/iris.cpf /usr/irissys/iris.cpf && \
python3 /irisdev/app/copy-data.py -c /usr/irissys/iris.cpf -d /builder/root/
Boum ! Vous avez terminé !
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)
%SYS>set db="/opt/irisapp/data" %SYS>w ##class(SYS.Database).%OpenId(db).Mounted 1 %SYS>w ##class(SYS.Database).
Salut la communauté
Dans cet article, nous allons apprendre les sujets ci-dessous répertoriés ci-dessous :
-
Qu'est-ce que Docker ? -
Certains des avantages de Docker -
Comment fonctionne Docker ? -
Image Docker -
Conteneur Docker -
Dépôt d'images Docker -
Dépôt d'images Docker d'InterSystems -
Installation de Docker -
Commandes de base de Docker -
Exécution de l'édition communautaire IRIS à l'aide de Docker -
Interface graphique du bureau Docker
Alors commençons.
1. Qu’est-ce que Docker ?

Salut la communauté,
Dans mon article précédent, nous avons appris les sujets répertoriés ci-dessous :
-
Qu’est-ce que Docker ?
-
Certains des avantages de Docker
-
Comment fonctionne Docker ?
-
Image Docker
-
Conteneur Docker
-
Dépôt d'images Docker
-
Dépôt d'images Docker d'InterSystems
-
Installation de Docker
-
Commandes de base de Docker
-
Exécution de l'édition communautaire IRIS à l'aide de Docker
-
Interface graphique du bureau Docker
Dans cet article, nous aborderons les sujets suivants
-
Utilisation du fichier Docker Compose (un fichier YAML)
-
Utilisation du fichier Docker (utilisé pour créer une image Docker)
-
Utilisation du volume Docker
Alors commençons.
Salut les développeurs !
Hibernate est le framework le plus populaire pour réaliser des projets ORM (Mapping Objet-Relationnel). Avec Hibernate, un logiciel peut utiliser les principaux SGBD du marché, et même changer de fournisseur de base de données à tout moment, sans impact sur le code source. Cela est possible car Hibernate prend en charge les dialectes. Chaque produit de base de données a un dialecte différent qui peut être assigné dans un fichier de configuration.
Je travaille avec des clients qui envisagent de migrer de Caché vers IRIS et je souhaite résumer les avantages d'aller vers IRIS. Je pense à ceux-ci:
- IntegratedML - AutoML - Agile machine learning
- IAM - InterSystems API Manager
- Interopérabilité
- Advanced Reports (JReport)
- Cloud Manager/Docker et support DevOps
- ZPM - Package manager
- Native API - Node.js, Python, Java and .
Lorsque nous démarrons le développement avec IRIS, nous disposons d'un kit de distribution ou, dans le cas de Docker, nous extrayons l'image Docker, puis nous devons souvent l'initialiser et configurer l'environnement de développement. Nous devrons peut-être créer des bases de données, des espaces de noms, activer/désactiver certains services, créer des ressources. Nous devons souvent importer du code et des données dans l'instance IRIS et exécuter du code personnalisé pour lancer la solution.
Il existe de nombreux modèles sur Open Exchange dans lesquels nous suggérons comment initialiser REST, l'interopérabilité, l'analytics, le développement Fullstack et bien d'autres modèles utilisant ObjectScript. Mais qu'en est-il si nous souhaitons utiliser uniquement Python pour configurer l'environnement de développement d'un projet Embedded Python avec IRIS ?
De fait, la récente sortie de Embedded Python template est devenu le passe-partout du pur Python qui pourrait être un point de départ pour les développeurs qui créent des projets Python sans avoir besoin d'utiliser et d'apprendre ObjectScript. Cet article explique comment ce modèle pourrait être utilisé pour initialiser IRIS. C'est parti!
Bonjour la communauté,
je vous invite à regarder la nouvelle vidéo sur InterSystems Developers YouTube:
Salut les développeurs,
Nous sommes heureux de vous inviter tous au nouveau concours de programmation en ligne InterSystems axé sur Python !
🏆 Concours de programmation d'InterSystems sur Python 🏆
La durée: 4 - 24 septembre 2023
Le prix: $14,000

Voici le résumé des publications de la communauté des développeurs d'août 2023.
– 6 nouvelles annonces
– 8 nouvelles questions
✓ Nouveaux membres 5 ayant rejoint le Août
✓ Publications 538 publiées depuis le début
✓ Membres 80 ayant rejoint depuis le début
Bonjour la Communauté,
J'essaie de charger des données d'un fichier CSV dans IRIS. J'utilise un RecordMap. Le CSV comporte 3 colonnes qui sont des dates et j'utilise $ZDATEH() pour convertir les colonnes de date au format interne IRIS. Mais l’année qui est chargée dans IRIS est fausse. Exemple : si dans mon csv la date est "26/05/23", après transformation des données et chargement des données, la date stockée dans l'IRIS est "26/05/1923". L'année de stockage est erronée, au lieu de 2023, l'année de stockage est 1923 Pouvez-vous s'il vous plaît me dire comment résoudre ce problème ?
Description du cas
Imaginons que vous soyez un développeur Python ou que vous disposiez d'une équipe bien formée et spécialisée en Python, mais que le délai dont vous disposez pour analyser certaines données dans IRIS est serré. Bien entendu, InterSystems propose de nombreux outils pour toutes sortes d’analyses et de traitements. Cependant, dans le scénario donné, il est préférable de faire le travail en utilisant les bons vieux Pandas et de laisser l'IRIS pour une autre fois.
À l'installation d'IRIS, tous les événements d'AUDIT système ne sont pas activés.
Quel est le moyen le plus rapide pour activer tous les événements ?
Système > Gestion de la sécurité > Événements d'audit système
.png)
Pour parler des différentes bases de données et des différents modèles de données qui existent, on doit premièrement comprendre ce qui est une base de données et comment les utiliser.
Une base de données est une collection organisée de données stockées et accessibles par voie électronique. Elle permet de stocker et de retrouver des données structurées, semi-structurées ou des données brutes souvent en rapport avec un thème ou une activité.
Au cœur de chaque base de données se trouve au moins un modèle utilisé pour décrire ses données. Et selon le modèle sur lequel elle est basée, elle peut avoir des caractéristiques un peu différentes et stocker différents types de données.
Pour inscrire, retrouver, modifier, trier, transformer ou imprimer les informations de la base de données on utilise un logiciel qui s’appelle système de gestion de base de données (SGBD, en anglais DBMS pour Database management system).
La taille, les capacités et les performances des bases de données et de leurs SGBD respectifs ont augmenté de plusieurs ordres de grandeur. Ces augmentations de performances ont été rendues possibles par les progrès technologiques dans différents domaines, tels que les domaines des processeurs, de la mémoire informatique, du stockage informatique et des réseaux informatiques. Le développement ultérieur de la technologie des bases de données peut être divisé en quatre générations basées sur le modèle ou la structure des données : navigation, relationnel, objet et post-relationnel.


Salut Developer Community,
Je télécharge un fichier Excel xlsx à partir du Web à l'aide de la méthode ci-dessous et je l'enregistre au format xlsx. Comment puis-je convertir et enregistrer un format xlsx au format csv ?
ClassMethod DownloadFileUrl()
{
Set httprequest = ##class(%Net.HttpRequest).%New()
Set httprequest.Server = "www.health.gov.za"
Set httprequest.SSLConfiguration = "SSL_OAUTH_Client"
Do httprequest.Get("/wp-content/uploads/2021/04/ICD-10_MIT_2021_Excel_16-March_2021.xlsx")
write httprequest.HttpResponse.Je recherche dans DBeaver un moyen efficace permettant de filtrer les tables systèmes (ex: appartenant à un schéma commençant par "%").
En utilisant un utilisateur possédant le rôle %All, DBeaver nous affiche une longue liste de schémas systèmes, qui nous oblige à descendre la liste avant d'accéder aux tables utilisateurs.
.png)
En créant un utilisateur dans IRIS avec des droits restreints permet de réduire cette liste, mais on perd l'intérêt du rôle %All.
Nous sommes heureux d'annoncer que DBeaver prend en charge InterSystems IRIS dès la version 7.2.4. Vous n'avez plus besoin de le configurer manuellement, recherchez simplement l'icône IRIS dans la liste des connexions.
.png)
Bonjour les développeurs, Je suis actuellement en train de faire une démo sur la construction d'une interface utilisateur en front-end faisant de l'analyse de données et de mettre en place un test de performance avec de gros objets de données, donc l'utilisation de "Populate Utility" pourrait m'aider à générer automatiquement des échantillons de données avec lesquels je pourrais jouer.
Dans ce post, j'aimerais partager mon expérience de l'utilisation de Populate Utility, y compris l'utilisation du paramètre POPSPEC.
InterSystems Kubernetes Operator (IKO) 3.6 est désormais généralement disponible. IKO 3.6 ajoute de nouvelles fonctionnalités importantes ainsi que de nombreuses corrections de bugs.
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.
.png)
Salut,
Dans une application CSP de Caché, j'ai activé les jours d'expiration du mot de passe à certains jours dans Système > Gestion de la sécurité > Paramètres de sécurité de niveau système. Lorsque le mot de passe expire pour les utilisateurs et qu'ils tentent de se connecter, la page de connexion passe à la page de modification du mot de passe du cache standard.
Puis-je afficher ma page personnalisée au lieu de la page de modification du mot de passe standard de Caché ?
Il arrive parfois que suite à un événement indésirable la base d'AUDIT (IRISAUDIT) ait pris des proportions telles que le disque sur lequel elle réside soit plein et qu'on ne peut attendre la purge quotidienne pour récupérer l'espace disque.
Comme IRISAUDIT est une base système requise au démarrage, il n'est pas question de tenter un redémarrage d'IRIS après une simple suppression de IRIS.
.png)

