Hell_gee
Threadersteller
Dabei seit: 11.06.2009
Ort: Uelzen
Alter: -
Geschlecht:
|
Verfasst Di 11.01.2011 09:49
Titel Adressbücher mit Indesign |
|
|
Moin,
Ich hatte vor einiger Zeit schonmal ein Thema eröffnet mit Indesign und Adressbücher, wie diese damit erstellt werden können.
Eine Teillösung bin ich schon weitergekommen und zwar heißt das Zauberwort= XML + XSL
Damit sind schonmal einige Probleme verflogen, leider gibt es wieder neue Leider kenn ich mich mit XSL sogut wie gar nicht aus. Deshalb Poste ich hier unter mal die erste Adresse aus der XML Datei + die XSL Datei mit:
XML:
<Firma_1>MusterFirma</Firma_1>
<Firma_2/>
<Adresse_1>Musterstr. 2</Adresse_1>
<Adresse_2/>
<PLZ>27498</PLZ>
<Ort>Hude</Ort>
<Bundesland>Niedersachsen</Bundesland>
<Land>DE</Land>
<Telefon>+49 (0) 44 84 / 321</Telefon>
<Fax>+49 (0) 22 84 / 12347</Fax>
<Email/>
<Website/>
<Rechtsform/>
<Gründungsjahr/>
<Inhaber/>
<Anzahl_Mitarb/>
<Umsatz_Mio/>
<Verb_Unternehmen/>
<Sprachen/>
<Produkte_1/>
<Produkte_2>Milchvieh, Rindermast, Kälber, Schweinemast, Sauen, Ferkel, Pferde, Schafe/ Ziegen,>
<Produkte_3/>
<Produkte_4/>
<Produkte_5>< 25.000 t</Produkte_5>
<Produkte_6>eigenen LKW-Fuhrpark</Produkte_6>
<Produkte_7/>
<Produkte_8/>
Wie man sieht sind einige Felder leer, dieses Problem hatte ich zuanfang noch ohne XSL Datei die waren in Indesign trotzdem als tag mit drin also eine Leerzeile.
und hier jetzt die XSL:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:template match="/">
<body>
<xsl:for-each select="csv_data_records/record">
<xsl:value-of select="Firma_1"/>
<xsl:value-of select="Firma_2"/>
<xsl:value-of select="Adresse_1"/>
<xsl:if test="Adresse_2!=''"><xsl:value-of select="Adresse_2"/></xsl:if>
<xsl:value-of select="Land"/> <xsl:value-of select="PLZ"/> <xsl:value-of select="Ort"/>
<xsl:value-of select="Bundesland"/>
<xsl:if test="Telefon!=''"><b>Tel.: </b> <xsl:value-of select="Telefon"/></xsl:if>
<xsl:if test="Fax!=''"><b>Fax: </b><xsl:value-of select="Fax"/></xsl:if>
<xsl:if test="Email!=''"><b>eMail: </b><xsl:value-of select="Email"/></xsl:if>
<xsl:if test="Website!=''"><b>Website: </b><xsl:value-of select="Website"/></xsl:if>
<xsl:if test="Rechtsform!=''"><b>Rechtsform:</b><xsl:value-of select="Rechtsform"/></xsl:if>
<xsl:if test="Gründungsjahr!=''"><b>Gründungsjahr:</b><xsl:value-of select="Gründungsjahr"/></xsl:if>
<xsl:if test="Inhaber!=''"><b>Inhaber:</b><xsl:value-of select="Inhaber"/></xsl:if>
<xsl:if test="Anzahl_Mitarb!=''"><b>Anzahl_Mitarbeiter:</b><xsl:value-of select="Anzahl_Mitarb"/></xsl:if>
<xsl:if test="Umsatz_Mio!=''"><b>Umsatz_Mio:</b><xsl:value-of select="Umsatz_Mio"/></xsl:if>
<xsl:if test="Verb_Unternehmen!=''"><b>Verb_Unternehmen:</b><xsl:value-of select="Verb_Unternehmen"/></xsl:if>
<xsl:if test="Sprachen!=''"><b>Firmensprachen:</b><xsl:value-of select="Sprachen"/></xsl:if>
<xsl:if test="Director_Name!=''"><b>Geschäftsführer:</b><xsl:value-of select="Director_Name"/></xsl:if>
<xsl:if test="Director_Tel!=''">Tel.: <xsl:value-of select="Director_Tel"/></xsl:if>
<xsl:if test="Director_Fax!=''">Fax: <xsl:value-of select="Director_Fax"/></xsl:if>
<xsl:if test="Director_Email!=''"><xsl:value-of select="Director_Email"/></xsl:if>
<xsl:if test="Einkauf_Name!=''"><b>Einkauf:</b><xsl:value-of select="Einkauf_Name"/></xsl:if>
<xsl:if test="Einkauf_Tel!=''"><xsl:value-of select="Einkauf_Tel"/></xsl:if>
<xsl:if test="Einkauf_Fax!=''"><xsl:value-of select="Einkauf_Fax"/></xsl:if>
<xsl:if test="Einkauf_Email!=''"><xsl:value-of select="Einkauf_Email"/></xsl:if>
<xsl:if test="Verkauf_Name!=''"><b>Verkauf:</b><xsl:value-of select="Verkauf_Name"/></xsl:if>
<xsl:if test="Verkauf_Tel!=''"><xsl:value-of select="Verkauf_Tel"/></xsl:if>
<xsl:if test="Verkauf_Fax!=''"><xsl:value-of select="Verkauf_Fax"/></xsl:if>
<xsl:if test="Verkauf_Email!=''"><xsl:value-of select="Verkauf_Email"/></xsl:if>
<xsl:if test="Labor_Name!=''"><b>Labor:</b><xsl:value-of select="Labor_Name"/></xsl:if>
<xsl:if test="Labor_Tel!=''"><xsl:value-of select="Labor_Tel"/></xsl:if>
<xsl:if test="Labor_Fax!=''"><xsl:value-of select="Labor_Fax"/></xsl:if>
<xsl:if test="Labor_Email!=''"><xsl:value-of select="Labor_Email"/></xsl:if>
<xsl:if test="Produkte_1!=''"><b>Form:</b><xsl:value-of select="Produkte_1"/></xsl:if>
<xsl:if test="Produkte_2!=''"><b>Mischfutterherstellung für:</b><xsl:value-of select="Produkte_2"/></xsl:if>
<xsl:if test="Produkte_3!=''"><b>Vormischungen:</b><xsl:value-of select="Produkte_3"/></xsl:if>
<xsl:if test="Produkte_4!=''"><b>Zusatzstoffe:</b><xsl:value-of select="Produkte_4"/></xsl:if>
<xsl:if test="Produkte_5!=''"><b>Produktionsmenge jährlich:</b><xsl:value-of select="Produkte_5"/></xsl:if>
<xsl:if test="Produkte_6!=''"><b>Transport:</b><xsl:value-of select="Produkte_6"/></xsl:if>
<xsl:if test="Produkte_7!=''"><b>Handel:</b><xsl:value-of select="Produkte_7"/></xsl:if>
<xsl:if test="Produkte_8!=''"><b>Vermarktung:</b><xsl:value-of select="Produkte_8"/></xsl:if>
</xsl:for-each>
</body>
</xsl:template>
</xsl:stylesheet>
Wenn ich die beiden mit "XMLDog" (Parser) "verbinde" sieht die Indesign Datei schon besser aus die leeren tags übernimmt er nicht mehr allerdings kennt er auch nur noch ein tag, was natürlich für die Absatzformate schlecht ist da ich ja verschiedene nehmen möchte.
Das zweite Problem ist, das Tel.: und die Nummer dann daunter steht und nicht daneben bestenfalls mit Tabulator zwischen.
Vielleicht hat jemand von euch einen entscheidenen Tipp
Vielen Dank
Hell_gee
EDIT by ines: Verschoben in Software - Print.
Zuletzt bearbeitet von ines am Di 11.01.2011 10:11, insgesamt 1-mal bearbeitet
|
|