{"id":88052021,"date":"2019-11-08T11:47:22","date_gmt":"2019-11-08T11:47:22","guid":{"rendered":"http:\/\/access-basics.de\/index.php\/88052021.html"},"modified":"2019-11-08T11:47:22","modified_gmt":"2019-11-08T11:47:22","slug":"88052021","status":"publish","type":"page","link":"https:\/\/vbentwickler.de\/88052021\/","title":{"rendered":"Visual Basic Entwickler 05\/2021"},"content":{"rendered":"<h3>Seminarverwaltung I: Entity Data Model<\/h3>\n<p>Es wird Zeit, die gelernten Techniken mal wieder an einer praktischen L\u00f6sung auszuprobieren. In diesem Fall soll es eine Anwendung werden, die ich selbst einsetzen will, da ich seit ein paar Wochen auch Webinare zu verschiedenen Themen anbiete. Die Herausforderung ist, die Kunden, die \u00fcber einen Onlineshop bestellt haben, in die Anwendung einzulesen und diese den entsprechenden Seminaren beziehungsweise Webinaren zuzuordnen. Zu gegebener Zeit sollen die Teilnehmer eine Mail mit dem Link zur Teamssitzung erhalten und anschlie\u00dfend noch einen Link mit dem Download der Aufzeichnung des Seminars. Schlie\u00dflich sollen auch noch Zertifikate \u00fcber die Teilnahme erstellt und versendet werden. Wie dies alles gelingt, zeigt der vorliegende Artikel.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Seminarverwaltung_I_Entity_Data_Model\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Seminarverwaltung II: Ribbon und Frame<\/h3>\n<p>Um eine Anwendung wie eine Seminarverwaltung ergonomisch steuern zu k\u00f6nnen, ben\u00f6tigen wir die M\u00f6glichkeit, alle wichtigen Elemente der Benutzeroberfl\u00e4che und Funktionen schnell aufzurufen. Dazu verwenden wir ein Ribbon, dass alle ben\u00f6tigten Steuerelemente oben im Anwendungsfenster anbietet. Dieser Artikel zeigt, wie Sie das Ribbon f\u00fcr diese Anwendung definieren und wie Sie die einzelnen Funktionen vom Ribbon aus aufrufen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Seminarverwaltung_II_Ribbon_und_Frame\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Seminarverwaltung III: Daten vom Shopsystem<\/h3>\n<p>Unsere Seminarverwaltung lebt unter anderen davon, dass Bestellungen \u00fcber ein Shopsystem eingehen. Hier nutzen wir elopage, einen Anbieter, mit dem man verschiedene digitale Dienstleistungen online verkaufen kann. elopage \u00fcbernimmt dabei einige Aufgaben wie etwa die Bereitstellung von Produkt- und Bestellseiten. Nachdem eine Bestellung erfolgt ist, landen die Daten des Kunden inklusive der Daten zum bestellten Artikel in der Datenbank von elopage. Die Bestelldaten k\u00f6nnen wir per CSV-Datei exportieren und in unsere Seminarverwaltung einlesen. Dazu verwenden wir das NuGet-Paket CsvHelper, das wir in zwei weiteren Artikeln bereits vorgestellt haben. Der vorliegende Artikel zeigt, wie wir die beschriebenen Techniken f\u00fcr den Import in einem konkreten Anwendungsfall nutzen k\u00f6nnen.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Seminarverwaltung_III_Daten_vom_Shopsystem\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Navigieren mit CollectionViewSource<\/h3>\n<p>Bisher haben wir oft mit Detailansichten von Datens\u00e4tzen wie beispielsweise f\u00fcr Kunden oder Produkten gearbeitet, die zum Anlegen oder Bearbeiten eines einzelnen Datensatzes geeignet waren. Von Access kennen Sie die M\u00f6glichkeit, mit den Navigationsschaltfl\u00e4chen auch in solchen Detailformularen zu navigieren und von einem zum anderen Datensatz zu wechseln, ohne zwischendurch zu einem \u00dcbersichtsformular zu wechseln. In diesem Artikel wollen wir zeigen, wie Sie das unter WPF so abbilden k\u00f6nnen, wie es auch unter Access m\u00f6glich ist. Dabei nutzen wir die M\u00f6glichkeiten der CollectionViewSource. <\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Navigieren_mit_CollectionViewSource\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Versionsverwaltung mit Git<\/h3>\n<p>Wie geht eigentlich Versionsverwaltung mit Visual Studio-Projekten? Wer Software mit Access  entwickelt, musste sich dar\u00fcber nicht viele Gedanken machen: Man kopiert einfach die komplette .accdb-Datei unter einem anderen Namen. Mittlerweile gibt es auch einige L\u00f6sungen von Drittherstellern, mit denen die einzelnen Objekte verwaltet werden k\u00f6nnen. Unter Visual Studio ist die Versionsverwaltung zum Gl\u00fcck direkt integriert. Visual Studio nutzt daf\u00fcr die Quellcodeverwaltung Git. Welche Einsatzm\u00f6glichkeiten es gibt und wie Sie diese f\u00fcr Ihre eigenen Anforderungen einsetzen k\u00f6nnen, zeigt der vorliegende Artikel.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Versionsverwaltung_mit_Git\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Beispieldaten generieren mit Bogus<\/h3>\n<p>Wenn Sie eine Anwendung entwickeln, k\u00f6nnen Sie die meisten Funktionen nur testen, wenn die zugrunde liegende Datenbank bereits Beispieldaten enth\u00e4lt. Ausnahmen sind beispielsweise Formulare zum Anlegen neuer Datens\u00e4tze \u2013 hier legen Sie die Beispieldatenbank selbst an. In allen anderen F\u00e4llen kann es nicht schaden, ein paar Beispieldatens\u00e4tze in den jeweiligen Tabellen bereitzustellen. Oft reicht es aus, das Anlegen einiger Elemente wie Kunden oder Produkte hart im Code  zu verdrahten. Wenn Sie allerdings flexibel schnell f\u00fcr verschiedene Datenmodelle und Anwendungen Beispieldaten ben\u00f6tigen, reduzieren Sie den Aufwand zum Zusammenstellen der Beispieldaten zwar auf das einmalige Schreiben des Codes. Es macht aber auch keinen Spa\u00df, sich dann Informationen wie Teststra\u00dfe, Beispielfirma und Co. aus den Fingern zu saugen. Um dies zu automatisieren und gegebenenfalls auch gr\u00f6\u00dfere Mengen an Beispieldaten zu generieren, gibt es spezielle Tools. Eine davon hei\u00dft Bogus \u2013 und diese stellen wir in diesem Artikel im Detail vor.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Beispieldaten_generieren_mit_Bogus\">Zum Artikel &#8230;<\/a><\/p>\n<h3>Beispieldaten f\u00fcr ein EDM generieren<\/h3>\n<p>Im Artikel \u00bbBeispieldaten generieren mit Bogus\u00ab haben  wir gezeigt, wie Sie grunds\u00e4tzlich Beispieldaten mit der Erweiterung Bogus erzeugen. Dort haben wir allerdings noch offen gelassen, wie Sie solche Daten erzeugen, die in verkn\u00fcpften Tabellen gespeichert werden sollen \u2013 also beispielsweise in zwei Tabellen namens \u00bbKunden\u00ab und \u00bbBestellungen\u00ab, wobei die Tabelle \u00bbBestellungen\u00ab \u00fcber ein Fremdschl\u00fcsselfeld namens \u00bbKundeID\u00ab mit der Tabelle \u00bbKunden\u00ab verkn\u00fcpft ist. Wie das gelingt, und welche Techniken noch interessant sind f\u00fcr das Schreiben von Beispieldaten \u00fcber ein Entity Data Model direkt in die zugrunde liegenden Tabellen, beschreiben wir im vorliegenden Artikel.<\/p>\n<p><a href=\"http:\/\/www.vbentwickler.de\/Beispieldaten_fuer_ein_EDM_generieren\">Zum Artikel &#8230;<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Seminarverwaltung I: Entity Data Model Es wird Zeit, die gelernten Techniken mal wieder an einer praktischen L\u00f6sung auszuprobieren. In diesem Fall soll es eine Anwendung werden, die ich selbst einsetzen will, da ich seit ein<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","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":""},"yst_prominent_words":[],"class_list":["post-88052021","page","type-page","status-publish","hentry"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages\/88052021","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=88052021"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/pages\/88052021\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=88052021"}],"wp:term":[{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=88052021"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}