Formular mit Pipelines

Hallo,

ich habe noch ein Problem, mit dem ich mich schon seit langer Zeit
herumplage, aber noch keinen Lösungsweg gefunden habe.
Vielleicht habe ich bisher in Ragtime irgendwas grundsätzliches nicht
verstanden.

Ich habe ein Rechnungsformular, das im wesentlichen aus 3 Seiten
besteht: Deckblatt, Mittelblatt, und Endseite (Nur Textrahmen)

Die mittlere Seite besteht aus 3 Rechenblättern (Kopfzeile mit
Übertrag, Textteil, Fußteil mit Übertrag).
Der Textteil der Seiten ist per Pipeline verbunden, wobei auch das
Fußteil per Pipeline eine Endseite erzeugen kann.
Nun möchte ich für abfragen, welcher Typ die letzte Seite ist
(entweder Mittelblatt oder Endseite).
Es reicht mir dazu schon abzufragen, ob eine Zelle einen bestimmten
Wert enthält.

Was ich nun nicht verstehe ist, warum Ragtime beim Abreißen vom
Formularblock jeweils nur Kopien der Kopf- und Fußzeilen-Rechenblätter
erzeugt.
Somit kann ich nämlich bei der Erstellung des Formularblocks nicht
abfragen, ob es diese Seite gibt (da es eine Fehlermeldung gibt).
Der Namen beim späteren Aufruf heißt dann nämlich "Rechenblatt 1
Kopie" und nicht nur "Rechenblatt 1"

System: Mac OS 10.5.6, Ragtime 6.5 (Build 1812)

Danke und viele Grüße,
Hans-Jörg

Re: Formular mit Pipelines

#8448 On 3 März, 2009 22:50 Thomas Kaegi said,

Hallo Hans-Jörg

Ohne genau zu verstehen wie dein Formular aufgebaut ist ein Lösungsvorschlag zum Problem der Erkennung, von welchem Seitentyp die letzte Seite ist:

Auf jeder Formularseite, die im Dokument zur letzten Seite werden kann, irgendwo (in einem Rechenblatt oder auch in grafischem Text) folgende Formel eingeben:
Wenn(Seite=Seitenzahl;SetzeZelle('Letzte Seite ist Typ X';Referenz zu einer zentralen Rechenblattzelle))

Da die Bedingung nur auf einer Seite erfüllt werden kann, wird nur von dieser Seite aus der vorgegebene Wert in die zentrale Kontroll-Rechenblattzelle geschrieben. Dies ist der umgekehrte Vorgang als derjenige mit dem du offenbar Probleme hast.

Die Beschreibung deines Formulars veranlasst mich auch, dir die Frage zu stellen, ob du es schon mal mit einem Stammlayout im Formularblock versucht hast.

Gruss
Thomas

Re: Formular mit Pipelines

#8449 On 4 März, 2009 08:39 Hans-Jörg Steffes said,

Hallo Thomas,

stimmt das ist eine einfache Lösung, an die ich noch gar nicht gedacht
habe. Danke dafür!
Mit dem Thema Stammlayout habe ich mich noch gar nicht beschäftigt, da
ich meine Formulare aus Ragtime 3.2 Zeiten nur übernommen und leicht
geändert habe.
Ich beschäftige mich damit mal etwas, wenn Dein Buch in den nächsten
Tagen kommt.

Was könnte mir das Stammlayout denn in diesem Punkt erleichtern?

Viele Grüße,
Hans-Jörg

Am 03.03.2009 um 22:51 schrieb Thomas Kaegi:

> Hallo Hans-Jörg
>
> Ohne genau zu verstehen wie dein Formular aufgebaut ist ein
> Lösungsvorschlag zum Problem der Erkennung, von welchem Seitentyp
> die letzte Seite ist:
>
> Auf jeder Formularseite, die im Dokument zur letzten Seite werden
> kann, irgendwo (in einem Rechenblatt oder auch in grafischem Text)
> folgende Formel eingeben:
> Wenn(Seite=Seitenzahl;SetzeZelle('Letzte Seite ist Typ X';Referenz
> zu einer zentralen Rechenblattzelle))
>
> Da die Bedingung nur auf einer Seite erfüllt werden kann, wird nur
> von dieser Seite aus der vorgegebene Wert in die zentrale Kontroll-
> Rechenblattzelle geschrieben. Dies ist der umgekehrte Vorgang als
> derjenige mit dem du offenbar Probleme hast.
>
> Die Beschreibung deines Formulars veranlasst mich auch, dir die
> Frage zu stellen, ob du es schon mal mit einem Stammlayout im
> Formularblock versucht hast.
>
> Gruss
> Thomas
>
>

Re: Formular mit Pipelines

#8450 On 4 März, 2009 09:43 Thomas Kaegi said,

Hallo Hans-Jörg

Was mich zum Hinweis auf Stammlayouts veranlasst hat: Kopf- und Fusszeilen. Selbst wenn das Stammlayout in deinem Formular sonst für nichts gut sein sollte, so sind Kopf-und Fusszeilen damit sehr gut zu verwalten. Aber Achtung! Nicht mit Rechenblatt, sondern mit grafischem Text! - Aber ob das für dein Formular optimal ist, kann ich auf Grund der Angaben nicht wirklich beurteilen.

Mit freundlichem Gruss
Thomas