{"id":8084,"date":"2015-11-30T14:45:34","date_gmt":"2015-11-30T20:45:34","guid":{"rendered":"http:\/\/www.mrc-productivity.com\/legacy\/?page_id=8084"},"modified":"2017-06-12T12:13:57","modified_gmt":"2017-06-12T17:13:57","slug":"parentchild-applications","status":"publish","type":"page","link":"https:\/\/www.mrc-productivity.com\/legacy\/maint\/parentchild-applications","title":{"rendered":"Parent\/Child Applications"},"content":{"rendered":"<h1>Parent\/Child Applications<\/h1>\n<p>Creating applications that support Parent\/Child architecture (also known as Header\/Detail) is a common task for m-Power developers. This feature aims to greatly simplify the development\/customization effort of creating these types of applications. A few examples of Parent\/Child applications include:<\/p>\n<ul style=\"margin-left:15px\">\n<li>-Order Entry, where Billing\/Shipping is stored in the parent, and order lines are in the details.<\/li>\n<li>-Expense Forms, where employee information is stored in the parent, and expense lines are in the details.<\/li>\n<li>-Enrollment Applications, where user information is stored in the parent, and all of their selected courses are stored in the details.<\/li>\n<\/ul>\n<p>In short, any application that would require you to have a one to many relationship would be a great candidate for this Parent\/Child feature. <\/p>\n<p>Creating your Maintenance applications using the Display &#038; Maintain template using the Parent\/Child feature, enables numerous features, including:<\/p>\n<ul style=\"margin-left:15px\">\n<li>-Automatic linking of application at run-time. Each parent record will include a link that allows users to view the Child information belonging to the Parent.<\/li>\n<li>-The Child review screen will include a link to return to the Parent.<\/li>\n<li>-Inclusion of Parent information on Child screens <\/li>\n<li>-Auto-delete of Child records when Parent is deleted <\/li>\n<li>-Auto-copy of Child records when Parent is copied<\/li>\n<li>-Auto-Redirect to add new Child immediately upon creating Header<\/li>\n<\/ul>\n<h3>Video Documentation<\/h3>\n<p><iframe loading=\"lazy\" width=\"560\" height=\"315\" src=\"https:\/\/www.youtube.com\/embed\/Aq3E0FmKyCY\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<h3>Implementing this Feature<\/h3>\n<ol>\n<li>Create Parent Application &#8212; Create your Parent Application over the necessary tables using the Display and Maintain template. Prior to compiling, navigate to the &quot;Application Settings&quot; section. At the bottom, be sure to set the &quot;Parent\/Child Options&quot; value to &quot;Parent Application.&quot;<br \/>\n<img decoding=\"async\" src=\"\/legacy\/images\/parentchild1.jpg\"\/><\/li>\n<li>Create Child Application &#8212; Create your Child level Application over the necessary tables using the Display and Maintain template. Prior to compiling, navigate to the &quot;Application Settings&quot; section. At the bottom, be sure to set the &quot;Parent\/Child Options&quot; value to &quot;Child Application.&quot;<br \/>\n<img decoding=\"async\" src=\"\/legacy\/images\/parentchild2.jpg\"\/><\/li>\n<li>Edit Parent Application &#8212; Return to the &quot;Build and Customize&quot; screen of your Parent application. Click on the &quot;Link to Child&quot; icon. This is what will bind the two applications together, passing the necessary fields.<br \/>\n<strong>Note: <\/strong>Button missing? Be sure you&#39;ve specified the application as a Parent Application in step 1 above.<br \/>\n<img decoding=\"async\" src=\"\/legacy\/images\/parentchild3.jpg\"\/><\/li>\n<li>Select Child &#8212; Use the drilldown to select the necessary child.<br \/>\n<strong>Note: <\/strong>Child Application missing? Be sure you&#39;ve specified the necessary application as a Child Application in step 2 above.<\/li>\n<li>Configure Parameters &#8212; Use the interface to select the field(s) from the Parent and Child applications that should be linked. For example, if the Parent and Child record utilize Order # as the common link between them, choose both (see image). However, if your case required more than one field (such as Company #), feel free to add as many fields as necessary.<br \/>\n<img decoding=\"async\" src=\"\/legacy\/images\/parentchild4.jpg\"\/><\/li>\n<\/ol>\n<h3>Screenshots of this Feature at Run-Time<\/h3>\n<ul>\n<li>The Parent Application contains a new button that allows users to see Child records that pertain to the user<br \/>\n<img decoding=\"async\" src=\"\/legacy\/images\/parentchild5.jpg\"\/><\/li>\n<li>The Child Application contains Parent information above the Child records as well as a button that allows users to return to the Parent screen<br \/>\n<img decoding=\"async\" src=\"\/legacy\/images\/parentchild6.jpg\"\/><\/li>\n<\/ul>\n<h3>Configuring this Feature<\/h3>\n<p>There are three configurable options that are included with this feature, all accessible via the Application Properties of the Parent application, under the &quot;Parent&quot; tab.<br \/>\n<img decoding=\"async\" src=\"\/legacy\/images\/parentchild7.jpg\"\/><\/p>\n<ul>\n<li>Auto Redirect On Add &#8212; Redirect to Child by default &#8212; When &#39;Redirect to Child&#39; is set, the application will automatically redirect the user to add a Child record after they have added a new Parent Record. However, if &quot;Normal Redirect&quot; is set, when a Parent record is added, the application will simply return back to the Parent maintainer.<\/li>\n<li>Auto Copy Child Records &#8212; Off by default &#8212; When enabled, in the event that a parent record is copied, all associated child records will also be copied<\/li>\n<li>Auto Delete Child Records &#8212; On by default &#8212; will delete all child record associated with the parent when the parent is deleted.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Parent\/Child Applications Creating applications that support Parent\/Child architecture (also known as Header\/Detail) is a common task for m-Power developers. This feature aims to greatly simplify the development\/customization effort of creating these types of applications. A few examples of Parent\/Child applications include: -Order Entry, where Billing\/Shipping is stored in the parent, and order lines are in [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":3567,"menu_order":10,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-8084","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/pages\/8084","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/comments?post=8084"}],"version-history":[{"count":15,"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/pages\/8084\/revisions"}],"predecessor-version":[{"id":8106,"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/pages\/8084\/revisions\/8106"}],"up":[{"embeddable":true,"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/pages\/3567"}],"wp:attachment":[{"href":"https:\/\/www.mrc-productivity.com\/legacy\/wp-json\/wp\/v2\/media?parent=8084"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}