IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

HyperFileSQL Discussion :

Gestion personnelle des accès concurrentiels


Sujet :

HyperFileSQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Décembre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Décembre 2009
    Messages : 1
    Par défaut Gestion personnelle des accès concurrentiels
    Bonjour à toutes et tous,

    Je suis programmeur windev depuis quelques années maintenant et j'en étais très content.
    Rapidité de développement, look qui plait aux clients sans que l'on ait vraiment à se casser la tête, ...

    Mais depuis quelques temps, j'ai de sérieux doutes, ainsi que les autres programmeurs dans ma société.

    Avez-vous déjà eu l'occasion de participer à un projet dans lequel la gestion des accès concurrentiels est très poussée ?
    J'entends par là qu'il est totalement impossible de répondre aux exigences du client en se limitant à la gestion auto (ou même semi-auto) de WinDev.

    Un exemple :
    une procédure A qui affiche les médicaments à préparer pour tous les résidents d'un home et qui est utilisée par plusieurs infirmières simultanément sur plusieurs écrans (pour aller + vite).
    On peut donc avoir plusieurs procédures A en exécution.
    De +, chaque infirmière travaille a un rythme différent et chaque résident à la fin de la procédure doit avoir été "géré" par 1 et 1 seule infirmière.

    Une autre procédure B s'occupe d'adapter les données de la 1ère procédure (changements de dosages, ...) mais ne peut pas démarrer si la procédure A est en cours (impossible de modifier des dosages qui sont déjà affichés à l'écran ou en cours de traitement).
    Pour être certain que la proc B puisse s'exécuter même si 10 infirmières vont lancer des proc A, il faut gérer (via lockings) une "réservation" : la procédure B signale qu'elle a qqch à faire, attend que les procédures A déjà lancées se terminent et modifie alors les dosages. Dès que la réservation a été émise par la procédure B, plus aucune procédure A ne peut commencer jusqu'à ce que B soit terminée.

    C'est le + facile tout çà ...
    Après, les clients veulent une gestion par étage afin qu'une proc B du rez-de-chaussée puisse modifier les dosages du rez de-chaussée alors que les infirmières du 1er travaillent avec leurs procédures A.

    J'y suis arrivé avec WinDev, non sans mal, mais après quelques surprises en cours de route, principalement avec le "HLitRecherchePremier(...,hLockWrite)"
    dans le cas où la valeur cherchée n'est pas trouvée !

    Voilà, si quelqu'un a des BONS exemples, livres, ou autres de ce genre, je suis preneur.
    Je n'ai jamais trouvé un exemple "poussé" publié chez PCSoft et concernant les accès concurrentiels, et vous ?
    Et ne me parlez pas de "Qui bloque qui ?", ce n'est jamais çà que l'on rencontre en pratique !

    Bien à vous,

    Manu

  2. #2
    Membre chevronné
    Homme Profil pro
    Consultant
    Inscrit en
    Octobre 2004
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2004
    Messages : 254
    Par défaut
    Pour ma part, je suis parti de l'exemple "Qui bloque qui" que j'ai modifié, pour gérer les accès concurrentiels.

    Je ne sais pas comment on gère ça dans d'autres environnement de développement, mais pour l'instant ca fonctionne bien chez moi (en test toutefois, appli pas en production).

    Arnaud.

  3. #3
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2007
    Messages
    1 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 075
    Par défaut
    Bonjour,

    Pour ma part, il ne s'agit pas d'un problème d'accès concurrentiels, mais plutôt d'un problème de conception.

    Où peut-on trouver un accès concurrentiel si on a les traitements suivants :
    infirmière X modifie traitement patient M
    infirmière Y modifie traitement patient N
    etc
    sachant que les fichiers de référence (fiche patient, nomenclature, lit ou chambre etc) sont en lecture pour cette procédure et que seule la ligne (le record) traitement patient X ou Y est en modification.
    Dès que le traitement est modifié, il n'y a plus de blocage.
    A première vue, le traitement opéré par X n'interfère pas ou ne devrait pas interférer avec celui opéré avec Y.
    Même si toutes les données d'un patient sont bloquées, les nomenclatures de soins et pharmaceutiques ne sont en principe qu'en lecture.

    Ensuite plutôt que d'autoriser B à bloquer A, il faudrait que B ne puisse démarrer que si A est terminé et, sans doute, lancer individuellement les procédures B au fur et à mesure que les A se terminent.

    D'autre part, gérer A pour n'importe quel patient de n'importe quel étage n'est pas un problème, c'est juste une question de droits :
    qui est autorisé à modifier et pour quel type de patient, le type pouvant inclure l'étage, le type de service (par exemple, infirmières de réa pour l'unité de soins intensifs et les infirmières pédiatriques pour les enfants) ?

    Voilà une piste de réflexion et en espérant vous avoir été utile,

    Hemgé

Discussions similaires

  1. Gestion des accès concurrentiels
    Par gfranck dans le forum Langage SQL
    Réponses: 3
    Dernier message: 20/02/2014, 11h14
  2. Gestion des accès concurrentiels
    Par elyboss dans le forum Windows Forms
    Réponses: 1
    Dernier message: 27/09/2009, 19h26
  3. [ZF 1.9] Gestion optimiste des accès concurrents
    Par cyrille37 dans le forum Zend_Db
    Réponses: 3
    Dernier message: 22/09/2009, 10h42
  4. Gestion personnelle des evenements
    Par anykeyh dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 23/05/2006, 09h39
  5. [Struts] Droits d'un user et gestion des accès aux pages
    Par PeteMitchell dans le forum Struts 1
    Réponses: 4
    Dernier message: 14/04/2004, 11h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo