Forenindex » Programme » Print/Bildbearbeitung » Adobe InDesign » Datenzusammenführung - Datenfeld mit GREP erzeugen

Datenzusammenführung - Datenfeld mit GREP erzeugen

logisch
Beiträge gesamt: 4

2. Nov 2018, 19:32
Bewertung:

gelesen: 6690

Beitrag als Lesezeichen
Hallo zuammen

Gibt es einen Weg, in einem Text einen Platzhalter (H300-44) in einen Bildlink umzuwandeln, z.B. via GREP, damit das Bild H300-44.jpg verknüpft wird?

Die Langversion:
Der Hintergrund: Ich muss via Datenzusammenführung einen rund 400 Seitigen Katalog erstellen. Via Excel stehen die Daten bereit. Einzelnde Bilder kann ich im Excel in der Spalte @Bild1, @Bild2 manuell platzieren.

Zum einzelnen Artikel sind aber auch alle Zubehör- und Ersatzteile zugezogen, die im Excel über x Spalten in eine eizige Zelle zusammengenommen sind und mit Platzhalterzeichen getrennt sind. (Artikelnummer@@@Beschreibung###EAN@#@Preis|Artikelnummer2@@@Beschreibung2###EAN2@#@Preis2|...)
Diese Teile stehen unter dem jeweiligen Artikel.

Der Text wird mit suchen und ersetzen getrennt | danach wieder mit S&E die anderen @@@ und dabei eine Stilvorlage zugewiesen.
Artikelnummer Beschreibung EAN Preis
Artikelnummer2 Beschreibung2 EAN2 Preis2
...

Da ich das nicht mit einer Tabelle lösen kann (ich fand kein Skript, das eine bestimmte Stilvorlage in eine Tabelle umwandelt), ist auch Werner Perplies Skript nicht anwendbar, um den EAN Code zu ersetzten.

Die Idee:
Wenn ich nun mit GREP die EAN Nummer in ein Bild/Rahmen/Verknüpfung/Pfad etc. umwandeln könnte, wären alle EAN als Strichcode drin.

Nun eben die Frage, geht das überhaupt? Existiert die Möglichkeit, da einzugreifen?
Oder gibt es die Möglichkeit, im Excel dies zu generieren? Das wäre noch einfacher.

Leider gibt mir das Web keine Antworten, weil das vermutlich schon so tief geht.
Vielleicht weiss jemand von euch Rat?
Vielen Dank schon mal allein fürs Lesen :)
Mike

Ich kann auf die Indesign CC 13 und 14 zugreifen und arbeite auf Windows 10.

Datenzusammenführung - Datenfeld mit GREP erzeugen

WernerPerplies
Beiträge gesamt: 2760

2. Nov 2018, 20:31
Bewertung:

gelesen: 6673

Beitrag als Lesezeichen
Hallo logisch,

ich findes es völlig unlogisch mein Skript als ungeeignet zu bezeichnen, ohne mich anzusprechen.

So, wie Du die Aufgabe beschreibst, müsste mein Skript sehr geeignet sein.

Einen schönen Tag wünscht

Werner Perplies
Praxisnahe Skript-Lösungen und Skript-Programmierung für Adobe InDesign
Aktuelles (Stand: 14.02.2024)
Kundenstimmen

Datenzusammenführung - Datenfeld mit GREP erzeugen

logisch
Beiträge gesamt: 4

2. Nov 2018, 23:16
Bewertung:

gelesen: 6641

Beitrag als Lesezeichen
Hallo Werner

Dann spreche ich dich jetzt persönlich an.

Wie kann dein Skript in einer Textzeile sich auf eine EAN Nummer beziehen und ein Bild einsetzen?

En Gruess
Mike

Datenzusammenführung - Datenfeld mit GREP erzeugen

WernerPerplies
Beiträge gesamt: 2760

3. Nov 2018, 05:25
Bewertung:

gelesen: 6603

Beitrag als Lesezeichen
Moin Mike,

Antwort auf: Wie kann dein Skript in einer Textzeile sich auf eine EAN Nummer beziehen und ein Bild einsetzen?


Zuerst sollten wir mal abklären, ob wir beide vom gleichen Skript sprechen.
Deine Anwendung sollte mit diesem Skript funktionieren:
WpsCreateAnchoredFrames – Adobe InDesign Skript zur automatischen Erzeugung verankerter Rahmen
Dieses Skript hat ein sehr weites Anwendungsspektrum, siehe dazu auch diese Beiträge:
Verknüpfungspfad als Bild darstellen
Tabelle verknüpfen - Pfad zu Bild in verankertem Objekt "verwandeln"
Allerdings gibt es mit der Version 1.x Probleme in einigen InDesign-Versionen und die Version 2.x ist noch nicht für den allgemeinen Gebrauch freigegeben.
Du kannst aber von mir auch eine personalisierte Testversion bekommen, wenn Du mir zuvor eine IDML-Datei mit Testdaten zur Verfügung stellst.
Wenn ich Deine Aufgabe richtig verstanden habe, enthält Deine Zieldatei EAN-Nummern, die durch Bilder mit EAN-Codes ersetzt bzw. ergänzt werden sollen.
Um diese Aufgabe zu lösen benötigt mein Skript die folgenden Zutaten:
1. Die EAN-Nummern müssen mit einem Absatz- oder Zeichenformat ausgezeichnet sein.
2. Der Dateiname des zugehörigen Codes muss die im Text verwendete EAN-Nummer oder falls im Text die Artikelnummer ausgezeichnet wurde, die Artikelnummer enthalten.
3. Es muss ein fertige Bilddatei im Text verankert und selektiert sein.
4. In den Voreinstellungen meines Skriptes kannst Du einen Pool von Verzeichnissen auswählen, in dem mein Skript nach den Bildatdateien mit den EAN-Codes suchen soll.
Mein Skript sucht dann alle Stellen mit dem angegebenen Zeichen-/Absatzformt, fügt ein Duplikat des selektierten Musterrahmens ein und ersetzt das Bild im Duplikat durch die Datei mit der passenden EAN-Nummer/Artikelnummer.

Einen schönen Tag wünscht

Werner Perplies
Praxisnahe Skript-Lösungen und Skript-Programmierung für Adobe InDesign
Aktuelles (Stand: 14.02.2024)
Kundenstimmen

Datenzusammenführung - Datenfeld mit GREP erzeugen

logisch
Beiträge gesamt: 4

3. Nov 2018, 09:33
Bewertung:

gelesen: 6572

Beitrag als Lesezeichen
Hallo Werner

Vielen Dank für deine ausführliche Antwort. Ja, es geht um dieses Skript.

Gestern Abend sass ich über zwei Stunden daran und versuchte es zum Laufen zu bringen, bevor ich meine Frage hier im Forum stellte. Und in den gefundenen Beiträgen hier ging es auch wieder um Tabellen. Solche habe ich nicht und bin dir mit meiner Aussage auf den Schlips getreten. Entschuldigung.

Und ich schütte gleich nochmals Asche auf mein Haupt und möchte dich ganz rehabilitieren: Nach langem probieren klappte es heute endlich mit meiner Testdatei (auf CS6) auch ohne Tabellen.
Ich muss nächste Woche mal im Geschäft schauen, ob es auch mit ID 2018 läuft – was ich aber vermute. Sonst komme ich gern auf dein Angebot für die Version 2 zurück.

Vorschlag für die V2:
Auf deiner Webseite zum Skript zeigst du unter Bedienung, wie es mit einer Tabelle funktioniert. Die andere Möglichkeit, wie in meinen Fall, in einem Fliesstext die Bilder auszutauschen, geht unter. Auch dass man ganze Textpassagen austauschen lassen kann. Ich denke, wenn du das auch in deinem Tutorial zeigst, kommt die breite Anwendung deutlicher hervor.

Ich wünsche dir ein schönes Wochenende.
:) Mike

Datenzusammenführung - Datenfeld mit GREP erzeugen

WernerPerplies
Beiträge gesamt: 2760

3. Nov 2018, 10:13
Bewertung:

gelesen: 6559

Beitrag als Lesezeichen
Guten Morgen Mike,

Antwort auf: Solche habe ich nicht und bin dir mit meiner Aussage auf den Schlips getreten.


Nein, das Problem war eigentlich nicht, dass Du schriebst, das Skript ist nicht anwendbar, sondern dass Du mein Angebot zur Unterstützung nicht angenommen hast.
Programmentwickler leben vom Feedback Ihrer Anwender, und wenn dieses Feedback nicht kommt, erfährt man nicht. dass man etwas falsch gemacht hat.
Und mit einem Skript, mit dem man zwei Stunden ohne Ergebnis herumexperimentiert, stimmt etwas nicht.
Zur Problematik Tabelle <==> Text:
Der Anwendungsfall Tabelle ist ja eigentlich nur ein Spezialfall, generell gilt Suchen und Ersetzen, bzw. Einsetzen.
Der einzige tabellenspezifische Punkt ist das Positionieren von Ankern in anderen Tabellenzellen als der Tabellenzelle der Fundstelle.
Das andere Anwendungen, als die Tabellenanwendung untergehen ist für mich ein wenig verblüffend, zeige ich doch an dem Beispiel:
Symbole und Formeln als verankerte Rahmen einfach positionieren
auch die Anwendung in reinem Text.
Insgesamt fallen mir aber so viele Anwendungsbeispiele für dieses Skript ein, dass ich ein ganzes Buch schreiben könnte.
Aber sei es drum, es scheint ja jetzt bei Dir zu funktionieren, und wenn nicht, einfach fragen!
Und bin für jede Form von Feedback dankbar, also natürlich auch für Erweiterungswünsche und Fehlermeldungen.
Weiterhin viel Erfolg!

Einen schönen Tag wünscht

Werner Perplies
Praxisnahe Skript-Lösungen und Skript-Programmierung für Adobe InDesign
Aktuelles (Stand: 14.02.2024)
Kundenstimmen

Datenzusammenführung - Datenfeld mit GREP erzeugen

logisch
Beiträge gesamt: 4

21. Jan 2019, 17:14
Bewertung:

gelesen: 4996

Beitrag als Lesezeichen
Sali Zäme

Ich möchte euch einfach "kurz" meine Erfahrung mit Werners Skript aufschreiben, und wie es nach dem letzten Post von Werner weiter ging. 1)

@Werner, korrigier mich bitte, wenn ich Mist schreibe :)

Ausgangslage
Da wir firmenintern die Drucksachen erstellen und keine Vorstufeninfrastruktur und Know-how wie eine Druckerei haben, um via xml, serverseitige Programmierung etc. das Layout aufzubauen, mussten wir mit den vorhandenen Mitteln arbeiten. Heisst: Datenzusammenführung aus Exceltabellen und dann durchformatieren.

Mein Workflow war:
Excel
Da flossen alle Produktinfos aus alten, nicht/kaum gepflegten Datenbanken sowie einzelnen Exceltabellen unterschiedlicher Herkunft zusammen, wurden neu strukturiert, korrigiert und vorbereitet. Export der Endfassung in Text(Tabstopp getrennt).txt übernimmt alle äöüèéà für die beiden anderen Sprachen.

Barcodegenerator
Erzeugte .png Dateien mit dem EAN als Dateiname

Indesign
Layout für die Datenzusammenführung für Titel, Texte, Bilder und
den Produktinfos in Tabellenform: ArtNr. -> ArtBeschrieb -> EAN(1234567890123) -> Preis -> = Tabulator
Insgesamt waren es pro Sprache über 2500 EANs, die mit Werners Skript ausgetauscht wurden.
Das Missverständnis war, dass ich aus Werners Beispiel schloss, dass Bilder nur in Tabellen eingesetzt werden können. Geht auch mitten im Text – aber das habt ihr sicher schon gewusst :)

Nach der Datenzusammenführung:
Alle Textrahmen verketten und übrige Seiten löschen. Das fertig formatierte Dokument hat am Schluss rund 370 Seiten.
Suche via Grep nach dem EAN und mit eigenem Zeichenformat ersetzen (Bei mir: EAN - kursiv, blau)
Im Skript die richtigen! Voreinstellungen machen, u.a. Zeichenformat EAN auswählen.
Skript starten*

Zum Skript
Es hat mir tagelange Arbeit erspart. Einmal angelaufen muss es sich einfach durcharbeiten. Das heisst, es blockiert ID für diese Zeit.**
Zuerst testete ich mit der Version 1 in der Demo. Das ging sehr schnell, da es sich auf 10 Wechsel beschränkt. Die Vollversion lief dann beim ganzen Dokument nicht proportional länger, sondern überproportional – damit meine ich, das Skript wird immer langsamer. Gemäss Werner kommt es auch auf den Text-/Dokumentaufbau an, der bei mir ziemlich kompliziert war.
Auf meinem Rechner (Win 10, ID CC 2018) dauerte es sehr lange.*** Deshalb markierte ich jeweils einen Drittel mit dem Zeichenformat EAN und liess es laufen. Vorteil: ich kann dazwischen speichern, falls irgend ein Wasauchimmer im Indesign einen Absturz verursacht. Und das habe ich regelmässig auf Windows wie auf dem Mac mit den Adobe Produkten.

Werner schreibt auf seiner Seite, dass die Version 2 noch in Entwicklung sei. Ja, das stimmt.****
Er war aber so freundlich und stellte mir diese neue Version zur Verfügung. Wir schrieben und telefonierten hin und her und testeten. Er passte das Skript an und baute noch andere Routinen ein. Da fragt ihr ihn bitte direkt – ist mir zu technisch – aber bitte nicht am Wochenende, auch wenn er schnell antwortet. Ich weiss nicht, wann er mal Pause macht :)

Kurz: Ja, ich kanns empfehlen. Die Version 2 läuft und ich freue mich auf die definitive öffentliche Version.
Werner, vielen Dank.

Gelernt
Heute würde ich mit Werners Skript anders vorgehen. Also nicht nur den EAN ersetzen lassen, sondern zuerst die Struktur mit eindeutigen Platzhaltern ins ID nehmen und dann alle Texte und Bilder einfügen lassen. Damit könnte man direkt mit verketten Rahmen arbeiten und auch gleich die Sprachversionen erstellen. Auch wäre der nachträgliche Formatierungsaufwand um vieles kleiner.


1) Disclaimer ;)
Nein, Werner weiss (noch) nichts von diesem Text, ich bekomme dafür auch nichts, mache es aus freien Stücken und hab die Vollversion gekauft. Aber ich profitierte oft von eurem Wissen und möchte damit auch an meinen Erfahrungen teilhaben lassen.
Und wenn ich sehe, was damit noch gemacht werden kann (Textwechsel z.B. für Übersetzungen), dann finde ich, soll das erwähnt sein.


*Nachdem die EANs drin war, formatierte ich den Rest und baute das Inhaltsverzeichnis und Zusatzseiten etc ein.

** Was ging: Im ID CC 2018 das Skript laufen lassen und im ID 2019 anderes bearbeiten.

***ohne Gewähr: Währen das Skript lief konnte ich im ID die Datei speichern (ctrl+s). Sobald ich im Explorer sah, dass sie aktualisiert wurde, schoss ich den Task ab, löschte die temporäre .idlk Datei und startete ID wieder. Die bis dato getauschten EANs blieben erhalten. Danach gings wieder schneller. Aber eben, ohne Gewähr – es ging einfach.

**** Unter Windows gibt es ein paar kleine Unschönheiten, weil es an der Kommunikation zwischen Adobe und Windows nicht so klappe (sind halt auch nur Menschen, diese PCs), und weil Unterschiede zwischen den Systemsprachen DE-DE und DE-CH bestehen. Eine Fehlermeldung kommt nach der Installation und eine beim Schliessen des letzten Skriptfensters. Mit beiden kann man leben ohne Panik zu schieben.

Datenzusammenführung - Datenfeld mit GREP erzeugen

WernerPerplies
Beiträge gesamt: 2760

22. Jan 2019, 09:00
Bewertung:

gelesen: 4908

Beitrag als Lesezeichen
Moin Mike,
vielen Dank für Deine ausführliche Beschreibung und Dein Lob.
Die Zusammenarbeit mit Dir hat mir einige Anregungen und Ideen zur Verbesserung des Skriptes geliefert, auch dafür vielen Dank.
Sobald ich die Tests und den Einbau meiner neuen Pdf-Exportroutine in meinen Projekthandler abgeschlossen habe, werde ich die neue Version zur Verfügung stellen.
Antwort auf: Ich weiss nicht, wann er mal Pause macht :)


Spätestens wenn das Wetter passt, bei ausreichend Wind Sonne zieht's mich an den Strand.:-)

Einen schönen Tag wünscht

Werner Perplies
Praxisnahe Skript-Lösungen und Skript-Programmierung für Adobe InDesign
Aktuelles (Stand: 14.02.2024)
Kundenstimmen