
Fonction Patch
Étiquetté : powerapps, SharePoint
Fonction Patch
Posté par Fabrice sur 13 juin 2023 à 15h47Bonjour,
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
FabricePostID=BOQjgKg7tGCLr6l
Fabrice a répondu Il y a 1 année, 4 mois 1 Membre · 14 Réponses- 14 Réponses
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
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
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
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
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
Bonjour,
Merci pour cette info et pour ton aide !! 😀SubCommentID=OaKaw6Bf5XKOYwv, CommentID=3b8aCZjvvyZGLgW, PostID=BOQjgKg7tGCLr6l
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
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
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
Fabrice en fait la bonne pratique côté SharePoint pour créer des colonnes consiste à toujours procéder en 2 temps :
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.)
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
C’est noté et retenu !
Merci encore 😀
SubCommentID=a2mm7ZHkVmvgBoi, CommentID=znUF4BGog1DVsfc, PostID=BOQjgKg7tGCLr6l
Oui, et il me semble d’ailleurs que c’est “Title” à la place de “Titre”…
CommentID=7wTJSE4aRRRTusg, PostID=BOQjgKg7tGCLr6l
Bonjour Thomas,
Tu as effectivement raison. Merci pour cette information.
SubCommentID=1y59nwHgT4qDwXV, CommentID=7wTJSE4aRRRTusg, PostID=BOQjgKg7tGCLr6l
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.