Christian: XSL verschiedene Seitendarstellungen - Komplexes Problem

Hallo,

bisher konnte mir niemand bei folgendem XSL-Problem helfen, vielleicht diesmal:

Folgendes Layout soll mit Hilfe der Layout-Master Sets eingerichtet werden:

1. Seite: eigenständiger Header, Flow-Daten aus einem eingehende XML-File im Body
2., 4., x. gerade Seite: kein Header, ganz fester Text (Vertragsbedingungen)
3., 5., x. ungerade Seite: leicht geänderter Header, aber die weiteren Flow-Daten aus der XML-Datei

Dabei ergibt sich natürlich auch noch das Problem, das der Prozess ja immer eine Seite mehr erzeugen muss (die geraden) als der reine Datenfluss ergibt.
Z.B. wenn nur wenige Zeilen aus dem XML-Strom kommen, würde nur eine Seite erzeugt werden, hinzukommen muss aber noch die Rückseite mit den Vertragskonditionen.

Die einfache Variante, dass ich für Folgeseitn einen anderen Header habe, konnte ich bereits lösen. In Kombination mit der gewünschten Rückseite (genau das sind die festen Texte auf den geraden Seiten ja), stehe ich aber ein wenig auf dem Schlauch.

Es wäre super wenn mir hierfür jemand eine Hilfestellung anbieten könnte.

Mit freundlichen Grüße,

Christian

  1. Hi,

    Also dein Problem habe ich noch nicht so ganz verstanden, aber hast du mal dir das  hier (http://data2type.de/index.php/xml-xslt-xslfo/xslt-einfuehrung) durchgelsen:

    Da sind so ziemlich alle möglichen Kombinationen dargelegt.

    Hallo,

    bisher konnte mir niemand bei folgendem XSL-Problem helfen, vielleicht diesmal:

    Folgendes Layout soll mit Hilfe der Layout-Master Sets eingerichtet werden:

    1. Seite: eigenständiger Header, Flow-Daten aus einem eingehende XML-File im Body
      2., 4., x. gerade Seite: kein Header, ganz fester Text (Vertragsbedingungen)
      3., 5., x. ungerade Seite: leicht geänderter Header, aber die weiteren Flow-Daten aus der XML-Datei

    Dabei ergibt sich natürlich auch noch das Problem, das der Prozess ja immer eine Seite mehr erzeugen muss (die geraden) als der reine Datenfluss ergibt.
    Z.B. wenn nur wenige Zeilen aus dem XML-Strom kommen, würde nur eine Seite erzeugt werden, hinzukommen muss aber noch die Rückseite mit den Vertragskonditionen.

    Die einfache Variante, dass ich für Folgeseitn einen anderen Header habe, konnte ich bereits lösen. In Kombination mit der gewünschten Rückseite (genau das sind die festen Texte auf den geraden Seiten ja), stehe ich aber ein wenig auf dem Schlauch.

    Es wäre super wenn mir hierfür jemand eine Hilfestellung anbieten könnte.

    Mit freundlichen Grüße,

    Christian

    1. Hallo,

      ja, diese Seite hatte ich auch schon, ebenso wie einige andere.

      Nochmal zum genaueren Verständnis, erstmal die allgemeinen Vorraussetzungen:

      Der Output wird als PDF genutzt.
      Genauer gesagt für Verträge und Lieferscheine und Rechnungen.
      Falls der Benutzer Blanko-Papier (d.h. ohne vorgedruckte Logos und Bedingungen) und einen Duplex-Printer benutzt, gibt es jeweils ein Blatt Papier mit Fließtext auf der Vorder- und Fest-Text auf der Rückseite.

      Nun zum Problem, zunächst mal eine evtl. einfachere Variante:
      Es muss immer eine Seite mehr erzeugt werden als Daten geliefert werden und diese Seite soll dann einen Festtext enthalten (über xsl:template).
      Wenn nur wenige XML-Informationen geliefert werden, so dass nur eine Seite als Output erscheinen würde, müßte eine weitere Seite mit dem festen Text erzeugt werden.
      Wird mehr als 1 Seite Fließtext erzeugt, so soll jede zweite Seite den Fest-Text erhalten.

      Also:
      1. Seite Header, Fließtext, Footer
      2. Seite Nur Festtext
      und evtl. zusätzlich
      3. Seite Header, Fließtext, Footer
      4. Seite Nur Festtext
      etc....

      Zweiter Schwierigkeitsgrad (denn ich _ohne_ den Fest-Text auch hinkriege, da dies mehr oder weniger eine Standardsituation für Layoutgestaltung ist):
      alle weiteren Fließtext-Seiten ausser der ersten bekommen einen unterschiedlichen Header.
      Also:
      1. Seite FirstHeader, Fließtext, Footer
      x. Seite OtherHeader, Fließtext, Footer
      Wie gesagt, das kriege ich hin.

      Jetzt soll aber halt trotzdem jede zweite Seite wieder den Festtext bekommen.
      Also:
      1. Seite FirstHeader, Fließtext, Footer
      2. Seite Nur Festtext
      und evtl. zusätzlich
      3. Seite OtherHeader, Fließtext, Footer
      4. Seite Nur Festtext

      Falls mir jemand für Variante A einen nützlichen Hinweis geben könnte, wäre ich schonmal sehr glücklich.
      Bei Hilfe zu Variante B werf ich glatt ne Runde Cola in den Router ;)

      Grüße,

      Christian