How to bind Adaptive Form Fields of a Repeatable Section to Database?

Avatar

Avatar

Sri_Bhargav_94

Avatar

Sri_Bhargav_94

Sri_Bhargav_94

12-02-2021

Hello Folks,

We are currently working on a requirement, where I need you guys help.

 

We have a form created with Form Model selected as FDM and connected to MySQL DB. It has one Repeatable Section / Panel and we used an Instance Manager as the option for doing the same, which has 2 buttons (Add and Remove). We used a Fragment for creating that panel and properly binded to DB fields.

When we try to insert data into DB using FDM service, expected scenario is if a user adds one more entry of same section with different details, then in the DB, I should see 2 records inserted (we have a logic at our end which is based on Unique Identifier at table level). But currently I see only 1 record getting inserted every time. I was assuming that section with proper binding is the one which is repeated, then same binding should be applied there too, but I doubt whether it was happening or not.

 

Can someone please help in understanding of  following questions on 

1. How this repeatable sections work especially while binding and doing DB operations? I explored the follow documents, but unfortunately couldn't able to get much info. Repeatable Section,

Similar question posted

2. What is the best approach for creating repeatable sections out of available one's like Accordion, Instance Manager, XDP Subform and XSD?

 

Quick help is appreciated!

@Mayank_Gandhi @smacdonald2008 

 

Regards,

Sri Bhargav

AEM Forms AEM Forms Designer FormsService

Answers (5)

Answers (5)

Avatar

Avatar

Sri_Bhargav_94

Avatar

Sri_Bhargav_94

Sri_Bhargav_94

18-02-2021

@Mayank_Gandhi , could you please provide some more details on what exactly you mean by term "row". Is it entire repeatable section? Also what does element in the data source mean?

An example of this would help understand better.

Avatar

Avatar

Mayank_Gandhi

Employee

Avatar

Mayank_Gandhi

Employee

Mayank_Gandhi
Employee

18-02-2021

@Sri_Bhargav_94  You need to make sure the row is bound to an element in data source which is a repeating element and that would work fine. I prefer using XSD or JSON schema.

Avatar

Avatar

Sri_Bhargav_94

Avatar

Sri_Bhargav_94

Sri_Bhargav_94

15-02-2021

Okay we're able to prefill the data for Repeatable sections, it's just that I need to return the data as an array in FDM service for form to understand and fill the data for all sections.

Thanks all for your responses!

Regards,

Sri Bhargav

Avatar

Avatar

Sri_Bhargav_94

Avatar

Sri_Bhargav_94

Sri_Bhargav_94

15-02-2021

Thanks for the response! Yes looks like FDM Service is going to insert only 1 record at a time. That's fine we can invoke that service for each and every section separately.

 

But what about prefilling data for the sections while using retrieving / get service? When user saves the form and sometime later comes back to complete submission, I should pre-populate data saved in DB for all sections filled by user earlier. Please help

 

Regards,

Sri Bhargav

Avatar

Avatar

GirishBedekar

Avatar

GirishBedekar

GirishBedekar

13-02-2021

I am not sure if insert operation of FDM can insert more than one row at a time