Mit früheren XPress-Versionen galt die folgende Konstruktion als zuverlässig.
---
tell document 1 of application "QuarkXPress 6.1"
tell current box
set pageNumber to page number of page 1
end tell
end tell
---
Das Resultat entspricht der Numerierung in der Seitenlayout-Palette.
Wenn die Box aber auf der Montagefläche liegt, dann ist das Resultat '2001' oder höher. Damit kann man prüfen, ob eine Box auf einer Seite steht oder nicht …
---
if pageNumber > 2000 then
display dialog "Dieses Script funktioniert nicht mit Boxen auf der Montagefläche." buttons "OK" default button 1 with icon 0
error number -128
---
… mit einem Dialog das Problem mitteilen und mit dem Befehl 'error number -128' die Ausführung abbrechen.
Das funktioniert gut - auch mit QXP 6.1 - mit Doppelseiten-Layouts. Wenn das 6.1-Layout aber mit Einzelseiten aufgebaut ist und eine Box auf der Montagefläche steht, dann gibt es garantiert Probleme. Im besten Fall ist das Ergebnis nur '1' (statt '2001'). Meistens wird aber XPress unvermittelt beendet, wieder gestartet und die Fehlermeldung "QuarkXPress got an error: Connection is invalid. [-609]" erscheint.
Abhilfe: statt 'page number' den Ausdruck 'index' gebrauchen:
Damit ist das Ergebnis wieder '2001' und XPress stürzt nicht ab.
Hans Haesler <hsa@ringier.ch>