0 Abonnés · 34 Publications

JSON (JavaScript Object Notation) est un format d'échange de données léger. Il est facile à lire et à écrire pour les humains.

Nouveau
Article Iryna Mykhailova · Mars 4 2m read

Inspiré par la publication de @Ashok Kumar T sur le Portail d'idées et par mon propre besoin de résoudre ce problème, j'ai imaginé une méthode simple pour effectuer des requêtes JSON plus complètes et cohérentes sans avoir à spécifier chaque champ souhaité. J'ai créé une classe qui étend la classe intégrée %JSON.Adaptor et rend ses méthodes %JSONExportToString et %JSONExportToStream accessibles via SQL grâce à quelques procédures SQLProc simples.

Class DH.JSONAdaptor Extends %JSON.Adaptor [ Abstract ]
{
ClassMethod jsonstring(id, map = "") [ SqlProc ]
{
	try{
		set myobj = .
0
0 6
Article Sylvain Guilbaud · Jan 15 10m read

Quand j'étais plus jeune (le détail de mon âge exact ne relève pas du sujet de cet article), le mot "jeton" était synonyme de plaisir. En effet, plusieurs fois par an, j'avais la chance d'aller dans une salle d'arcade pour jouer à des jeux vidéo amusants avec mes amis.

De nos jours, les jetons sont synonymes de sécurité. L'authentification JSON Web Token (JWT) est devenue l'une des normes les plus populaires pour sécuriser les API REST. Heureusement pour les utilisateurs d'IRIS, nous disposons d'un moyen simple de configurer les applications afin qu'elles soient protégées de cette manière.

0
0 34
Article Lorenzo Scalese · Déc 9, 2025 9m read

Les entités dynamiques (objets et tableaux) dans IRIS sont extrêmement utiles lorsque vous devez transformer des données JSON en un modèle d'objet pour les stocker dans la base de données, comme dans les points de terminaison API REST hébergés dans IRIS. En effet, ces objets et tableaux dynamiques peuvent facilement servir de point de conversion d'une structure de données à une autre.

0
0 45
Article Guillaume Rongier · Nov 21, 2025 23m read

Serveur FHIR

Le Serveur FHIR est une application logicielle qui met en œuvre la norme FHIR (Fast Healthcare Interoperability Resources), ce qui permet aux systèmes de soins de santé de Stocker, accéder, échanger, et gérer les données de soins de santé de manière standardisée.

InterSystems IRIS permet de stocker et de récupérer les ressources FHIR suivantes:

  • Référentiel de ressources – Le serveur natif IRIS FHIR permet de stocker facilement les paquets/ressources FHIR directement dans le référentiel FHIR.
  • Façade FHIR – La couche de façade FHIR est un modèle d'architecture logicielle à l'aide duquel une API compatible FHIR peut être exposée au-dessus d'une API existante (souvent non-FHIR). Cette couche permet également de rationaliser le système de données de soins de santé, y compris les dossiers médicaux électroniques (DME), les bases de données existantes ou le stockage de messages HL7 v2, sans nécessiter la migration de toutes les données vers un système natif FHIR.

Qu'est-ce que FHIR?

FHIR (Fast Healthcare Interoperability Resources) est un framework standard créé par HL7 International afin de faciliter l'échange de données de soins de santé de manière flexible, conviviale pour les développeurs et moderne. Il exploite les technologies web contemporaines pour assurer une intégration et une communication transparentes entre plusieurs systèmes de soins de santé.

0
0 34
Article Lorenzo Scalese · Nov 13, 2025 5m read

Importance

La gestion de l'IAM peut s'avérer fastidieuse lorsqu'elle est effectuée manuellement, en particulier lorsque vos API sont déjà bien documentées à l'aide des spécifications OpenAPI (Swagger). Ne serait-il pas formidable de pouvoir générer automatiquement des services et des itinéraires Kong directement à partir de vos spécifications OpenAPI?

C'est exactement ce que fait cette méthode ObjectScript : elle lit une spécification OpenAPI 2.

0
0 35
Article Iryna Mykhailova · Nov 5, 2025 6m read

Salut!

C'est encore moi 😁. Dans l'article précédent Comment écrire un service API REST pour exporter le paquet FHIR généré au format JSON, nous avons généré une ressource DocumentReference, dont le contenu était encodé en Base64

 

Question!! Est-il possible d'écrire un service REST pour le décoder? Je voudrais vraiment savoir ce que contiennent les données du message🤔🤔🤔

Bien, allons-y!

1. Créez une nouvelle classe utilitaire datagen.utli.decodefhirjson.cls pour décoder les données contenues dans DocumentReference
 

Class datagen.utli.decodefhirjson Extends %RegisteredObject
{
}

2

0
0 41
Article Iryna Mykhailova · Nov 3, 2025 13m read

Bonjour à tous,

Continuons à travailler sur la génération de données de test et l'exportation des résultats via une API REST. 😁

Ici, je souhaite réutiliser la classe `datagen.restservice` créée dans l'article précédent : « Écriture d'un service API REST pour exporter les données patient générées au format .csv ».

Cette fois-ci, nous prévoyons de générer un bundle FHIR incluant plusieurs ressources pour tester le référentiel FHIR.

Voici une référence si vous souhaitez en savoir plus sur FHIR : « The Concept of FHIR: A Healthcare Data Standard Designed for the Future ».

C'est parti ! 😆

1.

0
0 49
Article Eugene.Forde · Sept 4, 2025 4m read

Salut tout le monde !

Parfois, lorsqu’on conçoit une méthode de classe et qu’on y ajoute de plus en plus de fonctionnalités utiles, le nombre de paramètres peut rapidement atteindre 10, voire plus.

Cela devient alors assez difficile pour les utilisateurs de ces méthodes utiles de se rappeler de la position des paramètres importants, et il devient très facile de se tromper en inversant des valeurs entre paramètres.

Voici un exemple d’une telle méthode (j’ai demandé à GPT de me créer une méthode avec 20 paramètres) :

ClassMethod GenerateReportWith20Params(
    pTitle As %String = "",
    pAuthor As %String = "",
    pDate As %String = "",            // ex. 2025-09-03
    pCompany As %String = "",
    pDepartment As %String = "",
    pVersion As %String = "1.0",
    pFormat As %String = "pdf",      // pdf|html|docx
    pIncludeCharts As %Boolean = 1,
    pIncludeSummary As %Boolean = 1,
    pIncludeAppendix As %Boolean = 0,
    pConfidentiality As %String = "Public",
    pLanguage As %String = "en",
    pReviewers As %String = "",      // CSV, ex. "Alice,Bob"
    pApprover As %String = "",
    pLogoPath As %String = "",
    pWatermarkText As %String = "",
    pColorScheme As %String = "default",
    pPageSize As %String = "A4",
    pOrientation As %String = "Portrait",
    pOutputPath As %String = "report.pdf"
) As %Status
{
    // implémentation
}
0
0 48
Article Lorenzo Scalese · Juin 18, 2025 5m read

Le bon vieux temps

La classe %Library.DynamicObject existe dans IRIS depuis bien avant que IRIS ne devienne IRIS. Si vous l'utilisez depuis l'époque de Cache, vous souhaiterez peut-être vous familiariser avec certaines de ses modifications.

Dans Cache 2018, la méthode %Get n'avait qu'un seul argument. Il s'agissait de la clé permettant de récupérer les données dans le JSON. Ainsi, si votre objet JSON s'appelait myObj, cela ressemblerait à ceci:

0
0 59
Article Iryna Mykhailova · Avr 18, 2025 9m read

IRIS propose une fonctionnalité dédiée à la gestion des documents JSON, appelée DocDB.

Plateforme de données DocDB d'InterSystems IRIS® est une fonctionnalité permettant de stocker et de récupérer des données de base de données. Elle est compatible avec le stockage et la récupération de données de tables et de champs SQL traditionnels (classe et propriété), mais en est distincte. Elle est basée sur JSON (JavaScript Object Notation) qui prend en charge l'échange de données sur le Web. InterSystems IRIS prend en charge le développement de bases de données et d'applications DocDB en REST et en ObjectScript, ainsi que le support SQL pour la création ou l'interrogation de données DocDB.

De par sa nature, la base de données documentaire InterSystems IRIS est une structure de données sans schéma. Cela signifie que chaque document a sa propre structure, qui peut différer de celle des autres documents de la même base de données. Cela présente plusieurs avantages par rapport au SQL, qui nécessite une structure de données prédéfinie.

Le mot « document » est utilisé ici comme un terme technique spécifique à l'industrie, en tant que structure de stockage de données dynamique. Le « document », tel qu'utilisé dans DocDB, ne doit pas être confondu avec un document textuel ou avec la documentation.

Voyons comment DocDB peut permettre de stocker JSON dans la base de données et de l'intégrer dans des projets qui reposent uniquement sur des protocoles xDBC.

0
0 72
Article Lorenzo Scalese · Avr 16, 2025 7m read

Qu'est-ce que JWT ??

JWT (JSON Web Token) est un standard ouvert (RFC 7519) qui offre une méthode légère, compacte et autonome pour transmettre en toute sécurité des renseignements entre deux parties. Il est couramment utilisé dans les applications web pour l'authentification, l'autorisation et l'échange d'informations.

Un JWT est généralement composé de trois parties:

1. En-tête JOSE (JSON Object Signing and Encryption)
2. Payload
3. Signature

Ces parties sont encodées au format Base64Url et concaténées avec des points (.

0
1 74
InterSystems officiel Adeline Icard · Avr 8, 2025

Résumé des alertes

Alert ID Produit et versions concernés Exigences explicites
DP-439207 Plateforme de données InterSystems IRIS® 2024.3 (AIX) Installations AIX utilisant le traitement JSON et les caractères Unicode non-Latin-1
DP-439280 InterSystems IRIS 2024.3 (conteneurs avec IntegratedML) Conteneurs IntegratedML utilisant TensorFlow

 

Détail des alertes

DP-439207 - Problème d'analyse JSON Unicode AIX

Un bug a été identifié dans InterSystems IRIS 2024.3.0 sur les instances AIX. Il affecte l'analyse des chaînes JSON Unicode. Ce problème survient lorsque la méthode %FromJSON() ou %FromJSONFile() analyse des chaînes contenant des caractères dont la valeur est inférieure à $CHAR(256) suivis de caractères Unicode dont la valeur est supérieure à $CHAR(255). Le processus de conversion transforme incorrectement les premiers caractères en $CHAR(0), ce qui entraîne une corruption silencieuse des données. Ce problème concerne uniquement la version AIX 2024.3 des produits suivants :

  • InterSystems IRIS
  • InterSystems IRIS for Health
  • HealthShare® Health Connect
0
0 48
Article Guillaume Rongier · Avr 2, 2025 22m read

L'API REST avec Swagger dans InterSystems IRIS

Salut

Le protocole HTTP permet de récupérer des ressources, telles que des documents HTML. Il est à la base de tout échange de données sur le Web et constitue un protocole client-serveur, ce qui signifie que les requêtes sont initiées par le destinataire, généralement un navigateur Web.

Les API REST tirent parti de ce protocole pour échanger des messages entre le client et le serveur. Cela rend les API REST rapides, légères et flexibles. Les API REST utilisent les verbes HTTP GET, POST, PUT, DELETE et d'autres pour indiquer les actions qu'elles veulent effectuer.

0
1 70
Article Guillaume Rongier · Mars 26, 2025 7m read

Introduction

Une API REST (Representational State Transfer) est une interface qui permet de faire communiquer différentes applications entre elles via le protocole HTTP, en utilisant des opérations standard telles que GET, POST, PUT, et DELETE. Les API REST sont largement utilisées dans le développement de logiciels pour exposer des services accessibles par d'autres applications, permettant ainsi l'intégration entre différents systèmes.

Cependant, pour garantir que les APIs soient faciles à comprendre et à utiliser, une bonne documentation est essentielle. C'est là qu'OpenAPI entre en jeu.

2
1 131