Dans mon article précédent, « Utilisation de LIKE avec des variables et des modèles dans SQL », nous avons exploré le comportement du prédicat LIKE dans différents scénarios, de l'Embedded SQL au Dynamic SQL, et l'impact sur les performances lorsque des caractères génériques et des variables entrent en jeu. Cet article visait à se familiariser avec l'écriture d'une requête LIKE fonctionnelle. Mais écrire du SQL efficace n'est que le point de départ. Pour créer des applications fiables, évolutives et sécurisées, vous devez comprendre les bonnes pratiques qui sous-tendent tout SQL, y compris les requêtes utilisant LIKE.

Cet article franchit une nouvelle étape. Nous aborderons quelques points clés pour renforcer votre code SQL, éviter les pièges courants et garantir l'exécution correcte, efficace et sécurisée de vos instructions SELECT. J'utiliserai les instructions SELECT avec le prédicat LIKE comme exemple, montrant comment ces principes généraux affectent directement vos requêtes et leurs résultats.

3 0
0 17
La communauté des développeurs d'InterSystems compte 24,971 développeurs incroyables
Ici, les programmeurs d'InterSystems IRIS apprennent et partagent, se tiennent informés, évoluent ensemble et s'amusent !

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
}

2 0
0 17

Salut la Communauté!

Profitez de regarder la nouvelle vidéo sur la chaîne Youtube d'InterSystems France :

📺 HL7 FHIR et l’Espace Européen des Données de Santé, accélérateurs d’innovation au CHU de Toulouse

https://www.youtube.com/embed/IvyxeVT-ZuQ
[Ceci est un lien intégré, mais vous ne pouvez pas consulter le contenu intégré directement sur le site car vous avez refusé les cookies nécessaires pour y accéder. Pour afficher le contenu intégré, vous devez accepter tous les cookies dans vos Paramètres des cookies]

1 0
0 17
Bonjour et bienvenue à la récapitulation de la communauté des développeurs Juillet 2025.
Statistiques générales
✓ Nouvelles publications 23 publiées le Juillet :
12 nouveaux articles
10 nouvelles annonces
1 nouvelle question
✓ Nouveaux membres 3 ayant rejoint le Juillet
✓ Publications 1,222 publiées depuis le début
✓ Membres 181 ayant rejoint depuis le début
0 0
0 17

InterSystems a le plaisir d'annoncer que les produits suivants sont désormais disponibles pour Red Hat Enterprise Linux 10 :

  • InterSystems IRIS Data Platform 2025.1.0.230.2
  • InterSystems IRIS for Health 2025.1.0.230.2
  • HealthShare Health Connect 2025.1.0.230.2

Cette version prend désormais en charge le système d'exploitation Red Hat Enterprise Linux 10. RHEL 10 inclut le noyau Linux 6.12.0, des améliorations de sécurité, des optimisations de performances et des outils de développement améliorés.

1 0
0 17

Bonjour à tous,

Nous sommes ravis d'annoncer une mise à jour importante du Chat IA de la Communauté des développeurs : il est désormais doté d'une toute nouvelle interface !

Grâce à cette mise à jour, votre expérience devient plus fluide et plus intuitive :

  • Navigation simplifiée dans vos chats
  • Historique et réponses plus clairs en un coup d'œil
  • Mémorisation transparente du contexte pour des conversations naturelles

1 0
0 16

La plateforme de données InterSystems IRIS est une solution complète, multi-modèle et multi-charge de travail, idéale pour répondre aux exigences complexes des applications de l’Internet des Objets (IoT). Il s’agit d’une plateforme unifiée, cohérente et complète pour le développement, l’exécution et la maintenance des applications IoT.

Elle repose sur une architecture distribuée, capable de gérer des volumes massifs de données et des taux d’ingestion très élevés, tout en offrant la flexibilité et la robustesse d’une base de données transactionnelle multi-modèle de niveau entreprise. Cela permet d’ingérer, de traiter et de stocker des données provenant d’une grande variété de dispositifs et de formats.

La plateforme propose un ensemble complet de fonctionnalités d’intégration, de traitement d’événements et d’analytique intégrée, incluant une prise en charge complète du SQL, du traitement de texte, de l’orchestration des processus métier, ainsi qu’un environnement de développement basé sur les standards.

Se connecter à, ingérer et stocker une grande variété de types et formats de données issus de dispositifs disparates

Les types de données associés aux applications IoT sont souvent hétérogènes, car ils proviennent de dispositifs aux fonctions variées, fabriqués par différents fournisseurs. La plateforme de données sous-jacente doit être capable d’ingérer et de traiter un large éventail de données brutes dans leurs formats d’origine.

De nombreuses applications exigent également que la plateforme conserve toutes ces données sources disparates afin de détecter les écarts par rapport aux plages normales, de permettre des analyses ad hoc en aval, de respecter les obligations réglementaires ou de répondre à d’autres besoins spécifiques.

2 0
1 16

Bonjour à la communauté,

Nous sommes ravis de vous présenter un tout nouveau tutoriel Instruqt :

🧑‍🏫 RAG avec InterSystems IRIS Vector Search

Ce laboratoire pratique vous guide dans la création d'un chatbot IA basé sur la génération augmentée de récupération (RAG) et optimisé par InterSystems IRIS Vector Search. Vous découvrirez comment la recherche vectorielle peut être exploitée pour fournir des réponses actualisées et précises, en combinant les atouts d'IRIS et de l'IA générative.

✨ Pourquoi l'essayer ?

1 0
0 16

Salut la Communauté!

Profitez de regarder la nouvelle vidéo sur la chaîne Youtube d'InterSystems France :

📺 Redonner du temps patient aux soignants: InterSystems IntelliCare, un DPI nouvelle Gen(AI)ration

https://www.youtube.com/embed/k1YDOjzhwMU
[Ceci est un lien intégré, mais vous ne pouvez pas consulter le contenu intégré directement sur le site car vous avez refusé les cookies nécessaires pour y accéder. Pour afficher le contenu intégré, vous devez accepter tous les cookies dans vos Paramètres des cookies]

2 0
0 16

Cet excellent article a récemment déclenché une discussion privée, et j'aimerais partager certaines de mes réflexions à ce sujet.

La question motivante se résume ainsi : pourquoi devons-nous absolument établir des règles ou des conventions de codage ? Où est passée la merveilleuse époque des artistes-programmeurs de la Renaissance qui traçaient leur propre voie, avant d'être supplantés par les artisans, puis (pire encore) par IA?

2 0
0 16

Salut la Communauté!

Profitez de regarder la nouvelle vidéo sur la chaîne Youtube d'InterSystems France :

📺 Coordination Ville Hôpital et Prévention grâce aux Parcours de soins et à la Santé Populationnelle

https://www.youtube.com/embed/UYKEkPWEgKc
[Ceci est un lien intégré, mais vous ne pouvez pas consulter le contenu intégré directement sur le site car vous avez refusé les cookies nécessaires pour y accéder. Pour afficher le contenu intégré, vous devez accepter tous les cookies dans vos Paramètres des cookies]

1 0
0 16

Salut la Communauté !

De nouvelles récompenses sont arrivées sur Global Masters 🎁

Avec notre mise à jour de juillet, nous avons ajouté de nouvelles options inédites ! Le catalogue de récompenses regorge désormais de nouvelles façons intéressantes d'échanger vos points contre des cadeaux vraiment utiles et bien mérités. Si vous avez accumulé des points, c'est le moment idéal pour vous faire plaisir !

➡️ Participez à Global Masters pour découvrir les prix disponibles*.

🧩 Envie d'apprendre à gagner des points plus rapidement ? Vous trouverez des conseils et des astuces ici.

0 0
0 16

Salut,

C'est moi encore 😁. Je travaille actuellement à la génération de fausses données patients à des fins de test avec Chat-GPT et Python. J'aimerais également partager mon apprentissage. 😑

Tout d'abord, créer un service d'API REST personnalisé est facile en utilisant %CSP.REST.

Commençons ! 😂

1. Créez une classe datagen.restservice qui étend %CSP.REST.

1 0
0 15

Bonjour à la Communauté !

Nous sommes ravis d'annoncer un tout nouveau tirage au sort. Cette fois-ci, le thème est :

💡 Expérience initiale des développeurs 💡

Nous souhaitons connaître votre avis sur la manière de faciliter, de clarifier et de motiver les premiers pas avec les technologies InterSystems. Qu'il s'agisse de documentation, d'intégration, de configuration ou de tutoriels, vos idées peuvent faire toute la différence !

1 0
0 15

Aperçu Je suis ravi d'annoncer la sortie de testcontainers-iris-node, une bibliothèque Node.js qui facilite le lancement de conteneurs InterSystems IRIS temporaires pour l'intégration et les tests E2E. Ce projet vient naturellement compléter la gamme existante d'adaptateurs Testcontainers pour IRIS, notamment testcontainers-iris-python et testcontainers-iris-java.

Pourquoi testcontainers-iris-node? En tant que développeur Node.js travaillant avec InterSystems IRIS, j'ai souvent été confronté à des difficultés lors de la configuration d'environnements de test imitant la production. testcontainers-iris-node résout ce problème en exploitant le framework testcontainers-node pour créer des environnements IRIS isolés à la demande.

Ceci est particulièrement important pour:

  • Les tests d'intégration avec les bases de données IRIS
  • Les tests de pipelines de données ou de microservices
  • L'automatisation des environnements de test dans les pipelines CI

Fonctionnalités

  • Lancement d'IRIS dans des conteneurs Docker à l'aide de Testcontainers
  • Prise en charge des images et de la configuration Docker personnalisées
  • Stratégies d'attente pour s'assurer qu'IRIS est prêt avant le début des tests
  • Désinstallation de nettoyage entre les exécutions de tests

2 0
1 15

Cette année, notre Communauté de Développeurs d'InterSystems fête ses 10 ans, et nous vous invitons à participer aux festivités !

Nous créons une vidéo spéciale, remplie de vœux et de souvenirs de membres du monde entier. Envie de participer ? C’est simple :

▶️ Enregistrez un court extrait (1 à 2 minutes) dans lequel vous :

  • Partagez un moment fort ou mémorable de votre expérience au sein de la Communauté de Développeurs
  • Envoyez vos félicitations pour ce 10e anniversaire 🎊

Nous rassemblerons vos contributions dans une grande vidéo de célébration pour le plus grand plaisir de tous ! 🎬✨

👉 Cliquez ici pour enregistrer votre vidéo

0 0
0 15

Rubrique FAQ InterSystems

Par défaut, l'ordre des colonnes d'une table est déterminé automatiquement par le système. Pour modifier cet ordre, définissez explicitement l'ordre de chaque propriété à l'aide du mot-clé SqlColumnNumber lors de la définition de la classe.

Exemple :

Property Name As %String [SqlColumnNumber = 2];

Veuillez consulter la documentation ci-dessous.

1 0
0 15

Confrontés aux volumes considérables et sans cesse croissants de données générées dans le monde aujourd'hui, les architectes logiciels doivent accorder une attention particulière à l'évolutivité de leurs solutions. Ils doivent également concevoir des systèmes capables, si nécessaire, de gérer plusieurs milliers d'utilisateurs simultanés. Ce n'est pas facile, mais il est absolument indispensable de concevoir des systèmes hautement évolutifs.

On compare une charge de travail moyenne de 1 000 requêtes de 1 kilo-octet par seconde à une autre impliquant 10 requêtes de 1 téraoctet par heure

Les architectes logiciels disposent de plusieurs options pour concevoir des systèmes évolutifs. Ils peuvent procéder à une évolutivité verticale en utilisant des machines plus puissantes dotées de dizaines de processeurs. Ils peuvent utiliser des techniques de distribution (réplication) des données pour procéder à une évolutivité horizontale afin d'accueillir un nombre croissant d'utilisateurs. Et ils peuvent faire évoluer le volume de données horizontalement grâce à une stratégie de partitionnement des données. Dans la pratique, les architectes logiciels emploient plusieurs de ces techniques, en trouvant un compromis entre les coûts liés au matériel, la complexité du code et la facilité de déploiement afin de répondre à leurs besoins spécifiques.

Cet article explique comment la plateforme de données InterSystems IRIS Data Platform prend en charge l'évolutivité verticale et horizontale des volumes de données et d'utilisateurs. Il présente plusieurs options de distribution et de partitionnement des données et/ou du volume d'utilisateurs, en donnant des exemples de scénarios où chaque option serait particulièrement utile. Enfin, cet article explique comment InterSystems IRIS contribue à simplifier la configuration et le provisionnement des systèmes distribués.

2 0
0 13

Aperçu

Cette interface Web est conçue pour faciliter la gestion des tables de recherche de données (Data Lookup Tables) via une page Web conviviale. Elle est particulièrement utile lorsque les valeurs de votre table de recherche sont volumineuses, dynamiques et changeantes. Les utilisateurs finaux peuvent gérer efficacement les données de la table de recherche en fonction de leurs besoins grâce à un accès contrôlé à cette interface Web (autorisations de lecture, d'écriture et de suppression limitées à cette page).

Les données gérées via cette interface peuvent être utilisées de manière transparente pour les règles HealthConnect ou les transformations de données, ce qui élimine le besoin d'une surveillance et d'une gestion manuelles constantes des tables de recherche et permet ainsi un gain de temps considérable.

Remarque:
Si la table de recherche de données classique ne répond pas à vos besoins en matière de mappage, vous pouvez créer une table personnalisée et adapter cette interface Web ainsi que sa classe de support avec un minimum de modifications. Un exemple de code de classe est disponible sur demande.

0 0
0 12

Bonjour la Communauté,

Nous sommes ravis de vous annoncer l'arrivée d'une nouvelle fonctionnalité dans la Communauté des développeurs : la possibilité d'ajouter un lien vers la documentation officielle d'InterSystems directement à la fin de votre publication.

Fonctionnement

Lors de la publication d'un article, collez l'URL correspondante depuis docs.intersystems.com dans le champ de lien vers la documentation d'InterSystems.

0 0
0 12

Les données sont au cœur de la transformation numérique qui bouleverse le secteur de la santé. Ce changement radical nécessite de nouvelles bases pour gérer les énormes besoins en données des soins de santé modernes.

Le délai de mise sur le marché est crucial pour développer les prochaines avancées thérapeutiques, les connaissances génomiques et les flux de travail cliniques intelligents. Vous devez les mettre en œuvre dès maintenant.

1 0
0 12

Rubrique FAQ InterSystems

Certaines données, telles que les données du journal d'exécution, ne doivent pas être restaurées à leur état antérieur, même en cas de restauration lors d'une transaction. Pour ce faire, placez ces données dans la base de données IRISTEMP, qui ne sera pas restaurée.

Temporary Globals and the IRISTEMP Databas

1 0
0 11