[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Verknüpfung zu einer Liste mit Produkt ID-Nummern

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

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

12. Dez 2011, 16:10
Beitrag # 1 von 17
Bewertung:
(6131 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo, ich habe folgendes Problem:

Ich habe eine Liste im Tabellenformat in ID kopiert. In dieser Liste befinden sich in einer Spalte Produkte mit eindeutigen Artikel-Nummern.
Im Innenteil der Publikation tauchen diese einmaligen Artikel-Nummern bei den Produktbeschreibungen wieder auf.

Frage: Wie kann ich die Liste, möglichst ohne großem Aufwand, mit den jeweiligen Seitenzahlen jeweils zu den platzierten Artikel-Nummern in einer zusätzlichen Spalte ergänzen?

Für Hinweise binn ich jetzt schon dankbar!

lg
X

Verknüpfung zu einer Liste mit Produkt ID-Nummern

-hans-
Beiträge gesamt: 748

12. Dez 2011, 21:37
Beitrag # 2 von 17
Beitrag ID: #486166
Bewertung:
(6088 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,

ohne Netz und doppelten Boden, ausgehend davon das jede Artikelnummer wirklich nur noch ein weiteres mal im Dokument vorkommt ... + die Zellen mit der Artikelnummer enthalten wirklich nur die Artikelnummer

Die Kolumne mit den Seitenzahlen wird neben der Kolumne mit den Artikelnummern eingefügt.

Kein schöner Code ;-) getestet mit CS3

Code
#target InDesign 
//Bitte den Textrahmen mit der Tabelle auswählen, dann Script starten
var newColumnContents = []

var myColumn = prompt('Bitte die Spalte der Tabelle eingeben in der die Artikelnummern stehen ', '1')
var myCells = app.selection[0].tables[0].columns[myColumn - 1].cells;

for (var i = 0; i < myCells.length;i++){
var toSearch = myCells[i].texts[0].contents;

app.findGrepPreferences = NothingEnum.nothing;
app.findGrepPreferences.findWhat= toSearch;
var resultArray = app.activeDocument.findGrep();
var luckyPunch = resultArray[1].parentTextFrames[0].parent.name.toString();
newColumnContents.push(luckyPunch)
}

app.selection[0].tables[0].columns.add(LocationOptions.AFTER, app.selection[0].tables[0].columns[myColumn - 1])

var myCells = app.selection[0].tables[0].columns[myColumn].cells;
for (var i = 0; i < myCells.length;i++){
var myCell = myCells[i];
myCell.texts[0].contents = 'Seite ' + newColumnContents[i];
}


Hoffe es klappt :)

Lieben Gruß

Hans-Gerd Claßen


als Antwort auf: [#486145]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

13. Dez 2011, 09:37
Beitrag # 3 von 17
Beitrag ID: #486199
Bewertung:
(6046 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

vielen Dank für die schnelle Hilfe. Ich arbeite mit einem CS 4 auf PC mit XP. Mir fehlt leider das Wissen ein Script in ID einzupflegen. Werde mich einlesen und versuchen.

Gruß


als Antwort auf: [#486166]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

13. Dez 2011, 11:48
Beitrag # 4 von 17
Beitrag ID: #486215
Bewertung:
(6020 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

ich bekomme beim starten des scripts sofort eine Fehlermeldung mit dem Text:
Fehlernummer:1024
Fehlerzeichenfolge: Anweisung erwartet

Datei:C\Programme\Adobe\Adobe InDesign CS4\Scripts\Scripts Panel\Samples\VBScript\KursScriptHans.vbs(so hab ich das genannt)

....Weißt Du Rat?

Gruß

Armin


als Antwort auf: [#486166]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

kurtnau
Beiträge gesamt: 2170

13. Dez 2011, 12:21
Beitrag # 5 von 17
Beitrag ID: #486221
Bewertung:
(6005 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo armin,

nenn das script *.jsx und lege es in den javascript ordner.

gruß kurt


als Antwort auf: [#486215]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

13. Dez 2011, 13:52
Beitrag # 6 von 17
Beitrag ID: #486235
Bewertung:
(5983 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Kurt,
auch Dir zunächst ein Dankeschön.
Es ist nicht allzuleicht ohne tiefere Kenntnisse des scriptens da durchzusteigen.
Ich habe das Script umbenannt und in das entsprechende .jsx-Verzeichnis gelegt.

Eine Fehlermeldung erscheint nun an anderer Stelle des Scripts mit:
JavaScript Fehler!
Fehlernummer: 21
Fehlerzeichenfolge: undefined ist kein Objekt
...dann Zeile 14
var lucky. . .


Die Frage ist auch: dürfen die Tabellen miteinander verkettet sein?
Funktioniert das Script auch wenn schon eine Spalte für die Seitenzahl vorhanden ist?
Kannst Du noch einmal bitte schauen, Kurt? (Hans ist nicht da...)


als Antwort auf: [#486221]
(Dieser Beitrag wurde von Satz21 am 13. Dez 2011, 14:04 geändert)

Verknüpfung zu einer Liste mit Produkt ID-Nummern

kurtnau
Beiträge gesamt: 2170

13. Dez 2011, 14:30
Beitrag # 7 von 17
Beitrag ID: #486240
Bewertung:
(5965 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hallo armin,

ich kann dir leider nicht helften, da ich vom scripten selber leider keine ahnung habe.

gruß kurt


als Antwort auf: [#486235]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

-hans-
Beiträge gesamt: 748

13. Dez 2011, 14:50
Beitrag # 8 von 17
Beitrag ID: #486242
Bewertung:
(5960 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hi,

es handelt sich um ein JavaScript.
Am besten im "C:\Program Files (x86)\Adobe\Adobe Utilities\ExtendScript Toolkit CS4\ExtendScript Toolkit.exe" öffnen und in das Verzeichnis "C:\Program Files (x86)\Adobe\InDesign\Scripts" sichern.

Über die Scriptenpalette in ID ausführen ...

Tschöle

Hans-Gerd Claßen


als Antwort auf: [#486235]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

13. Dez 2011, 15:50
Beitrag # 9 von 17
Beitrag ID: #486247
Bewertung:
(5938 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

Ich habe das Script umbenannt und in das entsprechende .jsx-Verzeichnis gelegt.

Eine Fehlermeldung erscheint nun an anderer Stelle des Scripts mit:
JavaScript Fehler!
Fehlernummer: 21
Fehlerzeichenfolge: undefined ist kein Objekt
...dann Zeile 14
var lucky. . .


Die Frage ist auch: dürfen die Tabellen miteinander verkettet sein?
Funktioniert das Script auch wenn schon eine Spalte für die Seitenzahl vorhanden ist?

Gruß


als Antwort auf: [#486242]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

-hans-
Beiträge gesamt: 748

13. Dez 2011, 16:15
Beitrag # 10 von 17
Beitrag ID: #486251
Bewertung:
(5924 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

in der Tabellenzelle mit der Artikelnummer darf nur die Artikelnummer stehen, sonst nichts. Pro Artikelnummer eine Zelle, alle Zellen in einer Kolumne ...

Die Tabelle kann verkettet sein.

Wenn luckyPunch nicht definiert ist dann gibt es für die Artikelnummer keinen Treffer. Diese Fehlermeldung kann man ausschließen, sie bedeutet aber, das die Artikelnummer im Dokument kein weiteres Mal gefunden wurde!


Code
#target InDesign  
//Bitte den Textrahmen mit der Tabelle auswählen, dann Script starten
var newColumnContents = []

var myColumn = prompt('Bitte die Spalte der Tabelle eingeben in der die Artikelnummern stehen ', '1')
var myCells = app.selection[0].tables[0].columns[myColumn - 1].cells;

for (var i = 0; i < myCells.length;i++){
var toSearch = myCells[i].texts[0].contents;

app.findGrepPreferences = NothingEnum.nothing;
app.findGrepPreferences.findWhat= toSearch;
var resultArray = app.activeDocument.findGrep();
if (resultArray.length != 1){
var luckyPunch = resultArray[1].parentTextFrames[0].parent.name;
newColumnContents.push(luckyPunch) ;
}else{
alert('Die Artikelnummer ' + toSearch + 'wurde nicht gefunden')
}
}

app.selection[0].tables[0].columns.add(LocationOptions.AFTER, app.selection[0].tables[0].columns[myColumn - 1])

var myCells = app.selection[0].tables[0].columns[myColumn].cells;
for (var i = 0; i < myCells.length;i++){
var myCell = myCells[i];
myCell.texts[0].contents = 'Seite ' + newColumnContents[i];
}


Immerhin bist Du schon soweit, dass Du keine Javascriptfehlermeldungen mehr von VB-Scripts bekommst ;-)

Tschöle

Hans-Gerd


als Antwort auf: [#486247]
(Dieser Beitrag wurde von -hans- am 13. Dez 2011, 16:17 geändert)

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

23. Dez 2011, 13:44
Beitrag # 11 von 17
Beitrag ID: #486840
Bewertung:
(5777 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,

...ja ich mache Fortschritte ;-) !

Aber dennoch habe ich ein Problem wo Du vielleicht weiterhelfen kannst. Ich bekomme nach der Auswahl 1. Spalte folgende Fehlermeldung: JavaScript Fehler
Fehlernummer: 45
Fehlerzeichenfolge: Objekt ist ungültig
....
Zeile: 6

Quelle: varmyCells ....


als Antwort auf: [#486251]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

-hans-
Beiträge gesamt: 748

23. Dez 2011, 15:21
Beitrag # 12 von 17
Beitrag ID: #486849
Bewertung:
(5761 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hi,

stimmt! Weil das Script davon ausgeht, dass du einen Textrahmen auswählst - nicht eine Tabellenspalte.

Code
//Bitte den Textrahmen mit der Tabelle auswählen, dann Script starten 


Frohes Fest :)


als Antwort auf: [#486840]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

24. Dez 2011, 12:20
Beitrag # 13 von 17
Beitrag ID: #486866
Bewertung:
(5695 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
...was soll ich sagen?

schöne Weihnacht und ein Danke!

lg

Armin


als Antwort auf: [#486849]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

27. Dez 2011, 12:57
Beitrag # 14 von 17
Beitrag ID: #486951
Bewertung:
(5601 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Hans,
das Script funktionierte soweit es die gewünschten Eintragungen in den ersten Teil der verketteten Tabelle machte. In den zweiten Teil der Tabelle wurden nur eine Seitenzahl für alle weiteren Felder eingetragen, die alledings nicht stimmte.
Liegt es vielleicht doch an der Verkettung?

Vielen Dank für eine nochmnalige Hilfe im Voraus.

Gruß

Armin


als Antwort auf: [#486866]

Verknüpfung zu einer Liste mit Produkt ID-Nummern

Satz21
Beiträge gesamt: 15

27. Dez 2011, 14:38
Beitrag # 15 von 17
Beitrag ID: #486954
Bewertung:
(5578 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo,

habe jetzt ale Daten in eine komplette nicht verkettete Tabelle zusammengeführt. Bis Zeile 35 läuft allse nach Wunsch, dann wird nur noch die eine falsche Seitenzahl vom Script eingefügt.
An der Verkettung kann's ja nun nicht liegen. Wo denn? Eine Idee?

????

Tschö


als Antwort auf: [#486849]
X

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
17.04.2024

Online
Mittwoch, 17. Apr. 2024, 10.00 - 10.30 Uhr

Webinar

Komplizierte, kleinteilige Aufträge; alles sehr speziell; seit Jahren bewährte Prozesse – da können wir nichts standardisieren und automatisieren! Das sagen viele Großformatdrucker – aber stimmt das wirklich, ist dem tatsächlich so? Günther Business Solutions und Impressed treten in einem Webinar den Gegenbeweis an. Experten beider Unternehmen zeigen, wie Großformatdrucker vom Einsatz zweier bewährter Lösungen profitieren können: • von advanter print+sign von Günther Business Solutions, dem ERP-System für den Großformatdruck, dass alle Phasen der Wertschöpfung im Large Format Printing abdeckt • von Impressed Workflow Server, der smarten PDF-Workflow-Lösung für Druckereien, die Datenmanagement, Preflight und Produktionssteuerung übernimmt Über die Kombination beider Lösungen können Großformatdrucker ihre Prozesse mit modernen Workflows Schritt für Schritt automatisieren – und so zügig deutliche Zeit- und Kosteneinsparungen realisieren. Das Webinar sollten Sie sich nicht entgehen lassen – damit Sie keine Effizienzpotenziale mehr liegen lassen. Melden Sie sich am besten gleich an, wir freuen uns auf Sie! PS: Melden Sie sich in jedem Fall an – sollten Sie zum Termin verhindert sein, erhalten Sie die Aufzeichnung.

kostenlos

Ja

Organisator: Impressed / Günther Business Solutions

https://www.impressed.de/schulung.php?c=sDetail&sid=326

Und es geht doch: Automatisierung im Großformatdruck!