Hey Roland,
also ich habe neue Errungenschaften.
Mittlerweile habe ich einen Loop Programmiert der die einzelne Tabelle auf einer Seite platziert(Links oder Rechts) jedoch nur wenn ich eine gewisse Anzahl an Seiten vorher händisch gesetzt habe, Bsp. 10 Tabellen, vorher muss ich mind. 10 Seiten anlegen sonst wird der loop nur einmal ausgeführt.
Ich versuche nun mittels XPathExpression in JS die Anzahl der "Tabelle" Elemente auszulesen, dies funktioniert auch wenn ich die Anzahl der Elemente die dem "FIRMA" Element unterliegen. Hierzu spuckt es mir "1" aus wenn ich nach "SERIE" oder "PRODUKTGRUPPEN" suche. Sobald ich jedoch eine Ebene tiefer gehen möchte spuckt es nur noch "0" aus obwohl die Elemente defintiv vorhanden sind (siehe XML Export)
Bin grade wie am verzweifeln, weshalb ich das Elemente in seiner Ebene nicht erreichen kann.
Vielen dank nochmals.
var myDocument = app.documents.item(0);
var docLength = myDocument.pages.length;
var sitenumber = 0;
var root = myDocument.xmlElements[0].xmlElements[0].xmlElements.item(0);
var anzahl_tabellen = root.evaluateXPathExpression("Tabelle").length;
tabellenGefunden();
/*Die Funktion ist ist nur fürs Debugging */
function tabellenGefunden() {
alert (anzahl_tabellen);
}
if (anzahl_tabellen < 1) {
for(var i = 0; i < anzahl_tabellen; i++) {
myDocument.pages.add();
var xmlInhalt = myDocument.xmlElements.item(0).xmlElements.item(0).xmlElements.item(1);
var tabellen = xmlInhalt.xmlElements.item(i);
set_textfeld(tabellen);
function set_textfeld(tabellen){
var myPage = myDocument.pages.item(sitenumber);
var myTextFrame = myPage.textFrames.add();
myTextFrame.sendToBack();
tabellen.placeXML(myTextFrame);
myTextFrame.geometricBounds = myGetBounds();
return
}
function myGetBounds(){
myPage = myDocument.pages.item(sitenumber);
if(myPage.side === PageSideOptions.rightHand ){
var myX1 = 36; var myX2 = 559.276;
} else {
var myX1 = 631.276; var myX2 = myX1+523.276;
}
var myY1 = 36;
var myY2 = myY1+769.89;
return [myY1, myX1, myY2, myX2];
}
sitenumber = sitenumber+1;
}
} else {
alert("Keine Produktgruppen gefunden!");
}
Das hier ist die XML die ich auch InDesign exportiert habe. Vorher habe ich natürlich beim importieren die XSL ausgewählt.
Das hier ist dann die Formatierung.
xmlns:aid5="http://ns.adobe.com/AdobeInDesign/5.0/">
Musterprodukt
xmlns:aid="http://ns.adobe.com/AdobeInDesign/4.0/" aid:table="table" aid:trows="11" aid:tcols="4">
|
Produktgruppe1
Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
2 x
|
Produktgruppe2
Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
2 x
|
Produktgruppe3
Lorem ipsum dolor sit amet, consetetur sadipscing elitr.
2 x
|
11 |
10 € |
110 € |
210 € |
12 |
20 € |
120 € |
220 € |
13 |
30 € |
130 € |
230 € |
14 |
40 € |
140 € |
240 € |
15 |
50 € |
150 € |
250 € |
36 |
60 € |
160 € |
260 € |
37 |
70 € |
170 € |
270 € |
38 |
80 € |
180 € |
280 € |
39 |
90 € |
190 € |
290 € |
40 |
100 € |
200 € |
300 € |