{"id":55000351,"date":"2023-02-01T00:00:00","date_gmt":"2023-03-02T20:58:57","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=351"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Rechnungen_mit_Word_und_Access","status":"publish","type":"post","link":"https:\/\/vbentwickler.de\/Rechnungen_mit_Word_und_Access\/","title":{"rendered":"Rechnungen mit Word und Access"},"content":{"rendered":"<p><b>Office bietet verschiedene M&ouml;glichkeiten, um Rechnungen zu erstellen. Du kannst ein Worksheet in Excel dazu nutzen, eine Rechnung zu erstellen, die Berichte unter Access eignen sich recht gut daf&uuml;r, aber auch Word l&auml;sst sich prima zum Erstellen von Rechnungen nutzen. Alle haben Vor- und Nachteile: Unter Excel ger&auml;t das Berechnen von Betr&auml;gen zum Kinderspiel, w&auml;hrend mehrseitige Rechnungen eher schwierig zu realisieren sind, unter Access k&ouml;nnen Berichte recht flexibel realisiert werden, w&auml;hrend man sich gerade f&uuml;r mehrseitige Berichte etwas einarbeiten muss &#8211; und unter Word kann man das Layout sehr einfach anpassen, w&auml;hrend hier die Berechnung nicht so intuitiv erfolgt. Wir schauen uns eine Kombination aus Access und Word an: Die Daten stammen aus Access-Tabellen, w&auml;hrend wir die Rechnung selbst in Word erstellen. So lassen sich auch nach dem Erstellen noch Feinheiten anpassen.<\/b><\/p>\n<h2>Rechnungsdaten von Access nach Word<\/h2>\n<p>Es gibt verschiedene Wege, wie wir Rechnungsdaten von Access aus in ein Word-Dokument bewegen k&ouml;nnen. Das eine Extrem w&auml;re, das Word-Dokument aus der Access-Datenbank heraus von Grund auf neu zu erstellen und mit den gew&uuml;nschten Inhalten zu f&uuml;llen. Das andere Extrem lautet, das Word-Dokument so weit wie m&ouml;glich vorzubereiten und mit Textmarken auszustatten, sodass wir nur noch die eigentlichen Texte aus der Datenbank heraus zum Word-Dokument schicken m&uuml;ssen.<\/p>\n<p>Der erste Weg w&auml;re sicherlich eine sch&ouml;ne Herausforderung f&uuml;r einen Software-Entwickler. Allerdings wollen wir L&ouml;sungen entwickeln, mit denen der Benutzer der Anwendung optimal arbeiten kann. Und wenn wir das Word-Dokument mit einer Rechnung komplett per Code generieren, g&auml;be es f&uuml;r den Benutzer nur noch nachtr&auml;glich die M&ouml;glichkeit, das Dokument &uuml;berhaupt anzupassen. Wenn er jedoch &Auml;nderungen vornehmen m&ouml;chte, die sich in jedem Dokument niederschlagen, dann m&uuml;sste er diese f&uuml;r jedes Dokument nach dessen Erstellung erneut durchf&uuml;hren.<\/p>\n<p>Aus Benutzersicht w&auml;re also der zweite Weg hilfreicher, denn je mehr Inhalte bereits in der zu verwendenden Word-Vorlage enthalten sind, desto mehr Elemente kann der Benutzer selbst direkt an der Vorlage anpassen &#8211; und wenn die &Auml;nderungen einmal durchgef&uuml;hrt sind, wirken sich diese auf alle Dokumente aus, die wir von Access aus erstellen. Auf diese Weise k&ouml;nnen wir dem Benutzer sogar erm&ouml;glichen, mehr als eine Vorlage zu erstellen und in der Access-Anwendung auszuw&auml;hlen, welche Vorlage f&uuml;r welche Rechnung verwendet werden soll.<\/p>\n<p>Aber welche Elemente k&ouml;nnen wir &uuml;berhaupt bereits in der Dokumentvorlage f&uuml;r die Rechnung unterbringen? Wir gehen davon aus, dass die Rechnungen nur im Namen einer einzigen Person oder eines einzigen Unternehmens gestellt werden.<\/p>\n<p>Dann k&ouml;nnen wir zumindest den Briefkopf und die Absenderadresse in dem Bereich, der sp&auml;ter im Fenster des Briefumschlags sichtbar sein soll, anpassen.<\/p>\n<p>Au&szlig;erdem kann der Benutzer die Anordnung der &uuml;brigen Elemente wie Betreff, Rechnungstext, Block mit den Rechnungspositionen und die Zahlungsbedingungen nach den eigenen Anforderungen festlegen &#8211; und damit auch die Formatierungen wir Schriftart, Schriftgr&ouml;&szlig;e et cetera definieren.<\/p>\n<p>Wir w&auml;hlen also in diesem Artikel den zweiten Weg &#8211; wir wollen eine Dokumentvorlage mit m&ouml;glichst vielen voreingestellten Elementen erzeugen und diese dann mit den Daten aus der Datenbank f&uuml;llen.<\/p>\n<h2>Daten in ein Word-Dokument schreiben<\/h2>\n<p>Wie aber soll das &Uuml;bertragen der Daten aus den Tabellen der Access-Datenbank in das Word-Dokument genau erfolgen? Woher wissen wir, an welchen Positionen die jeweiligen Daten eingef&uuml;gt werden sollen? Und wie gehen wir &uuml;berhaupt mit der Tatsache um, dass jede Rechnung unterschiedlich viele Rechnungspositionen enthalten kann &#8211; und wir die Vorlage dementsprechend gar nicht f&uuml;r jeden Fall vorbereiten k&ouml;nnen?<\/p>\n<p>Um die Positionen zu markieren, an denen wir die Daten aus der Datenbank einf&uuml;gen wollen, gibt es spezielle Elemente: die Textmarken. Warum reden wir in der Mehrzahl? Weil es zwei Typen von Textmarken gibt &#8211; offene und geschlossene Textmarken. Den Unterschied erl&auml;utern wir weiter unten. Allgemein betrachtet sind Textmarken Elemente, die eine Bezeichnung erhalten, anhand derer wir diese ansprechen und Texte oder andere Elemente an ihrer Position einf&uuml;gen k&ouml;nnen.<\/p>\n<h2>Verwendung einer Vorlage<\/h2>\n<p>Wir wollen die Daten allerdings nicht einfach in ein vorhandenes Dokument schreiben, sondern wir legen eine Dokumentvorlage an, auf deren Basis wir f&uuml;r jede Rechnung ein neues Dokument erzeugen. Diese Dokumentvorlage speichern wir zun&auml;chst unter der Dateiendung <b>.dotx <\/b>(<b>t <\/b>f&uuml;r <b>Template<\/b>). Der komplette Name der zu erstellenden Datei lautet <b>Rechnungsvorlage.dotx<\/b>. Wir speichern die Daten im gleichen Verzeichnis wie die Access-Datenbank, die wir gleich im Anschluss erstellen. Wichtig: Wir k&ouml;nnen nicht einfach ein Word-Dokument &uuml;ber den Explorer erstellen und dieses mit der Dateiendung <b>.dotx <\/b>versehen &#8211; das Word-Dokument muss von Word aus mit dem Typ <b>Word-Vorlage (*.dotx) <\/b>gespeichert werden.<\/p>\n<h2>Erstellen der Access-Datenbank<\/h2>\n<p>Irgendwo m&uuml;ssen wir die Daten f&uuml;r die Rechnungen speichern, und daf&uuml;r eignet sich eine Access-Datenbank am besten. Wir k&ouml;nnten zwar auch ein Excel-Workbook verwenden, in dem wir die verschiedenen Daten wie Anreden, Kunden, Rechnungen und Rechnungspositionen in verschiedenen Tabellen speichern, aber das ist eher nicht der eigentliche Anwendungszweck von Excel, sondern von Access.<\/p>\n<p>In einer neuen Access-Datenbank namens <b>RechnungenMitWordUndAccess.accdb <\/b>legen wir vier Tabellen an, die sp&auml;ter einmal das Datenmodell aus Bild 1 ergeben.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_01\/pic_351_001.png\" alt=\"Datenmodell der Access-Datenbank\" width=\"700\" height=\"287,6941\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Datenmodell der Access-Datenbank<\/span><\/b><\/p>\n<p>Wir haben die Tabellen dieser Datenbank einmal mit den notwendigsten Daten gef&uuml;llt &#8211; also mit ein paar Anreden, einem Kundendatensatz, einem Rechnungsdatensatz und zwei Rechnungspositionen (siehe Bild 2). Die Tabellen sind dabei so verkn&uuml;pft und mit Nachschlagefeldern ausgestattet, dass wir f&uuml;r das Feld <b>AnredeID <\/b>der Tabelle <b>tblKunden <\/b>eine der Anreden aus der Tabelle <b>tblAnreden <\/b>ausw&auml;hlen k&ouml;nnen.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_01\/pic_351_002.png\" alt=\"Beispieldaten f&uuml;r die Erstellung einer Rechnung\" width=\"700\" height=\"321,5811\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Beispieldaten f&uuml;r die Erstellung einer Rechnung<\/span><\/b><\/p>\n<p>F&uuml;r das Feld <b>KundeID <\/b>der Tabelle <b>tblRechnungen <\/b>w&auml;hlen wir einen der Kunden aus der Tabelle <b>tblKunden <\/b>aus. Und schlie&szlig;lich legen wir f&uuml;r die beiden Rechnungsdatens&auml;tze aus der Tabelle <b>tblRechnungspositionen <\/b>&uuml;ber das Feld <b>RechnungID <\/b>die Rechnung fest, zu der die Rechnungspositionen geh&ouml;ren sollen.<\/p>\n<p>Durch diesen Aufbau der Tabellen k&ouml;nnen wir beliebig viele Kunden, Rechnungsdatens&auml;tze und Rechnungspositionen anlegen.<\/p>\n<h2>Eingabe der Rechnungsdaten<\/h2>\n<p>Wir wollen uns an dieser Stelle nicht lange mit der Beschreibung der Benutzeroberfl&auml;che der Access-Datenbank aufhalten, daher hier nur die notwendigsten Elemente und Techniken.<\/p>\n<p>Zur Verwaltung der Kunden haben wir an dieser Stelle kein eigenes Formular vorgesehen &#8211; diese kann man hilfsweise &uuml;ber die Tabelle eingeben (eine professionelle Anwendung sollte nat&uuml;rlich ein Formular zur Verwaltung der Kunden enthalten). Die Rechnungen zeigen wir in einem Formular mit Unterformular an. Das Hauptformular <b>frmRechnungen <\/b>ist &uuml;ber die Eigenschaft Datensatzquelle an die Tabelle <b>tblRechnungen <\/b>gebunden. Das Unterformular <b>sfmRechnungen <\/b>zeigt die Daten der Tabelle <b>tblRechnungspositionen <\/b>an.<\/p>\n<p>Damit das Unterformular nur die Rechnungspositionen anzeigt, die mit der aktuell im Hauptformular angezeigten Rechnung verkn&uuml;pft sind, sind die beiden Eigenschaften <b>Verkn&uuml;pfen von <\/b>und <b>Verkn&uuml;pfen nach <\/b>des Unterformular-Steuerelements beide auf den Wert <b>RechnungID <\/b>eingestellt. Dies erledigt Access in der Regel automatisch, wenn man das Unterformular aus dem Navigationsbereich von Access per Drag and Drop in den Formularentwurf des Hauptformulars zieht &#8211; das Vorhandensein einer entsprechenden Beziehung zwischen den Tabellen aus Haupt- und Unterformular vorausgesetzt.<\/p>\n<p>Im Hauptformular platzieren wir alle Steuerelemente der Tabelle <b>tblRechnungen <\/b>&#8211; mit Ausnahme des Feldes <b>RechnungID<\/b>. Da wir das Feld <b>KundeID <\/b>bereits in der zugrunde liegenden Tabelle <b>tblRechnungen <\/b>als Nachschlagefeld definiert haben, wird dieses beim Ziehen des Feldes aus der Feldliste in den Formularentwurf direkt als Kombinationsfeld angelegt.<\/p>\n<p>Im Unterformular platzieren wir die Felder <b>Position<\/b>, <b>Bezeichnung<\/b>, <b>Menge<\/b>, <b>Einheit<\/b>, <b>EinzelpreisNetto <\/b>und <b>Umsatzsteuersatz<\/b>. Damit diese Daten in der Datenblattansicht angezeigt werden, stellen wir die Eigenschaft <b>Standardansicht <\/b>auf <b>Datenblatt <\/b>ein (siehe Bild 3). Im unteren Bereich des Formulars f&uuml;gen wir noch zwei Steuerelemente ein:<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_01\/pic_351_003.png\" alt=\"Entwurf des Formulars f&uuml;r die Eingabe der Rechnungsdaten\" width=\"624,6265\" height=\"593,7695\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 3: Entwurf des Formulars f&uuml;r die Eingabe der Rechnungsdaten<\/span><\/b><\/p>\n<ul>\n<li>die Schaltfl&auml;che <b>cmdRechnungNachWord <\/b>und<\/li>\n<li>das Kombinationsfeld <b>cboRechnungsvorlage<\/b>.<\/li>\n<\/ul>\n<h2>Rechnungsvorlage ausw&auml;hlen<\/h2>\n<p>Mit dem Kombinationsfeld wollen wir dem Benutzer die M&ouml;glichkeit geben, die zu verwendende Vorlage auszuw&auml;hlen. Dazu wollen wir alle Dateien mit der Dateiendung <b>.dotx <\/b>aus dem Verzeichnis der Beispieldatenbank im Kombinationsfeld anzeigen. Das erledigen wir mit der ersten VBA-Prozedur dieses Artikels, die beim Laden des Formulars ausgel&ouml;st werden soll. Diese Prozedur sieht wie in Listing 1 aus.<\/p>\n<pre><span style=\"color:blue;\">Sub <\/span>Form_Load()\r\n     <span style=\"color:blue;\">Dim <\/span>strVorlagen<span style=\"color:blue;\"> As String<\/span>\r\n     <span style=\"color:blue;\">Dim <\/span>strVorlage<span style=\"color:blue;\"> As String<\/span>\r\n     strVorlage = Dir(CurrentProject.Path & \"\\*.dotx\")\r\n     <span style=\"color:blue;\">Do While<\/span> <span style=\"color:blue;\">Not<\/span> <span style=\"color:blue;\">Len<\/span>(strVorlage) = 0\r\n         strVorlagen = strVorlagen & \";\"\"\" & strVorlage & \"\"\"\"\r\n         strVorlage = Dir\r\n     <span style=\"color:blue;\">Loop<\/span>\r\n     <span style=\"color:blue;\">If <\/span><span style=\"color:blue;\">Not<\/span> <span style=\"color:blue;\">Len<\/span>(strVorlagen) = 0<span style=\"color:blue;\"> Then<\/span>\r\n         strVorlagen = <span style=\"color:blue;\">Mid<\/span>(strVorlagen, 2)\r\n     <span style=\"color:blue;\">End If<\/span>\r\n     Me!cboRechnungsvorlagen.RowSource = strVorlagen\r\n     Me!cboRechnungsvorlagen = Me!cboRechnungsvorlagen.ItemData(0)\r\n<span style=\"color:blue;\">End Sub<\/span><\/pre>\n<p><b><span style=\"color:darkgrey;\">Listing 1: Prozedur zum F&uuml;llen der Auswahlliste der Rechnungsvorlagen<\/span><\/b><\/p>\n<p>Hier lesen wir, falls vorhanden, die erste Datei mit der Dateiendung <b>.dotx <\/b>aus dem Verzeichnis der Datenbank in die Variable <b>strVorlage <\/b>ein.<\/p>\n<p>Wenn wir eine solche Datei finden, ist <b>strVorlage <\/b>anschlie&szlig;end nicht leer und wir steigen in die <b>Do While<\/b>-Schleife ein. Hier schreiben wir als Erstes den Namen der gefundenen Datei in die Variable <b>strVorlagen <\/b>&#8211; mit f&uuml;hrendem Semikolon und in Anf&uuml;hrungszeichen eingeschlossen. Danach sucht die Prozedur nach einem weiteren Vorkommen einer solchen Datei und wiederholt den Vorgang so lange, bis keine weitere Vorlagendatei mehr gefunden wird. Dann verl&auml;sst die Prozedur die Schleife und entfernt das erste Semikolon aus <b>strVorlagen<\/b>.<\/p>\n<p>Den resultierenden Ausdruck schreibt die Prozedur anschlie&szlig;end in die Eigenschaft <b>RowSource <\/b>des Kombinationsfeldes <b>cboRechnungsvorlagen<\/b>.<\/p>\n<p>Die letzte Anweisung stellt noch den ersten gefundenen Eintrag als aktuellen Eintrag des Kombinationsfeldes ein.<\/p>\n<p>Damit das Kombinationsfeld die Daten aus dieser Semikola-separierten Liste &uuml;berhaupt anzeigt, legen wir f&uuml;r das Kombinationsfeld noch den Wert der Eigenschaft <b>Herkunftsart <\/b>auf <b>Wertliste <\/b>fest.<\/p>\n<p>Das Formular sieht, wenn bereits mindestens ein Datensatz in jeder Tabelle enthalten ist, anschlie&szlig;end wie in Bild 4 aus.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2023_01\/pic_351_004.png\" alt=\"Das Formular zum Zusammenstellen der Rechnungsdaten im Einsatz\" width=\"624,6265\" height=\"572,079\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 4: Das Formular zum Zusammenstellen der Rechnungsdaten im Einsatz<\/span><\/b><\/p>\n<p>Nun k&ouml;nnten wir bereits die Schaltfl&auml;che <b>cmdRechnungNachWord <\/b>mit der gew&uuml;nschten Funktion versehen &#8211; wenn nicht noch die zu f&uuml;llende Dokumentvorlage fehlen w&uuml;rde. Diese erstellen wir im n&auml;chsten Schritt.<\/p>\n<h2>Dokumentvorlage erstellen<\/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>Visual Basic Entwickler<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/shop.minhorst.com\/magazine\/363\/visual-basic-entwickler-jahresabonnement?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000;\">Danach greifen Sie sofort auf <strong>alle rund 200 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:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000351\/\">\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=\"\/data\/wp\/v2\/posts\/55000351?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<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000351\/\"\/>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"b3cc5bc9f1\"\/>\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>Office bietet verschiedene M&ouml;glichkeiten, um Rechnungen zu erstellen. Du kannst ein Worksheet in Excel dazu nutzen, eine Rechnung zu erstellen, die Berichte unter Access eignen sich recht gut daf&uuml;r, aber auch Word l&auml;sst sich prima zum Erstellen von Rechnungen nutzen. Alle haben Vor- und Nachteile: Unter Excel ger&auml;t das Berechnen von Betr&auml;gen zum Kinderspiel, w&auml;hrend mehrseitige Rechnungen eher schwierig zu realisieren sind, unter Access k&ouml;nnen Berichte recht flexibel realisiert werden, w&auml;hrend man sich gerade f&uuml;r mehrseitige Berichte etwas einarbeiten muss &#8211; und unter Word kann man das Layout sehr einfach anpassen, w&auml;hrend hier die Berechnung nicht so intuitiv erfolgt. Wir schauen uns eine Kombination aus Access und Word an: Die Daten stammen aus Access-Tabellen, w&auml;hrend wir die Rechnung selbst in Word erstellen. So lassen sich auch nach dem Erstellen noch Feinheiten anpassen.<\/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":[66012023,662023,44000004,44000025,44000028],"tags":[],"yst_prominent_words":[],"class_list":["post-55000351","post","type-post","status-publish","format-standard","hentry","category-66012023","category-662023","category-Loesungen","category-VBAProgrammierung","category-Word_programmieren"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000351","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/comments?post=55000351"}],"version-history":[{"count":0,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/posts\/55000351\/revisions"}],"wp:attachment":[{"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/media?parent=55000351"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/categories?post=55000351"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/tags?post=55000351"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/vbentwickler.de\/data\/wp\/v2\/yst_prominent_words?post=55000351"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}