{"id":55000217,"date":"2014-06-01T00:00:00","date_gmt":"2020-01-24T15:59:00","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=217"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"TreeView_und_Unterformulare","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html","title":{"rendered":"TreeView und Unterformulare"},"content":{"rendered":"<p class='introduction'>Ein TreeView-Steuerelement kann zwar hierarchische Daten anzeigen, aber es ist nicht dazu geeignet, mehr als einige wenige Informationen zum jeweiligen Element zu liefern. Wenn Sie weitere Informationen zum jeweils markierten Element einblenden m&ouml;chten, werden Sie dies entweder im gleichen Formular erledigen, in dem sich das TreeView-Steuerelement befindet oder in einem Unterformular-Steuerelement, das gegebenenfalls verschiedene Unterformulare anzeigen kann.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels finden Sie in der Datenbank <b>1309_TreeView.mdb<\/b>.<\/p>\n<h2>Beispielobjekte<\/h2>\n<p>In dieser Datenbank finden Sie ein Formular namens <b>frmKundenBestellungenArtikel <\/b>vor, das bereits im Artikel <b>Das TreeView-Steuerelement: Verkn&uuml;pfte Daten, Teil I <\/b>beschrieben wurde und als Grundlage f&uuml;r das in diesem Artikel erstellte Formular <b>frmKundenBestellungenArtikel_Unterformular <\/b>dient.<\/p>\n<h2>Vom TreeView zum Unterformular<\/h2>\n<p>Wenn wir beispielsweise das TreeView-Steuerelement aus dem Artikel <b>Das TreeView-Steuerelement: Verkn&uuml;pfte Daten, Teil I <\/b>betrachten, finden wir zwar bereits eine Menge Informationen vor (siehe Bild 1).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_217_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_217_001.png\" alt=\"Beispiel f&uuml;r hierarchische Daten\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Beispiel f&uuml;r hierarchische Daten<\/p>\n<p>Es zeigt eine &uuml;bersicht aller Kunden an und liefert per Mausklick die Datumsangaben zu den bisherigen Bestellungen sowie die bestellten Artikel. Nun w&auml;re es doch richtig praktisch, wenn das Formular, in dem sich das TreeView-Steuerelement befindet, weitere Informationen zum jeweils angeklickten Element anzeigen w&uuml;rde. Wenn der Benutzer auf einen Kunden klickt, soll das Formular beispielsweise die Details zu diesem Kunden liefern, wenn er eine Bestellung anklickt, soll die Bestellung erscheinen &#8211; mit Bestelldatum und gegebenenfalls mit Bestellpositionen.  Wenn der Benutzer dann auf eine der Bestellpositionen im TreeView klickt, kann das Formular gleich den passenden Artikel samt Details anzeigen &#8211; die Bestellpositionen erscheinen ja bereits, wenn der Benutzer auf die Bestellung klickt.<\/p>\n<p>Wie organisieren wir dies Am einfachsten ist es, verschiedene Unterformular anzulegen, die bei Bedarf in einem Unterformular-Steuerelement eingeblendet werden und den passenden Datensatz anzeigen.<\/p>\n<p>Wir ben&ouml;tigen also drei Unterformulare:<\/p>\n<ul>\n<li>eines f&uuml;r die Kunden,<\/li>\n<li>eines f&uuml;r die Bestellung samt Bestelldetails und<\/li>\n<li>eines f&uuml;r die Artikel.<\/li>\n<\/ul>\n<h2>Unterformulare<\/h2>\n<p>Wir werden diese Unterformular recht einfach halten, um den eigentlichen Fokus dieses Artikels nicht aus den Augen zu lassen. Daher in aller K&uuml;rze:<\/p>\n<p>Das Unterformular <b>sfmKunden <\/b>soll die Daten der Tabelle <b>tblKunden <\/b>anzeigen.<\/p>\n<p>Daher stellen Sie die Eigenschaft <b>Datenherkunft <\/b>auf diese Tabelle ein und f&uuml;gen dem Formularentwurf die ben&ouml;tigten Felder der Tabelle hinzu (siehe Bild 2).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_217_002.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_217_002.png\" alt=\"Das Unterformular sfmKunden in der Entwurfsansicht\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: Das Unterformular sfmKunden in der Entwurfsansicht<\/p>\n<p>Das Unterformular <b>sfmArtikel <\/b>wird &uuml;ber die Eigenschaft Datenherkunft an die Tabelle <b>tblArtikel <\/b>gebunden. Ziehen Sie alle Felder der Tabelle Artikel in den Detailbereich des Formularentwurfs und ordnen Sie diese grob an (siehe Bild 3).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_217_003.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_217_003.png\" alt=\"Unterformular zur Anzeige der Artikeldetails\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 3: Unterformular zur Anzeige der Artikeldetails<\/p>\n<p>Das Unterformular <b>sfmBestellungenzeigt <\/b>im oberen Bereich die Daten der Bestellung selbst an, also Bestelldatum et cetera. Entsprechend stellen Sie als Datenherkunft die Tabelle <b>tblBestellungen <\/b>ein und f&uuml;gen die gew&uuml;nschten Felder zum Entwurf hinzu.<\/p>\n<p>Es soll jedoch noch ein weiteres Unterformular enthalten, das die Bestellpositionen enth&auml;lt. Dieses verwendet die Tabelle <b>tblBestellpositionen <\/b>als Datenherkunft. Stellen Sie dort au&szlig;erdem die Eigenschaft <b>Standardansicht <\/b>auf <b>Datenblatt <\/b>ein (siehe Bild 4).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_217_004.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_217_004.png\" alt=\"Das Unterformular sfmBestelldetails soll in der Datenblattansicht erscheinen.\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 4: Das Unterformular sfmBestelldetails soll in der Datenblattansicht erscheinen.<\/p>\n<p>Wenn Sie das Unterformular <b>sfmBestellpositionen <\/b>in das &uuml;bergeordnete Unterformular <b>sfmBestellungen <\/b>ziehen, sollten die beiden Eigenschaften <b>Verkn&uuml;pfen von <\/b>und <b>Verkn&uuml;pfen nach <\/b>des Unterformularsteuerelements automatisch jeweils auf das Feld <b>BestellungID <\/b>eingestellt werden.<\/p>\n<p>Falls nicht, holen Sie dies manuell nach. Dazu markieren Sie das Unterformular-Steuerelement, nicht das Unterformular selbst &#8211; dies geht am einfachsten durch Ausw&auml;hlen des entsprechenden Eintrags in der Liste im Eigenschaftsfenster (siehe Bild 5).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_217_005.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_217_005.png\" alt=\"Verkn&uuml;pfung zwischen Unterformular und &uuml;bergeordnetem Hauptformular\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 5: Verkn&uuml;pfung zwischen Unterformular und &uuml;bergeordnetem Hauptformular<\/p>\n<h2>Unterformular-Steuerelement<\/h2>\n<p>Nach diesen Vorbereitungsarbeiten k&uuml;mmern wir uns um die Anzeige der verschiedenen Unterformulare in dem Hauptformular, das auch das TreeView-Steuerelement enth&auml;lt. Dazu f&uuml;gen Sie zun&auml;chst ein noch leeres Unterformular-Steuerelement zum Formular <b>frmKundenBestellungenArtikel_Unterformular <\/b>hinzu. Das Unterformular-Steuerelement soll den Namen <b>sfm <\/b>erhalten, das Bezeichnungsfeld benennen Sie in <b>lblUnterformular <\/b>um. Die Steuerelemente sollen schlie&szlig;lich etwa wie in Bild 6 angeordnet sein.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_217_006.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_217_006.png\" alt=\"TreeView-Steuerelement und Unterformular zur Anzeige der Detaildaten im Entwurf\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 6: TreeView-Steuerelement und Unterformular zur Anzeige der Detaildaten im Entwurf<\/p>\n<h2>Aktion bei Mausklick<\/h2>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000;\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000;\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Access &#091;basics&#093;<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/shop.minhorst.com\/magazine\/282\/access-basics?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000;\">Danach greifen Sie sofort auf <strong>alle rund 400 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000;\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000217\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/index.php\/data\/wp\/v2\/posts\/55000217?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000217\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"34aae43e8a\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein TreeView-Steuerelement kann zwar hierarchische Daten anzeigen, aber es ist nicht dazu geeignet, mehr als einige wenige Informationen zum jeweiligen Element zu liefern. Wenn Sie weitere Informationen zum jeweils markierten Element einblenden m&ouml;chten, werden Sie dies entweder im gleichen Formular erledigen, in dem sich das TreeView-Steuerelement befindet oder in einem Unterformular-Steuerelement, das gegebenenfalls verschiedene Unterformulare anzeigen kann.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[662013,66092013,44000012],"tags":[],"class_list":["post-55000217","post","type-post","status-publish","format-standard","hentry","category-662013","category-66092013","category-Steuerelemente"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v15.9.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>TreeView und Unterformulare - Access [basics]<\/title>\n<meta name=\"description\" content=\"Ein TreeView-Steuerelement kann zwar hierarchische Daten anzeigen, aber es ist nicht dazu geeignet, mehr als einige wenige Informationen zum jeweiligen Element zu liefern. Wenn Sie weitere Informationen zum jeweils markierten Element einblenden m\u00f6chten, werden Sie dies entweder im gleichen Formular erledigen, in dem sich das TreeView-Steuerelement befindet oder in einem Unterformular-Steuerelement, das gegebenenfalls verschiedene Unterformulare anzeigen kann.\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"TreeView und Unterformulare - Access [basics]\" \/>\n<meta property=\"og:description\" content=\"Ein TreeView-Steuerelement kann zwar hierarchische Daten anzeigen, aber es ist nicht dazu geeignet, mehr als einige wenige Informationen zum jeweiligen Element zu liefern. Wenn Sie weitere Informationen zum jeweils markierten Element einblenden m\u00f6chten, werden Sie dies entweder im gleichen Formular erledigen, in dem sich das TreeView-Steuerelement befindet oder in einem Unterformular-Steuerelement, das gegebenenfalls verschiedene Unterformulare anzeigen kann.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html\" \/>\n<meta property=\"og:site_name\" content=\"Access [basics]\" \/>\n<meta property=\"article:published_time\" content=\"2020-01-24T15:59:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"-0001-11-30T00:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/..\/tl_files\/images\/pic_217_001.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\">\n\t<meta name=\"twitter:data1\" content=\"10\u00a0Minuten\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/access-basics.de\/#website\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/access-basics.de\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html#primaryimage\",\"inLanguage\":\"de\",\"url\":\"..\/tl_files\/images\/pic_217_001.png\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html#webpage\",\"url\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html\",\"name\":\"TreeView und Unterformulare - Access [basics]\",\"isPartOf\":{\"@id\":\"https:\/\/access-basics.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html#primaryimage\"},\"datePublished\":\"2020-01-24T15:59:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"author\":{\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\"},\"description\":\"Ein TreeView-Steuerelement kann zwar hierarchische Daten anzeigen, aber es ist nicht dazu geeignet, mehr als einige wenige Informationen zum jeweiligen Element zu liefern. Wenn Sie weitere Informationen zum jeweils markierten Element einblenden m\\u00f6chten, werden Sie dies entweder im gleichen Formular erledigen, in dem sich das TreeView-Steuerelement befindet oder in einem Unterformular-Steuerelement, das gegebenenfalls verschiedene Unterformulare anzeigen kann.\",\"breadcrumb\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html\",\"url\":\"https:\/\/access-basics.de\/index.php\/TreeView_und_Unterformulare.html\",\"name\":\"TreeView und Unterformulare\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/#personlogo\",\"inLanguage\":\"de\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000217","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/comments?post=55000217"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000217\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000217"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000217"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000217"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}