cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
chriss59194
Frequent Visitor

Filtrer un formulaire basé sur la sélection de la Galerie et enregistrer sur une

Bonjour a tous,

je débute dans powerapps

j’ai créer une gallérie d’une feuille google Sheets

je voudrais créer un formulaire pour quand je clic sur la gallérie qu’il puisse me copier mon numéros ID, le coller dans mon formulaire puis enregistrer ce formulaire sur une autres feuilles google Sheets.

Je vous remercie par avance de l’aide que vous pourrais m’apporter.

1 ACCEPTED SOLUTION

Accepted Solutions
Drrickryp
Super User
Super User

Bon jour @chriss59194 

As long as you have a common ID field in both sheets, you can do that. So that we don't get confused I will call your gallery: Gallery1, your two tables: Sheet1 is the source and Sheet2 is the target and Sheet1 has an ID field   and Sheet2 has a field called sheet1ID that is the foreign key in the relationship between the two tables.

Set the datasource of your Form to Sheet2 and the Items property to

Tant que vous avez un champ ID commun dans les deux feuilles, vous pouvez le faire. Pour que nous ne soyons pas confus, j'appellerai votre galerie: Gallery1, vos deux tables: Sheet1 est la source et Sheet2 est la cible et Sheet1 a un champ ID et Sheet2 a un champ appelé sheet1ID qui est la clé étrangère dans la relation entre les deux tables. Définissez la source de données de votre formulaire sur Sheet2 et la propriété Items sur

 

Lookup(
        Sheet2, sheetID1 = Gallery1.Selected.ID
)

 

Add the fields from Sheet2  to the form including the sheetID1 field.

Unlock the card containing the control for sheetID1  and set its Default value to Gallery1.Selected.ID and then either hide it or make the Default mode of the card: Disabled.  This will prevent a user from changing it.  If you have an ID field for Sheet2, unlock its card and make the default property of the control inside 

Ajoutez les champs de Sheet2 au formulaire, y compris le champ sheetID1. Déverrouillez la carte contenant le contrôle pour sheetID1 et définissez sa valeur par défaut sur Gallery1.Selected.ID, puis masquez-la ou définissez le mode par défaut de la carte: désactivé. Cela empêchera un utilisateur de le modifier. Si vous avez un champ ID pour Sheet2, déverrouillez sa carte et définissez la propriété par défaut du contrôle à l'intérieur

 

Coalesce(
          Parent.Default,First(
                                Sort(
                                      Sheet2, ID, Descending
                                 )
                           ).ID+1
)

 

This will assure that if the form is in New mode, that the next ID of Sheet2 will be assigned but if the form is in Edit mode, that the ID already assigned is not changed. Hide this card or disable it so it cannot be altered by a user. 

Cela garantira que si le formulaire est en mode Nouveau, que le prochain ID de Sheet2 sera attribué mais si le formulaire est en mode Edition, que l'ID déjà attribué n'est pas modifié. Cachez cette carte ou désactivez-la pour qu'elle ne puisse pas être modifiée par un utilisateur.  Veuillez échapper à mon français, ce n'est pas ma langue maternelle.

 

 

 

View solution in original post

3 REPLIES 3
Drrickryp
Super User
Super User

Bon jour @chriss59194 

As long as you have a common ID field in both sheets, you can do that. So that we don't get confused I will call your gallery: Gallery1, your two tables: Sheet1 is the source and Sheet2 is the target and Sheet1 has an ID field   and Sheet2 has a field called sheet1ID that is the foreign key in the relationship between the two tables.

Set the datasource of your Form to Sheet2 and the Items property to

Tant que vous avez un champ ID commun dans les deux feuilles, vous pouvez le faire. Pour que nous ne soyons pas confus, j'appellerai votre galerie: Gallery1, vos deux tables: Sheet1 est la source et Sheet2 est la cible et Sheet1 a un champ ID et Sheet2 a un champ appelé sheet1ID qui est la clé étrangère dans la relation entre les deux tables. Définissez la source de données de votre formulaire sur Sheet2 et la propriété Items sur

 

Lookup(
        Sheet2, sheetID1 = Gallery1.Selected.ID
)

 

Add the fields from Sheet2  to the form including the sheetID1 field.

Unlock the card containing the control for sheetID1  and set its Default value to Gallery1.Selected.ID and then either hide it or make the Default mode of the card: Disabled.  This will prevent a user from changing it.  If you have an ID field for Sheet2, unlock its card and make the default property of the control inside 

Ajoutez les champs de Sheet2 au formulaire, y compris le champ sheetID1. Déverrouillez la carte contenant le contrôle pour sheetID1 et définissez sa valeur par défaut sur Gallery1.Selected.ID, puis masquez-la ou définissez le mode par défaut de la carte: désactivé. Cela empêchera un utilisateur de le modifier. Si vous avez un champ ID pour Sheet2, déverrouillez sa carte et définissez la propriété par défaut du contrôle à l'intérieur

 

Coalesce(
          Parent.Default,First(
                                Sort(
                                      Sheet2, ID, Descending
                                 )
                           ).ID+1
)

 

This will assure that if the form is in New mode, that the next ID of Sheet2 will be assigned but if the form is in Edit mode, that the ID already assigned is not changed. Hide this card or disable it so it cannot be altered by a user. 

Cela garantira que si le formulaire est en mode Nouveau, que le prochain ID de Sheet2 sera attribué mais si le formulaire est en mode Edition, que l'ID déjà attribué n'est pas modifié. Cachez cette carte ou désactivez-la pour qu'elle ne puisse pas être modifiée par un utilisateur.  Veuillez échapper à mon français, ce n'est pas ma langue maternelle.

 

 

 

View solution in original post

Bonjour,

Merci pour cette réponse rapide qui fonctionne parfaitement.

 

J'ai 2 autre question :

 

1er question :

Dans le même formulaire j'ai mis un sélecteur de date et une zone de liste, comment je fait lors de l'enregistrement pour qu'il me les enregistre dans les champs correspondant a ma cible sheet2?

 

2ieme question :

 

j'ai une gallérie avec plusieurs conteneur, dans chaque conteneur j'ai un champ que l'on appelle "choix"

dans ce champ on va retrouver soit 1, 2 ou 3

je voudrais quand je clic sur un conteneur : si dans "choix" il y a "1" ouvrir le formulaire 1, si dans "choix" il y a "2" ouvrir le formulaire 2, si dans "choix" il y a "3" ouvrir le formulaire 3.

je ne sait pas comment faire cela, pourriez vous m'aider s'il vous plait ?

Merci

chriss59194
Frequent Visitor

Bonjour,

 

je revient vers vous car j'ai une galery1 avec une liste d'éléments, quand je clic sur un élément onselect : Navigate(FORM1)

une fois dans mon formulaire j'ai un champs ID qui reprend mon ID de ma galery1 sélectionné, Item :LookUp('FORM1';ID = galery1.Selected.ID)

 

ce formulaire fait un enregistrement sur une source de donnée google Sheets autre que celle de ma galery1

 

par contre j'ai besoin de votre aide car quand je clic sur enregistrer : SubmitForm(FORM1), il me modifie mes champs sur ma source de donnée google Sheets lié a mon ID, mes je voudrais qu'il me créer un nouvelle enregistrement tout en gardant mon ID sélectionné sur ma galery1.

 

MERCI

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

Welcome Super Users.jpg

Super User Season 2

Congratulations, the new Super User Season 2 for 2021 has started!

Carousel 2021 Release Wave 2 Plan 768x460.jpg

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Users online (2,588)