Sales Intelligense

Mit Sales Intelligence by COMPRiS identifizieren Sie Kunden- und Partnerpotenziale, die Sie bislang nicht kannten und machen diese fĂŒr Ihre VertriebsaktivitĂ€ten zugĂ€nglich.

Eine Kombination aus Analytics-, Big-Data- und Machine-Learning-Software ermöglicht es Ihnen, innerhalb kĂŒrzester Zeit neue, unbearbeitete Segmente zu erschließen und gleichzeitig die DatenqualitĂ€t Ihrer bestehenden Kunden zu verbessern.

intelligente Adressdarstellung in AFS-Manager Formularen

Die Speicherung der zu einem Vorgang (Rechnung, Lieferschein, etc.) hat sich im AFS-Manager im Laufe der Zeit geĂ€ndert und weiterentwickelt. Leider hat es AFS versĂ€umt, mit einer neuen Version die bestehenden Daten zu konvertieren, sondern ĂŒberlĂ€sst dies dem Benutzer. VerstĂ€ndlicherweise existieren nun in fast jeder Datenbank die unterschiedlichsten Datenformate.

Problematisch wird dies, wenn die Adresse weiter verwertet werden soll, z.B. um eine Rechnung oder Lieferschein zu drucken, oder die Adressdaten an einen Paketdienstleisteister zu ĂŒbergeben (Postmann). Sollten Sie darĂŒber nachdenken, Ihre Adressdaten zu vereinheitlichen, schauen Sie sich mal unser Programm Lieferadressen an.

Dieses Dokument beschĂ€ftigt sich mit der Darstellung der richtigen Adresse auf dem Formular. Dabei soll ein Formular fĂŒr alle Vorgangsarten (Angebot, Lieferschein, Rechnung, etc.) verwendbar sein. Jede Art, wie der Manager die Adresse speichern könnte, soll berĂŒcksichtigt werden. Die Anforderungen sind konkret:

  • Auf Belegen außer Lieferschein und Kommission wird die Rechnungsadresse gedruckt. Wenn im folgenden von einem Lieferschein die Rede ist, sind immer Lieferschein UND Kommission gemeint.
  • Seit Version X15 verwendet der Manager fĂŒr die Lieferadresse eigene Datenbankfelder l_firma, l_firma2, l_name, l_vorname, l_strasse, l_land, l_plz, l_ort. Wenn dort der Ort gefĂŒllt ist, wird diese Lieferadresse verwendet.
  • Vor Version X15 verwendete der Manager sogenannte definierte Lieferadressen. Diese sind ein Freitext, welcher mit ##DEF:# beginnt und Zeilenweise die Bestandteile der Adresse enthĂ€lt. Wenn dies der Fall ist, wird diese Adresse verwendet.
  • Alternativ kann im gleichen Feld eine Freitext-Lieferadresse vorhanden sein. Diese wird, wenn nötig, unformatiert angezeigt.
  • Analog fĂŒr die Lieferadresse gibt es seit Version X15 auch fĂŒr die Rechnungsadresse eigene Datenbankfelder. Diese Adresse ist, wenn der Ort gefĂŒllt ist, der Adresse aus der Adressdatenbank vorzuziehen.

Die Adressen werden wie folgt priorisiert. Die Erkennung ob eine Adresse vorhanden ist oder nicht erfolgt am Ort.

  1. Lieferadresse aus L-Feldern
  2. definierte Lieferadresse
  3. Freitext Lieferadresse
  4. Rechnungsadresse aus R-Feldern
  5. Rechnungsadresse aus Adressdatenbank

Wir verwenden zur Umsetzung den Formulargenerator des AFS Managers. Wenn Sie das Forumlar nicht selbst programmieren wollen, haben wir ein Beispielformuar fĂŒr Sie. Sprechen Sie uns an.

Damit das Formular ĂŒbersichtlich und wartbar bleibt, wird fĂŒr jede Adressart ein eigenes Textfeld verwendet. Die Darstellungsbedingung der Textfelder entscheidet, welches angezeigt wird.

intelligente Adressdarstellung in AFS-Manager Formularen
die 4 ĂŒbereinander liegenden Adress- Objekte im Formular.
intelligente Adressdarstellung in AFS-Manager Formularen
Lieferadresse aus L-Feldern
intelligente Adressdarstellung in AFS-Manager Formularen
Die Darstellungsbedingung fĂŒr Lieferadresse aus L-Feldern
intelligente Adressdarstellung in AFS-Manager Formularen
definierte Lieferadresse
intelligente Adressdarstellung in AFS-Manager Formularen
Die Darstellungsbedingung fĂŒr definierte Lieferadressen
intelligente Adressdarstellung in AFS-Manager Formularen
freie Lieferadresse im RTF Textfeld
intelligente Adressdarstellung in AFS-Manager Formularen
Die Darstellungsbedingung fĂŒr freie Lieferadressen
intelligente Adressdarstellung in AFS-Manager Formularen
Rechnungsadresse aus der Adressdatenbank
intelligente Adressdarstellung in AFS-Manager Formularen
Die Darstellungsbedingung fĂŒr Rechnungsadressen aus der Adressdatenbank

Anmerkung: Dieses Beispiel berĂŒcksichtigt noch nicht die R-Felder fĂŒr die Rechnungsadresse.

Postmann – Logistikanbindung fĂŒr AFS

Postmann ist die Lösung zum komfortablen Paketversand mit der Warenwirtschaft AFS Kaufmann und AFS Manager. UnterstĂŒtzt werden aktuell die Paketdienstleister UPS Worldship, GLS Gepard Connect, DHL EasyLog und DPD Delisprint. Weitere Logistikunternehmen sind in Planung und einfach umzusetzen.

Postmann Logo

Die Zeiten, in denen die Adresse und ein Barcode auf dem Paket fĂŒr den Versand ausreichten, sind vorbei. Mittlerweile bietet jeder Paketdienstleister eine Software an, in der Absender, EmpfĂ€nger, Gewicht, Zustellungsarten und so weiter erfasst werden mĂŒssen und welche einen Paketaufkleber ausgibt. Die Erfassung in diesen Programmen ist nicht nur doppelte Arbeit sondern auch fehleranfĂ€llig.

Postmann basiert auf dem Gedanken, dass alle nötigen Daten schon existieren. Die Daten sollen von dort gelesen werden und mit möglichst wenig Aufwand einen Paketaufkleber erzeugen. Ziel ist, auch grĂ¶ĂŸere Mengen an Paketen tĂ€glich abwickeln zu können. Zur spĂ€teren einfachen Nachvollziehbarkeit ist die erzeugte Sendungsnummer dort, wo sie hin gehört, nĂ€mlich im Beleg in der Warenwirtschaft.

  • Komplettbedienung per Barcodescanner
  • Automatische Ermittlung aller Daten aus dem Kaufmann
  • Eingabe von Gewicht und Lieferart per Barcodescanner
  • Anbindung einer digitaler Waage von MyWeight
  • RĂŒckĂŒbermittlung der Sendungsnummer(n) an AFS-Kaufmann
  • Nachnahmesendungen bei Rechnungen
  • Paketversand im Namen Ihres Kunden
  • Paketversand auf Kosten Dritter (UPS)
  • Multi-Mandanten, Multi-Datenbanken fĂ€hig
  • Geringe Kosten

Postmann ist fĂŒr die Dienstleister UPS, GLS, DHL und DPD verfĂŒgbar. SelbstverstĂ€ndlich realisieren wir auch Ihren Lieblingsdienstleister.

Demoversion

Eine Demoversion von Postmann fĂŒr den AFS Manager finden Sie hier: Postmann.zip. Diese Version ist voll funktionsfĂ€hig, allerdings wird ein Hinweis auf die Testversion auf dem Paketaufkleber ausgegeben. Eine installierte und funktionsfĂ€hige Testversion können Sie ganz einfach mit einem Freischaltcode von uns in eine Vollversion umwandeln.

Handbuch

Postmann ist die Lösung zur Logistikanbindung des AFS Managers. UnterstĂŒtzt werden aktuell die Paketdienstleister UPS Worldship, GLS Gepard Connect, DHL EasyLog und DPD Delisprint. Weitere Logistikunternehmen sind in Planung und auf Anforderung einfach umzusetzen.

Postmann ist ein eigenstÀndiges Programm, welches auf die Datenbank des Managers und die Schnittstellen der Paketdienstleister zugreift. Dadurch ist es unabhÀngig und flexibel. Die Bedienung ist auf Masse ausgelegt und kann vollstÀndig mit einem Barcodescanner erfolgen.

Postmann wird örtlich und zeitlich nah zur Verpackung und Versand ausgefĂŒhrt. FrĂŒhzeitig verfĂŒgbare Daten wie Absender, EmpfĂ€nger und Versandart werden vorab im Vorgang hinterlegt. Erst spĂ€ter verfĂŒgbare Daten wie Gewicht werden vom Postmann zugesteuert. Postmann wird vom Lager-Mitarbeiter vollstĂ€ndig per Barcodescanner bedient.

Postmann wird direkt im Lager auf einem PC installiert. Dieser PC sollte vorzugsweise mit einem Etikettendrucker, einem Barcodescanner und einer digitalen Waage von MyWeight ausgestattet sein. Auf diesem PC sollte außerdem die Software des Paketdienstes installiert werden.

Die Erstinstallation wird beim Kauf per Fernwartung von uns erledigt. Genauere Informationen zur Installation finden Sie hier:

Der Kollege im Lager startet morgens den Postmann und wartet bis die OberflÀche bereit ist. Gleichzeitig startet er die Software des Paketdienstleisters im Hintergrund und aktiviert die Schnittstelle.

  1. Der Mitarbeiter erhÀlt einen Lieferschein oder Packzettel und packt anhand dessen das Paket.
  2. Mit einem Barcodescanner erfasst der Kollege den Barcode auf dem Lieferschein.
  3. Postmann sucht den Lieferschein im AFS Manager und lÀdt dessen Daten.
  4. Der Absender des Pakets kann je nach Kunde variieren und wird zur Kontrolle angezeigt.
  5. Der EmpfÀnger ist entweder der Kunde oder eine abweichende Lieferanschrift, welche angezeigt wird.
  6. Anhand der Versandart im AFS wird versucht die Lieferart des Versenders zu ermitteln. Ist diese nicht korrekt, korrigiert der Kollege diese per Barcodescan.
  7. Die Anzahl der Pakete kann der Kollege per Barcodescanner eingeben oder ignorieren.
  8. Der Nachnahmebetrag wird aus einer Rechnung gelesen wenn die Zahlungsart „Nachnahme“ enthĂ€lt. Alternativ kann der Mitarbeiter den Betrag korrigieren oder manuell eingeben.
  9. Ist eine digitale Waage angeschlossen, legt der Kollege das fertige Paket auf die Waage, von welcher Postmann das Gewicht des PĂ€ckchens ließt. Alternativ kann er das Gewicht auch per Barcodescanner erfassen oder weglassen.
  10. Der Kollege kontrolliert die auf dem Bildschirm geladenen Daten und bestÀtigt diese.
  11. Postmann nimmt mit der Schnittstelle der Software des Paketdienstleisters auf und ĂŒbergibt die Daten.
  12. Die Software des Paketdienstleisters prĂŒft die ĂŒbergebenen Daten und erzeugt die Sendung. Der Paketaufkleber mit den Sendungsdaten wird gedruckt.
  13. Über die Schnittstelle erhĂ€lt Postmann die Sendungsdaten zurĂŒck.
  14. Die die soeben erzeugte Sendungsnummer wird zurĂŒck in den Beleg im AFS Manager gespeichert.
  15. Wenn vorhanden und gewĂŒnscht werden auch weitere Daten in den Beleg gespeichert.
  16. Die Sendungsnummer wird in Postmann dargestellt.

Nach Beendigung aller PackaktivitĂ€ten wird Postmann beendet und in der Software des Paketdienstleisters der Tagesabschluss durchgefĂŒhrt.

definierte Lieferanschriften im AFS Manager

Eine Lieferanschrift im AFS ist entweder ein Freitext oder ein bestimmt formatierter Text. Wenn die einzelnen Felder der Adresse benötigt werden, ist es fĂŒr eine Software schwierig, einen freien Text zu interpretieren. Daher wird empfohlen, immer definierte Lieferadressen im AFS Manager zu verwenden.

vorgang_definierte_lieferanschrift

Diese sind wie folgt aufgebaut:

##DEF:#
intelligenSE
Jan
Honsberg
Brombacher Strasse 75
DE
69434
Eberbach

Eine definierte Lieferanschrift besteht aus 7 Feldern. Die einzelnen Felder sind durch ZeilenumbrĂŒche getrennt. Die erste Zeile enthĂ€lt immer ein ##DEF:#, alle weiteren enthalten die Feldinhalte wie folgt:

  1. ##DEF:#
  2. Firma
  3. ASP Vorname
  4. ASP Nachname
  5. Strasse
  6. Land
  7. PLZ
  8. Ort

Bleibt ein Feld leer, z.B. der Vorname und Nachname, so muss hier eine leere Zeile verwendet werden.

Wann in einem Vorgang eine freie oder eine definierte Lieferanschrift verwendet wird, kann der Benutzer pro Vorgang entscheiden. Der Kaufmann speichert sich nicht, ob eine Definierte Lieferanschrift oder ein Freitext verwendet wird, sondern erkennt dies an der ersten Zeile.
Eine so formatierte Lieferanschrift kann auch im Kunden als abweichende Lieferanschrift hinterlegt werden. Dort fehlt allerdings die Umschaltmöglichkeit auf die definierte Lieferanschrift. Diese kann aber dort von Hand eingegeben werden und wird korrekt in den Vorgang ĂŒbernommen.

Formular

Im Formular muss eine solche Lieferanschrift gesondert behandelt werden. Eine Freie Lieferanschrift ist normalerweise im Feld

TBL_Auftrag.Lieferanschrift

zu finden. Ist diese leer, so ist entweder keine oder eine Definierte Lieferanschrift hinterlegt. Das Feld

TBL_Auftrag.Lieferanschrift_RTF

enthÀlt die Lieferanschrift in formatierter Form. Wird eine definierte Lieferanschrift verwendet, so enthÀlt diese Feld die ##DEF:# Kodierung.

Um auf die Definierte Lieferanschrift zuzugreifen, sind External-Komandos nötig:

external$("AdresseX.Firma1")
external$("AdresseX.Vorname")
external$("AdresseX.Name")
external$("AdresseX.Strasse")
external$("AdresseX.PLZ")
external$("AdresseX.Ort")
external$("AdresseX.Land")

Wird eine freie Lieferanschrift verwendet, so enthĂ€lt jede dieser Variablen die volle Lieferanschrift – ist also nicht zu verwenden.

um Herauszufinden, ob eine Lieferanschrift verwendet wird und wenn ja welche können folgende Bedingungen verwendet werden:

if(len(rtrim$(ltrim$(tbl_auftrag.lieferanschrift_rtf)))<=0, 
"keine Lieferanschrift", "mit lieferanschrift")
if(left$(ltrim$(tbl_auftrag.lieferanschrift_rtf), 2)="##", 
"definierte Lieferanschrift", "freie lieferanschrift")

COSMiC Partnerstatus Workflow

Der Workflow Partnerstatus dient dazu, jeden Partner automatisch einen verbindlichen Partnerstatus zuzuordnen.

Die Zuordnung erfolgt in zwei Schritten, welche in den Regeln implementiert sind: Prognose und finaler Status. Durch die Integration ins Regelsystem werden beide Regeln regelmĂ€ssig, fĂŒr jeden Partner innerhalb 24 Stunden ein mal ausgefĂŒhrt. Der Partnerstatus wird also tĂ€glich ĂŒberprĂŒft.

finaler Status

Die Prognose wird anhand der vorgegebenen Daten tĂ€glich berechnet. Sie kann sich daher auch tĂ€glich Ändern. Dies ist beim finalen Status nicht gewĂŒnscht, da dieser auch an den Partner kommuniziert wird. Der finale Status soll sich nur Ändern, wenn ein definierter Zeitraum verstrichen ist.

Der Partnerstatus darf sich nur einmal pro Monat verÀndern, sofern dieser besser wird.

Der Partnerstatus darf sich nur einmal in 18 Monaten verÀndern, sofern dieser schlechter wird.
FĂŒr den finalen Status sind also 3 Felder von Bedeutung:

  • finaler Partnerstatus
  • Timestamp Partnerstatus: Zeitpunkt, wann der finale Partnerstatus vom Workflow zuletzt gesetzt wurde.
  • Partnerstatus Prognose: tĂ€glich berechneter Partnerstatus

Um die Rangfolge der Partnerstati zu bestimmen, ist die Reihenfolge der Auswahlwerte in den Auswahlfeldern ausschlaggebend. Steht der Wert in der Liste weiter oben (1. Zeile) so ist dieser besser. Steht der Wert in der Liste weiter unten (9. Zeile) ist dieser schlechter.

Wird vom Workflow ermittelt, dass der finale Partnerstatus geĂ€ndert werden muss, so wird der Timestamp Partnerstatus mit dem aktuellen Datum verglichen. Ist der Zeitunterschied grĂ¶ĂŸer als 1 Monat und wird der Partnerstatus besser, wird der Partnerstaus geĂ€ndert, ansonsten bleibt er unverĂ€ndert. Ist der Zeitunterschied grĂ¶ĂŸer als 18 Monate und wird der Partnerstatus schlechter, wird der Partnerstaus geĂ€ndert, ansonsten bleibt er unverĂ€ndert.

Prognose

Die Prognose enthÀlt den Partnerstatus, der tÀglich neu anhand der im Partner gespeicherten Daten berechnet wird.

Der Umsatz ist die Summe des Umsatzes der letzten 12 Monate fĂŒr alle Produktgruppen. Die Betreuergruppe wird anhand der Benutzergruppe des MNT-Betreuers festgelegt. Das Kennzeichen VAD ist direkt ein Wert aus dem Partner.

Es gelten folgende Bedingungen. Diese werden sequentiell abgearbeitet, die erste die Erfolgreich ist bestimmt den Status.

  1. Online
    • mehr als 100.000k Umsatz
    • Betreuergruppe Online
  2. Distribution
    • mehr als 100.000k Umsatz
    • Betreuergruppe Distribution
  3. Systemhaus
    • mehr als 100.000k Umsatz
    • Betreuergruppe Systemhaus
  4. Retail
    • mehr als 100.000k Umsatz
    • Betreuergruppe Retail
  5. Volume Reseller
    • mehr als 500k Umsatz
    • Betreuergruppe Volumne
  6. Value Add
    • mehr als 500k Umsatz
    • Kennzeichen VAD
  7. Reseller
    • mehr als 100k Umsatz
    • Betreuergruppe PST
  8. Premium
    • mehr als 100k Umsatz
  9. Advanced
    • zwischen 20k und 100k Umsatz
  10. Business Partner
    • zwischen 1k und 20k Umsatz
  11. Registered
    • weniger als 1k Umsatz
  12. nicht registriert
    • keine Bedingungen

Die Prognose wird ca. jede 24 Stunden neu berechnet und gespeichert.

manuelle Änderung

manchmal kann es nötig werden, einen Finalen Partnerstatus manuell zu setzen und zu fixieren. Um dies korrekt zu tun ist es nötig zu wissen, was der Workflow tut und was man erreichen will.

Generell sollte, sobald der Partnerstatus manuell angepasst wird auch der Timestamp angepasst werden. Wird dies nicht gemacht, wird die Prognose nach den oben definierten Bedingungen als Final ĂŒbernommen.

Soll ein besserer Partnerstatus gesetzt werden als die Prognose ergibt, so muss der Timestamp auf den heutigen Tag gesetzt werden. Dann gilt dieser fĂŒr die nĂ€chsten 18 Monate, danach wird wieder die Prognose aktiv. Soll der Partnerstatus fĂŒr lĂ€nger als 18 Monate gesetzt werden, z.B. 24 Monate, so muss der Timestamp um 6 Monate in die Zukunft gesetzt werden. Soll der Partnerstatus kĂŒrzer als 18 Monate gelten, z.B. nur 1 Jahr, so ist der Timestamp um 6 Monate in die Vergangenheit zu setzen. Soll der Partnerstatus fĂŒr immer gelten (nicht empfohlen), so ist der Timestamp möglichst weit in die Zukunft zu setzen. Soll der Partnerstatus bis Ende des Jahres gelten, so muss der Timestamp auf den 1.7. des letzten Jahrs gesetzt werden.

Soll ein schlechterer Partnerstatus gesetzt werden als die Prognose ergibt, so muss mit dem Timestamp identisch verfahren werden, allerdings wird mit 1 Monat anstatt 18 Monaten gerechnet.

COSMiC Internationalisierung

Im Zuge der Internationalisierung ist es nötig, auch COSMiC zu in verschiedene Sprachen zu ĂŒbersetzen.

Historisch bedingt ist COSMiC vollstĂ€ndig deutsch ausgelegt. Dies wird geĂ€ndert, so dass die Grundsprache des Systems Englisch ist und zur Anzeige in die Sprache des Benutzers ĂŒbersetzt wird. Dies gestaltet sich allerdings nicht so einfach, da die Trennung zwischen Daten und System nicht eindeutig vorgenommen werden kann.

Textarten

Grundsprache des Systems ist Englisch. Alle Texte die im Quelltext verwendet werden sind in Englisch. FĂŒr die Darstellung werden die Texte in die Sprache des Benutzers ĂŒbersetzt. Daten in der Datenbank werden normalerweise in Englisch vorgehalten und ĂŒbersetzt. Ausgenommen von der Übersetzung sind Texte, die der Benutzer selbst eingeben kann. Partnerdaten sind, was standardisierte Felder angeht, in Englisch gespeichert und werden zur Anzeige ĂŒbersetzt, freie Texte werden in Landessprache gespeichert.

Konkret bedeutet dies:

  • Feldnamen sind Englisch und werden bei der Anzeige ĂŒbersetzt (en+)
  • Auswahlwerte fĂŒr Auswahlfelder sind en+
  • Namen von Benutzern und Gruppen sind in Englisch, werden aber nicht ĂŒbersetzt (en-)
  • Berichte, Berichtsnamen und Beschreibung sind in Landessprache und werden nicht ĂŒbersetzt (de-)
  • Bei Berichtsbedingungen und -Eingaben werden Feldnamen und Operatoren in Englisch gespeichert und ĂŒbersetzt, die Vergleichswerte mĂŒssen aber entsprechend des Feldtyps zu den Inhalten passen (siehe #Suchen)
  • Partnerdaten, die auf Auswahlfeldern beruhen, werden in Englisch in der Datenbank gespeichert und bei Anzeige ĂŒbersetzt. (en+)
  • Partnerdaten, die auf Auswahlfeldern mit Sonstigem beruhen, werden dann in Englisch gespeichert, wenn ein Auswahlwert verwendet wird. Wird ein freier Text in Sonstiges eingetragen, wird dieser nicht ĂŒbersetzt.
  • Partnerdaten, die in Textfeldern gespeichert werden sind in Landessprache (de-)
  • Partnerdaten, die auf Datums oder Zahlfeldern beruhen werden im internationalen Format gespeichert und bei der Darstellung konvertiert.
  • Box Namen sind historisch bedingt in einer Mischung aus Deutsch und Englisch. Diese werden normalerweise nicht angezeigt.
  • Box Titel sind en+
  • Box Inhalte können ĂŒber eine Option der Box ĂŒbersetzt werden. In diesem Fall sind die Inhalte in Englisch zu verfassen. Die Übersetzung erfolgt Zeilenweise. Inhalte die ĂŒbersetzt werden, sollten recht statisch sein und sich selten Ändern um den Übersetzungsaufwand gering zu halten.
  • Regeln sind in Englisch oder Landessprache und werden nicht ĂŒbersetzt. Die Beschreibung der Regeln in Fließtext existiert in deutsch und englisch.

angezeigte Sprache

Die Sprache, in der COSMiC dargestellt wird ist abhÀngig vom angemeldeten Benutzer. Diese wird in den Erweiterten Benutzerrechten vom Administrator festgelegt.

Solange noch kein Benutzer angemeldet ist, wird die Sprache in der Konfiguration der Installation festgelegt.

Technisches

Die Übersetzung erfolgt anhand einer MySQL Tabelle, die in allen Installationen verwendet wird. Diese Tabelle enthĂ€lt zu jedem Text die passenden Übersetzungen. Diese Tabelle wird vom Übersetzungs-Team gepflegt. Benötigte Texte werden dort automatisch angelegt, sobald diese im System verwendet werden. Neu angelegte und damit noch nicht ĂŒbersetzte Texte werden als „automatisch“ gekennzeichnet bis diese ĂŒbersetzt wurden.

Probleme

Suchen

Da die Partnerdaten nicht in einer einheitlichen Sprache vorliegen ist beim Suchen Hintergrundwissen gefragt. Basiert die Suche auf Text-Feldern, so muss in der Landessprache gesucht werden. Basiert die Suche auf Auswahlfeldern, so muss in Englisch gesucht werden. Die Volltextsuche sollte daher nur Text-Felder beinhalten.

Beim Erstellen von Berichten ist bei den Filtern und Eingaben die selbe Problematik zu beachten.

Änderungen am Feldtyp

Eine Änderung des Feldtyps ist in Problemlos möglich, allerdings muss zusĂ€tzlich zum Datentyp auch die Sprache beachtet werden.

Wird ein Textfeld in ein Auswahlfeld konvertiert, sind die Daten bereits in Landessprache enthalten, die Auswahlwerte allerdings in Englisch. In den Partnerdetails werden die englischen Auswahlwerte allerdings ĂŒbersetzt, aber die landessprachlichen Daten nicht zugeordnet. In der Auswahlliste stehen diese dann also entweder unter Sonstiges oder als eigener Auswahlpunkt.

Wird ein Auswahlfeld in ein Textfeld konvertiert, so verschwindet die Übersetzung und die Daten werden in Englisch angezeigt.

Wir deinem Auswahlfeld ein Auswahlpunkt hinzugefĂŒgt oder entfernt, so werden genauso die entsprechenden Daten nicht zugeordnet bzw. nicht mehr ĂŒbersetzt.

Intelligente Eingabewerte in COSMiC

Nicht immer ist beim Suchen, Filtern oder in Berichten ein fester Wert sinnvoll. Cosmic bietet intelligente Eingabewerte, die vom System bei Bedarf umgesezt werden.

im Zuge der Internationalisierung werden auch englische KĂŒrzel eingefĂŒhrt.

Datum

Bei Datumsfeldern kann automatisch das aktuelle Datum und/oder Zeit eingesetzt werden und basierend darauf gerechnet werden.

  • heute / today

Setzt das aktuelle Datum ohne Zeitanteil ein, z.B. 30.07.2014

  • heute -2 Monate / today -2 month

Rechnet von heute die angegebene Anzahl von Monaten vor oder zurĂŒck. Es sind positive und negative Werte erlaubt, allerdings immer mit Vorzeichen + oder -. Auch bei einem Monat muss 1 Monate geschrieben werden. Es wird jeweils das reine Datum ohne Zeitanteil verwendet.

  • heute -14 Tage / today -14 days

Rechnet von heute die angegebene Anzahl von Tagen vor oder zurĂŒck. Es sind positive und negative Werte erlaubt, allerdings immer mit Vorzeichen + oder -. Auch bei einem Tag muss 1 Tage geschrieben werden. Es wird jeweils das reine Datum ohne Zeitanteil verwendet.

  • jetzt / now

Setzt das aktuelle Datum und Zeit ein, z.B. 30.07.2014 14:25

  • jetzt -6 Stunden / now -6 hours

Rechnet von heute die angegebene Anzahl von Stunden vor oder zurĂŒck. Es sind positive und negative Werte erlaubt, allerdings immer mit Vorzeichen + oder -. Auch bei einer Stunde muss 1 Stunden geschrieben werden. Es wird immer sekundengenau gerechnet. Neben Stunden sind wie oben auch Tage und Monate möglich.

  • wochenbeginn

Rechnet von heute aus zurĂŒck auf den letzten vergangenen Montag, 0:00 Uhr.

  • wochenende

Rechnet von heute aus auf den nÀchsten Montag, 0:00 Uhr.

Benutzer

  • ich / me

mit dem SchlĂŒssewort wird der Vor- und Nachname des aktuell angmeldeten Benutzers eingefĂŒgt. Das Feld darf nur die drei Buchstaben enthalten, sonst nichts.

Auswahlwerte

  • ersterwert

verwendet in einem Auswahlfeld den ersten Wert der Auswahlliste.

  • letzterwert

verwendet in einem Auswahlfeld den letzten Wert der Auswahlliste.

Verwendung

Die SchlĂŒsselwörter können an verschieden Stellen, wo Daten an die Datenbank ĂŒbergeben werden verwendet werden.

  • in Bedingungen von Berichten
  • in Eingabewerten von Berichten
  • in Textfeldern in den Partnerdetails (auch als Sonstiges)
  • in den Vorgabewerten eines Felds
  • in den Suchfeldern der Detailsuche oder Volltextsuche

COSMiC Felder

Die Felder bilden das GrundgerĂŒst der Partnerdatenbank. Felder sind in jeder Installation flexibel definierbar.

Die Definition der Felder ist von den #Inhalten getrennt, sodass jederzeit Felder hinzugefĂŒgt oder geĂ€ndert werden können ohne das Daten verloren gehen.

Über die normalen Datentypen hinaus gibt es zusĂ€tzliche #Feldtypen mit besonderen Funktionen oder Eigenschaften.

Name

Der Name des Feldes muss innerhalb der Datenbank eindeutig sein und ist frei definierbar. Es sind 100 Zeichen fĂŒr den Feldnamen erlaubt, allerdings sollten zwecks Darstellung nur 20-30 Zeichen verwendet werden.

Neben dem eindeutigen Namen erhÀlt jedes Feld vom System eine eindeutige ID. Diese wird automatisch vergeben und ist nicht Ànderbar. Der Name kann jederzeit geÀndert werden. Cosmic verweist generell immer auf die ID des Feldes, sodass eine NamensÀnderung keine Auswirkung auf z.B. Inhalte, Berichte, Rechte, Regeln, Konfigurationen hat.

Feldtypen

Es gibt verschiedene Datentypen fĂŒr Felder, welche sowohl den Inhalt als auch die Darstellung und Eingabemöglichkeiten steuern. Die zur VerfĂŒgung stehenden Feldtypen können je nach Anforderungen erweitert werden.

Text

normales Text Eingabefeld fĂŒr einen kurzen Text bis ca. 200 Zeichen. Es können zwar beliebig lange Texte gespeichert werden, allerdings ist die Darstellung in einem einzeiligen kurzen Textfeld ungeeignet. Mit einer Zahl bei Auswahlmöglichkeiten kann die LĂ€nge der eingebbaren Zeichen eingeschrĂ€nkt werden, allerdings wirkt sich das nur auf die Darstellung und nicht auf die tatsĂ€chliche SpeicherkapazitĂ€t des Felds aus.

Memo

Memo ist wie Text, nur dass mehrere Zeilen und ZeilenumbrĂŒche erlaubt sind.

Zahl

Zahl speichert eine numerische Zahl beliebiger Genauigkeit. Erlaubt sind Ziffern, ein Vorzeichen sowie das Komma als Dezimaltrennzeichen.

Euro

Euro ist weitgehendst Identisch mit Zahl, allerdings kann in der Spalte Auswahl eine Einheit fĂŒr die Zahl stehen, welche in der Anwendung dargestellt wird.

Datum

Datum enthĂ€lt ein Datum mit Zeitwert. Die Formatierung ist immer yyyy-mm-dd hh:nn:ss, also das vierstellige Jahr, zweistelliger Monat, zweistelliger Tag, zweistellige Stunde, zweistellige Minute und zweistellige Sekunde. Ist ein ungĂŒltiges Datum enthalten, wird dies zur Anzeige in der Anwendung versucht zu korrigieren und beim Speichern korrekt eingetragen.

Ja/Nein (Boolean)

Boolean speichert einen Ja-Nein-Wert. Content enthÀlt eine 1 oder 0, wobei ein leerer Wert oder fehlender Datensatz als Nein angesehen wird und jeder andere Wert als Ja. Gespeichert wird aber immer eine 1, 0 oder der Datensatz wird gelöscht.

Auswahlfeld Mehrfachnennung

Check speichert eine Liste von Werten, die aus einer Liste von Werten ausgewÀhlt wurden. Die möglichen Werte sind in Auswahl zeilenweise gespeichert. Content enthÀlt die ausgewÀhlten Werte zeilenweise.

Auswahlfeld Einfachnennung

Radio speichert einen Wert, der aus einer Liste von Werten ausgewÀhlt wurde. Die möglichen Werte sind in Auswahl zeilenweise gespeichert. Content enthÀlt den ausgewÀhlten Wert aus der Liste.

Auswahlfeld … und Sonstiges

CheckSonst und RadioSonst sind identisch mit Check und Radio, können allerdings zusÀtzlich auch einen freien Eintrag enthalten. Dies kann allerdings auch bei Check und Radio der Fall sein, die Darstellung und Behandlung der zusÀtzlichen Zeilen in der Anwendung unterscheidet sich aber.

Verweis auf Partner

Partner speichert einen Verweis auf einen Partner. Gespeichert wird die ID aus Kunde.

Telefonnummer / E-Mail / URL

URL, eMail, Tel enthalten Texte, die in Anwendung formatiert dargestellt werden. Es können zwar beliebige Daten enthalten sein, die Anwendung stellt diese auch dar, aber speichert nur gĂŒltige URL, eMail und Telefonnummern.

Kategorie und Position

Mit der Kategorie und Position wird die Darstellung in den Partnerdetails festgelegt. Die Kategorie gibt an, welcher Karteireiter/Tab verwendet wird, X und Y die Pixelgenaue Position von der oberen linken Ecke ausgesehen.

Die Feldverwaltung stellt ein möglichst genaues Abbild der Partnerdetails dar. Hier kann jedes Feld per Drag&Drop in den Kategorien verschoben und innerhalb der Kategorie positioniert werden. Bei der Positionierung per Drag&Drop wird ein Raster von 10 Pixeln eingehalten, die manuelle Eingabe von X und Y ermöglicht jeden Wert.

Bei der Anlage einer Kategorie, wird angegeben, ob es sich um eine Kategorie oder Untertabelle handelt. Untertabellen werden in den Partnerdetails als Tabelle dargestellt. Die Spaltenreihenfolge wird aus der X, danach aus der Y-Position bestimmt, also von oben nach unten und links nach rechts. Außerdem kann in der Tabellenansicht sich jeder Benutzer die Spalten je nach Wunsch ein- und ausblenden.

Vorgabewerte

Jedes Feld kann einen Vorgabewert enthalten, welcher eingesetzt wird, wenn ein neuer Datensatz in der Untertabelle oder ein neuer Partner angelegt wird.

Bei einer Untertabelle wird der Vorgabewert in das Feld eingesetzt anstatt es leer zu lassen. Der Benutzer kann das Felder wÀhrend der Bearbeitung noch Àndern und leeren. Beim Speichern wird der dann im Feld eingetragene Wert unabhÀngig vom Vorgabewert gespeichert. Hat der Benutzer kein Schreibrecht auf das Feld, so wird auch der Vorgabewert nicht gespeichert.

Als Vorgabewert kann jede beliebige Zeichenfolge verwendet werden. AbhÀngig vom Feldtyp kann dieser allerdings noch umgewandelt oder nicht korrekt dargestellt werden. Wird z.B versucht, ein Text in ein Zahl oder Datumsfeld vorzugeben, wird dieser, soweit möglich in eine Zahl/Datum konvertiert. Es können auch intelligente Eingabewerte verwendet werden, solange diese zum entsprechenden Feldtyp passen.

Beschreibung

Der Beschreibungstext kann Anweisungen zum AusfĂŒllen des Felds enthalten. Der enthaltene Text wird, sofern vorhanden im Tooltip eines Felds in den Partnerdetails angezeigt.

Inhalte

Die Inhalte jedes Felds werden getrennt von der Definition des Felds gespeichert. Das bedeutet, dass wenn sich die Definition des Felds Àndert die (noch) keine Auswirkungen auf die Inhalte hat.

Ist ein bestimmter Eingabewert, wie auch immer, in die Datenbank gelangt, bleibt dieser dort unverĂ€ndert bis zur nĂ€chsten Änderung gespeichert unabhĂ€ngig davon, was die Definition des Felds aussagt. Die Definition des Felds stellt lediglich sicher, dass der Feldinhalt (in den Partnerdetails) entsprechend dargestellt wird. Dazu kann es nötig sein, den Wert zu verĂ€ndern, konvertieren, abzuschneiden, zu erweitern oder gar zu löschen. Dies geschieht in dem Moment nur fĂŒr die Anzeige. In der Datenbank wird der Inhalt erst geĂ€ndert, wenn ein Speichervorgang ausgelöst wird, der einen anderen Inhalt vorsieht.

Manche Feldtypen behandeln ungĂŒltige Daten die verloren gehen könnten:

  • bei Auswahlfeldern mit Sonstiges werden Daten, die nicht nicht einem Auswahlwert zuzuordnen sind, im Sonstiges-Abschnitt untergebracht.
  • bei Auswahlfeldern ohne Sonstiges werden Daten, die nicht einem Auswahlwert zugeordnet werden können, als ein eigener Auswahlwert hinzugefĂŒgt und dargestellt
  • Textfelder und Memofelder können beliebige Daten enthalten, daher ist ein Datenverlust auszuschließen.

Manche Feldtypen erzeugen mit hoher Wahrscheinlichkeit einen Datenverlust:

  • Ein Zahlfeld kann nur ein Zahl enthalten. Texte und Buchstaben werden verloren gehen. Allerdings wird ein Wert sehr Tolerant in eine Zahl umgewandelt.
  • Ein Euro Feld darf genauso wie ein Zahlfeld nur eine Zahl enthalten, sogar mit der BeschrĂ€nkung auf zwei Nachkommastellen. WĂ€hrungssymbole werden allerdings toleriert.
  • bei Ja/Nein Feldern wird jeder Wert abweichend von „0“, „nein“, „false“, „no“ und leer als „ja“ erkannt.
  • Eine Telefonnummer kann nur aus Ziffern und Leerzeichen bestehen. Alles andere wird ignoriert. Eine Telefonnummer wird aber um eine Landesvorwahl ergĂ€nzt, anhand einer Vorwahl-liste validiert und formatiert.

COSMiC Datenstruktur

Die Partnerdaten in COSMiC sind auf verschiedene Datentabellen verteilt. Dies ist nötig, damit die Partnerdatenbank einfach und unkompliziert vom Benutzer erweitert werden kann.

Zentral ist die Tabelle Kunde, welche die eindeutige Partner ID und die Stammdaten enthĂ€lt. Die zusĂ€tzlichen Datenfelder enthĂ€lt die Tabelle DataFeld. Dort wird Name, Darstellung und Dateninhalt konfiguriert. Die eigentlichen Daten befinden sich in DataDetail, ein Datensatz fĂŒr jeden Partner und jedes Feld. FĂŒr die Untertabellen sind die beiden Tabellen SubFeld und SubDetail zustĂ€ndig, welche weitgehenst identisch mit den Data-Tabellen sind.

Partner

Die Tabelle Kunde enthĂ€lt fĂŒr jeden Partner einen Datensatz.

Die ID wird automatisch von der Datenbank vergeben und primÀre Identifikation des Partners.

Die KDNR ist eine sekundÀre Identifikation. Sie wird vom Benutzer vergeben, die Datenbank stellt allerdings deren Eindeutigkeit sicher.

Die Felder Firma, Str, Land, PLZ, Ort, Tel enthalten die grundlegenden Stammdaten. Die genaue Formatierung ĂŒbernimmt die Anwendung und entspricht denen der Felder.

Felder

Die Tabelle DataFeld enthÀlt die Definition der zusÀtzlichen Felder.

Jedes Feld ist ĂŒber seine ID eindeutig identifiziert. Die ID wird automatisch von der Datenbank vergeben. Name und Beschreibung sind Name und Beschreibung des Felds; sie werden primĂ€r fĂŒr die Darstellung in der Anwendung verwendet. Die Spalte Typ gibt zusammen mit Auswahl an, welche Daten im Feld gespeichert werden und wie. Kategorie, PosX, PosY sind fĂŒr die Darstellung in den Partnerdetails (Karteireiter und Position) verantwortlich.

Die Tabelle DataDetail enthĂ€lt die eigentlichen Daten zu jedem Feld und jedem Partner. Über die Spalte Referenz wird der Bezug zum Partner hergestellt, sie enthĂ€lt die eindeutige ID des Partners aus der Tabelle Kunde. Die Spalte Feld stellt die Verbindung zum Feld her, sie enthĂ€lt die ID aus DataFeld. Die Spalte Content enthĂ€lt die eigentlichen Daten, die Formatierung ist abhĂ€ngig vom Feldtyp.

Es muss nicht immer fĂŒr jedes Feld/Partner ein Datensatz in DataFeld existieren. Wenn kein Datensatz vorliegt, liegen auch keine Daten vor. Es sind aber DatensĂ€tze mit leerem content erlaubt.

Untertabellen

Untertabellen sind weitgehendst identisch mit den Feldertabellen aufgebaut.

Die Spalte Kategorie in SubFeld enthÀlt hier den Namen der Untertabelle und stellt damit die Zusammengehörigkeit von Feldern zu einer gedachten Untertabelle her.

Die Spalte Nummer in SubDetail enthĂ€lt die ID eines Untertabellendatensatzes und fĂŒgt somit die Daten zu einer Zeile in der Untertabelle zusammen. Die Nummer ist nur innerhalb einer Untertabelle (Kategorie aus SubFeld) und eines Partners (Referenz in SubDetail) eindeutig.

Feldtypen

Jedes Feld hat einen Typ, welcher durch die Anwendung verwaltet wird. Die Art des Typs bestimmt die Spalte Typ, zusammen mit Auswahl aus den Tabellen DataFeld und SubFeld. Der Typ hat Einfluss darauf, wie die Inhalte in content in den Tabellen DataDetail und SubDetail gespeichert sind.

Anmerkungen

Alle Tabellen enthalten eine ID, welche von der Datenbank vergeben wird und eindeutig ist.

Alle Tabellen enthalten eine Spalte Timestamp, welche die Datenbank aktualisiert. Sie enthÀlt immer das Datum, wann dieser Datensatz das letzte mal geÀndert wurde.

Alle Tabellen und Feldnamen sind grundsÀtzlich kleingeschrieben, unabhÀngig von der Schreibung in dieser Dokumentation.

Tabellennamen können zwischen den Installationen abweichen.

Nicht beschriebene Felder sind obsolet oder nur zur AbwÀrtskompatibilitÀt vorhanden.

Dieses Dokument stellt den Entwicklungsstand vom 25.07.2016 dar.