
Bastian Schern
Karsten Heymann schrieb:
Bist Du sicher, dass Du die richtige DB.pm geändert hast?
Ich hatte schon die richtige Datei, nur ist es in OTRS 2.2.1 ein paar Zeilen höher. ;-)
alles klar ;-)
Die Fehlermeldung ist jetzt weg, nur leider werden die Kunden irgendwie nicht richtig angezeigt. Es werden lediglich leere Zeilen angezeigt.
Die Tabelle `account` hat folgende Struktur: --- snip --- --- snap ---
Gibt es eine Möglichkeit zu debugen, was da schief läuft?
Was ich gemacht habe, um nach Fehlern zu suchen, ist, im Backend-Modul ein paar log-Aufrufe einzufügen, um sehen zu können, was passiert. Ich habe dafür eine Kopie des Backend-Moduls angelegt und folgendes geändert (Auszug): ######## schnipp ######## --- LDAP.pm 2007-07-26 16:13:33.000000000 +0200 +++ LDAP2.pm 2007-08-16 08:09:01.000000000 +0200 @@ -10,13 +10,14 @@ # did not receive this file, see http://www.gnu.org/licenses/gpl.txt. # -- -package Kernel::System::CustomerUser::LDAP; +package Kernel::System::CustomerUser::LDAP2; use strict; use warnings; use Net::LDAP; use Kernel::System::Encode; use Kernel::System::Cache; +use Data::Dumper; use vars qw(@ISA $VERSION); $VERSION = '$Revision: 1.33 $'; @@ -162,9 +163,18 @@ return $Self; } +sub log { + my $Self = shift; + my $Function = shift; + my $Message = Data::Dumper->Dump([@_],[$Function]); + $Message =~ s/\n//g; + $Self->{LogObject}->Log(Priority => 'notice', Message => $Message); +} + sub CustomerName { my $Self = shift; my %Param = @_; + $Self->log("CustomerName", \%Param); my $Name = ''; # check needed stuff if (!$Param{UserLogin}) { @@ -226,6 +236,7 @@ sub CustomerSearch { my $Self = shift; my %Param = @_; + $Self->log("CustomerSearch", \%Param); # check needed stuff if (!$Param{Search} && !$Param{UserLogin} && !$Param{PostMasterSearch}) { $Self->{LogObject}->Log(Priority => 'error', Message => "Need Search, UserLogin or PostMasterSearch!"); @@ -470,6 +484,7 @@ Key => "CustomerUser::CustomerUserDataGet::$Filter", ); if ($Data) { + $Self->log("CustomerUserDataGetCacheData", \%{$Data}); return %{$Data}; } } @@ -521,12 +536,15 @@ ); } # return data + $Self->log("CustomerUserDataGet:Data", \%Data); + $Self->log("CustomerUserDataGet:Preferences", \%Preferences); return (%Data, %Preferences); } sub CustomerUserAdd { my $Self = shift; my %Param = @_; + $Self->log("CustomerUserAdd", \%Param); # check ro/rw if ($Self->{ReadOnly}) { $Self->{LogObject}->Log(Priority => 'error', Message => "Customer backend is ro!"); ######## schnapp ######## Danach klärt sich vieles bei einem Blick ins Adminlog. hth und gruß Karsten -- Karsten Heymann Server-Administrator IP karsten.heymann@telecolumbus.de infocity GmbH Schillerstraße 58, D-10627 Berlin Tel: +49 (0)30 3388 1981 Fax: +49 (0)30 3388 9 1981 -------------------------------------------- Amtsgericht Hannover, HRB 58487 Geschäftsführer: Robert E. Fowler III, Paul Stodden Sitz der Gesellschaft: Peiner Straße 8 - 30519 Hannover