Learn how to set up repeating groups in ABBYY FlexiCapture FlexiLayout Studio. Repeating groups can be useful in many ways, including collecting data from complicated tables where the table element cannot be used.
Hello. Today we are going to discuss how to create a repeating group within an ABBYY FlexiCapture FlexiLayout. The reason why we have repeating groups is because we want to extract information that's repeated on a document, but maybe it's not in a tabular format, or not in a nice, clean table. So, we can't use a table element, because it's too restrictive, so we have to tell the software that we have information that repeats. Therefore, when we extract it, we want it to repeat, and when it exports we want it to repeat the table and columns too, when we export the document.
What we're going to do is focus on just the repeating group element, we're not going to go through the process of setting up a FlexiLayout from scratch or plugging it in to the FlexiCapture software. That has been covered in other videos and I ask you to reference those, if you have any questions on that process.
The first thing we're going to do, is simply create a repeating group search element. And, I'm going to name it, just what we call repeating group one. The reason for this naming standard, and everybody has their own naming standards, and you can develop your own. So that we know that this is the base level of a repeating group. Then, as we nest, if we have two nested groups, you can see we'd have RG one, and then we would have everything nested under RG one, RG two, and RG three, and so forth. That's the purpose of what this is all about.
Within a repeating group, we want to tell the software what we're extracting. In this case, I'm going to tell it about three labeled fields, we're going to extract student information and then the average GPA. Then, we'll have that, of course, twice because there's two pieces of student information and two average GPA's on this document.
So, what I'm going to do is just create three different labeled fields. Now, for ease of this demo, I'm going to keep them labeled fields. Of course, you can process documents and you would, maybe even, develop this one a little bit different than me, but just understand for ease of a demo, I'm just going to restrict these to labeled fields. Of course, you can use any other search elements for repeating purposes.
Just quickly, I'm going to set up the student that we want to extract. And, just assuming that we want to stay away from this ID number, I'm just going to tell the search area to limit that, here on where we find the student number. I'm going to add some additional labeled fields, here for the ID number. And field position to the right is sufficient for us. Then, lastly, we'll do the average GPA, so we're capturing this average GPA per student. And the label here will be average GPA.
So, now we have three different labeled fields set up that will be repeating. What I'm going to simply do, is just test this. You'll see that it is extracting repeated information, it doesn't have them together yet, and that's going to be the next step, but you can see, it's capturing down here in our hypothesis tree multiple instances of a repeating group.
Sometimes you will have an instance or a last instance of a repeating group. As long as that last instance is all these yellow bubbles, then you won't have a problem with the software, it shows there as a hidden element, and it will not get exported, and also not used in the preview to the users. We are verifying our extracted details, here.
So, it did extract the information that we needed to. Now, you'll see that it's kind of messing these up, and there's some tricks we can use, and also different elements that we can use to help with this so it keeps this information together as one repeating group. For this case, I'm just going to tell the software that we want the student to be the anchor, and all I'm going to do there, is just tell the software that I want always to capture the one closest to the top of the document. Your logic on your documents may be different. So, just note that this is, obviously, for demo and video purposes.
The other thing that I will do, is I will tell it then the number and the average GPA that I want it to be closest to the student that it's referencing. So, what I will do, is simply just tell it to find me the search element that's relevant to student and once again, the search element that is relevant to the student.
If I test this now, you'll see the first repeating group here, we found the label and the field for each of those, that we wanted to reference. Then, on the second one, as well, here.
So, that's how we set up a repeating group. It's a very simple process. Then, of course, we would add a block. We have a repeating group block and you can, of course, add multiple pieces of text as well, here.
So, what I'm going to do, is show you what the software looks like from a repeating group perspective, if we add a repeating group. It's just a display to the end user that changes, here. I'm just going to tell the software that this is all instances of a repeating group block. Otherwise, we can return some separate text, here. So, just hang with me as I set up this. We'll just use the student name for this sample. Once again, this is only going to show you what the user sees once we've extracted it. So, we'll just call this the student name. And, we'll tell this, this is the student name field.
So, that's if we set up a repeating group block. We can tell the software just to return it outside of the repeating group, when we do that it's very important however, that we use this 'has repeating instances', and then we want to tell the software, of course, where we find the student name, in this case.
What I'm going to do is save it. I'm going to export this, so that we can use it. And, we will come back to our demo here and we'll, actually, create a new form together. We'll load a sample, we'll tell it where our FlexiLayout that we just exported was. Of course, we'll give it an intelligent name, tell it the marking type, or excuse me, the OCR or handwriting type that we want. And then, lastly you'll see here.
So, you can see the two different ways that I return the block to the software. It's going to be the same information, it just displays differently to the end user. It operates just a little bit differently. And you can see one groups them, in what we call a formal group. And then, the other one just brings it in to a tab, tabular format.
So, what I'm going to do is simply test this with you. Just so you can see the little bit of a display difference, here, on where the software extracts that information. So, of course, in the real world, we would want to add additional blocks, so that we return the ID number and the average GPA that we referenced there in the FlexiLayout, as well.
I hope you enjoyed this short video of how to create a repeating group. Repeating groups are very, very powerful and very commonly used in the development of FlexiLayouts.
If you have any questions, please reach out to us. We'd love to be of assistance to you. Thank you so much.