Upload
doankhanh
View
215
Download
0
Embed Size (px)
Citation preview
SuperXAdminHandbuch IVSModul
www.MemText.de
Supportadresse support@superxprojekt.de
http://www.superxprojekt.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 GPLLizenz von dem Land NordrheinWestfalen,
vertreten durch die FernUniversität Hagen, diese wiederum vertreten durch die Geschäftsstelle der
Initiative CampusSource bei der FernUniversität Hagen, Feithstraße 142, D58084 Hagen vertrie
ben (www.campussource.de). Details zu den Lizenzbedingungen finden Sie im KernmodulArchiv
(/lizenz.txt) oder unter http://www.campussource.de/lizenz/. Ergänzende Hinweise finden Sie auf
der Projekthomepage unter http://www.superxprojekt.de.
LizenzPostgres:
PostgreSQL Database Management System(formerly known as Postgres, then as Postgres95)
Portions Copyright (c) 19962001, 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 NONINFRINGEMENT, 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 FSVGX Modul IVS Erweiterung...............................................................73 Installation des IVSModuls...............................................................................................8
3.1 Voraussetzungen............................................................................................................83.2 Kurzanleitung.................................................................................................................83.3 Installation des IVSModuls...........................................................................................9
3.3.1 Entladen der IVSDaten....................................................................................................................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 IVSModuls.................................................................................................................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 IVSModuls..................................................................................................................16
3.4 Einladen der IVSDaten 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 IVSModuls...........................................................................................184 Bestandteile des IVSModuls............................................................................................185 Versionshistorie des IVSModuls.....................................................................................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 COBModul oder ein IVSModul.
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 IVSModul 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 FSVGX / 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 IVSModuls zu Problemen kommt, können Sie sich un
ter www.superxprojekt.de informieren. Oder mailen Sie uns direkt:
Supportadresse allgemein:support@superxprojekt.de
Daniel Quathamer
[email protected] Bisping
7
2 Hintergrund FSVGX Modul IVS ErweiterungDas SuperX IVSModul 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 FSVGX und ivasp_bga in HISFIBU) inkl. Prüfroutine
• Konzept und Realisierung der Pflege von wertbeständigen Gütern im Anlagespiegel. Achtung: dies ist technisch erst im kommenden FSVRelease (Geplant: 062009) möglich.
Dabei ist die Anmerkung im FSVIVSHandbuch zu beachten:
***
* Inventarisierte Güter dürfen nicht mit einer Anzahl > 1 verbucht werden.
* Der IVSAnlagenspiegel 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 IVSAnlagenspiegels 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 IVSModuls
3.1 VoraussetzungenDas IVSModul 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 SuperXKernmodul 3.5 oder höher1
• Als Datenquelle sind Scripte für HISFSV 11.x oder höher unter Informix bzw. Postgres 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>>_<<Datenbanksystem>>.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 IVSbezogenen Umgebungsvariablen Prüfen Sie ob in Ihrer $SUPERX_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 FSVDatenbankrechner 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 Verzeichnisinhalt unter $SUPERX_DIR/db/module/ivs/rohdaten zum IVSRechner, bzw. mounten Sie das Verzeichnis auf dem SuperXRechner2. Laden und testen Sie dann die Umgebung in IVS_ENV.
1 Kernmodul+ Handbücher beziehen Sie über http://download.superxprojekt.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 FSVRechner zu geben und die Entladescripte direkt auf dem SuperXRechner
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 IVSRechner 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 RohdatenVerzeichnis der entladenen IVSDaten 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 IVSModuls in der SuperXDatenbank: $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/WEBINF/ivs_dbforms_config_<<pg für
Postgres oder ids für Informix)>>.xml vom Kommentar "<!Hier beginnt Moduldefinition>" bis zum Kommentar "<!Hier endet Moduldefinition>" in Ihre dbformsconfig.xml ein.Danach starten Sie Tomcat neu.
8. Übernahme der entladenen IVSDaten 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 IVSModuls
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 IVSDaten
3.3.1.1 Allgemeines
Beim Entladen der IVSDaten 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 SuperXRechner Zugriffsrecht auf die IVSDatenbank gegeben, und die Daten werden via TCP/IP aus dem Basissystem entladen.
• Beim "Push"Verfahren werden die Entladescripte auf den IVSRechner kopiert und dort von einer Benutzerkennung auf dem IVSRechner ausgeführt. Die Rohdaten müssen dann auf den SuperXRechner kopiert werden. Dieses Verfahren klappt bei Informix unter Unix problemlos, bei Entladen aus Postgres müsste das komplette SuperXKernmodul 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 NetzInfrastrukturen 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 IVSTabellen 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 SuperXServer 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 IVSRechner nach SuperX kopieren.
Für Postgres ist dies auch deshalb die einfachste Lösung, weil zum Entladen aus Postgres
die Bibliotheken des SuperXKernmoduls 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 FSVRechner, 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 HomeVerzeichnis von Informix
INFORMIXSERVER Name des InformixserversONCONFIG Name der onconfig, wenn auf dem IVSRechner mehrere
InformixInstanzen 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 ProtokollTabellen 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 PostgresServer, standardmäßig 5432PGHOST Hostname oder IPAdresse vom PostgresServerPGUSER Benutzerkennung für PostgresServer (nur Datenbank,
nicht Betriebssystem)PGPATH Installationsverzeichnis von Postgres, z.B.
/usr/local/pgsql
DB_PROPERTIES Pfad zur dbivs.propertiesDatei mit den Zugangsparametern für IVS unter Postgres
LOGGING_PROPERTIES Pfad zur Steuerungsdatei mit den Parametern für das Logging beim Entladen, voreingestellt auf ./logging.properties. Normalerweise brauchen Sie hier nichts ändern, wenn beim Entladen Probleme auftauchen, kann man den Level von SEVERE auf INFO oder FINEST ändern, dann werden 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ühren.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 SQLZugriffe 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 dbivs.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 SuperXPropadmin (siehe Administrationshandbuch Kernmodul) und richten
die Verbindung zum IVSServer 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 IVSRechner auf BetriebssystemEbene einrichten. Sie kön
nen also z.B. auf dem SuperXRechner 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 FSVDB: dbaccess, psql oder jdbcDATABASE Entladedatenbank der FSVDB: 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, Vorbelegung ist "mail", manche Unixe haben aber auch "mutt".
Wenn die Rohdaten nach dem Entladen vom IVSRechnerauf den SuperXRechner kopiert werden sollen, dann werden für das Script ivs_copy.x folgende Umgebungsvariablen benötigt:
COPY_METHOD Programm, das die Dateien kopiert; rsync und scp sind wählbar.
REMOTE_DIR Verzeichnis, in das die Rohdaten auf dem SuperXRechner kopiert warden sollen, in der Regel ist dies "/home/superx/db/module/ivs/rohdaten"
REMOTE_USER Der UnixUsername auf dem SuperXRechner, in der Regel "superx".
REMOTE_HOST Der Rechnername bzw. die IPNr. des SuperXRechners.
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 SuperXRech
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 IVSModulsDie entladenen IVSDaten 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 FSVRechner als NFS oder SambaShare)
Die Umgebungsvariablen des IVSModuls 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 IVSModul 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 AdministratorUser 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 KonstantenTabelle in SuperX unterschiedlich einge
stellt. Schwieriger, aber gleichzeitig wesentlich flexibler ist die Konfiguration durch Zwi
schenschaltung beliebiger SQLBefehle während oder nach dem Update.
Für alle wichtigen Konfigurationstabellen gibt es spezielle Bearbeitungsmasken; diese be
kommen Sie, wenn Sie als Administrator im XMLFrontend 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 IVSModul sind:
16apnr(Default)
beschreibung Kommentar Von HS im DBFORM änderbar?
1 IVS Kostenarten aus COB
Sollen Kostenarten primär aus dem SuperXCobModul genommen werden?Wenn aktiviert, werden Kostenarten primär aus dem SuperXCobModul genommen, in dem die Hierarchien meist besser gepflegt sind. Da im SuperXCobModul aber nur COBrelevante Kostenarten enthalten sind,bleiben zusätzliche aus FSV stammende Kostenarten ebenfalls erhalten.
ja
0 IVS_VONBIS_INST Sollen die Gültigkeitszeiträume bei Kostenstellen ausgewertet werden (1=ja,0=nein)? Wenn ältere Jahre berechnet werden und die entsprechenden Kostenstellen nicht mehr gültig sind, sollte die Konstante auf 0 gesetzt werden, damit die Gültigkeit ignoriert wird. Dies ist auch das Standardverhalten von IVSGX und SuperXKENN.
ja
0 IVS_VONBIS_FIKR Sollen die Gültigkeitszeiträume bei Kostenarten ausgewertet werden (1=ja,0=nein)?
ja
1 IVS_ASP_COMPUTE
Soll der Anlagespiegel im nächtlichen Update neu berechnet werden (1=ja,0=nein)?Da der Anlagespiegel in FSV jederzeit für einzelne Kostenstellen berechnet werden kann, ist es nicht immer sinnvoll den Update nächtlich zu starten. Die Hochschule kann mit dem Wert 0 das NeuBerechnen 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 XMLFrontend 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 DatenbankClient.
3.3.3.2 Hochschulspezifische Anpassungen beim Update
Es sind bei Bedarf auch Anpassungen der Daten per SQLSkript möglich. Hier wird auf das
Kernmodulhandbuch sowie als Beispiel das Handbuch zum SOSModul 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 RepositoryVariable CUSTOM_27050 in der definiert ist, welche Spalten bei
detaillierter und kompaktAnsicht 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 IVSModulsZum 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 TomcatRechner betreiben, müssen Sie das SVAPaket dort eben
falls entpacken, und vom Datenbankserver die Datei
$SUPERX_DIR/webserver/tomcat/webapps/superx/WEBINF/dbformsconfig.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 IVSDaten 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 MBSDatenbank 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.
CronjobSyntax
Beim regelmäßigen Update wird der IVSUpdate ü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
# IVSUpdate0 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 IVSUpdate wird DiSa morgens um 4:00 Uhr ausgeführt.
3.5 Entfernen des IVSModuls
Wenn Sie das IVSModul 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 IVSModuls 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 IVSModulsDie Daten werden aus dem Basissystem extrahiert, und die resultierenden Datentabellen
werden mit Schlüsseln verknüpft. Teilweise wird auf Tabellen aus dem SuperXCOBModul
(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 HISFIBU 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 IVSModuls0.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