ich möchte in unserem OTRS Systemdaten von unseren Kunden speichern. Somit weiss ich immer welche ServerVersion der Kunde einsetzt oder welche Seriennummer sein Server hat.
ich dachte erst ich kann das über ein externes Backend lösen.
Leider gibt es diesbezüglich ziemlich viele 1:n Beziehungen (Also 1 Kunde kann auch mehrere Server haben).
Nun dachte ich dass ich das mit ITSM vielleicht bewältigt bekomme. Services und SLAs interessieren mich nicht.
Ich finde aber den Ansatzpunkt nicht wirklich.
Ich habe schon meine eigene CustomersCompany als externes Backend eingerichtet und möchte nun via Datenbankbeziehung eine andere Tabelle mit den Systemdaten verknüpfen können.
Wenn dann ein Ticket eröffnet wird soll neben dem Kunden auch das Kundensystem angezeigt werden.
Oder geht das doch schon mit HelpDesk Mitteln?
Anbei mal ein Auszug meiner Config.pm
Code: Select all
# CustomerUser (Accountdatenbank)
$Self->{CustomerUser} = {
Name => 'Accountdaten',
Module => 'Kernel::System::CustomerUser::DB',
Params => {
###Table => 'customer_user',
Table => 'com_customers',
CaseSensitive => 0,
},
# Eindeutige Kunden-Identifizierer
CustomerKey => 'login',
# Kunde #
CustomerID => 'customer_id',
CustomerValid => 'valid_id',
CustomerUserListFields => ['first_name', 'last_name', 'email'],
CustomerUserSearchFields => ['login', 'last_name', 'customer_id'],
CustomerUserSearchPrefix => '',
CustomerUserSearchSuffix => '*',
CustomerUserSearchListLimit => 250,
CustomerUserPostMasterSearchFields => ['email'],
CustomerUserNameFields => ['title','first_name','last_name'],
CustomerUserEmailUniqCheck => 1,
Map => [
# Info: Login, Email & CustomerID sind zwingend benötigt!
# Parameter shown (1=always, 2=lite)
# var, frontend, storage, shown, required, storage-type, http-link, readonly, http-link-target
[ 'UserTitle', 'Title', 'title', 1, 0, 'var', '', 0 ],
[ 'UserFirstname', 'Firstname', 'first_name', 1, 1, 'var', '', 0 ],
[ 'UserLastname', 'Lastname', 'last_name', 1, 1, 'var', '', 0 ],
[ 'UserLogin', 'Username', 'login', 1, 1, 'var', '', 0 ],
[ 'UserPassword', 'Password', 'pw', 0, 0, 'var', '', 0 ],
[ 'UserEmail', 'Email', 'email', 1, 1, 'var', '$Env{"CGIHandle"}?Action=AgentTicketCompose&ResponseID=1&TicketID=$Data{"TicketID"}&ArticleID=$Data{"ArticleID"}', 0 ],
[ 'UserCustomerID', 'CustomerID', 'customer_id', 1, 1, 'var', '', 0 ],
[ 'UserCustomerIDs', 'CustomerIDs', 'customer_ids', 1, 0, 'var', '', 0 ],
[ 'BranchID', 'BranchID', 'branch_id', 1, 0, 'int', '', 0 ],
[ 'Branch', 'Branch', 'branch', 1, 0, 'var', '', 0 ],
[ 'UserPhone', 'Phone', 'phone', 1, 0, 'var', '', 0 ],
[ 'UserFax', 'Fax', 'fax', 1, 0, 'var', '', 0 ],
[ 'UserMobile', 'Mobile', 'mobile', 1, 0, 'var', '', 0 ],
[ 'UserStreet', 'Street', 'street', 2, 0, 'var', '', 0 ],
[ 'UserZip', 'Zip', 'zip', 2, 0, 'var', '', 0 ],
[ 'UserCity', 'City', 'city', 2, 0, 'var', '', 0 ],
[ 'UserCountry', 'Country', 'country', 1, 0, 'var', '', 0 ],
[ 'UserComment', 'Comment', 'comments', 1, 0, 'var', '', 0 ],
[ 'ValidID', 'Valid', 'valid_id', 1, 1, 'int', '', 0 ]
],
# Standard Auswahl
Selections => {
UserTitle => {
'Herr' => 'Herr',
'Frau' => 'Frau',
'Dr.' => 'Dr.',
'Prof.' => 'Prof.'
},
UserCountry => {
'Germany' => 'Deutschland',
'Switzerland' => 'Schweiz',
'Austria' => 'Österreich',
'Poland' => 'Polen',
'Spain' => 'Spanien',
'Italy' => 'Italien',
'France' => 'Frankreich'
},
},
};
# ---------------------------------------------------- #
# CustomerCompany (Firmendatenbank)
$Self->{CustomerCompany} = {
Name => 'Firmendaten',
Module => 'Kernel::System::CustomerCompany::DB',
Params => {
Table => 'com_companies',
CaseSensitive => 0,
},
# Eindeutiger Firmen-Identifizierer
CustomerCompanyKey => 'id',
# Firma #
CustomerCompanyValid => 'valid_id',
CustomerCompanyListFields => ['name', 'comments', 'valid_id'],
CustomerCompanySearchFields => ['name', 'comments', 'url'],
CustomerCompanySearchPrefix => '',
CustomerCompanySearchSuffix => '*',
CustomerCompanySearchListLimit => 250,
Map => [
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly, http-link-target
[ 'CustomerCompanyID', 'CompanyID', 'id', 2, 1, 'int', '', 0 ],
[ 'CustomerCompanyNr', 'CompanyNr', 'nr', 1, 1, 'var', '', 0 ],
[ 'CustomerCompanyName', 'CompanyName', 'name', 1, 1, 'var', '', 0 ],
[ 'CustomerCompanyType', 'CompanyType', 'type', 1, 1, 'var', '', 0 ],
[ 'CustomerCompanyAddSuff1', 'CompanyAddSuff1', 'addresssuffix1', 2, 0, 'var', '', 0 ],
[ 'CustomerCompanyAddSuff2', 'CompanyAddSuff2', 'addresssuffix2', 2, 0, 'var', '', 0 ],
[ 'CustomerCompanyStreet', 'Street', 'street', 2, 1, 'var', '', 0 ],
[ 'CustomerCompanyZip', 'Zip', 'zip', 2, 1, 'var', '', 0 ],
[ 'CustomerCustomerCompanyCity', 'City', 'city', 2, 1, 'var', '', 0 ],
[ 'CustomerCustomerCompanyCountry', 'Country', 'country', 2, 1, 'var', '', 0 ],
[ 'CustomerCompanyPostBox', 'PostBox', 'postbox', 2, 0, 'var', '', 0 ],
[ 'CustomerCompanyPhone', 'Phone', 'tel', 1, 1, 'var', '', 0 ],
[ 'CustomerCompanyFax', 'Fax', 'fax', 2, 0, 'var', '', 0 ],
[ 'CustomerCompanyMail', 'EMail', 'email', 1, 1, 'var', '', 0 ],
[ 'CustomerCompanyReferenz', 'CompanyReferenz', 'referenz', 2, 0, 'var', '', 0 ],
[ 'CustomerCompanyComment', 'Comment', 'comments', 2, 0, 'var', '', 0 ],
[ 'CustomerCompanyURL', 'URL', 'url', 2, 0, 'var', '', 0 ],
[ 'CustomerProductIDs', 'ProductIDs', 'product_ids', 1, 0, 'var', '', 0 ],
[ 'ValidID', 'Valid', 'valid_id', 1, 1, 'int', '', 0 ]
],
};
# ---------------------------------------------------- #
$Self->{CustomerProducts} = {
Name => 'Produktinformation',
#Module => 'Kernel::System::CustomerProducts::DB',
Params => {
Table => 'com_products',
CaseSensitive => 0,
},
# Eindeutiger System-Identifizierer
CustomerProductsKey => 'id',
# System #
CustomerProductsValid => 'valid_id',
CustomerProductsListFields => ['name', 'comments', 'valid_id'],
CustomerProductsSearchFields => ['name', 'comments'],
CustomerProductsSearchPrefix => '',
CustomerProductsSearchSuffix => '*',
CustomerProductsSearchListLimit => 250,
Map => [
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly, http-link-target
[ 'CustomerProductID', 'ProductID', 'id', 1, 1, 'int', '', 0 ],
[ 'CustomerProductsName', 'Name', 'name', 1, 1, 'var', '', 0 ],
[ 'CustomerProductsListID', 'ListID', 'list_id', 1, 1, 'var', '', 0 ],
[ 'CustomerProductsComment', 'Comment', 'comments', 1, 0, 'var', '', 0 ],
[ 'ValidID', 'Valid', 'valid_id', 1, 1, 'int', '', 0 ]
],
};