Hello, in this video let's start to implement extended view object. There are only four steps simple steps, you just will create a new object and we select extend and we will go into the existing view object and we will see what exactly thing is with what we can update. Last thing is we have control what is what we can add in the new one do you object so this one is really over and see how we can implement this extended view object. Here I have created just a simple application extended the object as a department and the buoy is a buoy entity just make at some label over this is a business rule here or at emit rule which you use. Regular Expression validation this type is already exists predefined and I select match, use image and use this better So I just add a validation rule over the email address in the view object live in believe you object here or add to this to value over the manager and the department.
So this is the configuration which I did in the review and in between in let's now try to create another view object which will extend the MVP view. So I will expect it will extend all attribute and all this to a value I think I added view criteria here as well. This I just add a view criteria here, here which will return all MVP with salary greater than 20 K. So I will explain to extent is a view criteria content list of values So, let's now create another view object as you can see here accidents this extends. So, I will select the employee it will get a list of view object which you can accident. So I will extend the employee view object so the all option is now great means you're not able to make any change because this view object will extend the MVP for you.
Next, okay, here it will say the entity object will be extended as well. So, all configurations the entity object will be extended. Next, it will take all attribute and even attribute settings what you will not be able to make any change as I said, this is a query and you can make some changes a query if you want but this let us now go for this This is all binding variable old Java classes okay let's just generate the extended view okay. So, this is now the extended view object. If you go to force attribute for example, you will find here you will not be able to make a change over the attribute why because this attribute is extended as you can see here it is accidental attribute. So, you will be able to make a change if you will review criteria you will find the theory theories exist but you will not be able to edit it if you go for a list of value find the list of value is already exist here.
So, it extended all things of the main view object. Okay, so let's now try to add some my own fingers like I need to in for this accident. I will need to To add a new attribute call in buoy full name and I need this attribute to display as a first name and last name together okay, so I need to do it in programmatic way so I will go to the Java they will extend Java and they will use Chavo and include accessor because I need the setter and secutor as well. So I need accessors and I need to extend the base Okay. I will show you something here now. So if you open this okay so as you can see here is a view object here only get has a getter of their full name but you will not find any setter or getter of the other attribute because other attribute is extended and you can eat in NZ view in the Java level, you can't even implement it, but you can use it like getter and setter of it you will find here your clause is extent, if euro invalid.
So, currently you will not be able even to read it because it says extended view invalid. So, if you right here get for example, first name which is existed is this one attribute but you will not find it. Why? Because you didn't generate the Java in the main extended view. So, if you want to use the setter, setter and the getter of the extended view, you have to generate the Java class of the main view object. So, I will go to the resolve of the main view object, I will just generate the row embed and I will include accessors to include the setter and target if you generate this Java class here If you open it here now, it is in buoy view, row embed and you will find setter and the getter for all attribute.
In that case, if you go here, you will find automatically now, the our extended view is extent in between the view row, which is this. Now I can I have an ability now to use a setter and a getter in the extended view object now, and now is extended to the object. I can't have any control to make a change here, but in Java, I can use the getter of this attribute and the setter because now what is view is extended in employee view. So here is the full name, I will see return I will say return. Now if I get in first name, I should get it plus it's just this piece must get Last Okay. So now I am in the extended view object and this view object is excellent if we believe you wrote the mean in believe your imprint which has all sit on together was accidentally attribute.
So I never was able to read the first name and the last name of the parent view object which is in between. So in the extended view object, I add one attribute column bluie full name, this attribute is extended. So if you go to the Chava embed embed, you will find you have only access to the input for name but you don't see any other extended attribute but at the same time, you can use the getter and setter offset this attribute by extending the mean view LM after you generate it's close. So now all looks okay you can add some change as well if you need to add any any attribute even from the entity you can add attribute again from the entity you can select the salary again and you can work on this attribute. Okay, so now we can change this as well in the a query, you can add any view criteria, more view criteria and the case you will have an can see for example, I need salary is this Zen wiki.
So I have this future I can edit this is I can because it's extended so I can add any more view criteria I can change is a weird clause, as well. So if you see you here, you can Change your workflows by adding any other workload or you can just uncheck this to see the query behind it even you can't change it because this as it is exists here, it will be the same here. So, even you can't select this if you can make change in the order goes on by need to order by first name here okay. So, you can add any change in the way in order boy you can add any more view criteria you can add any more attribute. So, now, we can try to use both of them in here I would predict we can even sorry in the extended objects in the query dataset, where clause in the query or if you if you will, to the main one, and you should select this as normal syntactic query.
If you wish he coherences close this would be able to on the check and you have here so we're close. So, I will see for example, we are in between department his design sucks can have tests here and to query will get weird in between department is this and sec sec so here find what went on 30 or you can get a specific employee we can see equal 30 in that case it would get all in blue this only employee for the Berkman 30 Okay so let's now it's a bit chilly we'll add tap sorbet new tab here I would see mean you mix two so it's drag I can shut up just extended to you to be abused here you should be able to notice so I will just shorten this here so now I have in believe you won You can edit as a table and it's extended I would take this extended and it was fun Okay, so this is our main in believe you will find it return or MVP in the title is the same from the entities that is the label.
What was the column you'll find here list of value is created. Okay, so all looks okay. If it weren't for this extended view object which will extend the same label, as you can see extend the same resale value, but we add our full name, which displays a first name and last, the last names is the things which we add in over the main view. So as you can see here, the Senate view is extent everything and we override the query, we override one of the attribute, but it will take all the configuration from the main view object, this is extended view object. As I said, it This feature is rarely used, but you should be able to notice maybe you will use it in your ADF application in some situation. So this is extended view object next video, I will go for other features.
So see you next video.