[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

JuMayr
Beiträge gesamt: 96

21. Sep 2018, 01:12
Beitrag # 1 von 7
Bewertung:
(3338 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi zusammen,

ich bin als Scripting Noob schon echt weit gekommen, aber jetzt brauche ich mal einen Profi:)

Dieses Script soll erweitert werden und neben dem PDF auch JPEG oder PNG exportieren.

Code
 
#target indesign

//Deaktivieren der Abfrage beim Öffnen der Dateien wenn sich eine Verknüpfung geändert hat.
app.scriptPreferences.userInteractionLevel = UserInteractionLevels.neverInteract;

//Definieren der aktuellen Sprache DE oder EN
//EN2 und DE2, da im Dokument Aufgaben_DE als Source verwendet wird. Die jeweilige Sprachdatei wird dann umkopiert und überschreibt die aktuelle Source.
//Beim Einbinden eines neuen Datensourcefiles würde Komma als Trennzeichen verwendet und nicht Tabstop.
var myLang = [];
//myLang.push("EN2");
myLang.push("DE_Geburtstag");
myLang.push("DE_Hochzeit");
myLang.push("DE2");


//Definieren der KundenURL mit Kommentar zur Bestellung
var URL = [];
URL.push("WWW.PHOTOBOOTH-DELUXE.DE");
//URL.push(""); //
//URL.push(""); //


//Schleife durch die URL-Liste
for ( u=0; u < URL.length; u++ ) {

//Ordner für den Kunden erstellen
var f = new Folder("O:/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Kundenexport/" + URL[u] + "/");
if (!f.exists)
f.create();

//Definition des Ordners in dem die Indd Files mit den Layouts liegen. Wird für die Funktion getSubFolders verwendet.
var myFolder = Folder("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Layouts")
if ( myFolder != null ) {
var myFiles = [];

//Ermittle alle Indd Dateien im Layouts Ordner (inkl. Subfolder)
GetSubFolders(myFolder);

//Schleife durch alle gefundenen Indd-Files aus dem Layoutordner
if ( myFiles.length > 0 ) {
for ( i=0; i < myFiles.length; i++ ) {

//Schleife durch die ausgewählten Sprachdateien
for ( l=0; l< myLang.length; l++) {
$.writeln(URL + " - " + myLang[l] + " - " + myFiles[i]);

//Öffnen der Indd-Datei
app.open(myFiles[i]);

//Umbenennen der Textvariablen URL in die Kunden URL
app.activeDocument.textVariables.item ('URL').variableOptions.contents = URL[u];

var myDoc = app.activeDocument;

// Kopieren der Aufgabenliste in den Kundenordner
File("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Aufgaben_" + myLang[l] + ".csv").copy(File("O:/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Kundenexport/" + URL[u] + "/Aufgaben_" + myLang[l] + ".csv"));
$.sleep(500);

// Überschreiben des Datasourcefiles mit der aktuell gewählten Sprache
File("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Aufgaben_" + myLang[l] + ".csv").copy(File("/O/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Aufgaben_DE.csv"));
$.sleep(500);

//Aktuallisieren des Indd Dokuments mit den neuen Datasourcewerten.
myDoc.dataMergeProperties.updateDataSource();

//Exportieren der Datenzusammenführung als PDF
var myLocation = "O:/Originaldaten/Dropbox/Photobooth_Manufaktur/Props/Aufgaben/Kundenexport/" + URL[u] + "/"
var myName = (myDoc.name.replace(".indd",""));
var myExport = myLocation + myName + "_" + myLang[l] + ".pdf"
myDoc.dataMergeProperties.exportFile(myExport, "[Qualitativ hochwertiger Druck]", );

//************************************************************
//HIER MÜSSTE NUN NOCH DER EXPORT ALS JPG ODER PNG REIN.
//DIE DATEIEN SOLLEN WIE DAS PDF BENANNT WERDEN MIT _lfdNummer
//************************************************************

app.documents.everyItem().close(SaveOptions.NO);
}
}
}
}
}


function GetSubFolders(theFolder) {
var myFileList = theFolder.getFiles();
for (var i = 0; i < myFileList.length; i++) {
var myFile = myFileList[i];
if (myFile instanceof Folder){
GetSubFolders(myFile);
}
else if (myFile instanceof File && myFile.name.match(/\.indd$/i)) {
myFiles.push(myFile);
}
}
}


Kann sich einer der anwesenden Profis dem Problem annehmen. Selbstverständlich bezahle ich ordentlich:)

Gruß
Jürgen
X

PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

Kai Rübsamen
Beiträge gesamt: 4684

21. Sep 2018, 12:40
Beitrag # 2 von 7
Beitrag ID: #566424
Bewertung:
(3306 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Jürgen, interessierte Skripter werden sich per PM bei dir melden. Ich verstehe allerdings das Problem nicht, wenn der Rest schon passt.

Entweder hier oder im Adobe-Skripting-Forum sollten sich doch Beispiele für den Bild-Export finden lassen?!


als Antwort auf: [#566417]

PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

JuMayr
Beiträge gesamt: 96

21. Sep 2018, 21:02
Beitrag # 3 von 7
Beitrag ID: #566436
Bewertung:
(3280 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,

naja.. dieses Script hat mich schon STUNDEN gekostet und das mit dem Jpeg Export habe ich einfach nicht geschafft.
Vermutlich ne Kleinigkeit wenn man weiß wie es geht:)


als Antwort auf: [#566424]

PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

JuMayr
Beiträge gesamt: 96

21. Sep 2018, 21:15
Beitrag # 4 von 7
Beitrag ID: #566437
Bewertung:
(3274 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
ERBARMT SICH JEMAND?


als Antwort auf: [#566436]

PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

WernerPerplies
Beiträge gesamt: 2759

22. Sep 2018, 07:37
Beitrag # 5 von 7
Beitrag ID: #566438
Bewertung:
(3244 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo JuMayr,

falls sich noch immer niemand gemeldet hat, kannst Du Dich mal bei mir melden.

Stelle mir aber bitte auf jeden Fall notwendige Dateien (csv + idml) zur Verfügung.


als Antwort auf: [#566437]

PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

JuMayr
Beiträge gesamt: 96

22. Sep 2018, 20:45
Beitrag # 6 von 7
Beitrag ID: #566452
Bewertung:
(3211 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Danke Werner,

ich glaube ich habe es mit den Hinweisen die ich bekommen habe hinbekommen. Teste gerade:)

DANKE an das Forum:)


als Antwort auf: [#566438]

PAYJOB: Anpassung eines Scripts für Datenzusammenführung und Export

WernerPerplies
Beiträge gesamt: 2759

23. Sep 2018, 07:29
Beitrag # 7 von 7
Beitrag ID: #566456
Bewertung:
(3190 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
In Ordnung, dann ist ja alles gut. :-)


als Antwort auf: [#566452]
X