[31.07.2015 12:47:29 | SRV01]#--> OK: Tabelle adressen gelesen##CopyData#MainWindow#ErrorTypeInfo
[31.07.2015 12:47:37 | SRV01]#--> Datenbankfehler#FEHLER: 22001: Wert zu lang für Typ character varying(20)#CopyData#MainWindow#ErrorTypeInfo
habe heute mit der Neuninst. begonnen und 2 ähnliche Fehlermeldungen (ADMIN:1.1.15256.497, Datenbankprüfung ohne Fehler durchgeführt, SV:4.3.12, noch altes SJ) bei der Übernahme aus der jet-Datenbank erhalten:
1.
OK: Tabelle 'adressen' wurde aus Access-DB eingelesen, Datensätze werden jetzt kopiert.
--> Datenbankfehler: FEHLER: 22001: Wert zu lang für Typ character varying(20)
...
--> Datenbankfehler: FEHLER: 22001: Wert zu lang für Typ character varying(20)
Fehler: 438 Datensätze wurden kopiert, 54 Datenbankfehler, 0 Programmfehler.
2. OK: Tabelle 'sys_settings' wurde aus Access-DB eingelesen, Datensätze werden jetzt kopiert.
für den doppelten Schlüsselwert "SYS-SETTINGS" habe ich dann doch noch einen Forumseintrag gefunden und die nmsv.conf zusätzlich ins Prg-Verzeichnis kopiert -> SV-Zugriff hat dann als Lehrer funktioniert, allerdings nicht mit x oder xs. Im Admin-Tool habe ich festgestellt, dass wohl die x und xs-Zugänge aus der Admin-Gruppe rausgeflogen sind, warum auch immer! Dort steht der Eintrag "Kein Admin". Evtl. wurden sie neu angelegt, ich kann das Default-Passwort aber nirgends finden. Welche Admin-Stufe 1-4 ist die richtige (und worin unterscheiden sie sich)? Ich habe übrigens auch einen x und X sowie xs und XS Benutzer.
Datenimport aus der ASV zum neuen Schuljahr hat wohl auch geklappt, allerdings fehlen auf den ersten Blick mindesten die LRS-Einträge und die Wiederholungen. Ob die Adressen nun alle korrekt sind kann ich leider nicht nachprüfen.
Bei der Aktualisierung der Schülerdaten erschien in der Zusammenfassung zwar 0 Fehler, im Aktualisierungsprotokoll tauchen mehrere Fehler "Adressen Fehler: mehrere Adressendatensätze für diesen Schüler gefunden" auf. Könnte mit den Fehlern aus der jet-Datenübernahme im Zusammenhang stehen.
nachdem ich gerade die PostgreSQL-Version nochmal neu installiert habe, steht meine Schulart auf RS (und ja, ich hatte den Haken bei Gymnasium gesetzt - habe es sogar gerade nochmal ein weiteres Mal gemacht, um mir sicher zu sein.)
Kann ich das im NM-Admin einfach umstellen ohne weitere Folgeprobleme?
Und wenn du den Fehler mit sys_settings irgendwie im NMPGSetup beheben könntest, wäre es echt toll, da hängt (glaube ich) einiges dran.
Danke!
steve
wir haben heute versucht auch auf PostGreSQL umzustellen. Leider bisher ohne Erfolg.
Im Moment haben wir mehrere Clients mit einer jet Datenbank Anbindung.
Derzeit setzen wir keine ASV Software ein. Wir haben den PostGreSQL Server von Hersteller geladen. Die Installation war ohne Probleme möglich. Ein Test per ODBC Connector von Client aus war nach Anpassung der pg_hba.conf Datei auch möglich.
Eine gleichzeitiges Anlegen der Datenbank und Übernahme der Daten per PGSetup war nicht möglich. Abbruch mit einer Fehlerzeile im Log:
Tabelle ‚Sys_Settings‘ wurde aus der Access-DB eingelesen. Daten werden jetzt kopiert.
--> Datenbankfehler : Fehler 23505: doppelter Schlüsselwert verletzt unique-constraint „pkrecid“
Dann haben wir versucht die Datenbank ohne Datenübernahme sozusagen blanko per pgsetup zu erstellen, das lief. Die conf Dateien haben wir dann in die Ordner NMAdmin und NManagerSV kopiert. Namen der Dateien „nmadmin.conf“ und „nmsv.conf“ . Man konnte sich nur per NMAdmin zur DB verbinden. Diese war dann wie erwartet leer. Eine Anmeldung per Notenmanager an die SQL bricht ab: „Beim Laden der Programmeinstellungen sind Fehler aufgetreten………“
Die beiden unterschiedlichen Dinge hängen soweit erkennbar aber nicht zusammen.
1.Wie kann man die jet Datenbank ohne sys_settings-Fehler übernehmen?
2.Warum erkennt die NManagerSV.exe die Einstellungen in der nmsv.conf (liegt im gleichen Verzeichnis wie die .exe) nicht?
ein Grund für den empfohlenen Umstieg von Jet auf Postgres ist, dass aus unerfindlichen Gründen die Jet-Datenbank immer wieder mal Indizes verliert. Das ist auch der Grund für die von dir genannte Fehlermeldung und die dann fehlenden Einstellungen (die restlichen Daten müssten aber eigentlich trotzdem übernommen werden. Ich habe heute ein Update von NMPGSetup hochgeladen, das Update kannst direkt aus NMPGSetup laden (unten auf den Update-Status klicken).
Bezüglich des Zugriffs auf die Datenbank von der Schulversion aus weise ich noch einmal darauf hin, das der PostgreSQL ODBC-Treiber separat installiert werden muss - NMAdmin bringt seinen Datenbankprovider selber mit. Hier hilft aber evtl. auch ein Blick in die nmsvlog.txt im Programmverzeichnis der Schulversion. Dort sollte ein Grund für den Fehler beim Verbindungsaufbau aufgezeichnet werden.
23.09.2015, 14:13 (Dieser Beitrag wurde zuletzt bearbeitet: 23.09.2015, 15:03 von NM-Himself.)
Hallo Stephan, leider haben wir immer noch das Problem, dass der Notenmanager sich nicht zur Datenbank verbindet. Wir haben folgendes bisher unternommen. Übernahme der Daten aus der allen MDB Datei (JET) mittels der neuen NMPGAmin.exe. Diese hat Daten übernommen, aber bei der Übernahme doch noch ein paar Fehler gebracht. Die weitere Idee war dann eine leere JET DB in Postgre einzulesen. Das verlief ohne Probleme. Dann ist am Server der ODBC in der 32bit und der 64 Bit Version installiert. Testweise haben wir dann per ODBC Connector ein Verbindung mit Excel in die Datenbank hergestellt. In Excel konnten wir Inhalte der Datenbank aus verschiedenen Tabellen lesen. Somit sollte der ODBC Zugriff klappen. Dann haben die CONF Dateien in die jeweiligen Installationspfade von NMAdmin.exe und NManagerSV.exe hinein kopiert (siehe Anlage nmadmin_conf.png und nmsv_conf.png). Beim Aufruf der NManagerSV.exe kommt dann zuerst das Bild Fehlermeldung.pnd (Anlage) Fehlermeldung.png (Größe: 55,57 KB / Downloads: 12)
sowie weitere Fehlermeldungen (izenzschlüssel nicht mehr aktuell und ein Fehler, dass die Datenbank nicht ge / entsprerrt werden kann).
Postgre Datenbank: Diese ist in der 64bit Version am 64bit Windows Server installiert
Der NMAdmin kann auf die Datenbank zugreifen. In der Statuszeile des Programm ist eindeutig erkennbar, dass die EXE eine Postgre Verbindung hergestellt hat (siehe Anmeldung am NMAdmin.png). Ein testweise deaktivieren des SQL Dienstes hatte zur Folge, dass der NMAdmin keinen Zugriff mehr herstellen kann. Somit ist die SQL Technik an sich erst mal lauffähig und kann genutzt werden. Die NMSV.CONF im Pfad der NManagerSV.exe scheint nicht von der EXE erkannt zu werden. Ein Testweise umbenennen in den EXE Dateinamen, also NManagerSV.CONF, hat nichts gebracht. Es war auch nur so eine Idee zwischendurch. Wenn man die NManagerSV.exe ohne eine CONF Datei im Ordner startet, wird per default auf die c:\programme…..nmanager04.mdb zugegriffen. Ein Versuch war auch die NManagerSV.exe per Schalter /cfg=nmsv.conf zu starten. Dieser Versuch zeigt die gleiche Fehlermeldung an (Fehlermeldung.png)
Log Datei In der logDatei ‚(siehe Anlage nmsvlog.txt) steht auch drin „Der Datenquellenname wurde nicht gefunden, und es wurde kein Standardtreiber angegeben;;130;;OpenConnection;;comClsFunctions;;NManagerSV;;1;;;;SWFS01“. Das sieht so aus, als ob dem PC der ODBC Treiber fehlt. Der Connector wurde aber bereits erfolgreich mit Excel getestet.
Weitere Maßnahmen: Nach dem alles fehlgeschlagen ist, haben wir dann noch mal den Notenmanager komplett deinstalliert und den Installationspfad von Hand von Altdateien bereinigt und gelöscht. Danach eine Installation mit der aktuellen Download Datei durchgeführt. Gleiches Verhalten, wie oben bereits beschrieben. Nebenbei haben wir auch immer mal wieder zu Testzwecken mit dem NMAdmin auf die Datenbank erfolgreich zugreifen können. NMAdmin war nie ein Problem. Frage: Wie können wir sicher stellen, dass die NManagerSV.exe die zugehörige CONF Datei richtig erkennt, ausliest und dann auch anwendet?
Das bei der Datenübernahme von JET nach PG Fehler auftreten ist normal. Den Umstieg sollte man ja zwischen den Schuljahren machen und nach einem Datenimport aus ASV passt dann in der Regel alles.
Die Datenübernahme aus einer leeren Jet-Datenbank ist keine gute Idee und führt zu Problemen. Stattdessen legt ihr bitte mit NMPGSetup eine neue Datenbank an und macht eben keine Datenübernahme. Das ist besser.
Mit Datenbank und Conf-Datei ist alles in Ordnung, alles was dem Notenmanager fehlt ist der passende ODBC-Treiber. Da der NM eine 32bit Anwendung ist braucht er auch einen 32bit Datenbanktreiber. Welchen Treiber habt ihr denn installiert?
schau mal in die Logdatei von Postgres. Die liegt bei einer Standardinstallation im Untervezeichnis \Data\pg_log. Dort werden auch alle fehlgeschlagenen Verbindungen angezeigt. Findest du dort etwas?
vielen Dank, dieser Hinweis war entscheidend - ich verstehe es zwar nicht ganz, warum es jetzt funktioniert, aber es tut.
Ich poste es jetzt mal - vielleicht kann es jemand erklären und damit wieder anderen helfen:
Also: Unser Server hat zwei Netzwerkkarten 192.168.99.180 für das Verwaltungsnetz und 192.168.178.45 fürs Internet und der Server routet.
Hinterlege ich nun in der nmsv.conf die Adresse 192.168.99.180 so ist keine Verbindung möglich. Mit der Adresse 192.168.178.45 klappt nun die Verbindung und deshalb musste ich auch in der pg_hba.conf 192.168.178.0/24 und nicht 192.168.99.0/24 eintagen!
ob das seltsam ist hängt von den Einstellungen ab. In der postgressl.conf gibt es folgenden Abschnitt:
Code:
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
listen_addresses = '*' # what IP address(es) to listen on;
# comma-separated list of addresses;
# defaults to 'localhost'; use '*' for all
# (change requires restart)
Ist der Eintrag so wie oben gesetzt hätte es unabhängig von der IP-Adresse eigentlich funktionieren müssen. Falls die "listen_adress" aber z. B. nur auf 192.168.178.45 gesetzt ist horcht der Server auch nur auf der Netzwerkkarte auf den Port 5432 und die Anfragen auf die andere Netzwerkkarte klappen eben nicht.