Répondre à: Accès simultané à une liste sharepoint

  • DavidZed

    Membre
    3 août 2022 à 8h30

    Bonjour,

    Il y a peut être moyen d’obtenir le statut d’une session power apps via un power automate, mais je suis assez peu optimiste la dessus.
    L’idée serait de stocker l’ID de session d’exécution de l’appli dans ton item SP. Et d’avoir un flux planifié qui vérifie si la session est fermée, auquel cas il déverrouillerai l’item. Solution à explorer mais sans garantie de résultat
    Pour obtenir l’Id de session : GetPowerAppsSessionID.Run()

    Autre option, qui par contre marcherait à coup sûr :
    – Ajouter une variable (VarLock) true/false quand ton formulaire d’édition est ouvert
    – Ajouter un Timer de 4min (hors champ ou masqué) avec
    Autostart & Repeat : VarLock
    OnTimerEnd : If(Form1.Mode=DisplayMode.Edit;Patch(ListeSP;VarItem;{LockedBy : User().Email}))

    Sur ton DisplayMode du formulaire:

    If(VarItem.LockedBy = User().Email || DateDiff(VarItem.ModifiedOn;Now();Minutes)>5;DisplayMode.Edit;DisplayMode.View)

    Résultat :
    Tant que le formulaire est ouvert en édition sur un item, on patch toutes les 4 min l’item avec le nom de l’utilisateur dans la colonne LockedBy
    Quand on sélectionne un item, si l’utilisateur est celui qui l’a verrouillé ou si l’item n’a pas été verrouillé depuis plus de 5 min, on ouvre le formulaire en mode édition, sinon on l’ouvre en mode lecture

    CommentID=Xa78D5RQABFUcd0, PostID=wLOrWTvTRRMGKvV