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

Sascha Szott szott at zib.de
Mon Apr 23 10:40:56 MEST 2012


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