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

Gallery Items- Insert , Update , Delete ( Sharepoint List )

Hi Gurus

I have a gallery where user can Insert , Update and Delete an Item . 

When user hits save button all rows in the Gallery to be saved back to sharepoint list ( If it is an insert on the gallery using + button  insert a new line in sharepoint list , If deleted delete that line from sharepoint list , If updated , update that line in sharepoint list ) . 

 

How to achieve this requirement.

 

Details on the screen attached .

SC4.jpg

3 REPLIES 3
v-bofeng-msft
Community Support
Community Support

Hi @avi2017 :

Could you tell me:

  • What is the gallary's item property?What is the relationship between this collection and the SharePoint List?
  • Do you want to edit/add/delete the corresponding records in the SharPoint List when editing this collection in the gallery?

Sorry, I am confused about your question. If you can provide more details, I may be able to provide more specific soltuion.

I'v made a test for your reference:

1\ My SharePoint list-LIST6

2\ Set apps OnStart property to:

 

ClearCollect(AAA,LIST6)  // AAA is my test collection ,LIST6 is my sharepoint list

 

3\ Add a blank gallery control gallery1 to screen1 and set its Items property to:

 

AAA

 

4\ Insert four textinput controls into gallery1  (TextInput3/TextInput3_1/TextInput3_2/TextInput3_3)

TextInput3-Default 

 

ThisItem.Title

 

Onchange

 

Patch(AAA,ThisItem,{Title:TextInput3.Text});Patch(LIST6,LookUp(LIST6,ID=ThisItem.ID),{Title:TextInput3.Text})

 

TextInput3_1-Default 

 

ThisItem.NAME

 

OnChange

 

Patch(AAA,ThisItem,{NAME:TextInput3_1.Text});Patch(LIST6,LookUp(LIST6,ID=ThisItem.ID),{NAME:TextInput3_1.Text})

 

TextInput3_2-Default 

 

ThisItem.INTEREST

 

OnChange

 

Patch(AAA,ThisItem,{INTEREST:TextInput3_2.Text});Patch(LIST6,LookUp(LIST6,ID=ThisItem.ID),{INTEREST:TextInput3_2.Text})

 

TextInput3_3-Default 

 

ThisItem.BONUSAMOUNT

 

Onchange

 

 

Patch(AAA,ThisItem,{BONUSAMOUNT:TextInput3_3.Text});Patch(LIST6,LookUp(LIST6,ID=ThisItem.ID),{BONUSAMOUNT:TextInput3_3.Text})

 

6\ Add a Add Icon control to screen1 and set its onselect property to:

 

Patch(LIST6,Defaults(LIST6),{Title:Blank(),NAME:Blank(),INTEREST:Blank(),BONUSAMOUNT:Blank()});
Patch(AAA,Defaults(AAA),Last(Sort(LIST6,Modified,Ascending))

 

7\ Insert trash Icon control into gallery1 and set its onselect property to:

 

Remove(AAA,ThisItem);Remove(LIST6,LookUp(LIST6,ID=ThisItem.ID))

 

9\ The result are as follow:

 1.JPG

No need to submit changes, all changes in the gallery will be immediately submitted to the SharePoint list.

Best Regards,

Bof

 

 

 

 

 

 

@v-bofeng-msft 

 

Thanks a lot for the reply. Part of my requirement works with the logic mentioned in your reply . Most of the times my need is to copy all employees from existing company code and add/delete/modify copied employees and save those employees in new company code

 

For example in LIST6 max value of company code is 80000000002 , then i add 1 to 80000000002 and next company code is 80000000003

 

When i select company code 8000000002 in the drop down list . All employees from company code 8000000002 will show up in Gallery where insert/delete/modify employes and when SAVE button is pressed or on action those employees in the Gallery should save into COLLECTION and finally into LIST6

 

Below mentioned is how LIST6 is 

SC5.jpg

so when company code 80000000002 is selected below employees will be visible in Gallery 

SC6.jpg

I can insert/modify/delete employees from the Gallery but when it gets saved to COLLECTION or LIST6 it should consider those as new entries to LIST6 with COMPANY CODE 800000000003  and after save LIST6 should look like as below

Company CodeEMPLOYEEE#NAMEINTERESTBONUS AMOUNT
80000000000200000XYZ120100
80000000000200001XYZ221200
80000000000200002XYZ322300
80000000000200003XYZ423400
80000000000200004XYZ524500
80000000000200005XYZ625600
80000000000200006XYZ726700
80000000001200009PQR10350
80000000002200010EDG2145
80000000002200011TSE12234
80000000003200010EDG2145
80000000003200011TSE12234
80000000003200013TSE12234

Thanks 

Hi @avi2017 :

Has the problem been solved?
Is there anything else I can help?

In addition,Since the ‘company code’ is a field in the data source, I think there is no need to use collection. I suggest you directly set the gallery's items property to:

Filter(LIST6,'Company Code'=YourDropdown.seleceted.'Company Code')

Best Regards,

Bof

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

Are Your Ready?

Test your skills now with the Cloud Skill Challenge.

Top Solution Authors
Top Kudoed Authors
Users online (63,922)