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 II
Super User II

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
PA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!

secondImage

Demo Extravaganza is Back!

We are excited to announce that Demo Extravaganza for 2021 has started!

MBAS on Demand

Microsoft Business Applications Summit sessions

On-demand access to all the great content presented by the product teams and community members! #MSBizAppsSummit #CommunityRocks

Power Apps June 2021

June Power Apps Community Call

Don't miss the call this month on June 16th - 8a PDT

Top Solution Authors
Top Kudoed Authors
Users online (21,581)