Réponses céées sur le Forum

Page 57 sur 90
  • R3dKap

    Membre
    6 septembre 2022 à 15h21 en réponse à: Selection dans plusieurs gallery

    Hugo,

    Pas facile d’expliquer quelque chose par écrit hein ?! Je parie que si tu te relis en supposant que tu ne connais rien du tout au sujet tu te diras p’têt : “Mouaich… Pas facile à comprendre“… 😁 T’inkiet, ça m’arrive aussi mais souvent le p’tit truc de la relecture avant envoi marche plutôt pas mal car je le réécris différemment du coup… 😉

    J’ai pas tout compris, donc, mais c’est pas grave, y’a déjà des élément sur lesquels on peut peut-être avancer.

    Commençons par un peu de nomenclature : dans Power Apps on ne parle pas de page mais d’écran. On développe réellement des applications avec des écrans qui se succèdent. Même si derrière il y a de la génération de “page” web, on considère que ce sont des écrans.

    Côté données, écrans et application, voici ce que j’ai compris :

    • Tu as 3 listes SharePoint qui ont la même structure (exactement les mêmes colonnes donc)

    • Le premier écran de ton application (que je vais appeler ACCUEIL) contient une galerie qui affiche les éléments de ta liste 1 (dont le nom de la personne entre autres)

    • Lorsque l’on clique sur un élément de ta galerie 1 on arrive sur un autre écran (que je vais appeler ECRAN1) où il y a des checkbox : je suppose que cela correspond plus ou moins à l’écran de détail de l’élément en question de la liste 1

    • Après que l’utilisateur a coché les cases, il peut passer à l’écran 2 (et juste avant la navigation il y a sauvegarde des données de ECRAN1)

    • Sur l’écran 2 il y a les données à saisir pour la liste 2 -> sauvegarde puis navigation vers l’écran 3

    • Sur l’écran 3 il y a les données de la liste 3 -> sauvegarde (et je suppose retour à l’écran d’accueil)

    Là où y’a peut-être déjà un souci c’est que dans le fait de dire “Comme les listes sont identique, pas de problème pour enregistrer, j’utilise l’ID…” on a l’impression que tes listes ne sont pas liées par des champs de recherche mais tu comptes plutôt sur le fait que comme tout se fait dans la foulée, les ID des élements dans les 3 listes seront toujours les mêmes. Si c’est le cas, c’est pas bon : tu vas forcément arriver un jour à une désynchro des IDs. Donc oublie… Il faut impérativement que tes listes soient liées par des colonnes de recherche.

    Est-ce que déjà tu as besoin d’aide pour ça ? Le coeur d’une application ce ne sont pas les écrans mais la manière de structurer les données. Est-ce que tu peux détailler un peu plus des listes SharePoint et expliquer ce que tu veux stocker dedans (sans forcément parler de l’appli en tant que telle) ?

    CommentID=Wo6Rx35bb3LwBYj, PostID=97MaDHXqLGb4Ztk

  • R3dKap

    Membre
    5 septembre 2022 à 10h31 en réponse à: Liste des groupes office 365 dans une powerapps

    Sinon, tu peux utiliser le connecteur Groupes Office 365 comme ceci :

    Set(colGroups; GroupesOffice365.ListGroups().value)

    Vois déjà si ça peut te convenir…

    CommentID=83UlRozvl6YHe0f, PostID=pSBS2BuLn3jtt68

  • R3dKap

    Membre
    5 septembre 2022 à 10h27 en réponse à: Liste des groupes office 365 dans une powerapps

    Marianne LIAUZU lorsque tu dis “espaces office 365” est-ce qu’il ne s’agit QUE des groupes O365 ou également des sites SharePoint classiques (voire des sites Teams) ?

    CommentID=Z9DoiJv35Ax3iey, PostID=pSBS2BuLn3jtt68

  • R3dKap

    Membre
    5 septembre 2022 à 9h01 en réponse à: Masquer une liste Sharepoint

    Salut Vince,

    Oui tout à fait. Tu lances le Windows PowerShell ISE en mode admin puis tu exécutes la commande suivante pour installer le PnP PowerShell sur ton PC (comme indiqué dans la doc en ligne derrière le lien que t’ai filé dans mon post précédent) :

    Install-Module -Name "PnP.PowerShell"

    Une fois que c’est fait, tu utilises la commande suivante pour enregistrer le PnP PowerShell auprès d’Azure (à faire qu’une seule fois) :

    Register-PnPManagementShellAccess

    Là il faudra qu’un admin du tenant valide le truc…

    Ensuite tout est prêt pour qu’il soit utilisé. Par exemple pour te connecter à ton site SharePoint :

    Connect-PnPOnline -Url <url de ton site> -Interactive

    Et enfin, la commande pour masquer ta liste que tu as dans mon post précédent…

    CommentID=1kKf8UEzLrBNjgy, PostID=EjdN8RcQLRx3b8I

  • R3dKap

    Membre
    30 août 2022 à 18h45 en réponse à: Filter et délégation

    Laurent CARRIERE au-delà des éventuelles solutions techniques, la vraie piste à étudier est plus fonctionnelle : sur quelle données de ma liste je peux inviter l’utilisateur à réduire le nombre d’éléments sur lesquels travailler.

    L’idée c’est de penser l’application de telle sorte que l’on oblige l’utilisateur a entrer un premier critère pour filtrer les données de la liste et la réduire à une quantité inférieure à 2000 (en utilisant une égalité ou un StartsWith() dans un Filter() par ex.).

    See what I mean? 😉

    CommentID=EizDXoY4VaTDBdy, PostID=6uetl2M2IMmquZP

  • R3dKap

    Membre
    30 août 2022 à 18h40 en réponse à: Masquer une liste Sharepoint

    Vince quand il s’agit de maniper SharePoint, le PnP Powershell s’avère extrêmement utile. Seule contrainte : il faut que l’admin autorise l’utilisation du module (voir ici la commande Register-PnPManagementShellAccess).

    En l’occurrence, une fois installé, pour masquer une liste il te suffit d’utiliser la commande suivante :

    Set-PnPList -Identity Lists/<taliste> -Hidden $true

    N’hésite pas si t’as besoin d’aide…

    CommentID=Z5ngjDmDx75kQLa, PostID=EjdN8RcQLRx3b8I

  • R3dKap

    Membre
    26 août 2022 à 18h29 en réponse à: Fusion deux tables

    Salut FRED b.,

    Ton lookup tu veux le faire dans une app canvas ou model-driven ?

    CommentID=8SJj6NImvuuIFKb, PostID=aXBeu3Y2FhJTrvN

  • Merci pour ces éléments Gissinger Véronique.

    Alors, plusieurs choses…

    Dans ta dernière capture, on utilise pas l’opérateur “&” pour séparer les appels de fonctions. Cet opérateur sert à concaténer des chaînes de caractères… 😉 Pour séparer les appels de fonctions on utilise “;;” (“;” si ton interface est en anglais, mais je vois qu’elle est en français). Donc, par exemple :

    NewForm(SharePointForm1);; NewForm(SharePointForm1_1)

    Ensuite, la sauvegarde de tes données est plus complexe qu’il n’y paraît parce-que tes données sont éclatées dans 2 formulaires différents. Mais c’est pas infaisable…

    Première chose : les champs obligatoires de ta liste doivent TOUS être sur le premier formulaire qui est soumis. Car si tu es en mode création, TOUS tes champs obligatoires doivent être renseignés. A la modification c’est moins vrai passke t’aurais déjà des données dedans, mais bon…
    Donc l’idée c’est que c’est ton formulaire SharePointForm1 qui doit contenir les champs obligatoires.

    Ensuite, la soumission du 2ème formulaire ne doit se faire que SI ET SEULEMENT SI la soumission du premier s’est bien passée (sinon forcément, le 2è ne passera pas non plus).
    Et autre point : le RequestHide() comme les Reset() des 2 formulaires ne doivent se faire qu’à la fin du traitement, c’est à dire une fois que la soumission du 2è formulaire s’est bien passée.

    Autre problème que j’entrevois : le 2è formulaire doit être en mode MODIFICATION uniquement (FormMode.Edit). En effet, même si tu crées un nouvel élément dans ta liste, ton premier formulaire sera effectivement en mode création et à la soumission il créera bien un nouvel élément. Mais si le 2è est aussi en création il va tenter de créer un 2è nouvel élément alors qu’il suffit de modifier celui qui vient d’être créé. J’ai essayé de tenir compte de ça pour la suite ci-dessous… Arrrrrgh ! Ah bin non ça va pas marcher parce-que ton 2è formulaire sera en mode Edit sur un élément qui n’existe pas encore : tu ne pourras donc rien saisir dessus… Pas simple…
    Mmmm… A ce moment-là je ne vois qu’une solution : soumettre classiquement le 1er formulaire puis si ça s’est bien passé patcher (et non soumettre) l’élément avec les données du 2è formulaire.

    Donc, voici comment procéder :

    SharePointIntegration.OnSave

    SubmitForm(SharePointForm1)

    SharePointForm1.OnSuccess

    Patch('Trials requests'; SharePointForm1.LastSubmit; SharePointForm1_1.Updates);;nResetForm(SharePointForm1);;nResetForm(SharePointForm1_1);;nRequestHide()

    C’est pas l’idéal parce-qu’on fait appel au SharePointForm1_1 qui est sur un autre écran mais ça devrait marcher quand même…

    Sinon toutes les propriétés OnNew, OnEdit, OnView et OnCancel peuvent rester telles quelles mais où tu remplaces le “&” par “;;” comme expliqué précédemment.

    Essaie déjà ça et voyons ce que ça donne…

    Voilou… N’hésite pas si t’as encore besoin d’aide… 😉

    CommentID=aVQVHAclsugb8pd, PostID=4VVrNK447keN2Ek

  • R3dKap

    Membre
    25 août 2022 à 15h09 en réponse à: PowerApps ajout d'un menu burger

    Alors de mémoire, le menu en lui-même n’est pas un composant. C’est mon composant ControlAnimator qui est utilisé pour animer le menu, c’est tout. Sinon, normalement ton menu en lui-même c’est simplement un conteneur dans lequel tu as une galerie avec tes éléments, voire des libellés ou des boutons en fixe…

    Alors du coup, dis-moi déjà comment est constitué ton menu…

    CommentID=P1KDqxTCAtqojqp, PostID=HCjpNAUGMo4ZUDA

  • R3dKap

    Membre
    24 août 2022 à 20h37 en réponse à: PowerApps ajout d'un menu burger

    Salut Vincent HERY,

    Oui bien sûr. De mémoire, chaque élément de menu est un libellé (ou un bouton je sais plus). Il suffit de définir sa propriété Visible en fonction du fait que User().Email fait partie d’une liste d’emails dans ta liste d’admins…

    Dis-moi si t’as besoin de plus d’aide…

    CommentID=04ZkEU8zAT1FK9L, PostID=HCjpNAUGMo4ZUDA

  • Gissinger Véronique c’est peut-être dû à l’existence du 2è formulaire… Il y a peut-être un ResetForm qui se déclenche au mauvais moment qui fait que ton champ est vide au moment de l’enregistrement… Et la modification marche passke t’as déjà des données dedans…

    Comment gères-tu ce 2è formulaire sur le 2è écran ? Quel est la valeur de sa propriété Item ? Et OnSuccess ?

    Qu’as-tu comme code dans les différents événements de l’objet SharePointIntegration ?

    CommentID=NhrStT4KAE1fqik, PostID=4VVrNK447keN2Ek

  • R3dKap

    Membre
    23 août 2022 à 15h10 en réponse à: Modification liste sharepoint booléen avec fonction Patch().

    Ah oui exact… lol… J’avais même pas vu l’erreur… Bien vu !

    Avec plaisir… 😉

    CommentID=F8fWBt5FvaXdUW1, PostID=rJannhROZ8HEOTg

  • R3dKap

    Membre
    23 août 2022 à 11h23 en réponse à: Modification liste sharepoint booléen avec fonction Patch().

    Nope 😌

    CommentID=sOgha8nSMzYQRPj, PostID=rJannhROZ8HEOTg

  • R3dKap

    Membre
    23 août 2022 à 11h12 en réponse à: Modification liste sharepoint booléen avec fonction Patch().

    Hugo c’est ton choix de boutons qui ne va pas… Dans ton Patch(), tes colonnes gen1, gen2 et gen3 sont des colonnes de type Oui/Non (du moins je suppose). Donc tu ne peux pas les mettre à jour avec des boutons qui sont des contrôles, ça n’a malheureusement rien à voir.

    A ta place j’utiliserais des cases à cocher en lieu et place des boutons. En effet la propriété Value d’une case à cocher renvoie justement True ou False selon qu’elle est cochée ou pas.

    Cela te permettrai d’écrire ton Patch ainsi :

    Patch(n    First(Filter('test 1';ID=Gallery1.Selected.ID));n    {n        gen1: Checkbox3.Value;n        gen2: Checkbox3_1.Value;n        gen3: Checkbox3_2.Valuen    }n);;

    CommentID=PGq5FptSSriad4m, PostID=rJannhROZ8HEOTg

    • R3dKap

      Membre
      24 août 2022 à 20h41 en réponse à: Modification liste sharepoint booléen avec fonction Patch().

      Je comprends pas bien ton histoire de navigate…

      Qu’y a-t-il dans ta galerie ? Sur quel écran ? Lorsque tu navigues c’est vers quel écran pour y faire quoi ? Où se trouvent les cases à cocher que tu as mises ? Et quel est le code actuel de ton Patch ?

      SubCommentID=mnhIERF4u3rZ0Hw, CommentID=PGq5FptSSriad4m, PostID=rJannhROZ8HEOTg

Page 57 sur 90