Performance Whitepaper - combit GmbH
Performance Whitepaper - combit GmbH Performance Whitepaper - combit GmbH
combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Performance Whitepaper Copyright combit GmbH, Alle Rechte vorbehalten.
- Seite 2 und 3: Produkt: combit Relationship Manage
- Seite 4 und 5: Produkt: combit Relationship Manage
- Seite 6 und 7: Produkt: combit Relationship Manage
- Seite 8 und 9: Produkt: combit Relationship Manage
- Seite 10 und 11: Produkt: combit Relationship Manage
<strong>combit</strong> <strong>GmbH</strong><br />
Untere Laube 30<br />
78462 Konstanz<br />
<strong>Whitepaper</strong><br />
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong><br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 2 -<br />
Inhalt<br />
Einleitung 4<br />
Client- und serverseitige Einstellungen 4<br />
Netzwerk-Anbieterreihenfolge 4<br />
Deaktivieren von IPv6 4<br />
Datenbankverbindung über die Server-IP-Adresse 5<br />
TCP/IP vs. Named Pipes 6<br />
TCP Auto-Tuning-Protokoll/RSS 7<br />
Firewall 7<br />
Virenscanner 8<br />
Transaktionsprotokoll/Wartungspläne 8<br />
Treiber 8<br />
Hardware 8<br />
Solution-seitige Einstellungen 8<br />
Indizes 8<br />
Primärschlüssel 9<br />
Fremdschlüssel 9<br />
Relationen 9<br />
Eingabemaske/Übersichtsliste 10<br />
Scripting 11<br />
Häufige Filter 11<br />
Checkliste 12<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 3 -<br />
Einleitung<br />
Insbesondere bei der u.a. IT-Infrastruktur kann es zu erheblichen <strong>Performance</strong>-Einbußen bei der Arbeit mit dem <strong>combit</strong><br />
Relationship Manager kommen. Dieses <strong>Whitepaper</strong> soll Ihnen helfen die Systemeinstellungen zu überprüfen, ggf. zu<br />
korrigieren oder zu ändern und somit eine erste eigene Problemanalyse/-behebung durchführen zu können.<br />
Windows Vista/Windows 7 Clients<br />
Windows Server 2003<br />
Firewall (client-/serverseitig)<br />
Anti-Virenscanner (client-/serverseitig)<br />
Client- und serverseitige Einstellungen<br />
Netzwerk-Anbieterreihenfolge<br />
In der Auswertungsreihenfolge der Netzwerkanbieter der Netzwerkkarte sollte das "Microsoft Windows-Netzwerk" als<br />
Erstes ausgewertet werden. Den Einstellungsdialog erreicht man über:<br />
Netzwerk- und Freigabecenter > Adaptereinstellungen ändern > Erweitert (falls Menüleiste ausgeblendet, "Alt"-Taste<br />
betätigen) > Erweiterte Einstellungen > Anbieterreihenfolge<br />
Deaktivieren von IPv6<br />
Bei der Kommunikation zwischen "älteren" Windows-Servern und "neueren" Windows-Clients kann es zu Engpässen bzgl.<br />
des verwendeten IP-Protokolls kommen. Das IPv6-Protokoll sollte daher deaktiviert werden. Dies muss in den<br />
Einstellungen der LAN-Verbindungen erfolgen:<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 4 -<br />
Datenbankverbindung über die Server-IP-Adresse<br />
Bei dieser Systemkonstellation kann es auch zu Problemen bei der DNS-Auflösung kommen. Folglich kann die<br />
Datenbankanbindung im cRM über den Servernamen zu Problemen führen. Abhilfe verschafft hier die Verwendung der<br />
Server-IP anstatt des Servernamen. Diese Änderung kann über die cRM Projekt-Menüleiste und die Menüpunkte<br />
"Konfigurieren > Datenbank > Datenbankverbindung" vorgenommen werden:<br />
TCP/IP vs. Named Pipes<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 5 -<br />
Die Verbindung bzw. die Kommunikation der Clients mit dem SQL-Server erfolgt über ein einziges Protokoll. Hierbei kann<br />
es ebenfalls zu Verzögerungen kommen, wenn der Server einem Protokoll lauscht, welches der Client jedoch erst in<br />
Erfahrung bringen muss. Hier lässt sich ebenfalls die Auswertungsreihenfolge ändern und das verwendete Protokoll somit<br />
priorisieren. In diesen Dialog gelangen Sie folgendermaßen:<br />
Client (ohne SQL-Tools)<br />
"Start > Alle Programme > Verwaltung > Computerverwaltung > Dienste und Anwendungen > SQL Server-<br />
Konfigurations-Manager > SQL Native Client (10.0)-Konfiguration > Clientprotokolle"<br />
Server/Client mit SQL-Tools<br />
"Start > Alle Programme > MS SQL Server 2008 (R2) > Konfigurationstools > SQL-Server-Konfigurations-Manager > SQL<br />
Native Client (10.0)-Konfiguration > Clientprotokolle"<br />
Zu beachten sind die folgenden Hinweise von Microsoft:<br />
TCP/IP<br />
TCP/IP ist ein Protokoll, das im Internet häufig verwendet wird. Es kommuniziert über untereinander verbundene Computernetzwerke<br />
mit unterschiedlichen Hardwarearchitekturen und verschiedenen Betriebssystemen. TCP/IP schließt Standards zum Weiterleiten von<br />
Netzwerkverkehr ein und bietet erweiterte Sicherheitsfunktionen. Es ist das heute in der Geschäftswelt am häufigsten verwendete<br />
Protokoll. Das Konfigurieren des Computers für die Verwendung von TCP/IP kann ein komplexer Vorgang sein, allerdings sind die<br />
meisten Netzwerkcomputer bereits ordnungsgemäß konfiguriert. Weitere Informationen zum Konfigurieren der TCP/IP-Einstellungen,<br />
die nicht im SQL Server-Konfigurations-Manager verfügbar sind, finden Sie in der Microsoft Windows-Dokumentation.<br />
Named Pipes<br />
Named Pipes ist ein Protokoll, das für lokale Netzwerke entwickelt wurde. Ein Teil des Arbeitsspeichers wird von einem Vorgang zum<br />
Weiterleiten von Informationen an einen anderen Vorgang verwendet, sodass die Ausgabe des einen Vorgangs der Eingabe des<br />
anderen entspricht. Der zweite Prozess kann ein lokaler (auf demselben Computer wie der erste) oder ein Remoteprozess (auf einem<br />
Computer im Netzwerk) sein.<br />
Named Pipes im Vergleich zu TCP/IP-Sockets<br />
In einer schnellen LAN-Umgebung (Local Area Network) sind TCP/IP-Sockets (Transmission Control Protocol/Internet Protocol) und<br />
Named Pipes-Clients hinsichtlich der Leistung vergleichbar. Der Leistungsunterschied zwischen TCP/IP-Sockets und Named Pipes-Clients<br />
wird jedoch in langsameren Netzwerken, wie z. B. WANs oder Einwählverbindungen, deutlich. Ursache hierfür sind die Unterschiede in<br />
der prozessübergreifenden Kommunikation (Interprocess Communication, IPC) zwischen Peers.<br />
Für Named Pipes ist die Netzwerkkommunikation normalerweise überwiegend interaktiv. Ein Peer sendet keine Daten, bevor ein anderer<br />
Peer sie mithilfe eines Lesebefehls anfordert. Zu einem Netzwerklesevorgang gehört normalerweise vor Beginn des Lesens der Daten<br />
das kurze Einsehen zahlreicher Named Pipes-Nachrichten. Dies kann in einem langsamen Netzwerk sehr teuer sein und<br />
übermäßigen Netzwerkverkehr verursachen, was sich wiederum auf andere Netzwerkclients auswirkt.<br />
Darüber hinaus sollte geklärt werden, ob die Kommunikation über lokale Pipes oder Netzwerkpipes stattfindet. Wenn die<br />
Serveranwendung lokal auf dem Computer mit einer Instanz von SQL Server ausgeführt wird, bietet sich das Verwenden des lokalen<br />
Named Pipes-Protokolls an. Lokale Named Pipes-Protokolle werden im Kernelmodus ausgeführt und sind sehr schnell.<br />
Für TCP/IP-Sockets sind Datenübertragungen geradliniger und mit weniger Verwaltungsaufwand verbunden. Datenübertragungen<br />
können auch von Mechanismen zur TCP/IP-Socketleistungserweiterung, wie beispielsweise Windowing, verzögerten Bestätigungen usw.<br />
profitieren. Dies kann in einem langsamen Netzwerk sehr hilfreich sein. Abhängig vom Anwendungstyp können diese<br />
Leistungsunterschiede sehr deutlich sein.<br />
TCP/IP-Sockets unterstützen zudem eine Backlogwarteschlange. Dadurch kann im Vergleich zu Named Pipes, die aufgrund von<br />
ausgelasteten Pipes zu Fehlern beim Verbindungsversuch mit SQL Server führen können, ein begrenzter Glättungseffekt erreicht<br />
werden.<br />
Im Allgemeinen wird TCP/IP in einem langsamen LAN, WAN oder DFÜ-Netzwerk bevorzugt. Wenn die<br />
Netzwerkgeschwindigkeit keine Rolle spielt, stellen Named Pipes hingegen häufig die bessere Wahl dar, da sie mehr Funktionalität,<br />
größere Benutzerfreundlichkeit und mehr Konfigurationsoptionen bieten.<br />
Aktivieren des Protokolls<br />
Das Protokoll muss sowohl auf dem Client als auch dem Server aktiviert sein. Der Server kann gleichzeitig auf alle aktivierten<br />
Protokolle auf Anforderungen lauschen. Clientcomputer können ein Protokoll auswählen oder das Verwenden der Protokolle in der<br />
Reihenfolge versuchen, wie sie im SQL Server-Konfigurations-Manager angegeben sind.<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 6 -<br />
[Microsoft, http://technet.microsoft.com/de-de/library/ms187892.aspx]<br />
TCP Auto-Tuning-Protokoll/RSS<br />
Mit dem Betriebssystem Windows Vista hat Microsoft das sogenannte "TCP Auto-Tuning-Protokoll"<br />
eingeführt. Dieses Protokoll handelt die Fenstergröße für die zwischen Server und Client auszutauschenden<br />
Pakete aus, d.h. der Netzwerk-Verkehr wird durch dieses Protokoll ständig überwacht und wirkt sich somit<br />
auch auf die Geschwindigkeit z.B. beim Löschen, Kopieren oder Verschieben von Dateien im Netzwerk aus.<br />
Dieses Protokoll lässt sich über die Kommandozeile deaktivieren. Diese muss hierfür unbedingt "Als<br />
Administrator" ausgeführt werden. Desweiteren empfiehlt es sich, die RSS-Funktionalität zu deaktivieren<br />
(Receive Side Scaling), da diese ebenfalls einen Falschenhals im Zusammenspiel von Multi-Core-Prozessoren<br />
und Single-CPU-Services bildet. Der Befehl zur Deaktivierung lautet wie folgt:<br />
netsh interface tcp set global autotuninglevel=disabled<br />
netsh interface tcp set global rss=disabled<br />
Firewall<br />
Die Microsoft Windows Firewall verhindert nicht autorisierte Zugriffe auf den Computer. Dies kann dazu<br />
führen, dass möglicherweise auch Verbindungsversuche von cRM Clients auf die auf diesem Computer<br />
laufende Microsoft SQL Server Instanz blockiert werden. Der Effekt kann eine lange Wartezeit oder sogar<br />
eine "Timeout"-Fehlermeldung beim Starten des cRM sein.<br />
Der erste nachfolgende Knowledge Base-Artikel von Microsoft beschreibt, wie bei der Firewall des Windows<br />
Server 2008 die für den Microsoft SQL Server notwendigen Verbindungen geöffnet/eingestellt werden.<br />
Der zweite Artikel beschreibt allgemein die für den Microsoft SQL Server 2008 benötigten Ports und die<br />
vorzunehmenden Einstellungen für unterschiedliche Microsoft Windows Systeme.<br />
http://support.microsoft.com/kb/968872<br />
http://msdn.microsoft.com/en-us/library/cc646023.aspx<br />
Virenscanner<br />
Insbesondere beim Programmstart aber auch beim Verwenden von Script-Dateien (ggf. hinter Schaltflächen<br />
der Eingabemaske verborgen) können aktive Virenscanner zu einem Leistungsverlust führen, da jeder<br />
Dateizugriff geprüft wird. Erfahrungen aus der Praxis zeigen, dass es oftmals ausreichend ist, wenn die cRM-<br />
Arbeits- und Installationsverzeichnisse von einem permanenten Scan des Virenscanner ausgeschlossen<br />
werden. Dies kann sowohl auf dem Client als auch auf dem Server der Fall sein.<br />
Transaktionsprotokoll/Wartungspläne<br />
In einem Transaktionsprotokoll werden die Details aller Änderungen an der SQL Server-Datenbank<br />
gespeichert. Das Transaktionsprotokoll der Datenbank sollte nicht unerwartet groß sein bzw. es sollte ein<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 7 -<br />
entsprechender Wartungsplan für die Verkleinerung der Datenbank eingerichtet sein (Transaktionsprotokoll<br />
wird ebenfalls bei einer entsprechend eingerichteten Datenbanksicherung verkleinert).<br />
Weiterführende Informationen dazu finden Sie in der Microsoft Knowledgebase:<br />
http://support.microsoft.com/?kbid=873235<br />
Bitte beachten: Für Wartungspläne sind SQL Server Agent und SSIS erforderlich, die von SQL Server<br />
Express nicht unterstützt werden. Hier bietet sich ein SQL-Script + sqlcmd.exe und ein geplanter Task an.<br />
Die Vorgehensweise ist z.B. hier beschrieben: http://www.mssqltips.com/tip.asp?tip=1174<br />
Treiber<br />
Achten Sie darauf, dass die verwendeten Treiber für die Netzwerk- und Grafikkarte aktuell und für das<br />
Betriebssystem freigegeben sind.<br />
Hardware<br />
Achten Sie darauf, dass Server und Client die Mindestvoraussetzungen für den Einsatz des cRM erfüllen.<br />
Weitere Informationen dazu befinden sich im cRM-Handbuch.<br />
Überprüfen Sie, ob Ihr Server genügend Arbeitsspeicher und einen ausreichend schnellen Prozessor hat. Der<br />
Einsatz von RAID Systemen bzw. Multiprozessor Servern kann ebenfalls die Arbeitsgeschwindigkeit erhöhen.<br />
Solution-seitige Einstellungen<br />
Indizes<br />
Ein Index enthält Schlüssel, die aus einer oder mehreren Spalten in der Tabelle oder Sicht erstellt werden.<br />
Durch das Erstellen gut durchdachter Indizes können Sie die Leistung von Datenbankabfragen und<br />
Anwendungen erheblich steigern. Zum Erstellen eines Index klicken Sie im Objekt-Explorer im MS SQL Server<br />
mit der rechten Maustaste auf den Ordner "Indizes" unterhalb einer Tabelle, und wählen Sie dann im<br />
Kontextmenü "Neuer Index" aus. Alternativ erstellen Sie eine Sortierung im cRM.<br />
Verwenden Sie explizite Indizes Ihres Datenbanksystems (nicht zu verwechseln mit den Sortierkriterien im<br />
cRM!) für folgende Spalten: die Primärschlüsselspalte, wichtige Spalten nach denen immer wieder sortiert<br />
wird (erledigt der cRM nur unter MS SQL Server automatisch!) und in denen häufig gesucht oder gefiltert<br />
wird sowie für alle Fremdschlüsselspalten, denn über diese werden Relationen aufgelöst. Es handelt sich<br />
dabei um Spalten, die IDs auf fremde Tabellen enthalten, wie bspw. in Verknüpfungsansichten bei n:m<br />
Relationen und in 1:n Ansichten.<br />
Primärschlüssel<br />
Das Primärschlüsselfeld der Datenbank sollte als cRM interner Feldtyp "Datensatz-ID" gekennzeichnet sein.<br />
Dies hat zur Folge, dass automatisch ein Index auf dieses Feld angelegt wird. Ansonsten gilt: Verwenden Sie<br />
für das Primärschlüsselfeld zur Optimierung der Arbeitsgeschwindigkeit explizite Indizes Ihres<br />
Datenbanksystems.<br />
Fremdschlüssel<br />
Auf Fremdschlüsselspalten sollten unbedingt Indizes aufgebaut werden. Über diese Spalten werden<br />
Relationen aufgelöst. Es handelt sich hierbei um Spalten, die IDs auf fremde Tabellen enthalten, wie bspw.<br />
in Verknüpfungsansichten bei n:m-Relationen und in 1:n Ansichten.<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 8 -<br />
Ein Beispiel hierfür wäre in einer Tabelle "Contacts" die Spalte "CompanyID", welche neben dem<br />
Primärschlüsselfeld "ContactID", die Relation zur "Company" herstellt.<br />
Relationen<br />
Überprüfen Sie alle Relationen auf Ihre tatsächliche Notwendigkeit, da der cRM diese Relationen überall<br />
rekursiv auflöst und somit die Arbeitsgeschwindigkeit auch maßgeblich von ihnen abhängt. Unnötige<br />
Relationen sollten deshalb entfernt werden, dies gilt bspw. für nicht benötigte 1:1 "Rückrelationen" von 1:n<br />
verknüpften Ansichten. Ein Beispiel hierfür wäre eine Darstellung von Daten von Firmen und Kontakten<br />
(Ansprechpartner) innerhalb einer Ansicht.<br />
Eine Auflistung aller Ansichten mit Anzahl der 1:1 Relationen finden Sie im Support-Dialog des cRM. Diesen<br />
Dialog können Sie über "? > Über... > Support Informationen" aufrufen.<br />
Eingabemaske/Übersichtsliste<br />
Versuchen Sie die Anzahl der Felder pro Datenbank-Tabelle niedrig zu halten. 75 Felder pro Tabelle sollten<br />
hier als Maximal-Richtwert verwendet werden.<br />
Jedes auf der aktuellen Eingabemaskenseite platzierte 1:1 Feld verursacht zusätzliche Datenbankabfragen,<br />
welche Bandbreite und <strong>Performance</strong> in Anspruch nehmen. Noch deutlicher wird die Auswirkung bei einer<br />
Verwendung als Spalte in Übersichtslisten und Containern, da dann diese Abfragen nicht nur für den<br />
aktuellen Datensatz sondern für alle darin dargestellten Datensätze bei jeder Fensteraktualisierung neu<br />
durchgeführt werden.<br />
Ein besonderes Augenmerk sollten Sie auf berechnete Felder und auf 1:1-Relationen auf Datenbanksichten<br />
haben, welche Berechnungen (möglichweise sogar über einen Verbindungsserver auf einem anderen<br />
Datenbankserver) durchführen. Hier können sich je nach Server-Leistung und wachsender Datenmenge<br />
deutliche Auswirkungen auf die <strong>Performance</strong> einstellen. Insbesondere bei Verbindungsservern kann sich eine<br />
<strong>Performance</strong>einbuße allein bereits durch das Anlegen einer derartigen 1:1-Relation bemerkbar machen, also<br />
auch wenn deren Feld selbst nicht in Übersichtsliste, Container oder Eingabemaske angezeigt werden.<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 9 -<br />
Dies wirkt sich beim Öffnen der Ansicht aber insbesondere beim Blättern durch die Datensätze sowie beim<br />
Umschalten der Eingabemaskenseite aus. Berücksichtigen Sie dies daher, wenn Sie viele solcher 1:1 Felder<br />
vor allem aus unterschiedlichen Relationen platzieren möchten.<br />
Blenden Sie in den Listenansichten (Containern) nicht benötigte Spalten komplett aus. In der Übersichtsliste<br />
ist dies vor allem für Dateiverweise zu empfehlen, da ansonsten beim Aufbau der Listenansicht jeder<br />
einzelne Verweis auf Verfügbarkeit geprüft wird.<br />
Verwenden Sie möglichst kurze Spaltentitel in den Listenansichten (Containern). Bei Relationen verwendet<br />
der cRM in der Grundeinstellung lange Namen wie z.B. FirmenID.Firmen.ID.Firma. Diese lassen sich über das<br />
Kontextmenü > Konfiguration > Spaltentitel im Nachhinein ändern.<br />
Scripting<br />
In Scripten sollte nicht mit den Methoden "CurrentRecord" bzw. "CurrentRecordBuffered" gearbeitet werden.<br />
Stattdessen empfiehlt sich die Verwendung von "CurrentRecordSynchronized". Da bei dieser Methode das<br />
komplette Puffern von Feldinhalten entfällt, ist dies die empfohlene Methode, um auf Feldinhalte von<br />
Datensätzen zuzugreifen. Desweiteren sollten Scripte nicht anhand der Methode "RecCount" prüfen, ob ein<br />
Filter ein Ergebnis hat, sondern mit dem Rückgabewert des ersten "MoveNext" nach Filteranwendung<br />
arbeiten. Im Anhang der Programmierer-Referenz (SDK-Dokumentation) befindet sich ein Beispiel<br />
diesbezüglich.<br />
Häufige Filter<br />
Wenn häufig mit Filtern gearbeitet wird, dann sollten die verwendeten Filter nicht auf Feldern vom cRM<br />
internen Feldtyp "Zeichen lang" (phys.: text, ntext, varchar(max), nvarchar(max)) basieren. Dies führt bei<br />
steigender Datensatz-Anzahl zu einer Verlangsamung der Filter-Ausführung. Die Informationen, nach<br />
welchen gesucht wird, sollten daher konzeptionell besser in einem anderen Feld(-typ) – ggf. zusätzlich –<br />
hinterlegt werden.<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 10 -<br />
Checkliste<br />
Kapitel Geprüft am von<br />
Netzwerk-Anbieterreihenfolge<br />
Bemerkung:<br />
IPv6 deaktiviert<br />
Bemerkung:<br />
Datenbankverbindung<br />
Bemerkung:<br />
TCP/IP – Named Pipes<br />
Bemerkung:<br />
TCP Auto-Tuning-Protokoll/RSS<br />
Bemerkung:<br />
Firewall<br />
Bemerkung:<br />
Virenscanner<br />
Bemerkung:<br />
Transaktionsprotokoll/Wartungsplan<br />
Bemerkung:<br />
Treiber<br />
Bemerkung:<br />
Hardware<br />
Bemerkung:<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.
Produkt: <strong>combit</strong> Relationship Manager<br />
<strong>Performance</strong> <strong>Whitepaper</strong> - 11 -<br />
Kapitel Geprüft am von<br />
Indizes<br />
Bemerkung:<br />
Primärschlüssel<br />
Bemerkung:<br />
Fremdschlüssel<br />
Bemerkung:<br />
Relationen<br />
Bemerkung:<br />
Eingabemaske/Übersichtsliste<br />
Bemerkung:<br />
Scripting<br />
Bemerkung:<br />
Häufige Filter<br />
Bemerkung:<br />
Hinweis: <strong>combit</strong> macht keine Angaben zu einer bestimmten Eignung obiger Informationen. Irrtümer und Fehler bleiben ausdrücklich<br />
vorbehalten, die Angaben erfolgen ohne Gewähr und enthalten keine Zusicherung. Die Informationen können z.T. auch ein Versuch<br />
sein, Ihnen bei einer Aufgabenstellung zu helfen, selbst wenn das Produkt eigentlich nicht für diesen speziellen Zweck vorgesehen<br />
wurde.<br />
Copyright <strong>combit</strong> <strong>GmbH</strong>, Alle Rechte vorbehalten.