发布新帖

Encontrar

InterSystems 官方
· 五月 2, 2024

Alerte : la requête SQL utilisant « NOT %INLIST » ne parvient pas à renvoyer les résultats

Alerte : la requête SQL utilisant « NOT %INLIST » ne parvient pas à renvoyer les résultats

InterSystems a corrigé un problème qui pouvait entraîner le renvoi de résultats incorrects par un petit nombre de requêtes SQL. Voir ci-dessous pour les détails des requêtes concernées.

Ce problème existe dans les versions répertoriées des produits suivants :

  • Plateforme de données InterSystems IRIS®
  • InterSystems IRIS for Health™
  • HealthShare® Health Connect

Ainsi que:

  • Autres produits InterSystems basés sur les produits ci-dessus.

Versions concernées :

  • 2021.1.3, 2021.1.4
  • 2022.1.3, 2022.1.4
  • 2023.1.0, 2023.1.1, 2023.1.2, 2023.1.3
  • 2024.1.0

Seules les requêtes avec les conditions suivantes peuvent renvoyer des résultats erronés :

  • La clause WHERE contient un NOT %INLIST
  • Il y a une valeur NULL dans la liste

La correction de ce défaut est identifiée comme DP-430793 et sera incluse dans toutes les futures versions du produit à partir des versions 2022.1.5, 2023.1.4 et 2024.1.1. Il est également disponible via une distribution ad hoc.

Si vous avez des questions concernant cette alerte, veuillez contacter le Worldwide Response Center.

讨论 (0)1
登录或注册以继续
问题
· 五月 1, 2024

Parsing a JSON message with

I have the JSON message below. I am struggling with parsing the data in the OtherProcedures section. That section can be null, or have from one to many other procedures. Any help is greatly appreciated. I have tried using/setting an iterator to go thru the data but not having any success with that. 

{
    "Action": "1",
    "CaseNumber": "",
    "MessageId": "",
    "ControlId": "",
    "Patient": "idz",
    "DateOfOperation": "20240401",
    "PrimarySurgeon": "you",
    "AttendingSurgeon": "me",
    "SurgicalSpecialty": "12",
    "PrincipalOperativeProcedure": "Ingenuial Hernia Repair",
    "PrincipalPreOperativeDiagnosis": "Hernia Surgery",
    "LateralityOfProcedure": "2",
    "PlannedAdmissionStatus": "I",
    "PlannedPrincipalProcedureCode": "29848",
    "ICD10Code": "K40.00",
    "HospitalAdmissionStatus": "I",
    "MajorOrMinor": "J",
    "CaseScheduleType": "EL",
    "Palliation": "Y",
    "PlannedPostOpCare": "PACU for 4 hrs",
    "RequestAnesthesiaTechnique": "S",
    "intraoperativeXRays": "Y",
    "ReferringPhysician": "mine",
    "ConsultId": "692",
    "Scheduler": "scheduler",
    "OtherProcedures": [
        {
            "otherProcedure": "Liposuction",
            "plannedOtherProcCPTCode": "15772",
            "otherProcedureCodeComments": "Adding a second procedure."
        },
        {
            "otherProcedure": "colonoscopy",
            "plannedOtherProcCPTCode": "44389",
            "otherProcedureCodeComments": "Adding a third procedure."
        }
    ]
}

5 Comments
讨论 (5)2
登录或注册以继续
InterSystems 官方
· 四月 30, 2024

Alert: SQL Query using “NOT %INLIST” fails to return results

Alert: SQL Query using “NOT %INLIST” fails to return results

InterSystems has corrected an issue that can cause a small number of SQL queries to return incorrect results.  See below for the specifics on impacted queries.

This issue exists in the listed versions of the following products:

  • InterSystems IRIS® data platform
  • InterSystems IRIS for Health
  • HealthShare® Health Connect

As well as:

  • Other InterSystems products based on the above products.

Impacted versions:

  • 2021.1.3, 2021.1.4
  • 2022.1.3, 2022.1.4
  • 2023.1.0, 2023.1.1, 2023.1.2, 2023.1.3
  • 2024.1.0

 

Only queries with the following conditions could return wrong results:

  • The WHERE clause contains a NOT %INLIST
  • There is a NULL value in the list

 

The correction for this defect is identified as DP-430793 and will be included in all future product releases beginning with:  2022.1.5, 2023.1.4, 2024.1.0.267.2, and 2024.1.1.  It is also available via Ad hoc distribution. 

If you have any questions regarding this alert, please contact the Worldwide Response Center.

NOTE:  Edited 5/16 to reflect that this defect has been corrected in the newly released 2024.1.0.267.2 patch.

讨论 (0)2
登录或注册以继续
公告
· 四月 30, 2024

Take advantage of personal training at Global Summit!

Meet one-on-one with a personal trainer at Global Summit. Discuss interop, integrations, UCR with Sue O'Leary.   


Attending Global Summit 2024? Sign up for a personal training session with one of our technical trainers.

🌟 This week the spotlight is on @Sue O'Leary, Learning Services Training Manager!

Sign up for a 45-minute session to talk to Sue about interoperability/integrations or Unified Care Record. Refresh your memory on previous classroom training, discuss a technical concept, or start learning about InterSystems technologies.

📧 Email GSTechExchange@intersystems.com or visit the Tech Exchange concierge desk at the Summit.

Find more details about technical trainers and their specialties.

讨论 (0)1
登录或注册以继续
文章
· 四月 30, 2024 阅读大约需 3 分钟

Simple démo Low Code transformant les messages HL7 SIU en Kafka, puis consommant les messages Kafka pour les stocker dans IRIS via SQL

Gitter

Configuration de Production

Cette démo comporte une production d'interopérabilité contenant 16 composants. 

Configuration de Production HL7 + Kafka Producer

La première partie de cette démonstration consiste à envoyer un fichier HL7 SIU qui sera transmis aux 2 autres flux HL7 (HTTP et TCP), et transformé et transmis au serveur Kafka. Les flux HTTP et TCP transformeront les messages HL7 de la même manière avant de les envoyer également à Kafka.

  • 3 Services Métier HL7
  • 1 routeur HL7
  • 2 Opérations Métier HL7 
  • 1 Opération Métier envoyant les messages transformés à Kafka

Règle Métier 

La production a un processus métier avec un routeur HL7, qui transforme et envoie le message HL7 à Kafka.

Tranformation de Données

Le Data Transformation Builder permet l'édition de la définition d'une transformation entre sources HL7v2 SIU en Messages Kafka. Data Transformation 

Visual Trace

Après le traitement d'un message HL7, c'est à dire : en copiant certains messages de /data/HL7/test vers le répertoire /data/HL7/in), vous pouvez voir son traitement via Visual Trace   

Vous pouvez voir ici le message avec les E/S et le message HL7 d'acquittement  

Gestionnaire Kafka

Ensuite, vous pouvez vérifier les messages dans Kafka, en utilisant l'interface KafkaManager et en récupérant les données des différents sujets. 

Et le contenu d'un sujet en particulier :

Configuration de Production Kafka Consumer + SQL IRIS

La deuxième partie de cette démonstration consiste à consommer des messages Kafka et à les acheminer vers des tables IRIS via des composants SQL.

  • 3 Service Métier Kafka consommant les 3 Topics de Kafka
  • 1 routeur générique
  • 3 Opérations Métier SQL insérant les données dans la base de données IRIS 

Règle Métier

La production utilise un processus métier avec un routeur Kafka, qui envoie des messages Kafka aux composants IRIS SQL.

Visual Trace

Chaque fois qu'un sujet Kafka est consommé, il est envoyé au processus du routeur Kafka qui effectue le routage basé sur le contenu des messages Kafka vers les tables SQL appropriées dans IRIS. Si vous regardez attentivement les messages, vous remarquerez que le message est envoyé directement à IRIS sans être transformé (même ID de message).

   

Vous pouvez voir ici le message avec les E/S et le résultat de l'insertion SQL :

SQL

Vous pouvez ensuite voir les résultats dans la base de données IRIS via des requêtes SQL.

  • table TrakCare

* table Surg

* Et grâce à l'héritage, vous pouvez également interroger toutes les données en interrogeant simplement la table racine, ici data.kafka

ClassExplorer

L'application Class Explorer vous permet de voir le modèle de données des classes IRIS.

Paramètres Système par Défaut

Afin de simplifier le processus de copie d'une définition de production d'un environnement à un autre, et d'assurer une séparation étanche entre les paramètres des différents environnements, il est recommandé de définir des paramètres en dehors de la classe de production, dans les paramètres par défaut du système.

 

Vous verrez dès lors les paramètres en bleu dans la configuration de production :  

Prérequis

Assurez-vous que vous avez git et Docker desktop installé.

Installation: ZPM

Ouvrez l'espace de noms IRIS avec l'interopérabilité activée. Ouvrez le Terminal et appelez :

USER>zpm "install hl7v2-to-kafka"

Installation: Docker

1. Clone/git l'extrait de dépôt dans n'importe quel répertoire local

$ git clone https://github.com/SylvainGuilbaud/hl7v2-to-kafka.git

2. Ouvrez le terminal dans ce répertoire et exécutez :

$ docker-compose build

3. Exécutez le conteneur IRIS avec votre projet :

$ docker-compose up -d

Comment exécuter l'exemple

  1. copier des messages HL7 de /data/HL7/test vers /data/HL7/in
  2. regarder le résultat dans Visual Trace
  3. regarder une trace complète 
  4. aller dans Kafka Manager et récupérer des données sur les différents sujets
讨论 (0)1
登录或注册以继续