Putting Together a View
The following figure represents a view object structure. A view will contain a network of object dependencies. DDOs will rely on other DDOs. This is the updating dependency (set DDO_Server). DEOs rely on DDOs. This is the using dependency (set Server).

Any DDO may establish an updating dependency with any other DDO that is defined in the same view. This connection is made through one level of delegation. Any DEO may establish a using dependency with any DDO. This can involve multiple levels of delegation. If a DDO is placed inside another DDO, the DEOs would no longer be able to communicate directly with the nested DDO.
If a DEO does not have its own server property, it will use the same DDO that its parent does. In this example, DEO_4 will use the same DDO as its parent DEO_2. They would both be using DSO_B. Note that a server is defined at the outermost view level. This means that DEO_1 will use DDO_A as its server. What DDO will DEO_5 use? Hopefully, you answered DDO_A.
The database behaviors of DEOs are determined by the DDO that they are using. The nesting of DEOs has no effect on clearing, finding, saving, or delete behaviors. The exception to this is when a DEO is implicitly using a parent DEO's server (e.g., DEO_5). You will nest DEOs based on visual, program-flow, and navigational needs.
Although it is easy to connect your objects with updating and using dependencies, it is critical that these links are established properly. If DDOs are not properly connected to each other, they will not act in a coordinated fashion. If a DEO is not connected to a DDO, you will not get the behavior you desire. For example, if the main view did not use any DDO, it would have no server. If this happened, DEO_1 and DEO_5 would also have no server. If these connections are not made, your program will compile and run, but the view’s behaviors will be incorrect. Fortunately, the Studio creates these connections for you, and as discussed above, it is very easy to inspect view code and verify that your connections are correct.
When you create an application with the Studio, all of these connections are made for you automatically. In addition, a properly constructed data-dictionary subclass knows who its expected parent and child DDOs should be. If for some reason these servers are not provided or are not properly connected, the DDO will detect the error and generate a runtime error message.
Before you leave this section, make sure that you understand how the delegation of access methods allows data-server and data-entry objects to communicate with each other. This is a central part of the Framework methodology.