🅰️

Suivi des erreurs Logiciel

Cet article recense les erreurs logicielles les plus fréquentes rencontrées dans Air et indique les procédures de résolution associées. Il s'adresse aux techniciens de support de Niveau 1 (N1) et de Niveau 2 (N2).


Les messages d'erreur suivants reviennent fréquemment sur cette thématique et permettent d'orienter rapidement le diagnostic avant une éventuelle escalade.

- DbUpdateException / clé en double lors d'une création de compte : signale généralement qu'un login, une adresse e-mail ou un identifiant existe déjà sur la base pour un autre utilisateur (actif ou inactif). Vérifiez les comptes existants avant de recréer.

- « Echec d'envoi du SMS : invalid_request / one sms is invalid » : indique un problème de format du numéro de téléphone. Vérifiez notamment la présence ou l'absence d'un indicatif international selon la localisation du professionnel.

- SendMailOrSmsException (« Impossible d'envoyer le SMS de réinitialisation de votre mot de passe ») : même famille de cause que l'erreur précédente ; vérifiez le format du numéro et testez l'envoi d'un SMS de test.

- InvalidOperationException (« The operation cannot be completed because the DbContext has been disposed ») : erreur technique liée à la session de connexion à la base de données. En l'absence de procédure définitive, la suppression puis la recréation du compte concerné dans l'espace d'administration a permis de débloquer certains cas observés, sans que cela constitue une solution systématique à généraliser sans validation N2.

- ArrayIndexOutOfBoundsException (« Array index out of range: 0 ») et ComponentActivatorException (« could not instantiate... SnalSugarApiClient ») : erreurs techniques peu fréquentes associées à des blocages de connexion. Documentez précisément le contexte (heure, message exact) avant escalade si les contrôles habituels ne résolvent pas le blocage.

- CoreException (« Erreur lors de la numérisation ») : Si elle apparaît, suivez la check-list de dépannage numérisation dédiée (vérification des mises à jour Windows, redémarrage du service de numérisation Windows stisvc) plutôt que les contrôles de connexion décrits plus haut.

- « Erreur lors du traitement du message DR/numéro/identifiant » : erreur technique liée au traitement d'un message de télétransmission. C'est l'erreur la plus fréquemment remontée sur cette thématique ; elle nécessite généralement une intervention N2 pour identifier le message concerné et le retraiter.

- ArgumentOutOfRangeException (« startIndex ne peut pas être supérieur à la longueur de la chaîne ») : erreur technique liée au traitement d'un message spécifique, à documenter avec le cabinet et l'utilisateur concernés pour permettre l'analyse par le N2.

- ArgumentNullException (« La valeur ne peut pas être null »), notamment lors d'une recherche de BAL Sécurimail : peut nécessiter une vérification manuelle de la configuration de la BAL sur le cabinet concerné, voire l'ajout temporaire d'une BAL secondaire (par exemple une BAL Orange) le temps de récupérer les retours en attente.

- Certificat distant non valide (« Le certificat distant n'est pas valide selon la procédure de validation ») : peut être lié à une question de version. Actualisez la page et retentez l'opération avant d'escalader.

- EncoderFallbackException (« Impossible de traduire le caractère Unicode... vers la page de codes spécifiée ») : provoquée par un caractère spécial (un emoji par exemple) présent dans un message traité par la BAL. Ce cas a pu être débloqué en supprimant la BAL concernée une fois tous les retours NOEMIE en attente récupérés.

- Erreur JavaScript « Cannot read properties of undefined (reading 'G65') » : rechargez l'écran et videz le cache si le problème semble isolé à un poste, puis identifiez l'objet manquant à partir de la propriété citée dans le message. Si l'erreur est reproductible, notez l'URL exacte, la propriété lue et les étapes précises ayant mené à l'erreur avant d'escalader.

- Exception avec message « Erreur : Une erreur interne s'est produite », invitant à vérifier l'état du scanner, le redémarrer, redémarrer l'ordinateur et réinstaller le pilote (référence de chemin /var/tmpmorena_images, code -9933) : appliquez la checklist de vérifications de premier niveau ci-dessus (branchement, pilote, service PC/SC, port USB, mode du lecteur), en testant si possible sur un autre port.

- Erreur applicative « Erreur lors de la récupération des données / Erreur lors de la lecture NFC » : appliquez la même checklist de premier niveau ; si le lecteur est en cause, vérifiez également le point CPS non valide (erreur f004 / 61444) décrit ci-dessus.

- TypeError JavaScript « Cannot set properties of undefined (setting 'referenceDate') » : erreur la plus fréquente sur cette thématique. Rechargez la fiche patient concernée, relisez l'ADRi (Acquisition de Droits Intégrée, fonctionnalité qui permet de récupérer les droits du patient auprès de sa caisse) ou les droits affichés, et vérifiez qu'un support AMO (Assurance Maladie Obligatoire, qui prend en charge tout ou partie des frais de soins) actif et daté existe pour le patient. Testez à nouveau après actualisation de la fiche patient avant d'escalader.

- Erreur de base de données « An error occurred while updating the entries. See the inner exception for details » : erreur générique de mise à jour d'enregistrement. Reproduisez-la une seule fois pour capturer la trace complète et évitez les suppressions ou tentatives répétées, qui peuvent aggraver le problème sur les données concernées.

- TypeError JavaScript « Cannot read properties of undefined (reading 'update') » : rechargez l'écran concerné et videz le cache du navigateur si le problème semble isolé à un poste, puis identifiez l'objet manquant à partir de la propriété citée dans le message (ici « update ») avant d'escalader si le problème persiste.

- TypeError JavaScript « Cannot read properties of undefined (reading 'value') » : même famille d'erreur que la précédente ; suivez la même démarche (rechargement, vidage de cache, identification de l'objet concerné).

- IndexOutOfRangeException (« L'index se trouve en dehors des limites du tableau ») : si ce message est déjà rattaché à un incident connu et en cours de traitement, reliez le ticket au ticket parent de l'incident plutôt que d'en ouvrir un nouveau, et mettez-le en attente.

- Erreur serveur NullPointerException lors de l'ajout d'une ordonnance (trace technique impliquant SYS_ConvertImage) : cette erreur survient côté serveur lors de la conversion d'une pièce jointe scannée associée à l'ordonnance. Vérifiez la pièce jointe concernée (format, lisibilité) et testez l'ajout de l'ordonnance avec un autre scan ou sans pièce jointe. Aucun contournement définitif n'est à ce jour documenté : si le problème persiste, escaladez au N2 en précisant qu'il s'agit d'une prescription corrompue au sens de cette erreur.

- ArgumentNullException : « La valeur ne peut pas être null. Nom du paramètre : path2 » : appliquez la checklist de premier niveau (dates, prescripteur, séances, pièces jointes, actes, verrouillage par facture). Escaladez si la prescription est corrompue, impossible à scinder ou liée à des séances incohérentes.

- TypeError JavaScript : « Cannot read properties of null (reading 'message') » : rechargez l'écran et videz le cache si le problème est isolé, puis identifiez l'objet manquant à partir de la propriété citée. Escaladez si l'erreur est reproductible, en précisant l'URL, la propriété lue et les étapes exactes.

- TreatmentCareDuplicateException : « Le n° d'index 1 est en double sur les actes planifiés » : appliquez la checklist de premier niveau. Vérifiez notamment l'ordre des horaires des actes planifiés et le fait que les IFI ne soient pas saisies manuellement (le logiciel les gère automatiquement). Si le blocage persiste, la recréation de la prescription avec les bons paramètres peut être nécessaire ; escaladez si la prescription reste corrompue.

- TypeError JavaScript : « Cannot read properties of null (reading 'SmgSupport') » : ce message a été observé après un mauvais déchargement de données pour un patient sans prescription associée. Dans les cas résolus, la suppression du patient concerné suivie d'une recréation manuelle (y compris une nouvelle lecture de carte Vitale) a permis de repartir sur une base saine. Escaladez si l'erreur est reproductible avant toute suppression.

- Erreur base de données : contrainte de clé étrangère fk_bdk_treatmentcare sur la table bdk (« update or delete on table "treatmentcare" violates foreign key constraint ») : ne supprimez jamais l'objet visé directement. Identifiez d'abord la facture, la pièce, l'acte ou le rendez-vous qui référence encore l'enregistrement concerné. Dans les cas observés, la suppression puis la recréation complète de la prescription concernée (plutôt que la suppression de l'élément bloquant seul) a permis de débloquer la facturation. Une escalade N2 reste nécessaire pour corriger les références en base si cette approche échoue.


Erreur : L'année doit être comprise entre 1 et 9999

Cette erreur (System.ArgumentOutOfRangeException) survient lorsqu'une date de naissance invalide est enregistrée dans le dossier patient, par exemple 00/00/0000.

Résolution

Cette correction doit être effectuée par un technicien Niveau 2 (N2) via l'interface d'administration.

  1. Identifier le patient concerné par la date de naissance invalide.

  2. Exécuter la requête SQL suivante dans l'administration :

sql

update patient set birthday = '01/01/1990' where birthday = '00/00/0000'

⚠️ Adapter la date cible (01/01/1990) à la date de naissance réelle du patient si elle est connue.


Erreur : Les MCI ne sont pas autorisées pour les masseurs-kinés/ortho

Cette erreur (System.InvalidOperationException) apparaît lorsqu'une MCI (Majoration de Coordination Infirmière) est appliquée à un professionnel de santé qui n'y est pas éligible, notamment les masseurs-kinésithérapeutes et les orthophonistes.

Résolution

Cette correction doit être effectuée par un technicien Niveau 2 (N2) via l'administration.

  1. Exécuter la requête SQL suivante :

sql

delete from parameter where parametertype = 6


Erreur serveur hébergement — La séquence ne contient aucun élément correspondant

Cette erreur (System.InvalidOperationException: La séquence ne contient aucun élément correspondant) peut survenir lors de la création d'une recette HAD (Hospitalisation À Domicile). Elle indique qu'aucun compte comptable par défaut n'est configuré pour l'exercice en cours.

Résolution — Ajout des comptes par défaut

  1. Cliquez sur « Exercice 20XX » dans le menu en haut de l'écran (remplacer XX par l'année en cours).

  2. Sélectionnez l'option pour éditer l'année comptable.

  3. Ajoutez les comptes par défaut manquants.

  4. Fermez et rouvrez le menu pour vérifier que les comptes sont bien enregistrés.

Si les comptes restent vides après cette manipulation

Si, après avoir suivi les étapes ci-dessus, les comptes par défaut sont toujours vides à la réouverture du menu, une intervention d'un développeur est nécessaire.

  • Informations à préparer avant d'escalader : nom du cabinet, année comptable concernée, capture d'écran du menu vide.


Perte des icônes sur le bureau (Mac)

Ce problème survient lorsque le service iCloud Drive est activé sur le Mac du client. Dans ce cas, les icônes présentes sur le bureau (notamment les raccourcis vers Topaze Air ou le reconfigurateur de lecteur) sont automatiquement déplacées vers l'espace de stockage en ligne iCloud.

Résolution

  1. Effectuez une recherche Spotlight sur le Mac (raccourci clavier : Cmd + Espace) pour retrouver les fichiers déplacés (ex. : « Topaze Air », « Reconfigurer lecteur »).

  2. Faites glisser les icônes retrouvées vers le bureau pour les y replacer.

Conseil préventif

Si le client ne sait pas ce qu'est iCloud Drive, il convient de lui recommander de faire désactiver iCloud Drive sur son Mac par un technicien ou un proche compétent, afin d'éviter que ce problème se reproduise.


Erreur : Oups, base de données incohérente — Actes déjà rattachés à une facture

Cette erreur apparaît lors de la création d'une facture lorsque certains actes à facturer sont déjà associés à une facture existante dans la base de données, ce qui crée une incohérence.

Résolution

Cette correction nécessite l'intervention d'un technicien Niveau 2 (N2).

  1. Transmettre la demande au N2 en précisant le nom du patient et les actes concernés.

  2. Le N2 applique la procédure de correction via Topaze Air Admin, documentée à l'adresse suivante : Confluence — Certains actes à facturer sont déjà rattachés à une facture


Erreur : La date d'émission du VIHF est dans le futur

Cette erreur survient lors de la génération d'un VIHF (Volet de Synthèse Médicale pour les soins de ville) et indique une incohérence de date liée à la version des FSV (logiciels de sécurisation SESAM-Vitale) installés sur le poste.

Résolution

  1. Vérifiez sur l'ordinateur du client si des FSV en 64 bits et en 32 bits sont installés simultanément.

  2. Si les deux versions coexistent :

    1. Désinstallez les deux versions présentes.

    2. Réinstallez uniquement la version adaptée au système d'exploitation du poste (32 bits ou 64 bits selon la configuration).