Questions & Answers

mostafa
I'm new here

Formular-Felder / Metadaten bei der Generierung setzen und neu auslesen

Hallo,

Case-Beschreibung

ich habe ein Problem bei einem Verรถffentlichung-Ablauf. Der Prozess besteht aus mehreren Aktionen. Hierbei sind zwei Aufgaben am Anfang dieses Prozesses von Bedeutung:

  1. 1- Aktion1: Hier wird eine Executable Klasse innerhalb eines Moduls aufgerufen, welche Metadaten fรผr freigegebene Medien im Medienstore setzt, falls diese bis zum Zeitpunkt der Verรถffentlichung nicht definiert sind.
  2. 2- Aktion2: Ist eine klassische Generierungsaufgabe des im CMS gepflegten Inhalts รผber die entsprechenden Templates.

Problem-Beschreibung:

In einer Template greife ich auf diese Metadaten. Obwohl fรผr bestimmte Medien die Metadaten in der ersten Aktion gesetzt wurden, bekomme ich beim Auslesen diese in der Template bzw. im generierten Inhalt null-Werte.

Wenn ich jetzt das Verรถffentlichen noch mal ausfรผhre, werden die gesetzten Metadaten, die in der ersten Verรถffentlichung gesetzt wurden, richtig ausgelesen.

Ich habe mit media.refresch() bzw. project.save() und project.refresh() nachdem Setzen der Metadaten in der entsprechenden Klassen oder in extra dafรผr definierte Skript innerhalb einer zwischen Aktion im Generierungsprozess probiert. Leider nix.

Fragen:

  1. 1- Darf man bei einem Generierung-Prozess keine Formular-Felder in einer ersten Aktion setzen, die dann wรคhrend der Ausleitung in der nachfolgenden Aktion frisch ausgelesen werden?
  2. 2- Wenn es gestattet ist, wo konnte der Fehler sein?

Danke

Mostafa

0 Kudos
7 Replies
mostafa
I'm new here

Hallo zusammen,

ich habe das Problem gelรถst, im dem ich den Auftrag in zwei Auftrรคge aufgeteilt hab.

jetzt aber die nรคchste Frage dies bgzl.:

kann man die Log-Messages des zweiten Aufrags in der Log-Meldung des ersten integrieren bzw. einbetten? Wenn ja wie?

GrรผรŸe

Mostafa

0 Kudos

Hallo Mostafa,

in dem Skript welches das Projekt verรคndert muss der Zeitpunkt, der generiert werden soll auf einen Zeitpunkt _nach_ dieser ร„nderung gesetzt werden. Dazu zum Beispiel am Ende des Scripts folgende Zeile hinzufรผgen, so dass der aktuelle Stand nach Ausfรผhrung des Script fรผr die Generierung benutzt wird:

context.setStartTime(new Date());

Viele GrรผรŸe

Jรถrg

0 Kudos

Danke Jรถrg fรผr die Hilfe Smiley Happy

Deine Lรถsung habe selber am Anfang probiert, jedoch ohne Erfolg. Damit es funktioniert, braucht man eine Methode wie setRevision(Date, [Project]) im ScheduleContext.

wie ich oben beschrieben hab, habe ich den Generierungsprozess in zwei Auftrรคge geteilt (erster Auftrag macht die ร„nderung und anschlieรŸend ruft/fรผhrt den zweiten (Generierungs-)Auftrag). Somit lรคuft, wie ich es gewรผnscht habe. Der Hacken dabei ist, dass man die Logs des zweiten Auftrags (welcher innerhalb des ersten Auftrags aufgerufen bzw. ausgefรผhrt) nicht sehen und sie deshalb in den Logs der ersten Phase integrieren.

Ich kann auf alle Logs-Infos (TaskResults) der Aktionen im zweiten Auftrag รผber ScheduleEntryControl zugreifen. Meine Frage ist, wie kann ich diese TaskResults in den Logfiles-Fenster des ersten Auftrags einbetten.

GrรผรŸe

Mostafa

0 Kudos

Hallo Mostafa,

folgender Aufruf sollte dann eigentlich funktionieren, so dass man die Prozesse nicht aufteilen muss und auch das Problem mit den Logs nicht auftritt:

context.getProject().createTaggedRevision("Generation","needed for external database content");

context.setStartTime(new Date());

Viele GrรผรŸe

Jรถrg

0 Kudos

Halllo Jรถrg

Danke noch mal fรผr die Hilfe. Ich glaube aber, dass nur mit einem Auftrag nicht funktionieren wรผrde. Deswegen haben den Auftrag in zwei Entries gesplittet. Mein Problem ist, wie kriege ich, die Logs des zweiten Auftrag (welcher im ersten gestartet wird) im Logifiles-Gui des ersten Auftrag: Siehe Screenshots Unten

original Auftrag1-Logfiles

auftrag1.png

gewรผnschtes Ergebniss: Auftrag2-Logfiles in Auftrag1-Logfiles

auftrag2_in_1.png

GrรผรŸe

Mostafa

0 Kudos

Hallo Mostafa,

um das zu erreichen was du vor hast wรผrde ich folgendes empfehlen.

Ein schรถnes Wochenende Smiley Wink

Jรถrg

0 Kudos

Hallo Jรถrg,

ich habe gedacht, wir entwickeln hier mit Java und nicht mit Assembler. Selbst mit Assembler wรผrde ich sowas nicht auschlieรŸen ;-). Deine Botschaft ist aber angekommen!

Mostafa

0 Kudos

Type a product name