
On Tue, Oct 31, 2006 at 12:58:29PM +0100, Paul Puschmann wrote:
Hi,
ich habe mein OTRS 2.1.2 erfolgreich installiert (Debian) und bemühe mich nun unsere Kundendaten aus dem MS SQL Server 2000 auszulesen.
Ein eigener Benutzer ist eingerichtet und der Zugriff (per ODBC) funktioniert. (getestet via isql: "isql -v dsn username password")
Wie bekomme ich nun meine Kundentabelle (genauer: eine View) ausgelesen?
Ich habe den Vorschlag aus http://doc.otrs.org/2.1/de/html/x1429.html übernommen (Datenbank (Standard)).
Meine Frage nun: Wie sieht ein vernünftiger, funktionierender (!) Connect-String für den SQL-Server aus? Egal ob ODBC oder direkt (sybase).
Ich habe heute noch weiter experimentiert und habe dabei schon sichergestellt, dass odbc funktioniert. Mein Connect-String sieht nun so aus: DSN => 'DBI:ODBC:meinedsn', 'otrsuser', 'password', Table => 'test_otrs', Ich habe per einfachem Perl-Script die Funktion überprüft: ====== #!/usr/bin/perl use DBI; my $dbh = DBI->connect('DBI:ODBC:meinedsn', 'otrsuser', 'password') or die "Couldn't connect to database: " . DBI->errstr; my $sql = qq/select count(*) from test_otrs/; # the query to execute my $sth = $dbh->prepare($sql); # prepare the query $sth->execute(); # execute the query my ($col1); $sth->bind_col(1, \$col1); while ($sth->fetch) { # retrieve one row print "$col1\n"; } ====== Das Ergebnis war korrekt. Die Fehlermeldung bei der Benutzung von OTRS aber bleibt: ======= ERROR: OTRS-GenericAgent-10 Perl: 5.8.8 OS: linux Time: Thu Nov 9 16:10:02 2006 Message: Unknown database type! Set option Database::Type in Kernel/Config.pm to (mysql|postgresql|maxdb|oracle|db2|mssql). Traceback (16701): Module: Kernel::System::DB::new (v1.53) Line: 145 Module: Kernel::System::CustomerUser::DB::new (v1.40) Line: 56 Module: Kernel::System::CustomerUser::new (v1.28) Line: 80 Module: Kernel::System::Ticket::new (v1.226) Line: 116 Module: /opt/otrs//bin/GenericAgent.pl (v1.39) Line: 81 Can't connect to database! at /opt/otrs/Kernel/System/CustomerUser/DB.pm line 56, <PRODUCT> line 4. ======= Damit scheint es ja so, dass OTRS selbst ODBC nicht unterstützt sondern einen direkten Zugriff auf die DB's erwartet (eben wegen dieser (für mich hier sinnfreien) Abfrage auf den DB-Typ). Ich habe keine große Lust hier wild im OTRS zu coden, da ich mich mit Perl kaum auskenne. Dann werde ich gleich wohl mal einen Bugreport schreiben wenn es per Zugriff mit "Sybase" nicht funktioniert. Paul -- : Bitte einen Realname benutzen, unter dem Zitat antworten : und einfache Text-Mails senden (kein HTML). : Danke.