cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
KMK_T
Regular Visitor

Exactly How to pass many input fields into Flows?

I am developing an app that have 4 inputs as showed here.  When my user press the button, I intend to send these inputs into flow and let my flow add a row in Excel.

KMK_T_0-1594269024830.png

KMK_T_1-1594269047077.png

I got an error said "Invalid number of arguments: received 4, expected 1"

KMK_T_2-1594269094909.png

 

I am still on my learning curve on PowerApps so I might ask stupid question here. Anyway, can anyone show me the way? Thanks

 

 

3 ACCEPTED SOLUTIONS

Accepted Solutions

'PowerApp->Addarowintoatable'.Run(TextInput1.Text,DatePicker1.SelectedDate,PenInput1.Image,Dropdown1.SelectedText)

Tip: When you are writing the formula the  help text will indicate which variable needs to come at what sequence

This is the correct format to run a flow from power apps. All of the input variables are string so you might need to wrap around the text function here.

You might get an error on PenInput1.Image as your flow received string and this is type Image you can search the forums for alternate ways to send images via flow.

Please click Accept as Solution if it resolved your problem or give it a Thumbs Up if it helped you in anyway this will allow other people to search correct solutions effectively.

Thanks,

Rahber

 

View solution in original post

v-siky-msft
Community Support
Community Support

Hi @KMK_T ,

 

Your requirement can all be implemented via PowerApps, there is no need to use Flow. Please check my steps.

1. When creating the table in excel in OneDrive for business, add [image] after the imageuploadtest, then this column can be recognized as image field in PowerApps and store the image file link. All images are stored in a folder in onedrive called 'Images_images'.

Snipaste_2020-07-09_16-34-20.png

 

2. Connect the table to PowerApps, create a EditForm, set Default mode to New, select Table1 as the Data Source and add the fields in the form.

You can find the imageuploadtest field is image type, and the default control is AddPicutre control.

Snipaste_2020-07-09_16-39-12.pngSnipaste_2020-07-09_16-38-54.png

3. The next step is to replace the addpicture control to PenInput control. Unlock the data card, remove the Image control and AddPicture control, add a PenInput control in it.

4. Set the Update property of DataCard: PenInput1.Image.  Set the Y property of ErrorMessage:  PenInput1.Y + PenInput1.Height

Snipaste_2020-07-09_16-46-52.png

When that's all done, use SubmitForm() function to save the data into excel table.

Hope this helps.

Sik

 

View solution in original post

Big Thanks to both @v-siky-msft  and @Rahber !

 

@Rahber  >>> Now I know why it does that error, I need to do the dynamic expression "Before" connecting to my button. It suddenly works as expected!

@v-siky-msft  >>> your method is also very helpful

 

Again Thank you all. Now how do I accept 2 solutions ? lol

View solution in original post

7 REPLIES 7
Rahber
Super User
Super User

Hello,

So the number of inputs in the Power Apps depends on the number of variables asked in Power Automate.

I can see that you have one variable and you are using it 4 times in flow.

So in Power Apps you need to pass only one variable.

If you want to add more variables in Power Apps, in your Power Automate when you click on a field in the dynamic content it will give you as option to ask in Power Apps. Once you click it it will add another variable that you can pass through in Power Apps

So in short its the total number of unique variables in power automates that you need to pass in Power Apps (Not how many times a variables is being used in the flow)

 

Please click Accept as Solution if it resolved your problem or give it a Thumbs Up if it helped you in anyway this will allow other people to search correct solutions effectively.

Thanks,

Rahber

KMK_T
Regular Visitor

So I did choose the dynamic epression and got a set of 4 unique variables on Automate. I came back to my PowerApps and assign this to my button (OnSelect).

 

'PowerApp->Addarowintoatable'.Run(

Addarowintoatable_QuestionTextABC123 = TextInput1.Text,

Addarowintoatable_Dateinput                   = DatePicker1.SelectedDate,

Addarowintoatable_imageuploadtest        = PenInput1.Image,

Addarowintoatable_dropdown                   = Dropdown1.SelectedText )

 

And.... It said "invalid argument type". I think I did something wrong but not sure what it is ?

'PowerApp->Addarowintoatable'.Run(TextInput1.Text,DatePicker1.SelectedDate,PenInput1.Image,Dropdown1.SelectedText)

Tip: When you are writing the formula the  help text will indicate which variable needs to come at what sequence

This is the correct format to run a flow from power apps. All of the input variables are string so you might need to wrap around the text function here.

You might get an error on PenInput1.Image as your flow received string and this is type Image you can search the forums for alternate ways to send images via flow.

Please click Accept as Solution if it resolved your problem or give it a Thumbs Up if it helped you in anyway this will allow other people to search correct solutions effectively.

Thanks,

Rahber

 

View solution in original post

KMK_T
Regular Visitor

Very sorry but I still end up with "Received 4 expect 1". And I tried removing  peninput1 and still "Received 3 expect 1". Moreover, I got so many clones of my dynamin expressions. 

Annotation 2020-07-09 150253.png

 

v-siky-msft
Community Support
Community Support

Hi @KMK_T ,

 

Your requirement can all be implemented via PowerApps, there is no need to use Flow. Please check my steps.

1. When creating the table in excel in OneDrive for business, add [image] after the imageuploadtest, then this column can be recognized as image field in PowerApps and store the image file link. All images are stored in a folder in onedrive called 'Images_images'.

Snipaste_2020-07-09_16-34-20.png

 

2. Connect the table to PowerApps, create a EditForm, set Default mode to New, select Table1 as the Data Source and add the fields in the form.

You can find the imageuploadtest field is image type, and the default control is AddPicutre control.

Snipaste_2020-07-09_16-39-12.pngSnipaste_2020-07-09_16-38-54.png

3. The next step is to replace the addpicture control to PenInput control. Unlock the data card, remove the Image control and AddPicture control, add a PenInput control in it.

4. Set the Update property of DataCard: PenInput1.Image.  Set the Y property of ErrorMessage:  PenInput1.Y + PenInput1.Height

Snipaste_2020-07-09_16-46-52.png

When that's all done, use SubmitForm() function to save the data into excel table.

Hope this helps.

Sik

 

View solution in original post

Big Thanks to both @v-siky-msft  and @Rahber !

 

@Rahber  >>> Now I know why it does that error, I need to do the dynamic expression "Before" connecting to my button. It suddenly works as expected!

@v-siky-msft  >>> your method is also very helpful

 

Again Thank you all. Now how do I accept 2 solutions ? lol

View solution in original post

@KMK_T

You can select more than one solutions. You can simply go to both of the posts and click on "Accept as Solution" button.

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!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.

Top Solution Authors
Top Kudoed Authors
Users online (1,716)