Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Hilfe zu Znuny Problemen aller Art
Locked
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

Ich habe OTRS 3.3.8 nach Anleitung installiert und hole erfolgreich Kundenbenutzer aus MSSQL ab. Die Kundenbenutzer erscheinen in OTRS. :-)
Leider greift die Kundenverwaltung von OTRS trotzdem auf die OTRS-PostgreSQL-Datenbank zu (nicht auf MSSQL), folglich ist die Kundenliste leer.
Wie kann ich denn einstellen, dass die Kundenverwaltung auf die MSSQL-Datenbank geht, auf die bereits die Kundenbenutzer-Verwaltung zugreift...?
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
wurzel
Znuny guru
Posts: 3273
Joined: 08 Jul 2010, 22:25
Znuny Version: x.x.x
Real Name: Florian

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by wurzel »

Hi,

ich weiß nicht ob das möglich ist. Es gab wohl mal 'n Community Vorschlag für die CustomerCompany sektion
in der Config.pm und externen Datenbanken.

Schau mal ob das geht - analog zu CustomerUser


Flo
OTRS 2025 SILVER (Prod)
OTRS 2025 auf Debian 12 (Test)
Znuny 7.x latest version testing auf Debian 12

-- Ich beantworte keine Forums-Fragen PN - No PN please

I won't answer to unfriendly users any more. A greeting and regards are just polite.
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by jojo »

Ja, geht (Auszug aus der Defaults.pm)

Code: Select all

    $Self->{CustomerCompany} = {
        Name   => 'Database Backend',
        Module => 'Kernel::System::CustomerCompany::DB',
        Params => {
            # if you want to use an external database, add the
            # required settings
#            DSN  => 'DBI:odbc:yourdsn',
#            Type => 'mssql', # only for ODBC connections
#            DSN => 'DBI:mysql:database=customerdb;host=customerdbhost',
#            User => '',
#            Password => '',
            Table => 'customer_company',
#            ForeignDB => 0,    # set this to 1 if your table does not have create_time, create_by, change_time and change_by fields

            # CaseSensitive will control if the SQL statements need LOWER()
            #   function calls to work case insensitively. Setting this to
            #   1 will improve performance dramatically on large databases.
            CaseSensitive => 0,
        },
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

Funktioniert prächtig, vielen Dank für den Tip mit Defaults.pm! :-)

Zwei Fragen ergeben sich daraus aber im Anschluss, leider...
(1) Kann man OTRS irgendwie mitteilen, wie die Codierung des Feldes "gültig" funktioniert? Die ist in meiner externen DB leider wohl nicht so wie OTRS es gerne hätte.
(2) Kann man es schaffen, dass OTRS bei Klick auf "Kundennummer" im Kundenbenutzer auf den Datensatz der Kundenfirma springt (die hat ja logischerweise diese Kundennummer -- oder sind das in OTRS getrennte Nummernkreis / Wie macht man dann die Zuordnung von Kundenbenutzer zu Kundenfirma)?

Danke schonmal! :-)
-Markus
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
wurzel
Znuny guru
Posts: 3273
Joined: 08 Jul 2010, 22:25
Znuny Version: x.x.x
Real Name: Florian

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by wurzel »

Hi,

da gibt's was mit ForeignDB=1 dann ignoriert der das valid/invalid. Zumindest bei CustomerUser.

Beim Klick auf die CustomerID kommt man ins CIC und da sind die company infos rechts zu sehen.

Flo
OTRS 2025 SILVER (Prod)
OTRS 2025 auf Debian 12 (Test)
Znuny 7.x latest version testing auf Debian 12

-- Ich beantworte keine Forums-Fragen PN - No PN please

I won't answer to unfriendly users any more. A greeting and regards are just polite.
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

wurzel wrote:Hi,
da gibt's was mit ForeignDB=1 dann ignoriert der das valid/invalid. Zumindest bei CustomerUser.
Beim Klick auf die CustomerID kommt man ins CIC und da sind die company infos rechts zu sehen.
Flo
(1) Ich will valid/invalid nicht deaktivieren, Ich muss es aus der externen DB übernehnehmen, benötige aber eine andere Codierung von "valid" und "invalid" als Zahlenwerte.
(2) Funzt nicht. Werde am Kundenbenutzer noch in der Liste aller Kundenbenutzer ist die Kundennummer anklickbar. Habe mich exakt an das Handbuch gehalten, von daher hast Du wohl eine Art Zusatzprogrammierung dafür?
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by reneeb »

Hast Du CustomerCompany-Unterstützung aktiviert? Irgendwo bei $Self->{CustomerUser} müsste etwas wie "CustomerCompany => 1" stehen.
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

reneeb wrote:Hast Du CustomerCompany-Unterstützung aktiviert? Irgendwo bei $Self->{CustomerUser} müsste etwas wie "CustomerCompany => 1" stehen.
Ich habe das untenstehende in der SysConfig eingetragen, falls Du das meinst. Aber CustomerCompany => 1 habe ich nicht, davon stand im Handbuch nix... Wo muss das denn hin?

Code: Select all

	$Self->{CustomerCompany} = {
		Name   => 'Microsoft CRM',
		Module => 'Kernel::System::CustomerCompany::DB',
		Params => {
			DSN => 'DBI:Sybase:server=QUIPSY5;database=QUIPSY_MSCRM',
			User => 'QUIPSY\Administrator',
			Password => 'Lp59fw92ui',
			Table => 'Account',
			ForeignDB => 1,    # set this to 1 if your table does not have create_time, create_by, change_time and change_by fields
			SourceCharset => 'iso-8859-1',
			DestCharset => 'utf-8',
			CaseSensitive => 0,
			ReadOnly => 1,
		},

		# company unique id
		CustomerCompanyKey			=> 'AccountId',
		CustomerCompanyValid			=> 'StateCode',
		CustomerCompanyListFields		=> [ 'AccountId', 'name' ],
		CustomerCompanySearchFields		=> [ 'AccountId', 'name' ],
		CustomerCompanySearchPrefix		=> '',
		CustomerCompanySearchSuffix		=> '*',
		CustomerCompanySearchListLimit	=> 250,
		CacheTTL					=> 60 * 60 * 24,
		ReadOnly					=> 1,
		Map => [
			# var,				frontend,		storage,	shown (1=always,2=lite), required, storage-type, http-link, readonly
			[ 'CustomerID',             'CustomerID', 'AccountId',			0, 1, 'var', '', 1 ],
			[ 'CustomerCompanyName',    'Customer',   'name',				1, 1, 'var', '', 1 ],
			[ 'CustomerCompanyStreet',  'Street',     'Address1_Line1',		1, 0, 'var', '', 1 ],
			[ 'CustomerCompanyZIP',     'Zip',        'Address1_PostalCode',	1, 0, 'var', '', 1 ],
			[ 'CustomerCompanyCity',    'City',       'Address1_City',		1, 0, 'var', '', 1 ],
			[ 'CustomerCompanyCountry', 'Country',    'Address1_Country',	1, 0, 'var', '', 1 ],
			[ 'CustomerCompanyURL',     'URL',        'WebSiteURL',		1, 0, 'var', '$Data{"CustomerCompanyURL"}', 1 ],
#			[ 'CustomerCompanyComment', 'Comment',    'comments',			1, 0, 'var', '', 1 ],
			[ 'ValidID',                'Valid',      'StatusCode',		0, 1, 'int', '', 1 ],
		],
	};
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by reneeb »

Mmmhhh... Die Option heißt "CustomerCompanySupport" und gehört zur Konfiguration der CustomerUser (https://github.com/OTRS/otrs/blob/rel-3 ... s.pm#L1358)
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

reneeb wrote:Mmmhhh... Die Option heißt "CustomerCompanySupport" und gehört zur Konfiguration der CustomerUser (https://github.com/OTRS/otrs/blob/rel-3 ... s.pm#L1358)
Danke für den Tip! Schade, dass das nicht im Handbuch erwähnt wird. Habe das in SysConfig eingetragen, aber leider bringt es nicht dengewünschten Erfolg -- es erscheint immer noch keine Möglichkeit, am Kundenbenutzer die Kundenfirma einzusehen. Zwar erscheint nun statt der Kundennummer ein Auswahfeld auf Kundennummern in der Bentzermaske, doch dieses ist neuerdings bei allen Kundenbenutzern leer (die Auswahl selbst ist jedoch sehr wohl mit Kundenfirmen gefüllt). Man könnte meinen, am Kundenbenutzer wäre vielleicht die Kundennummer nicht eingetragen -- falsch gedacht, da erscheint sie nämlich sehr wohl weiterhin...!

Insofern muss man wohl noch mehr machen. Doch was nur...?
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

Um das ganze noch zu präzisieren: Wie ich gesehen habe, funktioniert die Verbindung innerhalb des Kundeninformationszentrums. Was nicht funktioniert ist jedoch der Verbindung zwischen Kundenbenutzerverwaltung und Kundenverwaltung!
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by jojo »

Caches gelöscht?
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

jojo wrote:Caches gelöscht?
Ich nehme an Du meinst nicht den Browser Cache sondern die Cache-Eintragung am CustomerUser und CustomerCompany: Keine Ahnung wie man diese Caches löschen kann! :-(
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by reneeb »

perl bin/otrs.DeleteCache.pl
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
mkarg
Znuny advanced
Posts: 136
Joined: 03 Jul 2014, 15:17
Znuny Version: 5s (Free)
Real Name: Markus KARG
Company: ProSeS BDE GmbH

Re: Kunden (nicht nur Kundenbenutzer) aus externer DB holen

Post by mkarg »

reneeb wrote:perl bin/otrs.DeleteCache.pl
Danke für den Hinweis. Hat aber leider nichts gebracht -- habe sogar OTRS komplett neu aufgesetzt, das Problem existiert immer noch. Ich habe die Vermutung, dass die GUI das schlicht gar nicht kann oder dass es ein Bug in OTRS ist, denn die anderen Stellen in der GUI machen's ja richtig. :-(
OTRS 5s (Free) (Debian Squeeze 64 Bit; PostgreSQL) + Agents-Auth_LDAP (ActiveDirectory) + CustomerUser_DB (FreeTDS; MSSQL; MSCRM)
Locked