S.mon - Database Model
Author: | Grzegorz Swiatek |
Version: | 1.6.0 |
Date: | January 2011 |
Index
Tables
Table: acl_owner
Back to Index
In dieser Tabelle werden alle Owners
von Access Control List gespeichert.
Ein ACL-Owner ist die Person, die ein ACL
modifizieren kann.
Column | Type | Primary Key | Unique | NULL | Default | Description |
acl_id | LONG |
yes
|
yes
|
no
| |
Die Kennung des Objektes, fuer welches das ACL gilt (Produkt-,
oder Kunden-Identifier).
|
acl_type | CHAR(1) |
yes
|
yes
|
no
| |
Die Kennung des ACLs. Wir benutzen 'p' fuer 'product'
und 'c' fuer 'customer'.
|
principal | USER |
yes
|
yes
|
no
| |
Die Kennung des Benutzers oder eine Meta-Gruppe.
Folgende Meta-Gruppen sind derzeit erlaubt: anonym,
engineer und customer.
|
Table: attachment_data
Back to Index
Beinhaltet die Beilagen zu den Problemen.
Die Struktur einer Beilage ist in der Tabelle
'defect_attachment' definiert.
Column | Type | Primary Key | Unique | NULL | Default | Description |
attachment_id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer eine Beilage, wie
in der Tabelle 'defect_attachment' definiert.
|
file_data | BLOB |
no
|
no
|
yes
| |
Die eigentlichen Daten der Beilage.
|
Table: component
Back to Index
Ein Produkt kann mehrere Komponenten haben
(Hardware, Software, Dokumentation, ...).
Column | Type | Primary Key | Unique | NULL | Default | Description |
product_id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer ein Produkt.
|
name | VARCHAR(30) |
yes
|
yes
|
no
| |
Der Name der Komponente.
|
description | VARCHAR(40) |
no
|
no
|
no
| |
Eine kurze Beschreibung einer Komponente.
|
Table: contract
Back to Index
Hier werden die Vertraege mit den Kunden gespeichert.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Eine eindeutige Kennung fuer einen Vertrag.
|
name | VARCHAR(60) |
no
|
no
|
no
| | Name des Vertrages |
description | VARCHAR(200) |
no
|
no
|
no
| | Kurze Beschreibung zum Vertrag |
customer_id | LONG |
no
|
no
|
no
| | Kennung des Kunden, fuer welchen dieser Vertrag gilt. |
created_on | _DATE |
no
|
no
|
no
| | Wann wurde der Vertrag angelegt?
|
created_by | USER |
no
|
no
|
no
| | Wer hat diesen Vertrag angelegt? |
valid_from | _DATE |
no
|
no
|
no
| | Der Beginn der Gueltigkeit eines Vertrages
|
valid_until | _DATE |
no
|
no
|
no
| | Das Ende der Gueltigkeit eines Vertrages
|
has_sla | _BOOL |
no
|
no
|
no
| 'n' | Gibt es Service Level Agreement? |
sla_content_type | VARCHAR(60) |
no
|
no
|
yes
| | Content Type fuer SLA-Dokument |
sla_file_name | VARCHAR(120) |
no
|
no
|
yes
| | Dateiname fuer das SLA-Dokument |
sla_data | BLOB |
no
|
no
|
yes
| | Daten fuer das SLA-Dokument |
partner_id | LONG |
no
|
no
|
no
| -1 | Kennung fuer den Partner, der fuer die Tickets zustaendig ist (-1: kein Partner). |
Table: contract_priority
Back to Index
Hier wird definiert, wie ein Bug mit einer
bestimmten Prioritaet zu behandeln (Anzahl von Stunden,
die fuer ein Fix benoetigt werden) ist.
Diese Settings haben dann eine Auswirkung auf das
Datum, wann ein Problem gefixt sein sollte.
Zusaetzlich wird angegeben, ob ein sog. Follow Up
Problem automatisch erzeugt sein sollte.
Column | Type | Primary Key | Unique | NULL | Default | Description |
contract_id | LONG |
yes
|
yes
|
no
| |
Die Kennung des Vertrages.
Ist die Kennung auf '-1' gesetzt, so handelt es sich um
einen Default-Wert.
|
priority | PRIO |
yes
|
yes
|
no
| |
Die Prioritaet eines Problems.
|
name | PRIO_NAME |
no
|
no
|
no
| |
Der Name fuer diese Prioritaet.
|
description | VARCHAR(60) |
no
|
no
|
no
| | Die Beschreibung der Prioritaet. |
fix_hours | INT |
no
|
no
|
no
| |
Maximale Anzahl von Stunden die zur
Loesung eines Problems mit dieser Prioritaet
gebraucht werden.
|
work_days | _BOOL |
no
|
no
|
no
| 'n' |
Handelt es sich um Arbeitstunden?
Wenn ja (auf true gesetzt, dann werden die
Feier-, Sonn- und Samstage beruecksichtigt.
Ansonsten werden nur Kalendartage beruecksichtigt.
|
breakable | _BOOL |
no
|
no
|
no
| 'n' |
Kann ein Problem mit dieser Prioritaet unterbrochen werden?
Wenn ja, dann hat eine Unterbrechung eine Auswirkung auf den
Endtermin fuer die Problemloesung. Ansonsten bleibt
eine Unterbrechung ohne Auswirkung auf den Endtermin.
|
follow_up | _BOOL |
no
|
no
|
no
| 'n' |
Wenn auf true gesetzt, dann werden follow up Probleme
automatisch nach der Loesung eines Problems erzeugt.
|
follow_up_prio | PRIO |
no
|
no
|
no
| 0 |
Prioritaet fuer Follow-Ups.
|
Table: contract_product
Back to Index
Hier wird gespeichert, welche Produkte fuer einen Vertrag gelten.
Column | Type | Primary Key | Unique | NULL | Default | Description |
contract_id | LONG |
yes
|
yes
|
no
| |
Kennung des Vertrages.
|
product_id | LONG |
yes
|
yes
|
no
| |
Kennung des Produktes.
|
Table: customer
Back to Index
Beinhaltet Kundeninformationen.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Eine eindeutige Kennung fuer den Kunden.
|
name | VARCHAR(20) |
no
|
yes
|
yes
| |
Ein Kurzname fuer den Kunden. Muss
eindeutig sein. Wird verwendet, um den Kunden
zu identifizieren.
|
full_name | VARCHAR(120) |
no
|
no
|
yes
| |
Ein vollstaendiger Name des Kunden (z.B. rechtliche Form)
|
street | VARCHAR(50) |
no
|
no
|
yes
| |
Teil der Adresse (Strasse).
|
zip | VARCHAR(6) |
no
|
no
|
yes
| |
Teil der Adresse (Postleitzahl).
|
city | VARCHAR(40) |
no
|
no
|
yes
| |
Teil der Adresse (Ort, Stadt).
|
phone | PHONE |
no
|
no
|
yes
| |
Telefonnummer fuer den Kunden.
|
fax | FAX |
no
|
no
|
yes
| |
Faxnummer des Kunden.
|
url | URL |
no
|
no
|
yes
| |
Home-Page des Kunden.
|
logo_url | URL |
no
|
no
|
yes
| |
Link fuer das Logo des Kunden.
|
contact_email | EMAIL |
no
|
no
|
yes
| |
E-Mail der Kontaktperson beim Kunden.
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde der Kunde angelegt?
|
created_by | USER |
no
|
no
|
no
| |
Von wem wurde der Kunde angelegt?
|
modified_on | _DATE |
no
|
no
|
yes
| |
Wann wurden zuletzt die Kundendaten geaendert?
|
modified_by | USER |
no
|
no
|
yes
| |
Von wem wurden zuletzt die Kundendaten geaendert?
|
Table: customer_checklist
Back to Index
Hier werden die Check-Listen fuer
Produkte in Abhaengikeit von den Kunden
gespeichert. Wurde eine Check-Liste fuer
das Paar Produkt/Kunde oder fuer einen Kunden (alle Produkte)
definiert, dann wird diese automatisch als Vorlage fuer
die Problemloesung genommen.
Column | Type | Primary Key | Unique | NULL | Default | Description |
customer_id | LONG |
yes
|
yes
|
no
| |
Die Kennung des Kunden, fuer welchen diese Check-Liste
gelten soll.
|
product_id | LONG |
yes
|
yes
|
no
| |
Die Kennung des Produktes.
Wenn man als Kennung '-1' verwendet,
so handelt es sich hier um einen Default-Wert
fuer alle Produkte bei dem Kunden.
|
checklist | TEXT |
no
|
no
|
yes
| |
Eine Check-Liste, die beim der Loesung des Problems
beruecksichtigt sein sollte.
|
Table: customer_logo
Back to Index
Hier werden die Logos der Kunden gespeichert.
Column | Type | Primary Key | Unique | NULL | Default | Description |
customer_id | LONG |
yes
|
yes
|
no
| |
Eindeutige Kennung des Kunden.
|
content_type | VARCHAR(10) |
no
|
no
|
no
| |
Content-Type fuer das Logo (image/gif, image/jpeg)
|
logo | BLOB |
no
|
no
|
yes
| |
Das Logo.
|
Table: customer_office
Back to Index
Hier werden die Aufstellungsorte/Offices fuer Kunden
in Abhaengikeit vom Produkt gespeichert.
Column | Type | Primary Key | Unique | NULL | Default | Description |
customer_id | LONG |
yes
|
yes
|
no
| |
Die Kennung des Kunden.
|
product_id | LONG |
yes
|
yes
|
no
| |
Die Kennung des Produktes.
Wenn man als Kennung '-1' verwendet,
so handelt es sich hier um einen Default-Wert
fuer alle Produkte bei dem Kunden.
|
office | VARCHAR(40) |
yes
|
yes
|
no
| |
Office, Aufstellungsort etc.
|
Table: defect
Back to Index
Tabelle, wo die Defects gespeichert werden.
Column | Type | Primary Key | Unique | NULL | Default | Description |
ticket_type | SHORT |
no
|
no
|
no
| 0 |
We Support following ticket types:
Bug (0), Feature Request (1),
Change Request (2), Task (3) and
Requirement (4)
|
id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer ein Problem.
Die Identifiers fuer Defekte werden in der Tabelle 'last_id' mit
dem Namen 'defect' assoziert.
|
title | VARCHAR(120) |
no
|
no
|
no
| |
Titel bzw. Subjekt eines Problems (Defects).
|
product | VARCHAR(40) |
no
|
no
|
yes
| |
Name des Produktes (Programmes etc.), wo dies Problem
aufgetretten ist.
|
product_id | LONG |
no
|
no
|
no
| |
Ein unique Identifier fuer das Produkt.
|
contract_id | LONG |
no
|
no
|
no
| 0 |
Eine Kennung fuer den Vertrag (0 Default-Vertrag).
|
system | VARCHAR(40) |
no
|
no
|
yes
| |
Name des Systems, wo dies Problem aufgetretten ist.
|
component | VARCHAR(30) |
no
|
no
|
yes
| |
Der Name der Komponente, wo dies Problem aufgetretten ist.
|
version | VARCHAR(40) |
no
|
no
|
yes
| |
Version des Produktes (Programmes)
|
office | VARCHAR(40) |
no
|
no
|
yes
| |
Lokalisierung (Ort, Buero, etc.), wo das Problem auftritt.
|
hardware | VARCHAR(30) |
no
|
no
|
yes
| |
Name der Hardware (PC, Workstation, Router etc.)
|
op_system | VARCHAR(15) |
no
|
no
|
yes
| |
Betriebssystem (WinXP, Win2000, Linux, Solaris 2.7).
|
customer | VARCHAR(20) |
no
|
no
|
yes
| |
Name des Kunden, bei dem das Problem aufgetretten ist.
|
customer_id | LONG |
no
|
no
|
yes
| |
Unique Identifier fuer den Kunden.
|
new_on | _DATE |
no
|
no
|
no
| |
Wann wurde das Problem im System gespeichert.
|
new_by | USER |
no
|
no
|
no
| |
Welcher Benutzer hat das Problem gespeichert.
|
contact1_name | VARCHAR(60) |
no
|
no
|
yes
| |
Name der ersten Kontaktperson
|
contact1_email | EMAIL |
no
|
no
|
yes
| |
E-Mail Adresse fuer die erste Kontaktperson.
|
contact1_phone | PHONE |
no
|
no
|
yes
| |
Telefonnummer der ersten Kontaktperson
|
contact1_fax | FAX |
no
|
no
|
yes
| |
Faxnummer der ersten Kontaktperson
|
contact2_name | VARCHAR(60) |
no
|
no
|
yes
| |
Name der zweiten Kontaktperson
|
contact2_email | EMAIL |
no
|
no
|
yes
| |
E-Mail Adresse fuer die zweite Kontaktperson.
|
contact2_phone | PHONE |
no
|
no
|
yes
| |
Telefonnummer der zweiten Kontaktperson
|
contact2_fax | FAX |
no
|
no
|
yes
| |
Faxnummer der zweiten Kontaktperson
|
reported_by | VARCHAR(32) |
no
|
no
|
yes
| |
Wer hat das Problem gemeldet?
|
reported_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem gemeldet?
|
state | STATE |
no
|
no
|
no
| 'N' |
Der aktuelle Zustand des Problems.
Folgende Zustaende sind erlaubt:
(N)ew, (A)ssigned, (P)ostponed,
(O)pened, (F)orwarded, (W)aiting,
Forwarded to Next Service (L)evel,
(R)esolved, (V)erified und (C)losed.
|
priority | PRIO |
no
|
no
|
no
| 5 |
Die Prioritaet mit welcher das Problem bearbeitet wird.
Werte von 1 (hoechste Prioritaet) bis 9 (niedrigste Prioritaet)
sind erlaubt.
|
priority_name | PRIO_NAME |
no
|
no
|
yes
| |
Name der Prioritaet. Die Namen sind konfigurierbar.
Die Default-Werte sind: E1 (1), E2 (2), S1 (3), S2 (4), NS (5)
|
desired_priority | PRIO |
no
|
no
|
no
| 5 |
Die Prioritaet mit welcher es vom Kunden gewuenscht ist das Problem zu behandeln.
|
desired_priority_name | PRIO_NAME |
no
|
no
|
yes
| |
Name der Prioritaet.
|
desired_fix_on | _DATE |
no
|
no
|
yes
| |
Wann sollte das Problem gefixt werden. Dieser Wert wird automatisch
berechnet (ergibt sich aus Prioritaet, Kundendaten, SLA,
Produktdaten und dem Datum des Meldens).
|
engineer | USER |
no
|
no
|
yes
| |
Person, die das Problem aktuell bearbeitet
|
assigned_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem jemandem zugewiesen?
|
assigned_by | USER |
no
|
no
|
yes
| |
Von wem wurde das Problem zugewiesen?
|
assigned_to | USER |
no
|
no
|
yes
| |
An wen wurde das Problem zugewiesen?
|
opened_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem geoffnet?
|
postponed_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem aufgeschoben?
|
postponed_by | USER |
no
|
no
|
yes
| |
Von wem wurde das Problem aufgeschoben?
|
duplicate_of | LONG |
no
|
no
|
yes
| |
Verweist auf das Original-Problem.
|
resolved_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem gefixt?
|
resolved_by | USER |
no
|
no
|
yes
| |
Von wem wurde das Problem gefixt?
|
resolution | CHAR(1) |
no
|
no
|
no
| 'F' |
Die Art der Problemloesung. Die moeglichen
Werte sind: F: Fixed, I: Invalid, D: Duplicate,
W: Works, N: No Fix
|
closed_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem geschlossen?
|
closed_by | USER |
no
|
no
|
yes
| |
Von wem wurde das Problem geschlossen?
|
verified_on | _DATE |
no
|
no
|
yes
| |
Wann wurde die Loesung des Problems verifiziert?
|
verified_by | USER |
no
|
no
|
yes
| |
Von wem wurde die Loesung des Problems verifiziert?
|
modified_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem zuletzt modifiziert?
|
modified_by | USER |
no
|
no
|
yes
| |
Von wem wurde das Problem zuletzt modifiziert?
|
forwarded_on | _DATE |
no
|
no
|
yes
| |
Wann wurde das Problem weitergeleitet?
|
forwarded_by | USER |
no
|
no
|
yes
| |
Von wem wurde das Problem weitergeleitet?
|
forwarded_to | USER |
no
|
no
|
yes
| |
An wen wurde das Problem weitergeleitet?
|
fix_hours | FLOAT |
no
|
no
|
no
| 0.0 |
Stundenaufwand fuer die Loesung (gesamt).
|
extra_fix_hours | FLOAT |
no
|
no
|
no
| 0.0 |
Extra Stundenaufwand fuer die Loesung (gesamt).
|
call_time | INT |
no
|
no
|
no
| 0 |
Anrufzeit in Minuten (gesamt, outgoing calls).
|
break_hours | INT |
no
|
no
|
no
| 0 |
Gesamtunterbrechung in Stunden.
|
manuf_ref | VARCHAR(40) |
no
|
no
|
yes
| |
Querverweis zu einem Problem beim Hersteller.
|
customer_ref | VARCHAR(40) |
no
|
no
|
yes
| |
Querverweis zu einem Problem beim Kunden.
|
follow_up_of | LONG |
no
|
no
|
yes
| |
Das aktuelle Problem ist ein Folgeproblem eines anderen,
welches durch diese Kennung gekennzeichnet wird.
|
defect_comment | VARCHAR(200) |
no
|
no
|
yes
| |
Ein kleines Kommentar zu dem Problem
|
reaction_time1 | INT |
no
|
no
|
yes
| |
Erste Reaktionszeit in Stunden (New -> Assigned)
|
reaction_time2 | INT |
no
|
no
|
yes
| |
Zweite Reaktionszeit in Stunden (New -> Opened)
|
fix_time1 | INT |
no
|
no
|
yes
| |
Zeit die vom Melden bis zur Loesung benotigt wurde (New -> Resolved)
|
fix_time2 | INT |
no
|
no
|
yes
| |
Zeit die vom Melden bis zum Schliessen benotigt wurde (New -> Closed)
|
severity | BYTE |
no
|
no
|
no
| 5 | Die Wichtigkeit: Blocker (1), Critical (2), Major (3),
Normal (4), Minor (5)
|
how_found | VARCHAR(30) |
no
|
no
|
yes
| | Wie wurde das Problem gefunden (Test, Analyse, ...)
|
when_found | VARCHAR(30) |
no
|
no
|
yes
| | In welcher Phase wurde das Problem entdeckt (Analyse, Design, ...)
|
how_fixed | VARCHAR(30) |
no
|
no
|
yes
| | Wie wurde das Problem gefixt (Code, Konfiguration, ...)
|
when_fixed | VARCHAR(30) |
no
|
no
|
yes
| | In welcher Phase wurde das Problem gefixt?
|
first_contact_on | _DATE |
no
|
no
|
yes
| | Wann wurde der Kunde zum ersten Mal vom Techniker kontaktiert?
|
hide | _BOOL |
no
|
no
|
no
| 'n' |
Soll das Problem fuer den Kunden unsichtbar gemacht werden?
|
ext_ref1 | VARCHAR(20) |
no
|
no
|
yes
| |
Externe Referenz.
|
ext_ref2 | VARCHAR(20) |
no
|
no
|
yes
| |
Externe Referenz.
|
ext_ref3 | VARCHAR(20) |
no
|
no
|
yes
| |
Externe Referenz.
|
ref1 | LONG |
no
|
no
|
yes
| |
Interne Referenz.
|
ref2 | LONG |
no
|
no
|
yes
| |
Interne Referenz.
|
ref3 | LONG |
no
|
no
|
yes
| |
Interne Referenz.
|
sr_number | VARCHAR(8) |
no
|
no
|
yes
| | |
fixed_version | VARCHAR(40) |
no
|
no
|
yes
| | |
verified_version | VARCHAR(40) |
no
|
no
|
yes
| | |
forecast_version | VARCHAR(40) |
no
|
no
|
yes
| | |
technical_prime | USER |
no
|
no
|
yes
| | |
tester | USER |
no
|
no
|
yes
| | |
has_email | BOOL |
no
|
no
|
yes
| | |
replaces | LONG |
no
|
no
|
yes
| | |
moved_to | LONG |
no
|
no
|
yes
| | |
parent_id | LONG |
no
|
no
|
yes
| | |
service_level | SHORT |
no
|
no
|
no
| 1 | 0: First Level (Partner), 1: Second Level (Service), 2: Third Level (Developer).
Workflow will currently support only First and second level.
|
previous_level_ticket_id | LONG |
no
|
no
|
yes
| | Ticket id for the parent ticket in previous level. |
next_level_ticket_id | LONG |
no
|
no
|
yes
| | Ticket if for the associated ticket in the next level. |
partner_id | LONG |
no
|
no
|
no
| -1 | Ticket if for the associated ticket in the next level. |
reason | VARCHAR(250) |
no
|
no
|
yes
| | The temporary reason for rejection or wait |
Table: defect_action
Back to Index
Hier werden die einzelnen Loesungen eines Problems
von jeder an der Loesung beteiligten Person gespeichert.
Man kann bis zu drei Techniker mitspeichern, die vor Ort
ihre Arbeit gemacht haben. Bei den Techniker werden
die Namen gespeichert und nicht die S.mon-Accounts,
da es davon auszugehen ist, daß nicht jeder Techniker
ein Account besitzt.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer diese Aktion
|
defect_id | LONG |
no
|
no
|
no
| |
Unique Identifier eines Problems fuer welches die
Aktion gemacht wurde.
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde die Aktion gemacht?
Diese Zeit wird automatisch gesetzt und kann
nicht geaendert werden.
|
created_by | USER |
no
|
no
|
no
| |
Won wem wurde die Aktion durchgefuehrt?
|
fix_hours | FLOAT |
no
|
no
|
no
| 0.0 |
Wie lange hat die Aktion gedauert?
|
extra_fix_hours | FLOAT |
no
|
no
|
no
| 0.0 |
Extra Stunden fuer die Aktion (z.B. ausserhalb des Wartungsvertrages)
|
call_time | INT |
no
|
no
|
no
| 0 |
Anrufzeit in Minuten fuer ausgehende Anrufe, die
bei der Aktion notwendig waren.
|
action_info | TEXT |
no
|
no
|
no
| |
Beschreibung der durchgefuehrten Aktion.
|
on_place | _BOOL |
no
|
no
|
yes
| |
War es notwendig vor Ort zu sein?
|
technician1 | VARCHAR(60) |
no
|
no
|
yes
| |
Wer war vor Ort?
|
technician2 | VARCHAR(60) |
no
|
no
|
yes
| |
Wer war vor Ort?
|
technician3 | VARCHAR(60) |
no
|
no
|
yes
| |
Wer war vor Ort?
|
hw_replaced | _BOOL |
no
|
no
|
yes
| |
Wurde Hardware ausgetauscht?
|
start_on | _DATE |
no
|
no
|
yes
| | Wann wurde die Aktion angefangen?
|
end_on | _DATE |
no
|
no
|
yes
| | Wann wurde die Aktion beendet?
|
call_on | _DATE |
no
|
no
|
yes
| | Wann kam der erste Anruf?
|
call_back_on | _DATE |
no
|
no
|
yes
| | Wann wurde der Kunde zurueckgerufen?
|
on_site_on | _DATE |
no
|
no
|
yes
| | Wann ist der Techniker vor Ort gewesen?
|
on_equipment_on | _DATE |
no
|
no
|
yes
| | Wann hat der Techniker den Zugang zum Equipment bekommen?
|
leaved_on | _DATE |
no
|
no
|
yes
| | Wann hat der Techniker das Ort verlassen?
|
Table: defect_attachment
Back to Index
Speichert Informationen ueber die Beilagen
zu einem Problem. Ein Problem kann beliebig
viele Beilagen haben.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer eine Beilage.
|
defect_id | LONG |
no
|
no
|
no
| |
Zu welchem Problem gehoert diese Beilage?
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde diese Beilage gespeichert?
|
created_by | USER |
no
|
no
|
no
| |
Von wem wurde diese Beilage erzeugt?
|
file_name | VARCHAR(120) |
no
|
no
|
yes
| |
Name der Datei
|
file_size | LONG |
no
|
no
|
yes
| |
Die Dateigroesse in Bytes.
|
content_type | VARCHAR(60) |
no
|
no
|
yes
| |
Content-Type fuer diese Beilage
(text/html, image/gif etc.)
|
description | VARCHAR(250) |
no
|
no
|
yes
| | Kurze Beschreibung zu einer Beilage |
Table: defect_history
Back to Index
Enthaelt die Geschichte eines Problems.
Aendert sich der Zustand eines Problems,
so wird in der Tabelle alles mitprotokolliert.
Column | Type | Primary Key | Unique | NULL | Default | Description |
defect_id | LONG |
no
|
no
|
no
| |
Identifier fuer das Problem, welches modifiziert
wurde.
|
modified_on | _DATE |
no
|
no
|
no
| |
Wann wurde das Problem modifiziert?
|
modified_by | USER |
no
|
no
|
no
| |
Von wem wurde das Problem modifiziert?
|
state | STATE |
no
|
no
|
yes
| |
Zustand des Problems nach der Aenderung.
|
priority | PRIO |
no
|
no
|
yes
| |
Prioritaet des Problems nach der Aenderung.
|
priority_name | PRIO_NAME |
no
|
no
|
yes
| |
Ein Kuerzel fuer die Prioritaet.
|
what | VARCHAR(10) |
no
|
no
|
yes
| |
Was wurde geandert (Code der Aenderung)?
|
what_para | VARCHAR(120) |
no
|
no
|
yes
| |
Ein Parameter (Zusatzinformation) fuer die Aenderung (z.B. an wen wurde
das Problem weitergeleitet).
|
Table: defect_memo
Back to Index
Man kann zu jedem Problem beliebeige Anzahl an Memo-Texten
speichern. Diese Informationen werden nicht fuer die
Kunden sichtbar. Dies ist eine Art interne Kommunikation
zwischen den Bearbeitern.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer ein Memo.
|
defect_id | LONG |
no
|
no
|
no
| |
Verweis auf das Problem zu welchem dies Memo gehoert.
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde dies Memo angelegt?
|
created_by | USER |
no
|
no
|
no
| |
Von wem wurde dies Memo angelegt?
|
memo | TEXT |
no
|
no
|
no
| |
Der Inhalt des Memos.
|
Table: defect_route
Back to Index
Eine Route des Problems beim Weiterleiten.
Diese Tabelle beinhaltet die Geschichte
des Weiterleiten eines Problems.
Column | Type | Primary Key | Unique | NULL | Default | Description |
defect_id | LONG |
no
|
no
|
no
| |
Unique Identifier fuer das Problem.
|
engineer | USER |
no
|
no
|
no
| |
Person, die von dem Weiterleiten fuer das Problem
verantwortlich wurde.
|
forwarded_on | _DATE |
no
|
no
|
no
| |
Wann wurde dies Problem weitergeleitet?
|
forwarded_by | USER |
no
|
no
|
no
| |
Von wem wurde das Weiterleiten ausgefuehrt?
|
forwarded_to | USER |
no
|
no
|
no
| |
An wen wurde das Problem weitergeleitet?
|
Table: group_member
Back to Index
Column | Type | Primary Key | Unique | NULL | Default | Description |
group_id | USER |
yes
|
yes
|
no
| | |
member_id | USER |
yes
|
yes
|
no
| | |
Table: hardware_change
Back to Index
Hier werden die Daten ueber die gewuenschten
Benachrichtigungen fuer Hardware-Austausch gespeichert.
Diese Benachrichtigung ist fuer Kundenbenutzer nicht erlaubt!
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Eine eindeutige Kennung fuer diese Notification-Definition.
|
user_id | USER |
no
|
no
|
no
| |
Kennung des Benutzers, der bei HW-Tausch benachrichtigt werden soll.
Kundenbenutzer wird nicht erlaubt!
|
product_id | LONG |
no
|
no
|
no
| -1 |
Die Kennung des Produktes. Entweder Produkt oder Kunde
muss angegeben werden (beides ist auch moeglich).
|
customer_id | LONG |
no
|
no
|
no
| -1 |
Wenn angegeben, wird der Benutzer nur dann benachrichtigt,
wenn Problem von diesem bestimmten Kunden gemeldet wurde,
und bei der Lösung zum Hardware-Austausch kam.
|
Table: info
Back to Index
Information zum S.mon.
Column | Type | Primary Key | Unique | NULL | Default | Description |
version | VARCHAR(6) |
no
|
no
|
yes
| | Die Versionsnummer fuer S.mon |
build | VARCHAR(8) |
no
|
no
|
yes
| | Build-Datum im Format ddmmyyyy |
Table: journaling
Back to Index
Logbuch fuer die wichtigsten Aktionen (Benutzer anlegen,
Kunden anlegen, Produkt anlegen, Problem melden,
Problem loeschen, usw.)
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Eine eindeutige Kennung einer Aktion
|
action_on | _DATE |
no
|
no
|
no
| |
Wann wurde die Aktion ausgefuehrt?
|
action_by | USER |
no
|
no
|
no
| |
Von wem wurde die Aktion durchgefuehrt?
|
action_code | INT |
no
|
no
|
no
| |
Der Kode fuer eine durchgefuehrte Aktion
(1: create user, 2: create customer, 3: create product,
4: new defect, 15: delete defect, 20: login,
21: logout, 23: password change, 25: set ACL entry,
26: remove ACL entry)
|
action_para | VARCHAR(32) |
no
|
no
|
yes
| |
Zusatzinformation zu der Aktion (Name des Kunden, Problemnummer, etc.)
|
Table: last_id
Back to Index
Wird verwendet um Unique-Identifiers fuer unterschiedliche
Tabellen zu verwalten. Braucht man eine eindeutige Nummer,
so wird last_id inkrementiert und fuers Ergebnis verwendet.
Grund fuer diese Tabelle ist die unterschiedliche Behandlung
von 'auto increment' in den Datenbanken. Deswegen werden
die unique identifiers von der Applikation selbst verwaltet.
Column | Type | Primary Key | Unique | NULL | Default | Description |
name | VARCHAR(32) |
yes
|
yes
|
no
| |
Name einer Tabelle oder sonstiger Name fuer welchen
man eine fortlaufende Nummer braucht
(in unserem Fall: defect, defect_memo,
defect_action, attachment, customer, product, notification).
|
last_id | LONG |
no
|
no
|
no
| |
Die letzte Nummer die zu dem Namen gespeichert wurde.
Als naechstes Id sollte last_id plus 1 genommen werden
und der entsprechende Datensatz aktualisiert werden.
|
Table: license_data
Back to Index
Speichert die gesamte Lizenz-Info
Column | Type | Primary Key | Unique | NULL | Default | Description |
product_license_serial | VARCHAR(36) |
yes
|
yes
|
no
| | Unique-Identifier für eine Lizenz (Verweis auf Produkt-Lizenz |
license | TEXT |
no
|
no
|
no
| | Gesamte Lizenz |
Table: license_feature
Back to Index
Speichert die freigeschaltenen Features zu einer Lizenz
Column | Type | Primary Key | Unique | NULL | Default | Description |
product_license_serial | VARCHAR(36) |
no
|
no
|
no
| | Verweis auf die Lizenz |
name | VARCHAR(60) |
no
|
no
|
no
| | Der Name der License-Feature |
num | LONG |
no
|
no
|
no
| 0 | Die Anzahl der lizenzierten Features (0: unlimitiert) |
expires | _DATE |
no
|
no
|
yes
| | Bis wann darf man dieses Feature benutzen |
enabled | BOOL |
no
|
no
|
no
| | Ist das Feature überhaupt freigeschalten |
Table: license_feature_name
Back to Index
Diese Tabelle speichert die zu lizenzierenden Feature-Namen zu einer Produkt-Version
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | INT |
yes
|
yes
|
no
| | Fortlaufende Nummer zur Identifikation |
product_version_id | INT |
no
|
no
|
no
| | Die Referenz auf die Produkt-Version |
created_on | _DATE |
no
|
no
|
no
| | Wann wurde dieser Datensatz angelegt |
created_by | USER |
no
|
no
|
no
| | Von wem wurde dieser Datensatz angelegt |
modified_on | _DATE |
no
|
no
|
yes
| | Wann wurde dieser Datensatz zuletzt geändert |
modified_by | USER |
no
|
no
|
yes
| | Von wem wurde dieser datensatz zuletzt geändert |
name | VARCHAR(60) |
no
|
no
|
no
| | Der Name der License-Feature |
countable | BOOL |
no
|
no
|
no
| | Ist es ein Concurrent-Feature, wo ein Zähler benötigt wird |
Table: license_key_pair
Back to Index
Speichert das Schlüssel-Paar, welches zum Signieren und Validieren von Lizenzen benutzt wird
Column | Type | Primary Key | Unique | NULL | Default | Description |
product_version_id | INT |
yes
|
yes
|
no
| | Identifiziert die Produkt-Version |
private_key | TEXT |
no
|
no
|
yes
| | |
public_key | TEXT |
no
|
no
|
yes
| | |
Table: mail_exchange
Back to Index
Diese Tabelle speichert den E-Mail-Austausch zu den Problemen.
Ein spezieller E-Mail Gateway wird fuer diese Funktionalitaet
benoetigt.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Eindeutige Kennung fuer eine E-Mail.
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde die Information im System gespeichert.
|
ticket_id | LONG |
no
|
no
|
no
| |
Auf welches Ticket bezieht sich diese Nachricht?
|
subject | VARCHAR(120) |
no
|
no
|
no
| '' |
Betreff einer Nachricht, die ausgetauscht wurde.
|
mail_from | EMAIL |
no
|
no
|
no
| |
Der Sender der Nachricht
|
recipient1 | EMAIL |
no
|
no
|
no
| |
Der erste Empfaenger
|
recipient2 | EMAIL |
no
|
no
|
yes
| |
Der zweite Empfaenger
|
recipient3 | EMAIL |
no
|
no
|
yes
| |
Der dritte Empfaenger
|
received_on | _DATE |
no
|
no
|
no
| |
Wann wurde die E-Mail empfangen?
|
sent_on | _DATE |
no
|
no
|
yes
| |
Wann wurde die E-Mail versendet?
|
data | BLOB |
no
|
no
|
yes
| |
Der Inhalt der Nachricht.
|
Table: mail_routing
Back to Index
Diese Tabelle beinhaltet Information, welche zur automatischen
Verteilung von Incoming-Mails im S.mon notwendig sind.
Aus dem Inhalt der Mail wird im S.mon automatisch ein Ticket angelegt.
Column | Type | Primary Key | Unique | NULL | Default | Description |
address | VARCHAR(64) |
yes
|
yes
|
no
| | Der User-Part der E-Mail Adresse |
product_id | LONG |
no
|
no
|
no
| | Die Kennung des Produkts, auf welches sich die E-Mail-Adresse bezieht |
contract_id | LONG |
no
|
no
|
no
| 0 |
Die Kennung des Vertrages, welcher dem per E-Mail verschickten Tickets
automatisch zugeordnet wird (Defaul-Wert entspricht dem Default-Vertrag).
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde dieser Eintrag erstellt?
|
created_by | USER |
no
|
no
|
no
| |
Von wem wurde dieser Eintrag gemacht?
|
Table: notification
Back to Index
Hier werden die Daten ueber die gewuenschten
Benachrichtigungen gespeichert.
Es wird gespeichert, bei welchen Ereignissen (Zustandsaenderung)
ein Benutzer eine E-Mail Benachrichtigung bekommen moechte.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Eine eindeutige Kennung fuer diese Definition.
|
user_id | USER |
no
|
no
|
no
| |
Kennung des Benutzers, der benachrichtigt werden soll.
|
product_id | LONG |
no
|
no
|
no
| |
Die Kennung des Produktes.
|
states | VARCHAR(10) |
no
|
no
|
no
| |
Die Zustaende, bei welchen der Benutzer
benachrichtigt sein soll.
|
priorities | VARCHAR(10) |
no
|
no
|
no
| '123456789' |
Die Prioritaeten, bei welchen der Benutzer
benachrichtigt sein soll (Default: Alle).
|
customer_id | LONG |
no
|
no
|
yes
| |
Wenn angegeben, spezifiziert zusaetzlich fuer Defects vom welchen
Kunden die Benachrichtigung erfolgen soll.
Bei Kundenbenutzer ist es immer gesetzt.
|
defect_id | LONG |
no
|
no
|
yes
| |
Wenn angegeben, grenzt die Benachrichtigung auf ein einzelnes
Problem ab.
|
own | _BOOL |
no
|
no
|
no
| 'n' |
Wenn auf TRUE gesetzt, so werden nur eigene Postings
beruecksichtigt
|
Table: partner
Back to Index
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| | |
name | VARCHAR(60) |
no
|
yes
|
no
| | |
description | VARCHAR(200) |
no
|
no
|
yes
| | |
enabled | BOOL |
no
|
no
|
no
| TRUE | |
Table: pm_user
Back to Index
Hier werden die Information ueber die Benutzer (sowohl
Kunden als auch Bearbeiter) gespeichert.
Column | Type | Primary Key | Unique | NULL | Default | Description |
login_name | USER |
yes
|
yes
|
no
| |
Name des Accounts. Mit dem Namen wird sich ein
Benutzer am System authentifizieren.
|
account_type | CHAR(1) |
no
|
no
|
no
| 'u' | Typ des Accounts: (u)ser oder (g)roup |
last_name | VARCHAR(35) |
no
|
no
|
no
| |
Nachname des Benutzers.
|
first_name | VARCHAR(35) |
no
|
no
|
no
| '' |
Vorname des Benutzers.
|
user_password | VARCHAR(32) |
no
|
no
|
no
| |
Das Passwort des Benutzers. Die Passwoerter
werden verschluesselt abgelegt. Es gibt zwei Arten der
Verschluesselung: eine sehr strenge und eine mit
einem bekannten Key. Bei der sehr strengen
Verschluesselung ist es nicht mehr moeglich, das
Passwort zu entschluesseln. Beim vergessen, kann
man das Passwort nur ruecksetzen. Bei einer
Verschluesselung mit einem bekannten Key,
kann das System jede Zeit das Passwort entschluesseln.
Diese Variante eignet sich gut fuer die Kunden. Wird
ein Passwort vergessen, so kann man ein E-Mail mit
dem Passwort an den Kunden automatisch verschicken.
|
strong_password | _BOOL |
no
|
no
|
no
| 'n' |
Gibt an, ob es sich um ein strenges Passwort handelt.
Default ist: nein.
|
email | EMAIL |
no
|
no
|
yes
| |
Die E-Mail Adresse des Benutzers.
|
notification_email | EMAIL |
no
|
no
|
yes
| |
Die E-Mail Adresse des Benutzers, die fuer
Benachrichtigungen zu verwenden ist.
|
phone | PHONE |
no
|
no
|
yes
| |
Die Telefonnummer des Benutzers.
|
fax | FAX |
no
|
no
|
yes
| |
Die Faxnummer des Benutzers.
|
title | VARCHAR(15) |
no
|
no
|
yes
| | Titel (Anrede) |
description | VARCHAR(200) |
no
|
no
|
yes
| | Eine kurze Beschreibung oder Kommentar
|
mobile | PHONE |
no
|
no
|
yes
| |
Die Mobilbox-Nummer.
|
room | VARCHAR(25) |
no
|
no
|
yes
| |
Zimmernummer
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde der Benutzer angelegt?
|
created_by | USER |
no
|
no
|
no
| |
Von wem wurde der Benutzer angelegt?
|
modified_on | _DATE |
no
|
no
|
yes
| |
Wann wurden die Daten des Benutzers zuletzt modifiziert?
|
modified_by | USER |
no
|
no
|
yes
| |
Von wem wurden die Daten des Benutzers zuletzt modifiziert?
|
last_logon_on | _DATE |
no
|
no
|
yes
| |
Wann hat sich der Benutzer zuletzt angemeldet?
|
last_logon_failure_on | _DATE |
no
|
no
|
yes
| |
Wann war der letzte fehlgeschlagene Anmeldeversuch?
|
is_disabled | _BOOL |
no
|
no
|
no
| 'n' |
Ist der Account gesperrt (z.B. wegen
mehr als 3 fehlgeschlagenen Anmeldeversuche)?
Wenn ein Account gesperrt ist, so wird das Anmelden
untersagt.
|
is_valid | _BOOL |
yes
|
yes
|
no
| 'y' |
Sollte ein Account nicht mehr benoetigt werden,
man will aber die Querverweise behalten, so
reicht es aus, das Account zu deaktivieren.
|
is_admin | _BOOL |
no
|
no
|
no
| 'n' |
Wenn auf true gesetzt, so handelt sich um einen
Administrator.
|
helpdesk_agent | _BOOL |
no
|
no
|
no
| 'n' | |
customer_id | LONG |
no
|
no
|
no
| -1 |
Wenn gesetzt, so handelt es sich um einen Kundenbenutzer.
|
customer | VARCHAR(20) |
no
|
no
|
yes
| |
Name des Kunden.
|
picture_url | URL |
no
|
no
|
yes
| |
URL fuer Benutzerphoto. Man kann die Photos im System speichern
oder es reicht auch aus ein Link anzugeben.
|
partner_id | LONG |
no
|
no
|
no
| -1 | |
Table: product
Back to Index
Beinhaltet alle Produkte (Projekte).
Ein Produkt kann aus mehreren Systemen und Komponenten
besteht. Zu einem Produkt kann man ein Team mit
den Bearbeitern definieren. Jedes Produkt wird
mit einer Access Control List geschuetzt.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Eindeutige Kennung fuer ein Produkt.
|
name | VARCHAR(40) |
no
|
yes
|
yes
| |
Name des Produktes.
|
description | VARCHAR(160) |
no
|
no
|
no
| |
Eine kurze Beschreibung des Produktes.
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde dies Produkt angelegt?
|
created_by | USER |
no
|
no
|
no
| |
Von wem wurde das Produkt angelegt?
|
modified_on | _DATE |
no
|
no
|
yes
| |
Wann wurde dies Produkt zuletzt modifiziert?
|
modified_by | USER |
no
|
no
|
yes
| |
Von wem wurde das Produkt zuletzt modifiziert?
|
product_url | URL |
no
|
no
|
yes
| |
URL fuer dies Produkt/Projekt.
|
email | VARCHAR(32) |
no
|
no
|
yes
| |
E-Mail um Bugs fuer das Produkt via Mail-Gateway zu melden.
Wenn ein Produkt eine E-Mail-Adresse besitzt, dann ist es
auch moeglich, Probleme fuer dies Produkt (Projekt) mit
einem Mail-Client zu verfassen.
|
check_system | _BOOL |
no
|
no
|
no
| 'n' |
Wenn auf TRUE gesetzt, dann wird beim Erzeugen
eines Defects geprueft, ob die angegebenen Parameter
fuer System und Komponente mit den konfigurierten
Werten uebereinstimmen.
|
check_customer | _BOOL |
no
|
no
|
no
| 'n' |
Wenn auf TRUE gesetzt, dann wird beim Erzeugen
eines Defects geprueft, ob die Customer-Reference
erlaubt ist. Siehe Tabelle 'customer_product'.
|
check_office | _BOOL |
no
|
no
|
no
| 'n' |
Wenn auf TRUE gesetzt, dann wird beim Erzeugen
eines Defects geprueft, ob die angegebene Office/Site fuer
den gewuenschten Kunden wirklich existiert.
|
check_release | _BOOL |
no
|
no
|
no
| 'n' | |
Table: product_license
Back to Index
Dies Tabelle speichert die Lizenzen
Column | Type | Primary Key | Unique | NULL | Default | Description |
serial | VARCHAR(36) |
yes
|
yes
|
no
| | Eindeutige Seriennummer für eine Lizenz |
created_on | _DATE |
no
|
no
|
no
| | Wann wurde dieser Datensatz angelegt |
created_by | USER |
no
|
no
|
no
| | Von wem wurde dieser Datensatz angelegt |
customer_id | LONG |
no
|
no
|
yes
| | Für welchen Kunden wurde die Lizenz erstellt |
product_version_id | INT |
no
|
no
|
no
| | Für welches Produkt und Produkt-Version gilt diese Lizenz |
expires | _DATE |
no
|
no
|
yes
| | Bis wann gilt diese Lizenz |
host | VARCHAR(255) |
no
|
no
|
no
| | Für welche Host-Maschine (MAC oder IP, ist Produkt abhängig) ist diese Lizenz beschränkt |
port | SHORT |
no
|
no
|
no
| 0 | Zusätzliche Port-Restriktion auf dem Host-Rechner (0: beliebige Portnummer, keine Restriktion) |
replaces | VARCHAR(36) |
no
|
no
|
yes
| | Verweis auf die alte Lizenz, welche durch diese ersetzt wurde |
Table: product_release
Back to Index
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| | |
product_id | LONG |
no
|
yes
|
no
| | |
name | VARCHAR(40) |
no
|
yes
|
no
| | |
planned_start_on | DATE |
no
|
no
|
no
| | |
planned_end_on | DATE |
no
|
no
|
no
| | |
start_on | DATE |
no
|
no
|
yes
| | |
end_on | DATE |
no
|
no
|
yes
| | |
Table: product_team
Back to Index
Hier wird gespeichert, welche Benutzer fuer
die Wartung eines Produktes zustaendig sind.
Bei Zuweisung eines Problems kann man schnell
einen Benutzer aus solch einer Liste auswaehlen.
Bitte beachten, dass diese Tabelle nichts mit
Zugriffsrechten zu tun hat. Es geht hier nur um
eine Vorauswahl von Benutzern, die fuer
Assignment in Frage kommen.
Column | Type | Primary Key | Unique | NULL | Default | Description |
product_id | LONG |
yes
|
yes
|
no
| |
Um welches Produkt handelt es sich?
|
user_id | USER |
yes
|
yes
|
no
| |
Welcher Benutzer kennt sich bei dem Produkt aus?
|
Table: product_version
Back to Index
Diese Tabelle speichert Informationen über Produktversionen
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | INT |
yes
|
yes
|
no
| | Fortlaufende Nummer zur Identifikation |
product_id | LONG |
no
|
no
|
no
| | Die Referenz auf das Produkt |
created_on | _DATE |
no
|
no
|
no
| | Wann wurde dieser Datensatz angelegt |
created_by | USER |
no
|
no
|
no
| | Von wem wurde dieser Datensatz angelegt |
modified_on | _DATE |
no
|
no
|
yes
| | Wann wurde dieser Datensatz zuletzt geändert |
modified_by | USER |
no
|
no
|
yes
| | Von wem wurde dieser datensatz zuletzt geändert |
version | VARCHAR(40) |
no
|
no
|
no
| | Ein Name für die Produkt-Version |
name | VARCHAR(40) |
no
|
no
|
no
| | Ein Name für das Produkt, welcher im Lizenzfile erscheint |
license_algorithm | SHORT |
no
|
no
|
no
| 1 | Aufzählung für License-Signatur-Algorithmus. 0: RSA mit SHA; 1: RSA mit MD5 |
show_disabled_features | BOOL |
no
|
no
|
no
| 0 | Soll ein Feature im Lizenfile erscheinen auch wenn es nicht freigeschaltet ist? |
Table: reporting
Back to Index
Diese Tabelle beinhaltet alle fuer einen Report
notwendigen Daten. Es handelt sich hier um automatische
Reporte, die von einem Administrator definiert werden
und von den Bearbeiter nicht veraendert werden duerfen.
Ein spezielles CronTab-System sorgt fuer die asynchronen
Aufrufe von Jobs die sich aus der Daten dieser Tabelle
ergeben. Es ist ein Eskalationsmechanismus mit der
Feingranulierung derzeit beschraenkt auf ein Tag.
Eine Erweiterung auf eine Stunde waere sinvoll und
auch unproblematisch, falls dies gewuenscht ist.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer einen Report.
|
subject | VARCHAR(120) |
no
|
no
|
no
| |
Ein Titel fuer den Report. Wird als Betreff (Subject)
in der Mail-Notification verwendet.
|
recipient | USER |
no
|
no
|
no
| | Wer bekommt den Report?
|
report_hours | INT |
no
|
no
|
no
| 6 |
Um wieviel Uhr soll der Report erzeugt sein (0 bis 23)?
Default Wert ist auf 6 gesetzt, d.h. um 6Uhr in der Frueh.
|
report_minutes | INT |
no
|
no
|
no
| 0 |
Zusaetzlich zur runden Uhrzeit kann man Minuten angeben (0..59)
|
schedule | INT |
no
|
no
|
no
| |
Scheduling fuer einen Report. Soll der Report taeglich,
woechentlich oder monatlich erstellt werden?
Der Wert 1 entspricht einem taeglichen Report,
2 - einem woechentlichen und 3 - einem monatlichen Report.
|
schedule_param | INT |
no
|
no
|
no
| 1 |
Ein Parameter fuer das Scheduling.
Bei taeglichen Reports wird der Wert ignoriert.
Fuer woechentliche Reports steht hier Wochentag (1: Montag, ..., 7: Sonntag).
Fuer monatliche Reports steht hier der Tag (1...31).
|
all_days | _BOOL |
no
|
no
|
no
| 'y' |
Wenn auf FALSE gesetzt, wird ein Report an einem Feiertag,
Samstag oder an einem Sonntag nicht erstellt.
Der Default Wert ist TRUE.
|
states | VARCHAR(10) |
no
|
no
|
no
| '' |
Die Liste mit Zustaenden, die bei dem Report in Frage kommen.
Der Default Wert ist ein Leerstring (eine leere Liste).
|
priorities | VARCHAR(10) |
no
|
no
|
no
| '' |
Die Liste mit Prioritaeten, die bei dem Report in Frage kommen.
Der Default Wert ist ein Leerstring.
|
product_id | LONG |
no
|
no
|
no
| -1 |
Wenn gesetzt, so werden bei dem Report nur Defects
fuer ein bestimmtes Produkt beruecksichtigt.
Der Default-Wert ist -1 (kein extra Produkt ausgewaehlt)
|
customer_id | LONG |
no
|
no
|
no
| -1 |
Wenn gesetzt, so werden bei dem Report nur Defects
von einen bestimmten Kunden beruecksichtigt.
|
expired | _BOOL |
no
|
no
|
no
| 'n' |
Wenn auf TRUE gesetzt, werden nur die abgelaufenen
Defects beruecksichtigt (ansonsten alle).
Der Default Wert ist FALSE (n).
|
engineer | USER |
no
|
no
|
yes
| |
Wenn gesetzt, so werden bei dem Report nur die
Defects beruecksichtigt, die dem bestimmten Benutzer
zugewiesen wurden.
|
Table: svn_repository
Back to Index
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| | |
product_id | LONG |
no
|
yes
|
no
| | |
name | VARCHAR(120) |
no
|
no
|
no
| | |
location | VARCHAR(120) |
no
|
yes
|
no
| | |
svn_user | VARCHAR(36) |
no
|
no
|
no
| | |
svn_password | VARCHAR(36) |
no
|
no
|
no
| | |
last_revision | LONG |
no
|
no
|
no
| -1 | |
last_sync_on | _DATE |
no
|
no
|
yes
| | |
Table: svn_revision
Back to Index
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| | |
ticket_id | LONG |
no
|
yes
|
no
| | |
repository_id | LONG |
no
|
yes
|
no
| | |
revision | LONG |
no
|
yes
|
no
| | |
revision_date | _DATE |
no
|
no
|
no
| | |
revision_author | VARCHAR(36) |
no
|
no
|
no
| | |
Table: system
Back to Index
Ein Produkt kann mehrere Systeme haben.
Column | Type | Primary Key | Unique | NULL | Default | Description |
product_id | LONG |
yes
|
yes
|
no
| |
Die Kennung fuer ein Produkt.
|
name | VARCHAR(40) |
yes
|
yes
|
no
| |
Name des Systems.
|
description | VARCHAR(160) |
no
|
no
|
no
| |
Eine kurze Beschreibung des Systems.
|
Table: ticket_description
Back to Index
Beinhaltet die Beschreibung des Tickets.
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| |
Unique Identifier fuer eine Beschreibung.
|
ticket_id | LONG |
no
|
no
|
no
| |
Verweis auf das Ticket zu welchem diese Beschreibung gehoert.
|
created_on | _DATE |
no
|
no
|
no
| |
Wann wurde diese Beschreibung hinzugefuegt?
|
created_by | USER |
no
|
no
|
no
| |
Von wem wurde diese Beschreibung hinzugefuegt?
|
description | TEXT |
no
|
no
|
no
| |
Der Inhalt der Beschreibung.
|
Table: user_acl
Back to Index
Access Control List. Hier werden die Rechte der Benutzer gespeichert.
In der Zukunft werden vielleicht auch Gruppen-Rechte eingefuehrt.
Ein Produkt hat immer nur ein ACL. Ein Benutzer darf in einem ACL nur ein einziges Mal vorkommen.
Derzeit gibt es fuer System-Verwaltung kein extra ACL.
Es gibt drei Meta-Benutzer die im ACL verwendet werden koennen:
anonym (Synonym fuer beliebigen Benutzer),
customer (Synonym fuer beliebigen Kunden-Benutzer)
und engineer (Synonym fuer beliebigen Bearbeiter).
Column | Type | Primary Key | Unique | NULL | Default | Description |
product_id | LONG |
yes
|
yes
|
no
| | Die Kennung des Produktes, welches durch dies ACL geschuetzt sein sollte. |
user_id | USER |
yes
|
yes
|
no
| | Die Kennung des Benutzers fuer welchen dieser Eintrag gilt |
account_type | CHAR(1) |
no
|
no
|
no
| 'u' | |
p_assign | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht die Defects an einen Bearbeiter zuzuweisen.
|
p_attach | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht Beilagen an die Defects anzuhaengen. Der Submitter und Bearbeiter haben dies Recht implizit.
|
p_close | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht Probleme zu schliessen. |
p_delete | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht Defects zu loeschen. |
p_edit | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht Probleme zu editieren. |
p_forward | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht Probleme weiterzuleiten. |
p_history | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht History der Probleme zu sehen. |
p_memo | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht Memos und Kommentare zu erzeugen. Der Bearbeiter hat dies Recht implizit. |
p_read | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht die Defects zu lesen.
Der Submitter und der Bearbeiter bekommen das Recht auf die entsprechended Defects implizit. |
p_submit | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht ein Defect zu melden. |
p_verify | CHAR(1) |
no
|
no
|
no
| 'n' | Das Recht die Loesung der Probleme zu verifizieren. |
p_next_level | CHAR(1) |
no
|
no
|
no
| 'n' | Das notwendige Recht, um ein Ticket zum nächsten Level weiterzuleiten. |
Table: user_picture
Back to Index
Speichert Photos der Benutzer.
Column | Type | Primary Key | Unique | NULL | Default | Description |
user_id | USER |
yes
|
yes
|
no
| |
Zu welchem Benutzer gehoert das Photo?
|
content_type | VARCHAR(10) |
no
|
no
|
no
| |
Handelt sich um GIF- oder JPEG-Bild?
|
picture | BLOB |
no
|
no
|
yes
| |
Das Photo des Benutzers.
|
Table: user_preference
Back to Index
Hier werden die Benutzereinstellungen gespeichert.
Column | Type | Primary Key | Unique | NULL | Default | Description |
user_id | USER |
yes
|
yes
|
no
| |
Kennung des Benutzers, fuer welchen diese Einstellungen
gelten sollen.
|
ui_lang | VARCHAR(6) |
no
|
no
|
no
| 'en' |
Gewuenschte GUI Sprache. Unterstuetzt werden derzeit folgende
Sprachen: Englisch (Default), Deutsch, Polnisch und Tschechisch.
|
after_login | VARCHAR(20) |
no
|
no
|
no
| '' |
Name des Kommandos, welches nach Anmeldung
fuer diesen Benutzer ausgefuehrt werden sollte
(z.B. 'admin' fuer einen Administrator oder
'verify' fuer einen Kundenbenutzer, der die
Bugs verifiziert). Default-Wert ist
leer und man gelangt zum Hauptmenue.
|
sort_order | CHAR(1) |
no
|
no
|
no
| 'a' |
Sorting Order (ab- oder aufsteigende Sortierung).
Zulaessige Werte sind 'a' fuer 'ascending'
oder 'd' fuer 'descending'.
|
sort_by | CHAR(1) |
no
|
no
|
no
| '1' |
Ein Code wonach die Defects sortiert werden sollen.
Der Default-Wert entspricht einer Sortierung nach
Defect-Identifier. Hier sind die zulassigen Codes:
1 (Defect Number), 2 (State), 3 (Priority),
4 (Title), 5 (Customer), 6 (Date), 7 (Engineer),
8 (Product)
|
def_product | LONG |
no
|
no
|
no
| -1 |
Default-Produkt, wo ein Bearbeiter/Kundenbenutzer Probleme melden will.
|
def_customer | LONG |
no
|
no
|
no
| -1 |
Default-Customer, fuer welchen ein Bearbeiter Probleme melden will.
Fuer einen Kunden-Benutzer ist diese Einstellung nicht relevant und
wird ignoriert.
|
contract_id | LONG |
no
|
no
|
no
| -1 |
Default-Vertrag zur Meldung von Problemen.
|
Table: user_query
Back to Index
Column | Type | Primary Key | Unique | NULL | Default | Description |
id | LONG |
yes
|
yes
|
no
| | |
user_id | USER |
no
|
no
|
no
| | |
name | VARCHAR(255) |
no
|
no
|
no
| | |
data | TEXT |
no
|
no
|
no
| | |
Defined Aliases
Alias | Type |
_BOOL | CHAR(1) |
_DATE | TIMESTAMP |
EMAIL | VARCHAR(128) |
FAX | VARCHAR(24) |
PERM | INT |
PHONE | VARCHAR(24) |
PRIO | SHORT |
PRIO_NAME | CHAR(10) |
STATE | CHAR(1) |
URL | VARCHAR(128) |
USER | VARCHAR(64) |
Predefined SQL Statements
INSERT INTO last_id (name, last_id) VALUES('defect', 0)
INSERT INTO last_id (name, last_id) VALUES('defect_memo', 0)
INSERT INTO last_id (name, last_id) VALUES('defect_action', 0)
INSERT INTO last_id (name, last_id) VALUES('defect_attachment', 0)
INSERT INTO last_id (name, last_id) VALUES('customer', 0)
INSERT INTO last_id (name, last_id) VALUES('product', 0)
INSERT INTO last_id (name, last_id) VALUES('notification', 0)
INSERT INTO last_id (name, last_id) VALUES('reporting', 0)
INSERT INTO last_id (name, last_id) VALUES('hardware_change', 0)
INSERT INTO last_id (name, last_id) VALUES('journaling', 0)
INSERT INTO last_id (name, last_id) VALUES('mail_exchange', 0)
INSERT INTO last_id (name, last_id) VALUES('contract', 0)
INSERT INTO last_id (name, last_id) VALUES('product_version', 0)
INSERT INTO last_id (name, last_id) VALUES('license_feature_name', 0)
INSERT INTO last_id (name, last_id) VALUES('ticket_description', 0)
INSERT INTO last_id (name, last_id) VALUES('user_query', 0)
INSERT INTO last_id (name, last_id) VALUES('svn_repository', 0)
INSERT INTO last_id (name, last_id) VALUES('svn_revision', 0)
INSERT INTO last_id (name, last_id) VALUES('product_release', 0)
INSERT INTO last_id (name, last_id) VALUES('partner', 0)
INSERT INTO pm_user (login_name, user_password, last_name, created_on, created_by, is_valid, customer_id, account_type)
VALUES('system', '', 'System', $CURRENT_TIMESTAMP, 'system', 'n', 0, 'u')
INSERT INTO pm_user (login_name, user_password, last_name, created_on, created_by, is_valid, customer_id, account_type)
VALUES('anonym', '', 'Anonymous', $CURRENT_TIMESTAMP, 'system', 'n', 0, 'u');
INSERT INTO pm_user (login_name, user_password, last_name, created_on, created_by, is_valid, customer_id, account_type)
VALUES('engineer', '', 'Engineer', $CURRENT_TIMESTAMP, 'system', 'n', 0, 'g');
INSERT INTO pm_user (login_name, user_password, last_name, created_on, created_by, is_valid, customer_id, account_type)
VALUES('customer', '', 'Customer', $CURRENT_TIMESTAMP, 'system', 'n', 0, 'g');
INSERT INTO pm_user (login_name, user_password, last_name, created_on, created_by, is_valid, customer_id, account_type)
VALUES('productteam', '', 'Member of product team', $CURRENT_TIMESTAMP, 'system', 'n', 0, 'g');
INSERT INTO pm_user (login_name, user_password, last_name, created_on, created_by, is_valid, customer_id, account_type)
VALUES('partner', '', 'Partner Account', $CURRENT_TIMESTAMP, 'system', 'n', 0, 'g');
INSERT INTO pm_user (login_name, last_name, user_password, strong_password, is_admin, created_on, created_by, customer_id, account_type)
VALUES('admin', 'Administrator', MD5('1CBA1142'), 'y', 'y', now(), 'system', -1, 'u');
INSERT INTO contract_priority (contract_id, priority, name, description, fix_hours) VALUES(0, 1, 'E1', 'Emergency (1 day)', 24)
INSERT INTO contract_priority (contract_id, priority, name, description, fix_hours) VALUES(0, 2, 'E2', 'Emergency (7 days)', 168)
INSERT INTO contract_priority (contract_id, priority, name, description, fix_hours) VALUES(0, 3, 'S1', 'Severe (28 days)', 672)
INSERT INTO contract_priority (contract_id, priority, name, description, fix_hours) VALUES(0, 4, 'S2', 'Severe (~6 months)', 4392)
INSERT INTO contract_priority (contract_id, priority, name, description, fix_hours) VALUES(0, 5, 'NS', 'Non Severe (1 year)', 8760)
INSERT INTO contract (id, customer_id, name, description, valid_from, valid_until, created_on, created_by)
VALUES(0, -1, 'Default', 'Default Contract', $CURRENT_TIMESTAMP, {ts '2020-12-31 23:59:59'}, $CURRENT_TIMESTAMP, 'system')
Data Types
-
CHAR
- Fixed length character data
-
VARCHAR
- Variable length character data
-
BOOL
- Represents a boolean value TRUE or FALSE
-
BYTE
- One byte signed number (-128 ... 127)
-
SHORT
- Two bytes signed number (-32.768 ... 32.767)
-
INT
- Four bytes signed number (-2.147.483.648 ... 2.147.483.647)
-
LONG
- Eight bytes signed number (-9.223.372.036.854.775.808 ... 9.223.372.036.854.775.807)
-
FLOAT
- Floating point number with single precision
-
DOUBLE
- Floating point number with double precision
-
DECIMAL
- A decimal number with a desired precision (maximum number of all ciphers)
-
DATE
- Stores a date (year, month and day)
-
TIME
- Stores a time (hours, minutes and seconds)
-
TIMESTAMP
- Stores date and time (year, month, day, hours, minutes and seconds)
-
BLOB
- Binary Large Object Base
-
TEXT
- Long text data
Functions
-
CURRENT_DATE
- Returns the current date (year, month, day)
-
CURRENT_TIME
- Returns the current time (hours, minutes and seconds)
-
CURRENT_TIMESTAMP
- Returns the current timestamp (year, month, day, hours, minutes and seconds)
Automatically Created by DB Utility
Copyright © 2002-2010 by Grzegorz Swiatek