Fonction Patch

Étiquetté : ,

  • Fonction Patch

    Posté par Fabrice sur 13 juin 2023 à 15h47

    Bonjour,

    Etant débutant sur PowerApps, j’essaie, tant bien que mal, de créer une application. Cependant, je n’arrive à pas finaliser l’enregistrement de mes données dans une liste SharePoint avec la fcontion “Patch”. Il y a une erreur mais je ne la “vois” pas.
    Pouvez vous m’aider à la résoudre svp ?

    Voici la formule :

    Patch(

    AccoGlo,

    Defaults(AccoGlo),

    {

    Titre: Txt_Nom.Text,

    Prenom: Txt_Prenom.Text,

    IdPE: Txt_Identifiant.Text,

    Adresse: Txt_Adresse.Text,

    Telephone: Txt_Telephone.Text,

    MotifsPro: Txt_MotifsPro.Text,

    MotifsPerso: Txt_MotifsPerso.Text,

    DateNaissance: Date_naissance,

    ProposePar: user ().fullname

    }

    );

    Je vous remercie par avance
    Fabrice

    PostID=BOQjgKg7tGCLr6l

    Fabrice a répondu Il y a 9 mois, 3 semaines 1 Membre · 14 Réponses
  • 14 Réponses
  • Geoffroy

    Membre
    13 juin 2023 à 16h42

    Bonjour Fabrice

    Si tu es dans un environnement francophone, il faut remplacer les virgules par des points-virgules.

    Sinon, à la dernière ligne, user ().fullname doit s’écrire User().Fullname.

    Enfin, le mieux est de mettre une copie de la formule avec le texte de l’erreur (qui apparait quand on met le curseur dessus)

    CommentID=wPhvwK8coEBrkHt, PostID=BOQjgKg7tGCLr6l

    • Fabrice

      Membre
      13 juin 2023 à 17h45

      Bonsoir Geoffroy WAGNER ,
      Merci pour ton retour.

      Je suis dans un environnement francophone ; j’ai apporté les modifications que tu m’as suggérées mais je reste encore bloqué.

      Voici une capture du message d’erreur ainsi que la formule .

      Merci pour ton aide.

      Patch(

      AccoGlo,

      Defaults(AccoGlo);

      {

      Titre: Txt_Nom.Text;

      Prenom: Txt_Prenom.Text;

      IdPE: Txt_Identifiant.Text;

      Adresse: Txt_Adresse.Text;

      Telephone: Txt_Telephone.Text;

      MotifsPro: Txt_MotifsPro.Text;

      MotifsPerso: Txt_MotifsPerso.Text;

      DateNaissance: Date_naissance;

      ProposePar: User().Fullname.

      }

      )

      SubCommentID=MeckUYABV1yWo16, CommentID=wPhvwK8coEBrkHt, PostID=BOQjgKg7tGCLr6l

  • Geoffroy

    Membre
    13 juin 2023 à 17h48

    Je vois encore une virgule après le premier AccoGlo et un point après Fullname (c’est ma faute, j’avais mis un point final à ma phrase).

    CommentID=6izjqBcOiY3resN, PostID=BOQjgKg7tGCLr6l

  • Fabrice

    Membre
    14 juin 2023 à 9h56

    Bonjour,
    Merci pour ton retour. Cependant, je rencontre encore des difficultés.
    Voici la formule utilisée et corrigée :

    Patch(

    AccompagnementGlobal;

    Defaults(AccompagnementGlobal);

    {

    Titre: Txt_Nom.Text;

    Prenom: Txt_Prenom.Text;

    IdPE: Txt_Identifiant.Text;

    Adresse: Txt_Adresse.Text;

    Telephone: Txt_Telephone.Text;

    MotifsPro: Txt_motifspro.Text;

    MotifsPerso: Txt_MotifsPerso.Text;

    DateNaissance: Date_datenaissance;

    ProposePar: User().FullName;

    }

    )

    Le message d’erreur est : “La fonction Defaults contient des arguments non valides.”

    Deux erreurs s’ajoutent :

    Et pourtant, j’ai bien ma colonne “Adresse” dans ma liste SharePoint.

    Merci encore et merci d’avance.

    CommentID=3b8aCZjvvyZGLgW, PostID=BOQjgKg7tGCLr6l

    • R3dKap

      Membre
      15 juin 2023 à 7h12

      Tu as un point-virgule après FullName : il faut l’enlever… 😉

      En fait, de la même manière que le dernier paramètre d’une fonction ne prends pas de point-virgule, la dernière colonne d’un enregistrement ne prends pas de point-virgule non plus…

      Car oui, la partie entre accolades de la fonction Patch() est en réalité un enregistrement où tu spécifies la valeur des colonnes que tu souhaites alimenter…

      Voilou pour les explications… 😊

      SubCommentID=tfDZu4YtgIT201O, CommentID=3b8aCZjvvyZGLgW, PostID=BOQjgKg7tGCLr6l

    • Fabrice

      Membre
      15 juin 2023 à 8h51

      Bonjour,
      Merci pour cette info et pour ton aide !! 😀

      SubCommentID=OaKaw6Bf5XKOYwv, CommentID=3b8aCZjvvyZGLgW, PostID=BOQjgKg7tGCLr6l

  • Geoffroy

    Membre
    14 juin 2023 à 14h29

    As-tu bien connecté ta nouvelle liste AccompagnementGlobal à l’appli ?
    Par ailleurs, les titres des colonnes SharePoint réservent parfois des surprises. Pour être sûr de leur vrai nom, il faut aller dans les paramètres de liste, sélectionner une colonne et regarder dans la barre d’adresse ce qu’il y a après &Field=

    CommentID=znUF4BGog1DVsfc, PostID=BOQjgKg7tGCLr6l

    • Fabrice

      Membre
      15 juin 2023 à 8h55

      Bonjour,

      Merci pour ton retour.

      La colonne Téléphone” ne portait pas le même nom, car j’avais mis l’accentuation sur le nom “Téléphone”. Merci pour cette remarque !

      SubCommentID=bKtnjHUV1VGPHXx, CommentID=znUF4BGog1DVsfc, PostID=BOQjgKg7tGCLr6l

    • Geoffroy

      Membre
      15 juin 2023 à 9h53

      Oui, en règle générale, il faut proscrire les accents et les espaces dans les noms de colonne. Et même comme ça, il y a parfois des trucs bizarres.

      SubCommentID=arZSpl9sI7SFOwl, CommentID=znUF4BGog1DVsfc, PostID=BOQjgKg7tGCLr6l

    • R3dKap

      Membre
      15 juin 2023 à 10h54

      Fabrice en fait la bonne pratique côté SharePoint pour créer des colonnes consiste à toujours procéder en 2 temps :

      1. Tu crées ta colonne en lui donnant un nom technique (appelé nom interne)-> sans espace, sans accents, sans tirets, sans underscores, plutôt au format Camel Case (c’est à dîre que tu commences par une minuscule, puis chaque première lettre d’un mot commence par une majuscule ; par ex. : colTelephone, colDateCreateProduit, etc.)

      2. Tu reviens en modification sur ta colonne une fois qu’elle a été créée, et là tu la renommes pour lui donner un nom d’affichage qui sera celui de ton entête de colonne sur la liste ou dans le formulaire de saisie d’un item de ta liste

      Voilou… Un très bon réflexe à prendre dès maintenant… 😉

      SubCommentID=tIzMpXCLYcwv7nR, CommentID=znUF4BGog1DVsfc, PostID=BOQjgKg7tGCLr6l

    • Fabrice

      Membre
      15 juin 2023 à 22h04

      C’est noté et retenu !

      Merci encore 😀

      SubCommentID=a2mm7ZHkVmvgBoi, CommentID=znUF4BGog1DVsfc, PostID=BOQjgKg7tGCLr6l

  • Thomas

    Membre
    14 juin 2023 à 16h24

    Oui, et il me semble d’ailleurs que c’est “Title” à la place de “Titre”…

    CommentID=7wTJSE4aRRRTusg, PostID=BOQjgKg7tGCLr6l

    • Fabrice

      Membre
      15 juin 2023 à 8h52

      Bonjour Thomas,

      Tu as effectivement raison. Merci pour cette information.

      SubCommentID=1y59nwHgT4qDwXV, CommentID=7wTJSE4aRRRTusg, PostID=BOQjgKg7tGCLr6l

  • Fabrice

    Membre
    15 juin 2023 à 8h57

    Merci beaucoup pour votre aide et votre expertise.

    Finalement, j’ai modifié toutes les entrées par des contrôles “texte”. Ca fonctionne ! J’ai bien les données enregistrées dans la liste SharePoint. Etant ma première application, je suis content que celle ci fonctionne !

    Merci encore !😀

    CommentID=w77CcIw0iEUzGJF, PostID=BOQjgKg7tGCLr6l

Connectez-vous pour répondre.