22
SuperX-Admin-Handbuch IVS-Modul www.MemText.de Supportadresse [email protected] http://www.superx-projekt.de  Version 0.7 Stand 31.5.2013

SuperXAdminHandbuch IVSModul - super-ics.de · Das IVSModul besteht im Endzustand aus Tabellen, Prozeduren und Abfragen. Hinweis: Bei diesen Tabellen handelt es sich nur um einen

Embed Size (px)

Citation preview

SuperX­Admin­Handbuch IVS­Modul

www.MemText.de

Supportadresse support@superx­projekt.de

http://www.superx­projekt.de

 Version 0.7Stand 31.5.2013

Sun, Sun Microsystems, Solaris, Java, JavaServer Web Development Kit, JDBC und JavaServer 

Pages sind eingetragene Warenzeichen von Sun Microsystems, Inc. UNIX ist ein eingetragenes Wa­

renzeichen von X/Open Company, Ltd. Windows, WindowsNT, Win32, VBScript und Office 2000 

sind eingetragene Warenzeichen von Microsoft Corp. Linux ist eingetragenes Warenzeichen von 

Linus Torvalds. Alle weiteren Produktnamen sind Warenzeichen der jeweiligen Hersteller. 

Dieses Produkt beinhaltet Software, die von der Apache Software Foundation (http://www.apa­

che.org/) entwickelt wurde.

SuperX wird unter der deutschen Variante der GPL­Lizenz von dem Land Nordrhein­Westfalen, 

vertreten durch die FernUniversität Hagen, diese wiederum vertreten durch die Geschäftsstelle der 

Initiative CampusSource bei der FernUniversität Hagen, Feithstraße 142, D­58084 Hagen vertrie­

ben (www.campussource.de). Details zu den Lizenzbedingungen finden Sie im Kernmodul­Archiv 

(/lizenz.txt) oder unter http://www.campussource.de/lizenz/. Ergänzende Hinweise finden Sie auf 

der Projekthomepage unter http://www.superx­projekt.de. 

LizenzPostgres:

PostgreSQL Database Management System(formerly known as Postgres, then as Postgres95)

Portions Copyright (c) 1996­2001, The PostgreSQL Global Development Group

Portions Copyright (c) 1994, The Regents of the University of California

Permission to use, copy, modify, and distribute this software and itsdocumentation for any purpose, without fee, and without a written agreementis hereby granted, provided that the above copyright notice and thisparagraph and the following two paragraphs appear in all copies.

IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FORDIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDINGLOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITSDOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THEPOSSIBILITY OF SUCH DAMAGE.

THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITYAND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER ISON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TOPROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

LizenzJava

Copyright 2002 Sun Microsystems, Inc. All Rights Reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

­Redistributions of source code must retain the above copyright  notice, this  list of conditions and the following disclaimer.

­Redistribution in binary form must reproduct the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

Neither the name of Sun Microsystems, Inc. or the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission.

This software is provided "AS IS," without a warranty of any kind. ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NON­INFRINGEMENT, ARE HEREBY 

EXCLUDED. SUN AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES OR LIABILITIES  SUFFERED BY LICENSEE AS A RESULT OF  OR RELATING TO USE, MODIFICATION OR DISTRIBUTION OF THE SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

You acknowledge that Software is not designed, licensed or intended for use in the design, construction, operation or maintenance of any nuclear facility.

1 Einführung...........................................................................................................................62 Hintergrund FSV­GX Modul IVS Erweiterung...............................................................73 Installation des IVS­Moduls...............................................................................................8

3.1 Voraussetzungen............................................................................................................83.2 Kurzanleitung.................................................................................................................83.3 Installation des IVS­Moduls...........................................................................................9

3.3.1 Entladen der IVS­Daten....................................................................................................................10

3.3.1.1 Allgemeines...............................................................................................................................10

3.3.1.2 Einrichtung der Entladescripte..................................................................................................10

3.3.1.2.1 Entladen unter Postgres  oder Informix / UNIX................................................................10

3.3.1.2.2 Entladen unter Windows....................................................................................................13

3.3.2 Erzeugen des IVS­Moduls.................................................................................................................13

3.3.3 Konfiguration nach der Installation...................................................................................................14

3.3.3.1 Zentrale Konstanten...................................................................................................................15

3.3.3.2 Hochschulspezifische Anpassungen beim Update....................................................................15

3.3.4 Upgrade des IVS­Moduls..................................................................................................................16

3.4 Einladen der IVS­Daten nach SuperX.........................................................................163.4.1 Erste Datenkontrolle..........................................................................................................................16

3.4.2 Fehlerbehandlung und Regelbetrieb..................................................................................................17

3.4.2.1 Logdateien.................................................................................................................................17

3.4.2.2 Warnungen................................................................................................................................17

3.4.2.3 Fehler "out of memory".............................................................................................................17

3.4.2.4 Regelbetrieb und Einrichten des Cronjob..................................................................................17

3.5 Entfernen des IVS­Moduls...........................................................................................184 Bestandteile des IVS­Moduls............................................................................................185 Versionshistorie des IVS­Moduls.....................................................................................18

6

1 EinführungDas Berichtssystem SuperX ist ein sog. Data Warehouse, d.h. beiliebig viele Datenquellen 

werden unter einer einheitlichen Auswertungsschnittstelle zur Verfügung gestellt. Da jede 

Hochschule unterschiedliche Datenquellen besitzt und in SuperX übernehmen will, bereiten 

wir für jede Datenquelle ein Modul vor, z.B. ein COB­Modul oder ein IVS­Modul.

Die Module enthalten die wichtigsten Prozeduren, Tabellen und Abfragen für die jeweilige 

Datenquelle. Folgende Tabellen sind generell zu unterscheiden:

• Datentabellen enthalten die entladenen Basisdaten • Hilfstabellen enthalten aggregierte Datentabellen und werden von den Abfragen ge­

nutzt. Durch Hilfstabellen wird die Performance der Abfragen besser.• Schlüsseltabellen enthalten Schlüssel und Metadaten, z.B. Anklageklassen.

Das IVS­Modul besteht im Endzustand aus Tabellen, Prozeduren und Abfragen. 

Hinweis: Bei diesen Tabellen handelt es sich nur um einen kleinen Auszug aus dem Datenmo­

dell in FSV­GX / IVS. Das Modul ist also nur ein "Minimal"­Paket, das dazu dient, 

den Anlagespiegel zu erzeugen. Zu einem späteren Zeitpunkt kann das Modul erwei­

tert werden.

Neuigkeiten zu dieser Version finden Sie im Abschnitt Versionshistorie. 

Falls es bei der Implementation des IVS­Moduls zu Problemen kommt, können Sie sich un­

ter www.superx­projekt.de informieren. Oder mailen Sie uns direkt:

Supportadresse allgemein:support@superx­projekt.de

  Daniel Quathamer

[email protected] Bisping

[email protected]

7

2 Hintergrund FSV­GX Modul IVS ErweiterungDas SuperX IVS­Modul ist nur mit einer FSV Version nutzbar, die alle Grundlagen für den 

Anlagenspiegel bereitstellt.

• Erzeugung der Datengrundlage für den Anlagespiegel (Tabelle ivasp in FSV­GX und ivasp_bga in HIS­FIBU) inkl. Prüfroutine

• Konzept und Realisierung der Pflege von wertbeständigen Gütern im Anlagespiegel.   Achtung: dies ist technisch erst im kommenden FSV­Release (Geplant: 06­2009) möglich.

Dabei ist die Anmerkung im FSV­IVS­Handbuch zu beachten:

***

   *  Inventarisierte Güter dürfen nicht mit einer Anzahl > 1 verbucht werden.

 

    *  Der IVS­Anlagenspiegel berücksichtigt keine Umbuchungen. Es kann also sein, daß in 

einer Kostenstelle ein Gerät enthalten ist, das früher einer anderen Kostenstelle gehörte. Die 

früher erzeugten Abschreibungen für dieses Gerät werden dann für die frühere Kostenstelle 

ausgewiesen. 

    * Auf der letzten Seite des IVS­Anlagenspiegels werden Summen über alle Gruppierun­

gen hinweg angezeigt, also die Daten der gesamten Hochschule, falls bei der Suche nicht über

das Jahr hinaus Einschränkungen vorgenommen wurden. Da auf diese Weise Umbuchungen 

innerhalb der Hochschule keine Rolle mehr spielen, kann mittels der Gesamtsumme die Plau­

sibilität des Anlagenspiegels überprüft werden! 

***

Das bedeutet: Die einzelnen Zeilen des Anlagenspiegels werden den genannten Berechnun­

gen nicht immer gerecht. Immer passen müssten die Werte allerdings in der Gesamtsumme 

am Ende des Anlagenspiegels, sonst stimmt etwas nicht. Ausnahme: Da die Abschreibungen 

in den beiden Spalten nicht theoretisch berechnet, sondern tatsächlich addiert werden, stim­

men noch eine zeitlang die "bis"­Werte nicht, sondern dürften regelmäßig zu niedrig sein. 

Grund: Irgendwann in der Vergangenheit hat die Hochschule den ersten Abschreibunglauf 

überhaupt durchgeführt, z.B. für das Jahr 2004. Dann gibt es für die Vorjahre von 2004 keine 

Abschreibungen, die in die Addition mit einfließen können. Bei den Restwerten werden diese 

Beträge aber natürlich berücksichtigt. Außerdem können die auf Abgänge entfallenden Ab­

schreibungen nicht herausgerechnet werden.

Im Beispiel wird sich diese scheinbare Inkonsistenz erst dann erledigt haben, wenn es keine 

Geräte mit Inbetriebnahmedatum vor 2004 mehr im Bestand geben wird.

8

3 Installation des IVS­Moduls

3.1 VoraussetzungenDas IVS­Modul läuft serverseitig unter folgenden Voraussetzungen:

• Informix Dynamic Server 7.31 oder höher bzw. Postgres 7.3 oder höher• Betriebssystem Linux (Suse oder Redhat) oder Cygwin mit Bourne Again Shell 

(bash). • Das SuperX­Kernmodul 3.5 oder höher1

• Als Datenquelle sind Scripte für HISFSV 11.x oder höher unter Informix bzw. Post­gres mitgeliefert. Die Schnittstelle kann aber auch aus anderen Datenquellen bedient werden.

3.2 KurzanleitungFolgende Arbeitsschritte sind in der typischen Umgebung (IVS läuft unter Informix / Post­

gres) notwendig:

1. Zunächst entpacken Sie das Archiv ivs<<Versionsnr>>_superx_<<Encodierung>>_<<Da­tenbanksystem>>.tar.gz als User superx (nicht als root) an der Stelle $SUPERX_DIR. Die Variable <<Encodierung>> kann "iso" oder "utf8" sein. Die Locale beim Entpacken (Variable LANG) sollte dieser Encodierung entsprechen. 

2. Einrichtung der IVS­bezogenen Umgebungsvariablen ­ Prüfen Sie ob in Ihrer $SU­PERX_DIR/db/bin/SQL_ENV alle Einträge aus SQL_ENV.IVS.sam vorhanden sind, ggfs. rü­berkopieren). Aktivieren Sie die Umgebung mit . $SUPERX_DIR/db/bin/SQL_ENV

3. Benennen Sie die Datei $SUPERX_DIR/db/module/ivs/rohdaten/IVS_ENV.sam nach IVS_ENVum und passen Sie die Umgebungsvariablen für den FSV­Datenbankrechner an. 

4. Entscheiden Sie sich zunächst für ein "Push"­ oder "Pull"­Verfahrne beim Entladen. Die häufigsten Modi sind erfahrungsgemäß: "Push" bei IVS unter Informix (Unix), "Pull" bei allen andere Systemen.Beim Entladen aus IVS unter Informix im "Push"­Modus: Kopieren sie den Verzeich­nisinhalt unter $SUPERX_DIR/db/module/ivs/rohdaten zum IVS­Rechner, bzw. mounten Sie das Verzeichnis auf dem SuperX­Rechner2. Laden und testen Sie dann die Umge­bung in IVS_ENV.

1  Kernmodul+ Handbücher beziehen Sie über http://download.superx­projekt.de

2 Es gibt mehrere Möglichkeiten zum Entladen der Rohdaten. Es ist z.B. auch möglich, dem User der SuperX­

Datenbank direkten Zugang zum FSV­Rechner zu geben und die Entladescripte direkt auf dem SuperX­Rechner 

zu starten; dies bietet sich z.B. an, wenn Sie SOS unter Postgres oder Informix f. Windows NT betreiben.

9Beim Entladen aus IVS unter Postgres im "Pull"­Modus: Laden Sie die Umgebung in IVS_ENV und richten Sie mit dem propadmin.x die Datenbankverbindung zum IVS­Rechner ein. Achten Sie bei Postgres darauf, dass bei FSV ab Version 12 die Variable JDBC_PARAM="set search_path to mbs;"

gestetzt sein muss (siehe Musterdatei IVS_ENV.sam).5. Ausführen des Entladescripts $SUPERX_DIR/db/module/IVS/rohdaten/ivs_unload.x für die 

Basisdaten. Ggf. Kopieren des Rohdaten­Verzeichnis der entladenen IVS­Daten nach $SUPERX_DIR/db/module/ivs/rohdaten 

Ein Scripte dafür heißt ivs_copy.x 6. Laden Sie für die folgenden Schritte die Umgebung für SuperX

. $SUPERX_DIR/db/bin/SQL_ENV Erzeugen des IVS­Moduls in der SuperX­Datenbank: $SUPERX_DIR/db/module/ivs/ivs_modul_erzeugen.xFalls ein Fehler auftritt, versuchen Sie die Ursache zu beheben, starten Sie dann$SUPERX_DIR/db/module/ivs/ivs_modul_entfernen.x 

(etwaige Fehler können normalerweise ignoriert werden)und anschließend erneut$SUPERX_DIR/db/module/ivs/ivs_modul_erzeugen.x

7. Nur wenn Sie Tomcat auf einem separaten Rechner betreiben: Fügen Sie den Inhalt der Datei $SUPERX_DIR/webserver/tomcat/webapps/superx/WEB­INF/ivs_dbforms_config_<<pg für 

Postgres oder ids für Informix)>>.xml vom Kommentar "<!­­Hier beginnt Modulde­finition­­>" bis zum Kommentar "<!­­Hier endet Moduldefinition­­>" in Ihre db­forms­config.xml ein.Danach starten Sie Tomcat neu.

8. Übernahme der entladenen IVS­Daten nach SuperX:$SUPERX_DIR/db/module/ivs/ivs_update.x 

9. Prüfen des Update, Testen der Abfragen10. Schritt 10 kann jede Nacht wiederholt werden. Dazu muss der Entladerhythmus ge­

plant werden, und die Cronjobs werden eingerichtet. 

3.3 Installation des IVS­Moduls

Zunächst müssen die Rohdaten aus IVS entladen werden. Danach wird die Umgebung ein­

gerichtet, und das Modul kann installiert werden.

103.3.1 Entladen der IVS­Daten

3.3.1.1 Allgemeines

Beim Entladen der IVS­Daten werden Datentabellen und Schlüsseltabellen entladen, um sie 

nach SuperX zu übernehmen. 

Wichtig ist, daß der Anlagespiegel für die komplette Hochschule in IVS generiert wurde. 

Eine Anleitung dazu finden Sie hier:

http://wiki.his.de/mediawiki/index.php/Inventarverwaltung#Dialog_zur_Selektion_der_Da­

ten_f.C3.BCr_einen_Anlagenspiegel

Falls dieser Dialog nicht verfügbar ist, konfigurieren Sie ihn bitte in eine Aufgabe hinein, 

z.B. in die Aufgabe "Inventarisierung". Sie können auch die vorkonfigurierte Aufgabe "IVS  

­Anlagenspiegel" importieren und einem Menü hinzufügen. Nach der Verwendung des Dia­

logs "IVS ­ Auswertung für Anlagenspiegel" ist die Tabelle "ivasp" gefüllt.

Für das Entladen gibt es ferner zwei Modi: Das "Pull"­Verfahren und das "Push"­Verfahren.

• Beim "Pull"­Verfahren wird einer Benutzerkennung auf dem SuperX­Rechner Zu­griffsrecht auf die IVS­Datenbank gegeben, und die Daten werden via TCP/IP aus dem Basissystem entladen.

• Beim "Push"­Verfahren werden die Entladescripte auf den IVS­Rechner kopiert und dort von einer Benutzerkennung auf dem IVS­Rechner ausgeführt. Die Rohdaten müs­sen dann auf den SuperX­Rechner kopiert werden. Dieses Verfahren klappt bei Infor­mix unter Unix problemlos, bei Entladen aus Postgres müsste das komplette SuperX­Kernmodul installiert werden.

Am einfachsten ist immer das "Pull"­Verfahren, das mit fast allen Quellsystemen funktio­

niert und wenig Konfiguration auf dem Quellsystem erfordert. Aufgrund von Sicherheitsvor­

kehrungen oder Netz­Infrastrukturen wählen aber viele Hochschulen das "Push"­Verfahren. 

Da derzeit Informix /Unix die gängigste Plattform an Hochschulen ist, ist dies auch kein Pro­

blem. 

 

3.3.1.2 Einrichtung der Entladescripte

Das Entladescripte für die IVS­Tabellen liegen im Verzeichnis 

$SUPERX_DIR/db/module/IVS/rohdaten  und lautet ivs_unload.x

3.3.1.2.1 Entladen unter Postgres  oder Informix / UNIX

11Am einfachsten ist es, wenn Sie als User superx vom SuperX­Server direkt auf den FSV­

Datenbankserver zugreifen und entladen können ("Pull"­Verfahren). Dann ist es sogar egal ob

Sie IVS unter Informix f. Win., Informix f. Unix oder Postgres einsetzen; außerdem brauchen 

Sie die Dateien dann nicht vom IVS­Rechner nach SuperX kopieren. 

Für Postgres ist dies auch deshalb die einfachste Lösung, weil zum Entladen aus Postgres 

die Bibliotheken des SuperX­Kernmoduls vorhanden sein müssen. 

Für Informix ist auch das Entladen im "Push"­Verfahren möglich: kopieren Sie den gesam­

ten Verzeichnisinhalt ab $IVS_PFAD/rohdaten auf den FSV­Rechner, geben Sie dem Script Aus­

führungsrechte. Die Scripte laufen nur, wenn die entsprechenden Umgebungsvariablen in der 

Datei IVS_ENV (im gleichen Verzeichnis, ein Muster liegt vor in IVS_ENV.sam) korrekt ge­

setzt sind, benennen Sie die Musterdatei um nach IVS_ENV und tragen die richtigen Umge­

bungsvariablen ein, z.B. den Pfad für $INFORMIXDIR, 

In der  IVS_ENV müssen  folgende Umgebungsvariablen gesetzt werden (defaults sind be­

reits vorbelegt, aber hier und da müssen Sie sicher ran):

Nur für Informix gelten:INFORMIXDIR Home­Verzeichnis von Informix

INFORMIXSERVER Name des InformixserversONCONFIG Name der onconfig, wenn  auf dem IVS­Rechner mehrere 

Informix­Instanzen laufenCLIENT_LOCALE Sprachumgebung (wichtig fürs Entladen von Datumsfor­

maten)SERVER_LOCALE dito

TRANSACTION_OFF Nur für Informix: Wenn Transaktionen eingeschaltet sind und die Protokoll­Tabellen groß sind, dann sollte dieses wie folgt belegt sein.TRANSACTION_OFF="SET ISOLATION TO DIRTYREAD;"

12Nur für Postgres gelten:

PGDATESTYLE Datumsformat "German"PGPORT Port vom Postgres­Server, standardmäßig 5432PGHOST Hostname oder IP­Adresse vom Postgres­ServerPGUSER Benutzerkennung für Postgres­Server (nur Datenbank, 

nicht Betriebssystem)PGPATH Installationsverzeichnis von Postgres, z.B. 

/usr/local/pgsql

DB_PROPERTIES Pfad zur db­ivs.properties­Datei mit den Zugangsparame­tern für IVS unter Postgres

LOGGING_PROPERTIES Pfad zur Steuerungsdatei mit den Parametern für das Log­ging beim Entladen, voreingestellt auf ./logging.proper­ties. Normalerweise brauchen Sie hier nichts ändern, wenn beim Entladen Probleme auftauchen, kann man den Level von SEVERE auf INFO oder FINEST ändern, dann wer­den die konkreten SQLs geloggt. Aber Achtung: wenn keine Fehler mehr auftreten, müssen Sie den Level wieder auf SERVERE ändern, sonst kommen Schlüsselworte in die Logdatei ivs_unload.err, die dann bei der Übernahme nach SuperX fälschlicherweise zu Fehlermeldungen füh­ren.Speziell für Postgres und FSV Version 12.x oder hö­her:

JDBC_PARAM Fest vorgegebener Text:set search_path to mbs;

JDBC_CLASSPATH Wenn Sie noch das Kernmodul 3.5 nutzen, dann ist die Entladeroutine nicht bereit für den o.g. JDBC_PARAM. Daher muss folgende Library eingebunden werden:$IVS_LOAD_PFAD/lib/superx4.0.jar:$JDBC_CLASSPATH

Hintergrund der letzten beiden Variablen: Mit FSV 12 wurden die drei Datenbanken COB, 

SVA und MBS in einer Datenbank "hisrm"  integriert, und SQL­Zugriffe auf das jew. Seg­

ment werden immer mit dem Präfix "set search_path to <<Modulname>>" versehen. Damit wird

unter Postgres das jew. Schema aktiviert.

Unter Postgres muss für das "Pull"­Verfahren beim Entladen die Datenbankverbindung in 

der Datei db­ivs.properties eingetragen werden (Muster für Postgres liegt bei in db­

ivs_pg.properties.sam). Dazu laden Sie einmal die Datei IVS_ENV mit den obigen Parame­

ter, starten den SuperX­Propadmin (siehe Administrationshandbuch Kernmodul) und richten 

die Verbindung zum IVS­Server ein. Das Kennwort wird verschlüsselt gespeichert. Danach 

sind die Entladescripte für Postgres ausführbar.

Hinweis: Anders als Informix hat Postgres hat eine eigene, vom Basissystem unabhängige 

Benutzerverwaltung. Daher brauchen Sie den User, den Sie zum Entladen aus Postgres nut­

zen, nicht auf dem SuperX­ oder IVS­Rechner auf Betriebssystem­Ebene einrichten. Sie kön­

nen also z.B. auf dem SuperX­Rechner zum Entladen aus IVS die Kennung IVS des Postgres­

13Rechners verwenden. Oder Sie richten in der IVS ­Datenbank den Benutzer SuperX ein und 

geben ihm Leserecht auf die Tabellen sowie das Recht, Tabellen und Stored Procedures anzu­

legen.

Für alle Platformen gelten folgende Variablen:SX_CLIENT Entladeprogramm für FSV­DB: dbaccess, psql oder jdbcDATABASE Entladedatenbank der FSV­DB: INFORMIX, POSTGRES

VERSION Version von HISFSV(Ganzzahlig)ERRORMAIL An wen solle eine Logmail verschickt werden, wenn das 

Entladen nicht geklappt hat? (nur Unix).LOGMAIL An wen soll immer eine Logmail verschickt werden

MAILPROG Pfad zum ausführbaren Mailprogramm unter Unix, Vorbe­legung ist "mail", manche Unixe haben aber auch "mutt".

Wenn die Rohdaten nach dem Entladen vom IVS­Rechnerauf den SuperX­Rechner kopiert werden sollen, dann wer­den für das Script ivs_copy.x folgende Umgebungsvaria­blen benötigt:

COPY_METHOD Programm, das die Dateien kopiert; rsync und scp sind wählbar.

REMOTE_DIR Verzeichnis, in das die Rohdaten auf dem SuperX­Rech­ner kopiert warden sollen, in der Regel ist dies "/home/su­perx/db/module/ivs/rohdaten"

REMOTE_USER Der Unix­Username auf dem SuperX­Rechner, in der Re­gel "superx".

REMOTE_HOST Der Rechnername bzw. die IP­Nr. des SuperX­Rechners.

Dann starten Sie das Script ivs_unload.x. Wenn es gelaufen ist, müssten die Dateien im unl­

Verzeichnis stehen. Prüfen Sie dann bitte, ob dort Dateien mit 0 bytes stehen. Die Logdatei 

heisst IVS_unload.err.

Wenn Sie das Verzeichnis nicht gemounted haben, müssen das Verzeichnis unl, die IVS_un­

load.err und die superx.datum  dann in das Verzeichnis $IVS_LOAD_PFAD auf dem SuperX­Rech­

ner kopiert werden, ein Script dafür liegt ebenfalls bei (ivs_copy.x)3. Das Entladedatum wird 

danach in der Textdatei $IVS_LOAD_PFAD/superx.datum gespeichert; wenn das Script einen Feh­

ler findet, dann wird das vorherige Datum (in der Datei superx.datum.alt) gesetzt.

3.3.1.2.2 Entladen unter Windows

3 Eine Anleitung zur generellen Planung des Datenaustauschs finden Sie im Administrationshandbuch des 

Kernmoduls. 

14Beim Einsatz von HISFSV unter Windows ( Postgres f. Win.  oder Informix f. Win) können

dann via "Pull"­Verfahren (s.o.) entladen werden. Bei Systemen außer Informix muss in die­

sem Falle über jdbc entladen werden. 

3.3.2 Erzeugen des IVS­ModulsDie entladenen IVS­Daten müssen für die Installation in SuperX im Verzeichnis 

$SUPERX_DIR/db/module/ivs/rohdaten/unl stehen (auf dieses Verzeichnis zeigt die Umgebungs­

variable IVS_LOAD_PFAD. Kopieren Sie die Daten dorthin, oder mounten Sie das Verzeich­

nis vom FSV­Rechner als NFS­ oder Samba­Share) 

Die Umgebungsvariablen des IVS­Moduls müssen in der Datei $SUPERX_DIR/db/bin/SQL_ENV 

eingetragen sein. Prüfen Sie, ob alle Einträge in der Musterdatei 

$SUPERX_DIR/db/bin/SQL_ENV_ivs.sam auch in Ihrer SQL_ENV vorhanden sind.

Die folgende Tabellezeigt einen Auszug aus

der SQL_ENV

SUPERX_MODULE=$SUPERX_DIR/db/module; export SUPERX_MODULESUPERX_ROHDATEN=/$SUPERX_DIR/db/rohdaten; export SUPERX_ROHDATEN

IVS_PFAD=$SUPERX_MODULE/IVS; export IVS_PFADIVS_ERRORDAT=$IVS_PFAD/IVS_update.err; export IVS_ERRORDATIVS_LOAD_PFAD=$SUPERX_DIR/db/module/ivs/rohdaten; export IVS_LOAD_PFAD

Standardmäßig brauchen Sie an diesen Parametern nichts ändern, lediglich der 

IVS_LOAD_PFAD und die Emailadressen für Logdateien müssen ggf. angepasst werden. 

Danach ist das IVS­Modul installationsbereit.

1. Melden Sie sich als Benutzer superx an, laden Sie die Umgebung mit . $SUPERX_DIR/db/bin/SQL_ENV

2. Wechseln Sie ins Verzeichniscd $IVS_PFAD

3. Starten Sie das Skript ivs_modul_erzeugen.x

Neben dem Erstellen der Tabellen und Hinzufügen der Prozeduren und Abfragemasken, 

werden auch Einträge in den Themenbaum und die Tabelle sachgebiete gemacht.

Außerdem erhalten die Administrator­User superx und admin Zugriffsrechte für die neuen 

Sachgebiete Inventar und Administration Inventar

Falls ein Fehler auftritt, versuchen Sie die Ursache zu beheben, starten Sie dann$SUPERX_DIR/db/module/ivs/ivs_modul_entfernen.x 

(etwaige Fehler können dabei normalerweise ignoriert werden)

und anschließend erneut

15$SUPERX_DIR/db/module/ivs/ivs_modul_erzeugen.x

3.3.3 Konfiguration nach der InstallationEinige Konfigurationen können nach der Installation vorgenommen werden. Im einfachsten 

Fall werden einfach nur Schalter in der Konstanten­Tabelle in SuperX unterschiedlich einge­

stellt. Schwieriger, aber gleichzeitig wesentlich flexibler ist die Konfiguration durch Zwi­

schenschaltung beliebiger SQL­Befehle während oder nach dem Update. 

Für alle wichtigen Konfigurationstabellen gibt es spezielle Bearbeitungsmasken; diese be­

kommen Sie, wenn Sie als Administrator im XML­Frontend die Maske Prüfprotokoll Inven­

tar aufrufen und von dort einen der Links in der rechten Seitenleiste aufrufen.

3.3.3.1 Konstanten

Nach der Installation müssen ein paar Schlüssel kontrolliert bzw. angepasst werden. Die 

Konstanten aus dem IVS­Modul sind:

16apnr(Default)

beschreibung Kommentar Von HS im DB­FORM änderbar?

1 IVS Kostenarten aus COB    

Sollen Kostenarten primär aus dem SuperX­Cob­Modul genommen wer­den?Wenn aktiviert, werden Kostenarten primär aus dem SuperX­Cob­Modul genommen, in dem die Hierarchien meist besser gepflegt sind. Da im SuperX­Cob­Modul aber nur COB­relevante Kostenarten enthalten sind,bleiben zusätzliche aus FSV stam­mende Kostenarten ebenfalls erhal­ten.

ja

0 IVS_VONBIS_INST Sollen die Gültigkeitszeiträume bei Kostenstellen ausgewertet werden (1=ja,0=nein)? Wenn ältere Jahre be­rechnet werden und die entsprechen­den Kostenstellen nicht mehr gültig sind, sollte die Konstante auf 0 ge­setzt werden, damit die Gültigkeit ignoriert wird. Dies ist auch das Standardverhalten von IVS­GX und SuperX­KENN.

ja

0 IVS_VONBIS_FIKR Sollen die Gültigkeitszeiträume bei Kostenarten ausgewertet werden (1=ja,0=nein)?

ja

1 IVS_ASP_COMPU­TE

Soll der Anlagespiegel im nächtli­chen Update neu berechnet werden (1=ja,0=nein)?Da der Anlagespiegel in FSV jeder­zeit für einzelne Kostenstellen be­rechnet werden kann, ist es nicht im­mer sinnvoll den Update nächtlich zu starten. Die Hochschule kann mit dem Wert 0 das Neu­Berechnen des Anlagespiegels verhindern. Nur die Schlüsseltabellen (KoA, Inst etc.) werden immer geladen. 

ja

Sie sehen in der ersten Spalte der Tabelle die Vorbelegungen. Vor dem ersten Update in Su­

perX müssen diese Parameter jeweils gesetzt werden. Sie müssen dazu die Tabelle konstan­

ten bearbeiten. Eine Bearbeitungsmaske bekommen Sie, wenn Sie im XML­Frontend die 

17Maske Prüfprotokoll Inventar aufrufen und von dort den Link "Konstanten" aufrufen. Alter­

nativ können Sie die Konstanten in der Datenbank direkt bearbeiten, z.B. mit isql, psql oder 

einem beliebigen anderen Datenbank­Client.

3.3.3.2 Hochschulspezifische Anpassungen beim Update

Es sind bei Bedarf auch Anpassungen der Daten per SQL­Skript möglich. Hier wird auf das 

Kernmodulhandbuch sowie als Beispiel das Handbuch zum SOS­Modul verwiesen.

Insbesondere hat es sich gezeigt, dass in FSV nicht alle Datensätze mit einer Kostenstelle 

versehen werden, in SuperX wird dafür der oberste Knoten des Kostenstellenbaums eingetra­

gen (root), falls Sie für diese Datensätze eine andere Kostenstelle eintragen wollen, tragen Sie

z.B. in $IVS_PFAD/preparation.sql ein update ivs_asp_neu set asp_kostenstelle='xyz' where asp_kostenstelle is null;

3.3.3.3 Anpassungen zur Inventarliste

Es gibt eine Repository­Variable CUSTOM_27050 in der definiert ist, welche Spalten bei 

detaillierter und kompakt­Ansicht dargestellt werden soll.

Standardmäßig kontrolliert der Bericht die Kostenstellenberechtigung auf die Spalte 

ivst_inst.

Wenn eine andere Spalte zur Kostenstellenkontrolle benutzt werden soll, kann man in der 

CUSTOM_27050 eine definieren, z.B.

<#assign kostenstellenfeld='splitkst'/>

3.3.4 Upgrade des IVS­ModulsZum Upgrade bzw. zum Zurücksetzen des Moduls auf den Auslieferungszustand entpacken 

Sie das Paket in $SUPERX_DIR und gehen in das Verzeichnis $SUPERX_DIR/db/module/ivs/upgrade 

und führen das Script aus:ivs_upgrade.x

Die Logdatei lautet upgrade.log, im Mandantenfähigen Betrieb "upgrade<<MANDANTID>>.log".

Wenn Sie einen separaten Tomcat­Rechner betreiben, müssen Sie das SVA­Paket dort eben­

falls entpacken, und vom Datenbankserver die Datei 

$SUPERX_DIR/webserver/tomcat/webapps/superx/WEB­INF/dbforms­config.xml an die gleiche Stelle

auf den Tomcat Rechner kopieren. Ein nochmaliges Ausführen des Upgrade Scriptes ist nicht 

nötig, weil dies nur die Datenbank betrifft.

183.4 Einladen der IVS­Daten nach SuperX

Zum Übernahme der Basisdaten nach SuperX wird das Script $IVS_PFAD/ivs_update.x. gest­

artet. Darin werden die Datentabellen gefüllt bzw.aktualisiert, und die Hilfstabellen neu er­

zeugt. 

Bei der Installation ist es sinnvoll, zuerst einen Testlauf mit nur wenigen Rohdaten zu ma­

chen. Geben Sie dazu im Verzeichnis $IVS_PFAD ein:ivs_shrink.x

Die Rohdaten werden auf 100 Sätze pro Tabelle reduziert. Prüfen Sie zunächst, ob das La­

descript ohne Fehler gelaufen ist. Wenn kein Fehler aufgetreten ist, machen Sie die Verkür­

zung der Rohdaten rückgängig mit ivs_unshrink.x

Danach können Sie den "richtigen" Update starten.

3.4.1 Erste Datenkontrolle

3.4.1.1 Validierung gegen den FSV Anlagespiegel 

Nach dem ersten Update in SuperX IVS sollten Sie die Gültigkeit des Anlagespiegels prü­

fen.   Hier ein Muster der Ausgabe in FSV:

Es werden die Anlagedaten nach Kostenart aufgeführt.

In SuperX sieht das so aus (Beispieldaten):

19

Die Differenzen liegen in der Darstellung und sind nur marginal: Die Anlagedaten werden 

nach Kostenstelle und Kostenart gruppiert ausgegeben, wenn Sie die Hochschule auswählen, 

ist die Ausgabe mit der in FSV identisch.

Es hat sich gezeigt, dass in FSV nicht alle Datensätze mit einer Kostenstelle versehen wer­

den, in SuperX wird dafür der oberste Knoten des Kostenstellenbaums eingetragen (root). 

Siehe Kapitel hochschulspez. Anpassungen.  

3.4.1.2 Validierung Anlagespiegel (kameral) auf Datenbankebene 

 Mit folgendem SQL auf die MBS­Datenbank wird  der gesamte kamerale Anlagespiegel 

berechnet:SELECT '' as hs_nr, '' as asp_id, '' as asp_invnr, '' as asp_akl_key, '' as asp_koa_nr, '' as asp_klass, '' as asp_inst, '' as asp_kostenstelle, sum(asp_preis_beginn) as asp_preis_beginn , sum(asp_preis_zugang) as asp_preis_zugang, sum(asp_preis_abgang) as asp_preis_abgang , sum(asp_preis_ende) as asp_preis_ende, sum(asp_afa_bis) as asp_afa_bis, sum(asp_afa_periode) as asp_afa_periode , asp_haushaltsjahr , sum(asp_restw_beginn) as asp_restw_beginn , sum(asp_restw_ende) as asp_restw_endeFROM ivaspgroup by 15;Beachten Sie daß die Tabelle in MBS bei jeder Erzeugung des Anlagespiegels geleert und 

neu berechnet wird. Es sind also in der Regel nur einzelne Haushaltsjahre sichtbar.

203.4.2 Fehlerbehandlung und Regelbetrieb

3.4.2.1 Logdateien

Eine Fehlerdatei steht in der Umgebungsvariable $IVS_PFAD/$IVS_ERRORDAT, die Vorbelegung 

ist "ivs_update.err". Das Script ivs_update.x ruft mehrere Unterroutinen auf. Wenn in jeweils

einem Script ein Fehler auftaucht, wird dies in der  Logdatei ausgewiesen.

3.4.2.2 Warnungen

Einige mögliche Inkonsistenzen in den Daten werden geprüft und falls sie auftreten in der  

Maske "Prüfprotokoll Inventar" ausgegeben.

Problematisch könnte z.B. sein, wenn es im Anlagespiegel Kostenarten gibt, die nicht in der

Schlüsseltabelle fikr enthalten sind, oder wenn Kostenstellen zum Zeitpunkt der Auswer­

tung nicht mehr gültig sind. 

3.4.2.3 Fehler "out of memory"

Wenn Sie den Anlagespiegel ausführen, kann es vorkommen dass ein Fehler "out of memo­

ry" auftritt und im Browser angezeigt wird. Die Ursache ist, dass der Anlagespiegel einen sehr

umfangreichen Baum aus Kostenstellen und Kostenarten aufbaut und dafür große Arbeitsspei­

cherressourcen braucht. In diesem Falle müssen Sie den verfügbaren Arbeitsspeicher für 

Tomcat erhöhen, z.B. auf 950 MBCATALINA_OPTS="­Xms100M ­Xmx950M ­Djava.awt.headless=trueexport CATALINA_OPTS

3.4.2.4 Regelbetrieb und Einrichten des Cronjob

Im Regelbetrieb wird jede Nacht aus IVS entladen und das Entladedatum gesetzt. Die Daten

werden von SuperX geladen, und bei erfolgreichem Laden wird das Datum in $IVS_LOAD_PFAD 

(Datei superx.datum) verändert. Bei Ladefehlern in SuperX wird das Datum in $IVS_LOAD_PFAD 

von SuperX zurückgesetzt auf den vorherigen Stand (superx.datum.alt). Dies wiederum führt 

dazu, dass beim nächsten Entladen aus IVS das Datum des letzten erfolgreichen Ladens nach 

SuperX verwendet wird.

 

Cronjob­Syntax

Beim regelmäßigen Update wird der IVS­Update über Cronjobs erledigt. Dazu muss ein 

Script erzeugt werden, dass die Umgebungsvariablen von SuperX lädt, und dann das Script 

$SUPERX_DIR/db/module/ivs/ivs_update.x startet. Ein Beispielscript liegt in ivs_update_cron.x.­

sam. Dieses fügen Sie in die Crontab ein. Die Syntax kann z.B. so aussehen: 

21

Auszug auscrontab 

# IVS­Update­0 4 * * 2,3,4,5,6/home/superx/db/module/ivs/ivs_update_cron.x >/home/superx/db/module/ivs/ivs_update_cron.log 2>&1

Der IVS­Update wird Di­Sa morgens um 4:00 Uhr ausgeführt. 

3.5 Entfernen des IVS­Moduls

Wenn Sie das IVS­Modul nicht mehr benötigen, starten Sie das Script $SUPERX_DIR/db/module/ivs/ivs_modul_entfernen.x. 

Dieses Script löscht alle Tabellen, Prozeduren und Abfragen aus der Datenbank, und löscht 

auch die Einträge im Themenbaum. Danach können Sie den Pfad $SUPERX_DIR/db/module/ivs 

löschen.

Wenn Sie nur die Inhalte der Daten­ und Hilfstabellen des IVS­Moduls löschen wollen (z.B.

aus Datenschutzgründen), ohne das ganze Modul zu deinstallieren, können Sie dies mit fol­

gendem Befehl tun:

DOSQL $SUPERX_DIR/db/module/ivs/ivs_purge_pg.sql (für Postgres)

bzw. 

DOSQL $SUPERX_DIR/db/module/ivs_purge_ids.sql (für Informix)

4 Bestandteile des IVS­ModulsDie Daten werden aus dem Basissystem extrahiert, und die resultierenden Datentabellen 

werden mit Schlüsseln verknüpft. Teilweise wird auf Tabellen aus dem SuperX­COB­Modul 

(für die Kostenarten). 

Für die Datenübernahme ist der berechnete Anlagespiegel und anhängige Schlüsseltabellen 

vorgesehen:

1 Anlagespiegel (Tabellen ivasp und ivasp_bga)2 Kostenstellen (Tabelle inst)3 Kostenarten (Tabelle fikr)4 Anlageklassen (Tabelle akl_bw)5 Klassifikation / Warengruppe (Tabelle klas)

22Bei Hochschulen, die HIS­FIBU nutzen, wird über einen Systemschalter nicht die Tabelle 

ivasp ausgelesen, sondern die Tabelle ivasp_bga. (Da hierzu bisher ein Pilotanwender 

fehlte, muss dies noch in einem zukünftigen Release angepasst werden).

5 Versionshistorie des IVS­Moduls0.6rc3 (04/2011)

Entwickler Daniel Quathamer• Maske "Prüfprotokoll Inventar" verbessert• Neue Konstanten• IVS_VONBIS_INST: Sollen die Gültigkeitszeiträume bei Kostenstellen ausgewertet wer­

den?• IVS_VONBIS_FIKR: Sollen die Gültigkeitszeiträume bei Kostenarten ausgewertet werden?• IVS_ASP_COMPUTE: Soll der Anlagespiegel im nächtlichen Update neu berechnet wer­

den?

0.6rc2 (06/2010)

Entwickler Meikel BispingAnlagespiegel korrigiert: Bezugsjahr und Haushaltsjahr getrennt

0.6rc1 (11/2009)

Entwickler Meikel Bisping