AW: [Kobv-opus-tester] Änderung der Daten per Skript

Neuber, Daniel [RZ/Studienberatung] Daniel.Neuber at fh-rosenheim.de
Mon Apr 23 11:18:58 MEST 2012


Hallo Herr Szott,

ich würde das Skript in Python schreiben, da dies als Cronjob auf unserem Server jeden Tag die Sperrfristen unserer Dokumente prüfen soll. Dort würde ich dann die entsprechenden Felder anpassen. Ich hatte allledings vorab schon mit PHPMyAdmin überprüft, ob durch das Ändern der entsprechenden Felder das Dokument veröffentlicht wird. Dies hatte leider nicht funktioniert. Daher hatte ich die Vermutung, das OPUS noch mehr macht, als nur diese Felder zu ändern.

Viele Grüße
Daniel Neuber

-----Ursprüngliche Nachricht-----
Von: Sascha Szott [mailto:szott at zib.de] 
Gesendet: Montag, 23. April 2012 10:41
An: Opus-Tester
Cc: Neuber, Daniel [RZ/Studienberatung]
Betreff: Re: [Kobv-opus-tester] Änderung der Daten per Skript

Hallo Herr Neuber,

wenn Sie in Ihrem Skript dafür sorgen, dass das Dokument in den Zustand
(serverstate) *published* überführt wird, dann kümmert sich das OPUS-Framework automatisch um das Setzen der entsprechenden Zeitstempel (server_date_modified, server_date_published) und die Aufnahme des Dokuments in den Suchindex.

Das könnte in etwa so aussehen (sie können sich an dem Skript $BASEDIR/opus4/scripts/snippets/release_all_unpublished_docs.php
orientieren):

$docId = ... // wird von außen übergeben

$doc = new Opus_Document($docId);
$doc->setServerState('published');
$doc->store();


Beste Grüße,
Sascha Szott

On 23.04.2012 09:21, Neuber, Daniel [RZ/Studienberatung] wrote:
> Hallo zusammen,
>
> wir haben an unserem OPUS-System die Anforderung, Sperrfristen für 
> Abschlussarbeiten zu berücksichtigen. Dies soll automatisiert erfolgen.
> Das heißt, wenn ein Dokument heute eingestellt, aber erst in einem 
> Jahr veröffentlicht werden darf, dann soll dieses auch erst in einem 
> Jahr in der Suche aufgelistet werden. Mir wurde bereits gesagt, dass 
> dies aktuell nicht möglich ist. Nun würde ich hierfür gern ein kleines 
> Skript schreiben, das täglich das Feld "CompletedDate" prüft und dann 
> das Dokument frei gibt oder nicht. Mein bisheriger Versuch besteht 
> darin, die Felder "server_date_modified", "server_date_published" und 
> "server_state" zu ändern. Doch leider ist das Dokument dann immer noch 
> nicht in der Suche enthalten. Welche Felder werden von OPUS verändert, 
> wenn ein Dokument freigeschaltet wird?
>
> Vielen Dank und viele Grüße
>
> Daniel Neuber

--
Sascha Szott :: KOBV/ZIB :: <szott at zib.de> :: +49 30 84185-457