Seite 1 von 1

Aktuelle Seite/Anzahl Seiten innerhalb manueller Seitenumbrüche

Verfasst: 26.02.2013, 10:19
von HerbTheDuke
Hallo,

ich habe folgendes Problem:

Ich gebe ein einem Formular eine vorsortierte und gruppierte Tabelle (mit beliebig vielen Einträgen) aus. Ändert sich das Gruppierkriterium, erfolgt ein manuelle Seitenwechsel. Nun soll nach jedem manuellen Seitenwechsel die aktuelle Seite wieder bei 1 anfangen und die Gesamtanzahl Seiten nur die innerhalb der Gruppe, also bis zum zur nächsten Änderung des Sortierkriteriums, sein.

Also: das komplette Formular hat 10 Seiten, Seiten 1, 2 und 3 sind in einer Gruppe, 3, 4, 5 und 6 in der nächsten, und der Rest in der letzten Gruppe. Dann soll auf den einzelnen  Seiten stehen:

tatsächliche Seite 1:       1 von 3
tatsächliche Seite 2:       2 von 3
tatsächliche Seite 3:       3 von 3
tatsächliche Seite 4:       1 von 4
tatsächliche Seite 5:       2 von 4 
 ....
tatsächliche Seite 8:       1 von 3  
....
tatsächliche Seite 10:      3 von 3

Wie bekomme ich das per Script hin?

Vielen Dank schon mal!!  

Aktuelle Seite/Anzahl Seiten innerhalb manueller Seitenumbrüche

Verfasst: 26.02.2013, 14:58
von nele_sonntag
Ich denke, du solltest pro Gruppe eine neue Masterseite definieren und zuweisen und dort die Seitennummerierung unterbringen.

Schaue doch schon mal, ob sich damit dein Problem lösen lässt. Im Forum gab's dass auch schon mal.

Gehe später (derzeit keien Zeit) mal in mich..kannst ja schon mal ausprobieren und vielleicht in der Suchfunktion Seitenzahlen/Seitennummerierung eingeben.

LG Mandy

Aktuelle Seite/Anzahl Seiten innerhalb manueller Seitenumbrüche

Verfasst: 18.04.2013, 16:54
von dreizeen
[font=Arial][fontsize=2]Hallo,[/fontsize][/font]

[font=Arial][fontsize=2]ich hatte eine ähnliche Anforderung. Nach langem Suchen und Ausprobieren habe ich nun eine Lösung gefunden. Ist vielleicht nicht die eleganteste aber sie funktioniert. Vielleicht kann das ja jemand als Ansatz gebrauchen.[/fontsize][/font]

[fontsize=2][font=Arial] [/font][/fontsize]

[font=Arial][fontsize=2]Und zwar vergleiche ich immer den Wert des Gruppierungskriterium der aktuellen Seite mit dem Wert der vorangegangen Seite. Sind die Werte identisch, wird der Seitenzähler um 1 erhöht, andernfalls auf 1 zurückgesetzt.[/fontsize][/font]

[fontsize=2][font=Arial] [/font][/fontsize]

[font=Arial][fontsize=2]Auf jeder Seite habe ich die Textfelder „PersNr“ und „Seite“, anhand welcher ich die Prüfung vornehme. Das Coding hierzu (im Ereignis layout:ready).[/fontsize][/font]

[fontsize=3][font=Arial] [/font][/fontsize]

//Personalnummer und Seitenzahl der vorangegangenen Seite

var oPage = xfa.layout.page(this) - 2; //Wert ist 0-basiert

var oFields = xfa.layout.pageContent(oPage, "field");

var oPNR = 0;

var oSEITE = 0;

this.rawValue = 0;

 

for (var i=0; i <= oFields.length-1; i++) {

if (oFields.item(i).name == "PersNr") {

oPNR = oFields.item(i).rawValue; }

else if (oFields.item(i).name == "Seite") {

oSEITE = oFields.item(i).rawValue;}

}

 

// Vergleiche aktuelle PNR und vorangegangene PNR

if (oPNR == PersNr.rawValue) {

this.rawValue = 1 + Number(oSEITE); }

else {

this.rawValue = "1";

}

 

//Schreibe aktuelle Seitenzahl in Hilfsfeld

Seite.rawValue = this.rawValue;

 

//Ausgabe: Seite n/m

this.rawValue = String(this.rawValue) + "/" + String( xfa.layout.pageSpan(DIM_ASSIGNMENT_DATA));