[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt Prozess nach Überschreiten einer Zeitgrenze abbrechen

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

Prozess nach Überschreiten einer Zeitgrenze abbrechen

Martin Fischer
  
Beiträge gesamt: 12263

9. Jul 2019, 16:19
Beitrag # 1 von 9
Bewertung:
(807 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Liebe Kollegen,

gibt es eine Weg, einen Prozess (z.B. Öffnen eines Dokuments) während der Ausführung eines Skripts nach Überschreiten einer bestimmten Dauer (z.B. 5 Min.) abzubrechen, zu protokollieren und mit dem nächsten Prozess fortzufahren?

Quasi einen Task in den Hintergrund auslagern und ggf. zu killen?

Viele Grüße
Martin


X

Prozess nach Überschreiten einer Zeitgrenze abbrechen

Gerald Singelmann
  
Beiträge gesamt: 6228

10. Jul 2019, 07:16
Beitrag # 2 von 9
Beitrag ID: #571040
Bewertung:
(768 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich lehne mich mal ganz weit aus dem Fenster.

JavaScript läuft in einem Single Thread. Salopp gesagt bedeutet das, dass ein JavaScript Interpreter immer genau eine Zeile Code nach der anderen abarbeitet – möglicherweise auf verschlungenen Wegen, aber immer eine nach der anderen.

Während der Bearbeitung eines Befehls kann der Interpreter auch nichts anderes machen.
Die Bedeutung von $.sleep(2000) ist daher nicht: "Ich lege mal ein paar Sekunden die Füße hoch und schau dem Rest des Systems beim Arbeiten zu", sondern "Für 2 Sekunden passiert hier gar nichts!"

Ich weiß nicht, ob das irgendwo in der Dokumentation steht, aber mein Eindruck ist, dass InDesign auch nur einen JavaScript-Interpreter am Laufen hat.
Das würde bedeuten, dass man per JavaScript (b) nicht den Ablauf eines anderen JavaScripts (a) beobachten kann. Denn b kommt ja erst zum Zuge, wenn a fertig ist.

Außerdem arbeitet im Gegensatz zur Webumgebung JavaScript in InDesign fast grundsätzlich synchron.

Das Laden einer Ressource im Web-Kontext sind letztlich zwei getrennte Scripte:

a1) Sag dem System, welche URL du willst und gib eine Weckruf-Funktion an, die aufgerufen wird, sobald das System damit fertig ist.
a2) Script a ist fertig.

b1) Weckruf-Funktion wird vom System aufgerufen
b2) b arbeitet Daten der Ressource ab.
b3) b ist fertig

Synchrones arbeiten in InDesign läuft hingegen so ab

c1) c sagt InDesign, es soll ein Dokument öffnen
c2) c wartet darauf, dass das Dokument offen ist
c3) InDesign hat das Dokument geöffnet, die Kontrolle geht wieder an c zurück und c macht weiter

Während c2 kann kein anderer JavaScript Befehl in InDesign ausgeführt werden.

Wie gesagt: Das ist mein Verständnis, das ich mir zusammengereimt habe. Ob das tatsächlich im Detail anders ist, müsste jemand nachtragen, der die Dokumentationen (SDK etc) gründlich studiert hat.

Falls ich richtig liege, ist die Konsequenz jedenfalls, dass dein Anliegen innerhalb von InDesign nicht lösbar ist.

Du müsstest die Kontrolle einem Prozess außerhalb von InDesign übergeben, der ggf. auch in der Lage ist, InDesign (oder Teile davon) abzuschießen.

Ich habe so recht keine Vorstellung, welcher Weg da gangbar wäre. Ob man z.B. in Nodejs etwas aufsetzen könnte oder ob AppleScript diese Art von Prozesssteuerung zulässt...
Kann sein, weiß ich nicht.

Das alles im Wesentlichen, um das Gespräch in Gang zu bringen :)


als Antwort auf: [#571032]

Prozess nach Überschreiten einer Zeitgrenze abbrechen

WernerPerplies
Beiträge gesamt: 2441

10. Jul 2019, 07:47
Beitrag # 3 von 9
Beitrag ID: #571041
Bewertung:
(760 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin Herr Singelmann,

ich denke, Sie haben die Situation gut beschrieben.

Ich löse solche Aufgaben, in dem ich je nach Situation entweder mit einem InDesign-Skript oder einem externen Skript ein Verzeichnis überwache.

Ich kann dann direkt mit einer Datei Aktionen auslösen oder mit dem Inhalt der Datei Parameter übergeben.

Das sollte eigentlich immer funktionieren.

Um auf die ursprüngliche Frage zurückzukommen:

1. Ein externes Programm (z. B. per Apple Script mit Filewatcher und Timer-Event per Indesign-Skript starten)
2. InDesign per Skript eine Datei öffnen lassen und am Ende des Vorganges eine externe Datei erzeugen.
3. Das externe Programm wartet auf diese Datei und wenn Sie nicht rechtzeitig erzeugt wird, bricht dieses Programm InDesign ab und startet es ggf. neu.
4. Über ein InDesign-Startupscript könnte man sogar die Kontrolle wieder an InDesign übergebn.

Einen schönen Tag wünscht

Werner Perplies
Auftragsprogrammierung und Skripte für Adobe InDesign
neu: WpsProjectHandler 15.06.2018, Version 1.75, neue Funktionen
Aktuelles
XING


als Antwort auf: [#571040]

Prozess nach Überschreiten einer Zeitgrenze abbrechen

Martin Fischer
  
Beiträge gesamt: 12263

10. Jul 2019, 09:00
Beitrag # 4 von 9
Beitrag ID: #571044
Bewertung:
(746 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Gerald,

vielen Dank für Deine anschaulichen Ausführungen, die ich gut nachvollziehen kann.

Antwort auf: Falls ich richtig liege, ist die Konsequenz jedenfalls, dass dein Anliegen innerhalb von InDesign nicht lösbar ist.


Genau dies hatte ich befürchtet und so gegenüber dem Kunden kommuniziert.
Aber weil das im gegebenen Fall so gravierend ist, wollte ich mir dies gerne von kompetenter Seite bestätigen lassen.

Danke dafür.


Herr Perplies,
Ihr Ansatz klingt vielversprechend.
InDesign abschießen (und neu starten) ist eine Hammermethode. Daran hatte ich in meinem Skript noch nicht gedacht.
Ich will mal sehen, ob ich das tatsächlich so realisieren will (und kann).

Vielen Dank auch für Ihre Anregung.


Zum Hintergrund:
Per Skript sollen nacheinander viele InDesign-Dateien (als Kopie) geöffnet und analysiert werden (Protokollierung verwendeter Schriften). Die meisten InDesign-Dateien werden dabei aus früheren Versionen hochkonvertiert. Darunter gibt es ein paar Kandidaten, die sich in der aktuellen CC-Version nicht öffnen lassen. InDesign steht entweder lange still und wartet auf einen Abschuss oder stürzt von sich aus irgendwann mal ab.
Die diesen Prozess auslösende Datei kann dem Protokoll entnommen und für's nächste Mal ausgeschlossen werden. Aber der Prozess als solcher ist zunächst mal beendet und muss zur Untersuchung aller weiteren Dateien ganz neu gestartet werden (auch bereits bearbeitete Dateien werden erneut geprüft).

Nun werde ich erst mal versuchen herauszufinden, wie häufig solche Störungen auftreten (vermutlich eher im Promille- als im Prozentbereich) und prüfen, ob mit Holzhammer oder einer weicheren Variante beizukommen wäre.


Vielen Dank für die Anregungen!

Viele Grüße
Martin




als Antwort auf: [#571040]
(Dieser Beitrag wurde von Martin Fischer am 10. Jul 2019, 09:20 geändert)

Prozess nach Überschreiten einer Zeitgrenze abbrechen

Martin Fischer
  
Beiträge gesamt: 12263

10. Jul 2019, 09:25
Beitrag # 5 von 9
Beitrag ID: #571046
Bewertung:
(737 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Eine weichere Methode könne folgendermaßen funktionieren:

Die Pfade erfolgreich ausgewerteter und Problem auslösender Dateien werden protokolliert und von einer erneuten Auswertung bei einer erneuten Ausführung des Skripts nach einem händischen Abschuss oder einem Absturz von InDesign ausgeschlossen.

Oder die erfolgreich ausgewerteten und die Problem auslösenden Dateien werden umbenannt:
19-07-10_meineInDesignDatei.indd
=> 19-07-10_meineInDesignDatei_GUT.indd bzw.
=> 19-07-10_meineInDesignDatei_SCHLECHT.indd

und über dieses Anhängsel bei der nächsten Skriptausführung übergangen.

Viele Grüße
Martin




als Antwort auf: [#571044]
(Dieser Beitrag wurde von Martin Fischer am 10. Jul 2019, 09:27 geändert)

Prozess nach Überschreiten einer Zeitgrenze abbrechen

WernerPerplies
Beiträge gesamt: 2441

10. Jul 2019, 09:33
Beitrag # 6 von 9
Beitrag ID: #571047
Bewertung:
(731 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Moin Herr Fischer,

Zitat Ihr Ansatz klingt vielversprechend.
InDesign abschießen (und neu starten) ist eine Hammermethode. Daran hatte ich in meinem Skript noch nicht gedacht


Diese Methode habe ich übrigens zum ersten Mal bei der Bearbeitung von Corel- Ventura-Dateien eingesetzt, dabei ging es darum, fehlerhafte Stellen innerhalb der Dateien zu finden, die Corel Ventura ab einer bestimmten Stelle zum Absturz brachten.

Viel Erfolg bei Ihrem Projekt.

Einen schönen Tag wünscht

Werner Perplies
Auftragsprogrammierung und Skripte für Adobe InDesign
neu: WpsProjectHandler 15.06.2018, Version 1.75, neue Funktionen
Aktuelles
XING


als Antwort auf: [#571044]

Prozess nach Überschreiten einer Zeitgrenze abbrechen

Martin Fischer
  
Beiträge gesamt: 12263

10. Jul 2019, 10:13
Beitrag # 7 von 9
Beitrag ID: #571048
Bewertung:
(716 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
[off topic]

Antwort auf: Bearbeitung von Corel- Ventura-Dateien

Ventura Publisher, mein Einstieg in den Werksatz in den späten 80ern.
Damals noch von Xerox und unter DR GEM.
Rasend schnell – gemessen an den damals verfügbaren Hardwarekomponenten.
Textformatierungen mit ASCII Code-Markierungen im Textmodus sehr gut vorzubereiten und zu kontrollieren.

Allerdings mit ein paar satztechnischen Einschränkungen, die mich zur (Bastel-)Arbeit mit PageMaker "zwangen".
Quark war Quark. ;-)

Später VP unter Corel und Windows gefühlt unstabiler als unter Xerox und GEM.

Was ist nur aus GEM und was aus Ventura geworden?

[/off topic]



Antwort auf: Viel Erfolg bei Ihrem Projekt.

Danke für die Aufmunterung.

Über die Beiträge oben sind mir neue Ideen zum Umgang mit den unerwünschten Situationen gekommen. Es tut gut, Dinge gemeinsam mit anderen zu überlegen und abzuwägen.
20on20

Viele Grüße
Martin




als Antwort auf: [#571047]

Prozess nach Überschreiten einer Zeitgrenze abbrechen

WernerPerplies
Beiträge gesamt: 2441

10. Jul 2019, 10:20
Beitrag # 8 von 9
Beitrag ID: #571049
Bewertung:
(713 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
[off topic]
Zitat Später VP unter Corel und Windows gefühlt unstabiler als unter Xerox und GEM.

Ja, keine Frage, konnte allerdings auch viel mehr.
Zitat Was ist nur aus GEM und was aus Ventura geworden?

leider tot, aber es gibt immer noch Anwender!
[/off topic]

Einen schönen Tag wünscht

Werner Perplies
Auftragsprogrammierung und Skripte für Adobe InDesign
neu: WpsProjectHandler 15.06.2018, Version 1.75, neue Funktionen
Aktuelles
XING


als Antwort auf: [#571048]

Prozess nach Überschreiten einer Zeitgrenze abbrechen

Gerald Singelmann
  
Beiträge gesamt: 6228

11. Jul 2019, 09:43
Beitrag # 9 von 9
Beitrag ID: #571061
Bewertung:
(619 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
"Eine weichere Methode könne folgendermaßen funktionieren: "

So habe ich das mal für einen Kunden gelöst.
Sprich: Du stattest das Script mit einem Gedächtnis aus, von welchen Dateien es die Finger lassen soll und welche Dateien schon fertig sind. Und dann wird das Script halt mehrfach gestartet, bis alles weg ist.
Funktionierte gut.

Die Hauptarbeit damals war das Interface, wie man dem Anwender mitteilt, was grad passiert ist ;)


als Antwort auf: [#571046]
X

Aktuell

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
07.02.2020 - 11.09.2020

Digicomp Academy AG, 8005 Zürich
Freitag, 07. Feb. 2020, 13.00 Uhr - Freitag, 11. Sept. 2020, 12.00 Uhr

Lehrgang

Bilden Sie sich zum zertifizierten Publishing-Multimedia-Profi aus. Neben Fotografie und Video befassen Sie sich mit der Medienproduktion, digitalen Publikationen und dem Webdesign für Desktop- und mobile Endgeräte. Mit dem Abschluss «Publisher Professional – Profil «Multimedia» verliehen durch die Digicomp Academy AG, bestätigen Sie Ihre Praxiserfahrungen und Qualifizierung in den genannten Themengebieten gegenüber Ihrem Arbeitgeber sowie Ihren Kunden.

Preis: CHF 10'500.-
Dauer: 30 Tage (ca. 210 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Nein

Organisator: Digicomp Academy AG

Kontaktinformation: Isil Günalp, E-Mailisil.guenalp AT digicomp DOT ch

https://www.digicomp.ch/weiterbildung/software-anwendungs-trainings/adobe-trainings/publishing-lehrgaenge/lehrgang-publisher-professional-profil-multimedia

Veranstaltungen
22.02.2020 - 04.07.2020

Lehrgang zielgerichtet auf die Zertifizierung zum Publisher Basic

Schulungsraum PubliCollege, Kronenhalde 9d, 3400 Burgdorf
Samstag, 22. Feb. 2020, 13.14 Uhr - Samstag, 04. Juli 2020, 13.15 Uhr

Projektseminar/Lehrgang

Ziele In der Medienproduktion unter Einbezug der aktuellen Publishing-Programme mitarbeiten. Voraussetzungen Sie möchten gestalterisch tätig sein und eigene grafische Ideen kompetent entwickeln sowie umsetzen; Medienproduktionen professionell planen und ausführen. Kompetenzen Nach Abschluss dieses Lehrgangs können Sie Printpublikationen aller Art von der Gestaltung über die Umsetzung bis zu druckfertige PDFs erstellen. Sie sind fähig, CI/CD-Vorgaben umzusetzen. Sie lernen die Grundlagen der grafischen Gestaltung kennen und setzen diese mit Adobe Photoshop, InDesign und Illustrator effizient um.

15 Halbtage, jeweils am Samstag von 08.30 bis 14 Uhr im Kursraum des PubliCollege, 3400 Burgdorf


Daten
Samstag, 22.2., 29.2., 14.3., 21.3., 28.3., 4.4., 25.4., 2.5., 9.5., 16.5., 6.6., 13.6., 20.6., 27.6., 4.7. 2020
Reservedatum am 23.5. 2020

Ja

Organisator: PubliCollege GmbH, 3400 Burgdorf

Kontaktinformation: Beat Kipfer, E-Mailinfo AT publicollege DOT ch

https://www.publicollege.ch/kursangebote/20-publisher-basic

Neuste Foreneinträge


Auswahl ausblenden

PDF: QR-Code mit Bild ersetzen

Unterstreichung NICHT hochstellen?

Unterschiedliche Abstände trotz identischer Absatzformate

Pfad veschieben

Anfängerfrage: Tabellenkopfzeile

Umstellung von Mac auf Windows verhindern

Acrobat Pro Textfarbe Javascript ändert sich erst nach Klick ins Formularfeld

Oehlbach DVI-D Dual-Link Kabel - 7,5 + 2 x 10 Meter

"Temporäre Aktivierung abgelaufen"
medienjobs