Offene Lizenz: Definitionen und Standards in gFM-Business

Offene Lizenz von gFM-BusinessEin herausragendes Merkmal der Unternehmenssoftware gFM-Business ist ihre Customizing-Fähigkeit. Besitzer einer offenen Lizenz können das CRM- und Warenwirtschaftssystem selbst nach ihren individuellen Anforderungen anpassen und erweitern. Um diese Erweiterungen durchführen zu können, ist es erforderlich, die Definitionen und Standards zu kennen, auf denen die FileMaker-Software basiert. Beim Kauf einer offenen Lizenz wird in der Regel eine Einführungsschulung hinzu gebucht, um den Einstieg in die Weiterentwicklung von gFM-Business so einfach wie möglich zu gestalten.

Trotz der großen Funktionsvielfalt ist der interne Aufbau von gFM-Business einfach und stukturiert. In diesem Artikel fassen wir gerne auch als Nachschlagewerk alle relevanten Definitionen und Standards zusammen, auf denen die gFM-Business Software basiert. Dazu gehören neben Felddefinitionen, Beziehungsnamen, Custom Functions und Wertelistenbezeichnungen auch der Aufbau der datenbankbasierten Navigation und aller Scripte.

Aufbau von Datenbanken und Dateien

Das CRM-, Fakturierung- und Warenwirtschaftssystem gFM-Business basiert auf mehreren Datenbanken, die im FileMaker-13-Format vorliegen. Die Datenbanken sind thematisch gegliedert, die Start-Datenbank ist „gFM-Business.fmp12“ (bzw. „gFM-Business.gfm). gFM-Business besteht aus folgenden FileMaker 13 Datenbanken:

Alle FileMaker-Datenbanken von gFM-Business

Enthaltene Funktionen in 'gFM_Business.fmp12'

  • gFM_Business.fmp12 – Haupt-Datenbank, die beim Start von gFM-Business geöffnet wird. Diese Datenbank enthält 99% der Programmlogik (Layouts, Wertelisten, Scripte) für die gesamte Anwendung. Diese Datei enthält keine für die Arbeit mit gFM-Business relevanten Datentabellen.

funktionen-gfm-drucklayouts

  • gFM_Drucklayouts.fmp12 – Diese Datenbank enthält alle Drucklayouts der gesamten Lösung. Drucklayouts können vollständig bearbeitet sowie neue Drucklayouts hinzugefügt und innerhalb von gFM-Business einem Modul zugewiesen werden. Diese Datei enthält für das Drucken und die Erstellung von PDF-Dateien sowie für die Archivierung von Dokumenten relevante Programmlogik sowie eine Datentabelle zur Speicherung von Druckaufträgen, an der i.d.R. keine Änderungen erforderlich sind.

Enthaltene Funktionen in 'gFMw_Artikel.fmp12'

  • gFMw_Artikel.fmp12 – Datenbank für alle Daten aus der Artikelverwaltung. Diese Datenbank enthält außer der Benutzerverwaltung außer einigen Custom Functions keine Programmlogik, sondern ausschließlich Datentabellen:
    • Artikelattribute (1 Datensatz = 1 Artikelattribut pro Artikel)
    • Artikelbestand (1 Datensatz = Artikelbestand eines Artikels an Standort x)
    • Artikelbilder (1 Datensatz = 1 Bild pro Artikel)
    • Artikelstamm (Stammtabelle für Artikel)
    • Lieferanten (1 Datensatz = 1 Lieferant mit Preisen pro Artikel)
    • Stammdaten_Artikelkategorien (vorgegebene Artikelkategorien)
    • Stammdaten_Artikeloptionen (vorgegebene Artikeloptionen)
    • Stammdaten_Artikeloptionswerte (vorgegebene Artikeloptionswerte)
    • Preisgruppen (1 Datensatz = 1 Preisgruppe mit Preis x und Menge x pro Artikel)
    • Tabellen für Gambio GX2 Schnittstelle (optional)

Funktionen in 'gFMw_Fakturierung.fmp12'

  • gFMw_Fakturierung.fmp12 – Datenbank für alle Daten aus dem Fakturierung-Modul. Diese Datenbank enthält mit Ausnahme der Benutzerverwaltung und einigen Exportscripten keine Programmlogik und folgende Datentabellen:
    • Angebote und Angebotspositionen
    • Aufträge und Auftragspositionen
    • Dienstleistungen (1 Datensatz = 1 Leistung pro zugeordnetem Kunden)
    • Gutschriften und Gutschriftspositionen
    • Leistungsprotokolle (1 Datensatz = 1 Leistungsprotokoll mit Pfad zur PDF-Datei)
    • Lieferscheine und Lieferscheinpositionen
    • Mahnungen und Mahnungspositionen
    • Rechnungen und Rechnungspositionen
    • Kassenbuch (1 Datensatz = 1 Teilbuchung, Splitbuchungen = x Datensätze)
    • Bankbuchungen (Kontoauszüge)
    • Lastschriften (Lastschriften und SEPA-Transfers)
    • SEPA_Mandate (SEPA-Mandatsverwaltung)
    • Import_MT940 (Exporttabelle)
    • DATEV_OBE_Export (Exporttabelle)
    • Bestellungen und Bestellpositionen (Einkaufsverwaltung)
    • Fahrten, Fahrtenbücher und Fahrten_Änderungen
    • Tabellen für Gambio GX2 Schnittstelle (optional)

Funktionen in 'gFMw_Kontakte.fmp12'

  • gFMw_Kontakte.fmp12 – Datenbank für alle Daten aus dem CRM-Modul. Diese Datenbank enthält außer der Benutzerverwaltung keine Programmlogik, sondern ausschließlich Datentabellen:
    • Adressen (1 Datensatz = 1 Adresse pro Kontakt)
    • Aktionen (Aktionschronik)
    • Kontaktpersonen (1 Datensatz = 1 Ansprechpartner pro Kontakt)
    • Kunden (Kontakt-Stammtabelle)
    • Stammdaten_Adressarten (Vorgegebene Adressarten in Stammdaten)
    • Adressbuch_OSX (Importtabelle)
    • Tabellen für Gambio GX2 Schnittstelle (optional)

Funktionen in 'gFMw_Korrespondenz.fmp12'

  • gFMw_Korrespondenz.fmp12 – Datenbank für alle Daten aus dem Korrespondenz-Modul und Dokumentmanagement. Diese Datenbank enthält außer der Benutzerverwaltung keine Programmlogik, sondern ausschließlich Datentabellen:
    • Dateianhänge (Dateianhänge zu Dokumenten)
    • Korrespondenz (Stammtabelle für ausgehende Korrespondenz)
    • Vorlagen (Dokumentvorlagen)
    • Archiv_Stamm (Stammtabelle für Dokumentarchiv)
    • Archiv_Inhalt (Inhaltstabelle für Dokumentarchiv. 1 Datensatz = 1 Seite)

Funktionen in 'gFMw_Stammdaten.fmp12'

  • gFMw_Stammdaten.fmp12 – Datenbank für alle Stammdaten und Einstellungen aus gFM-Business. Diese Datenbank enthält außer der Benutzerverwaltung keine Programmlogik, sondern ausschließlich Datentabellen:
    • Bankleitzahlen (Bankleitzahlenverzeichnis)
    • Bankverbindungen (eigene Bankverbindungen)
    • Buchungskonten (eigene Buchungskonten)
    • Buchungskontenrahmen (Kontenrahmen IKR)
    • Dialoge (Voreinstellungen für Dialogboxen)
    • Filialen (eigene Filialen und Standorte)
    • Hersteller (1 Datensatz = 1 Hersteller)
    • Postleitzahlen (Postleitzahlenverzeichnis für D/A/CH)
    • Preisgruppen (1 Datensatz = 1 Preisgruppenvorgabe)
    • Stammdaten (Firmenstammdaten und Einstellungen)
    • Vornamen (Vornamenverzeichnis für automatische Anreden)
    • Zahlungsarten (1 Datensatz = 1 Zahlungsartvorgabe)
    • Tabellen für Gambio GX2 Schnittstelle (optional)

Funktionen in 'gFMw_Statistik.fmp12'

  • gFMw_Statistik.fmp12 – Diese Datei enthält ausschließlich die Datentabelle „Statistik“ sowie die Programmlogik zur Erstellung von Datensätzen in dieser Datenbank. Ein Datensatz in der Datentabelle enthält einen Statistik-Datensatz, der über einen bestimmten Gültigkeitszeitraum verfügt. Ein Datensatz kann entweder zu einer Jahres-, Monats- oder Wochenstatistik gehören. Gehört der Datensatz zu einer Jahresstatistik, beträgt der Gültigkeitszeitraum (und die daraus resultierenden berechneten Werte) ein Jahr, bei einer Monatsstatistik ein Monat und bei einer Wochenstatistik eine Woche.In der aktuellen Version von gFM-Business werden alle statistischen Berechnungen als Formeln in Echtzeit durchgeführt. Die Feldnamen für statistische Auswertungen haben dabei aussagekräftige Namen wie „Aktionen_Anzahl“ oder „Angebote_netto“. Vorjahreswerte sind mit dem Präfix „vj_“ gekennzeichnet, das Jahr das Vorjahrs trägt den Präfix „vvj_“. Ab gFM-Business 2.0 werden alle Berechnungen aus den Formelfeldern aus Performancegründen in Scripte ausgelagert.

Funktionen in 'gFMw_System.fmp12'

  • gFMw_System.fmp12 – Datenbank, die alle systemrelevanten Vorgaben und Einstellungen speichert. Diese Datei enthält mit Ausnahme einiger GUI-relevanter Scripte und der Benutzerverwaltung keine eigene Programmlogik und folgende Datentabellen:
    • Ereignisprotokoll (systemweites Ereignisprotokoll)
    • gui (Vorgabe für die systemweite Navigation bei Erfassung neuer Benutzer)
    • Skins (Designs für Benutzeroberflächen, enthält Mac OS X, Windows und iPad)
    • Einstellungen (Tabelle für alle Systemeinstellungen)
    • User (Benutzerverwaltung, 1 Datensatz = 1 Benutzer)
    • Hauptmenü (Vorgabe für das Hauptmenü bei Erfassung neuer Benutzer)
    • User_GUI (benutzerdefinierte systemweite Navigation)
    • User_Hauptmenü (benutzerdefiniertes Hauptmenü)
    • Statistiksätze (Vorgaben für Statistiksätze)
    • GUI_Schaltflächen (relationale Tabelle für dynamische Navigation)
    • Valutakurse (Fremdwährungskurse, 1 Datensatz = alle Kurse)
    • GUI_Instanzen (Datenbank geöffneter Instanzen für Navigation)
    • Twain (Vorgaben für Twain-kompatible Scanner)
    • Drucker (Vorgaben für installierte Drucker)

Datenbankbasierte Navigation

Sowohl die systemweite Navigation als auch das Hauptmenü sind in gFM-Business datenbankbasiert und können individuell für jeden Benutzer angepaßt werden. In den Tabellen ‚gui‚ und ‚hauptmenü‚ befinden sich die Stammdaten für die Navigation und das Hauptmenü, die bei der Erstellung eines neuen Benutzers übernommen werden. Für jeden Benutzer kann die Navigation und das Hauptmenü daraufhin individuell angepaßt werden – die hierfür relevanten Daten werden in den Tabellen ‚user_gui‚ und ‚user_hauptmenü‚ gespeichert.

In der Praxis bedeutet das, daß Sie sich um die Navigation und um das Hauptmenü bei der Entwicklung keine Gedanken machen müssen. Möchten Sie ein neues Bildschirmlayout für neue Funktionen implementieren, duplizieren Sie einfach ein vorhandenes Layout und ersetzen alle Daten-Bestandteile. Die Navigation muß nicht verändert werden, diese ist auf jedem Layout identisch. Weisen Sie daraufhin das neue Layout einem Modul zu, woraufhin das neue Layout sofort in gFM-Business zur Verfügung steht.

gFM-Business Dokumentverzeichnis

Das CRM-, Fakturierung- und Warenwirtschaftssystem gFM-Business verfügt neben den Datenbankdateien über ein weiteres Verzeichnis „gFM-Business“, in dem alle zur Laufzeit generierten Dokumente gespeichert werden. Darüber hinaus enthält dieser Ordner die Verzeichnisse „System“ und „Temp“, in dem sich Systemdateien für gFM-Business befinden bzw. in das temporäre Dateien gespeichert werden.

Dokumentverzeichnis von gFM-Business

Das Dokumentverzeichnis „gFM-Business“ in dem sich alle weiteren Ordner befinden, ist das Stammverzeichnis (Systemverzeichnis) von gFM-Business, dessen Existenz bei jedem Start von gFM-Business überprüft wird. Konnte das Verzeichnis nicht gefunden werden, erscheint eine entsprechende Meldung auf dem Bildschirm.

Felddefinitionen und Beziehungsgraph

Beispiel Beziehungsgraph in gFM-BusinessDie Felddefinitionen und der Beziehungsgraph von gFM-Business 1.x sind Bestandteil der mitgelieferten Dokumentation. Alle für die Bearbeitung in gFM-Business relevanten Beziehungen befinden sich in der Haupt-Datei „gFM_Business.fmp12“. In der Datei „gFM_Drucklayouts.fmp12“ befinden sich alle Beziehungen, die für die Anzeige von Daten in Drucklayouts erforderlich sind. In allen anderen Dateien befinden sich ausschließlich Beziehungen, die für die Berechnung in Formelfeldern oder automatischen Berechnungen erforderlich sind.

Beziehungen sind i.d.R. kontextrelevant als „Breadcrumb“ benannt. So kann beispielsweise unter „Kunden_Adressen“ auf alle Adressen eines aufgerufenen Kunden zugegriffen werden.

Definitionen von Feldnamen

In gFM-Business gelten systemweit bestimmte Standards für die Benennung von Feldnamen, um eine einheitliche Entwicklung der Komponenten zu gewährleisten. Feldnamen in gFM-Business enthalten nie ein Leerzeichen oder Sonderzeichen, sondern als Trennzeichen grundsätzlich Unterstriche.

Standards für Feldnamen in gFM-Business

  • Primärschlüssel – Kennzeichnung mit dem Präfix _pk (z.B. _pk_Kunden_ID)
  • Sekundärschlüssel – Kennzeichnung mit dem Präfix _fk (z.B. _fk_Adress_ID)
  • Globale Schlüssel – _sGlobal, enthält immer und in allen Tabellen den Wert „1“.
  • Weitere Schlüssel – Schlüsselfelder werden grundsätzlich mit einem Unterstrich „_“ als Präfix gekennzeichnet, um im Beziehungsgraphen die Anzeige an möglichst vorderer Stelle zu gewährleisten.
  • Datenfelder – Datenfelder tragen in der Regel aussagekräftige Bezeichnungen.
  • Datensatzbezugsfelder – Felder „DS_Aenderung_Datum“, „DS_Aenderung_Zeit“, „DS_Aenderung_SB“ sowie die zugehörigen Erstellungsfelder befinden sich i.d.R. in jeder Datentabelle und zeigen Erstellungs- und Änderungsstati eines Datensatzes an.
  • Statusfelder – Statusfelder wie z.B. „sta_Liefersperre“, „sta_Mahnen“ oder „sta_Gebucht“ werden mit dem Präfix „sta_“ oder „Status_“ gekennzeichnet.
  • Berechnete Statistikfelder – Berechnete Statistikfelder innerhalb einer Datentabelle werden für Anzahl-Berechnungen mit dem Präfix „xAnz_“ bzw. für Summenberechnungen mit „xSum_“ gekennzeichnet.
  • Berechnete Formelfelder – Berechnete Formelfelder werden mit dem Präfix „xCal_“ gekennzeichnet.
  • Layoutberechnungen – Berechnungen für die Anzeige auf Layouts werden mit dem Präfix „xLay_“ gekennzeichnet.

Definitionen von Layoutnamen

Alle Bildschirmlayouts von gFM-Business befinden sich in der Haupt-Datenbank gFM-Business.fmp12, alle Drucklayouts befinden sich in der Datenbank gFM_Drucklayouts.fmp12. In allen anderen Dateien befinden sich keine für die Ausführung von gFM-Business relevanten Layouts. Alle Layoutnamen unterliegen in gFM-Business bestimmten Standards.

Layouts in gFM-Business

  • scr. – Bildschirmlayouts – Bildschirmlayouts für Desktop-Bildschirme werden mit dem Präfix „scr.“ gekennzeichnet. Bildschirmlayouts sind i.d.R. kontextrelevant als „Breadcrumb“ benannt. Der erste Teil nach dem Präfix „scr.“ kennzeichnet das Modul, z.B. „Kunden“. Der nächste Teil kennzeichnet das Untermenü, zum Beispiel „scr.Kunden_Adressen“.
  • iPad. – iPad-Layouts – iPad-Layouts werden mit dem Präfix „iPad.“ gekennzeichnet. iPad-Layouts sind i.d.R. kontextrelevant als „Breadcrumb“ benannt. Der erste Teil nach dem Präfix „scr.“ kennzeichnet das Modul, z.B. „Kunden“. Der nächste Teil kennzeichnet das Untermenü, zum Beispiel „iPad.Kunden_Adressen“.
  • sys. – Systemlayouts – Jede Tabelle aus allen Datenbanken ist in der Datei „gFM_Business“ als Systemlayout verfügbar. Diese Vorgehensweise ermöglicht es, die gesamte Programmlogik direkt in der Haupt-Datenbank „gFM_Business.fmp12“ umzusetzen. Eine Auslagerung von Scripten in andere Dateien ist nicht erforderlich. Während der Ausführung in Scripten wird bei Zugriff auf eine Tabelle i.d.R. das entsprechende Systemlayout verwendet.
  • dlg. – Dialogfenster – gFM-Business enthält einige Dialogfenster, beispielsweise für den Import von Datensätzen aus Onlineshops oder für die Auswahl von Artikeln in Belegpositionen. Alle Dialogfenster in gFM-Business werden mit dem Präfix „dlg.“ gekennzeichnet.

Definitionen von Wertelisten

  • Modul-Wertelisten – Wertelisten, die sich auf Felder in bestimmten Modulen beziehen, werden als Präfix mit den ersten drei Buchstaben des jeweiligen Moduls sowie einem Punkt gekennzeichnet. Die Werteliste „Hersteller“ im Modul „Artikelverwaltung“ trägt demnach den Namen „art.Hersteller“, die Werteliste „Bankverbindungen“ aus dem Kontext der Fakturierung heraus heißt „fak.Bankverbindungen“.
  • Funktions-Wertelisten (Popup-Menüs) – Wertelisten, die Funktionen aus einem Popup-Menü enthalten (z.B. Haupt-Funktionsmenüs in allen Bildschirmmasken) werden mit dem Präfix „pop.“ und den ersten drei Buchstaben des jeweiligen Moduls gekennzeichnet. So heißt die Werteliste für das Funktionsmenü der Maske „Kassenbuch“ im Modul „Fakturierung“ ganz einfach „pop.fak_Kassenbuch“.
  • Wertelisten für Sortierfolgen – Im Druck-Popover kann in allen Modulen eine bestimmte Sortierfolge angegeben werden. Die Wertelisten, die für diese Funktion erforderlich sind, werden mit dem Präfix „sort.“ gekennzeichnet. Die Werteliste für die Sortierfolge von Rechnungen heißt dementsprechend z.B. „sort.Rechnungen“.
  • System-Wertelisten – Wertelisten, die systemweit zur Verfügung stehen und gültig sind, werden mit dem Präfix „sys.“ gekennzeichnet. Die Werteliste „sys.Sortierfolge“ enthält beispielsweise die Werte „aufsteigend“ und „absteigend“ und ist dementsprechend systemübergreifend gültig, da sie überall verwendet werden kann.
  • Magic Valuelist – Einige Wertelisten in gFM-Business werden direkt während der Laufzeit generiert und angezeigt. Diese Wertelisten werden nicht als gewöhnliche FileMaker-Werteliste definiert, sondern wurden über die Funktion „Magic Valuelist“ eingebunden. Diese Methode wurde von Arnold Kegebein im FileMaker Magazin ausführlich vorgestellt.

Definitionen von Scriptnamen

Der Aufbau von Scripten und Scriptnamen in gFM-Business ist verhältnismäßig einfach und transparent. gFM-Business unterscheidet im Prinzip nur von Layoutscripten, Teilscripten und Systemscripten. Layoutscripte sind entweder systemübergreifend oder beziehen sich auf ein ganz bestimmtes Bildschirmlayout.

Scriptverwaltung in gFM-Business

Systemübergreifende Layoutscripte

  • lay.Hauptnavigation – Sprungscript, das systemübergreifend zum aktuellen Layout springt. Dieses Script ist ein fester Bestandteil von gFM-Business, und es wird nicht empfohlen, hier Änderungen vorzunehmen.
  • lay.Symbolleiste – Systemübergreifendes Script für alle Funktionen aus der Symbolleiste. Für die Funktion „Neu“ wird jeweils der aktuelle Kontext (das aktuelle Layout) abgefragt, um die jeweils korrekten neuen Datensätze erstellen zu können.
  • lay.Hauptmenü – Script zum Aufruf aller Funktionen aus dem Hauptmenü.
  • lay.Druckdialog – Script, das alle Funktionen aller Popover-Dialoge zum Drucken von Datensätzen beinhaltet.
  • lay.Kalender – Script, das alle Funktionen des Gruppenkalenders aus gFM-Business Professional beinhaltet.

Maskenbezogene Layoutscripte

Für jede Bildschirmmaske, die in gFM-Business entweder mit dem Präfix „scr.“ oder als iPad-Layout mit dem Präfix „iPad.“ gekennzeichnet wurde, ist genau ein Layoutscript vorhanden. Ein Layoutscript trägt i.d.R. den identischen Namen wie das Layout, jedoch mit dem Präfix „lay.“. So befinden sich beispielsweise alle Funktionen des Bildschirmlayouts „scr.Kunden_Adressen“ im Layoutscript „lay.Kunden_Adressen“. Innerhalb des Layoutscriptes befinden sich alle Funktionen, die auf dem Bildschirmlayout zur Verfügung gestellt werden. Alle Funktionen werden innerhalb des Scriptes per Script-Parameter aufgerufen. Viele Funktionen werden entweder als separate Teilscripte aufgerufen oder befinden sich vollständig bereits im Layoutscript.

Teilscripte

Teilscripte sind Scripte, die während der Laufzeit von anderen Scripten aufgerufen werden. In vielen Fällen werden die Scripte parametrisiert ausgeführt (also ein Parameter mitgeliefert), die ihrerseits einen entsprechenden Wert zurückliefern. Teilscripte sind entweder systemübergreifend (Präfix „ts.Scriptname“) aufrufbar oder sind mit einem bestimmten Modul verbunden (Präfix „ts.xyz_Scriptname“, wobei xyz die ersten drei Buchstaben des zugeordneten Moduls darstellen).

Ein wichtiges und immer wieder verwendetes Teilscript ist das Teilscript „ts.Popupmenü_verarbeiten„. In diesem Script werden systemweit alle Haupt-Funktionsmenüs verarbeitet und den entsprechenden Layoutscripten zugewiesen. Dieses Script funktioniert nicht nur bei Hauptmenüs, sondern auch in kontextsensitiven Menüs und Portalen, da auch die Nummer des ausgewählten Datensatzes aus Portalen mitgeliefert wird.

SQL-Scripte

Wurde gFM-Business inklusive Onlineshop-Schnittstelle erworben, enthält die Software eine Reihe SQL-Scripte, die für die Schnittstelle zwischen gFM-Business und Onlineshop erforderlich sind. SQL-Scripte bestehen i.d.R. aus einem Import-, Export- und Update-Script für eine bestimmte Datentabelle.

Systemscripte

gFM-Business enthält einige Systemscripte, die systemweit verfügbar sind und nicht einem bestimmten Modul zugeordnet wurden. Beispiele einiger wichtiger Systemscripte im Überblick:

  • sys.Start – Startscript, dieses Script wird automatisch bei jedem Start von gFM-Business aufgerufen.
  • sys.LayoutRefresh – Script zum Aktualisieren des Layouts bei der Nutzung von Suchfeldern in Portalen (Spotlight-ähnliche Suche in Listenansichten und Portalen).
  • sys.Twain_Init – Script zum Initialisieren Twain-kompatibler Scanner

Dokumentation innerhalb von Scripten

Alle Scripte wurden intern so weit wie möglich dokumentiert, um spätere Änderungen weitgehend zu vereinfachen. Größere Scripte wie z.B. Layoutscripte wurden i.d.R. in verschiedene Bereiche aufgeteilt, wie z.B. „Hauptfunktionen“, „Kontextsensitive Funktionen“, „Script-Trigger“ und „Suchmodus“. Alle diese Bereiche betreffenden Funktionen befinden sich dann im jeweiligen Scriptbereich.

Dokumentation innerhalb von Scripten

Popover-Dialoge

Fakura: Popover für neue ArtikelpositionEingabedialoge werden in gFM-Business systemweit als Popover-Dialoge dargestellt. Seit FileMaker 13 stehen Popover-Schaltflächen zur Verfügung, mit denen beliebige Popover-Dialogboxen erstellt werden können. Ein Popover besteht aus zwei Objekten: Der Popover-Schaltfläche sowie das Popover-Fenster, das sich nach Klick auf die Popover-Schaltfläche öffnet. Popoverfenster werden in gFM-Business über den Objektnamen benannt – dieser trägt jeweils den Präfix „Popover_“ und in der Folge einen aussagekräftigen Namen. Das Popoverfenster zur Erfassung neuer Adressen heißt beispielsweise „Popover_Neu_Adresse“.

Alle Eingaben in Popover-Dialogen erfolgen über temporäre globale Felder aus der Tabelle „Einstellungen (prf)“ mit der Bezeichnung <<prf::xGlo_Eingabefeld_1>> bis <<prf::xGlo_Eingabefeld_25>>. Für jeden Popoverdialog existiert in gFM-Business genau ein entsprechendes Script, in dem alle Funktionen des Popovers per Script-Parameter aufgerufen werden. Ein Popover-Script besteht i.d.R. aus folgenden Teilscripten:

  • trigger.neu – Dieses Teilscript wird als Start-Trigger beim Öffnen des Popoverdialogs ausgeführt. In diesem Teilscript können die auf dem Popoverdialog platzierten Felder mit bestimmten Vorgabewerten versehen werden.
  • sf.Neu – Dieses Schaltflächenscript wird ausgeführt, wenn der Benutzer die Bestätigungs-Schaltfläche geklickt hat. In diesem Script werden die temporären globalen Eingabefelder ausgelesen und ein neuer Datensatz in der Datenbank erfasst.
  • Popover öffnen – Dieses Teilscript besitzt als einziges Teilscript keinen Script-Parameter und wird ausgeführt, wenn das Script ohne Parameter aufgerufen wird.
  • trigger.xyz (optional) – Selbstverständlich können im Script beliebige weitere Script-Trigger hinzufgefügt werden, um beispielsweise Feldinhalte anhand bestimmter Kriterien während der Laufzeit des Dialogs anzupassen. Da es sich bei Popoverfenstern im Prinzip um normale FileMaker-Layouts handelt, sind die Möglichkeiten innerhalb von Popover-Dialogen sehr umfangreich.

Custom Functions (eigene Funktionen)

Die Datei „gFM_Business.fmp12“ enthält eine ganze Reihe von eigenen Funktionen (Custom Functions), die während der Laufzeit von gFM-Business verwendet werden. Die offene Lizenz von gFM-Business kann selbstverständlich problemlos um beliebig viele weitere Custom Functions erweitert werden. Custom Functions können ausschließlich mit FileMaker Pro Advanced bearbeitet und erweitert werden. gFM-Business enthält bereits folgende integrierte Custom Functions:

  • cfDialog_Funktionen – veraltet, diese Funktionen werden nicht mehr verwendet.
  • cfEAN13Custom Function zur Aufbereitung eines EAN13-Barcodes für die korrekte Darstellung.
  • cfSumEuro – Funktion, um Eurobeträge auch mit Suffix berechnen zu können.
  • CSStoFMText – Funktion, um CSS-formatierten Text in FileMaker-formatierten Text umzuwandeln.
  • DateTimeMySQLToFMDate – Funktion, um den Inhalt eines DateTime-Feldes einer MySQL-Datenbank in ein FileMaker Datumsfeld zu wandeln.
  • ElapsedTime – Funktion zum Berechnen von Zeiträumen zwischen zwei Zeitstempeln.
  • EUR_Fremdwährung – Rechnet einen Eurowert in eine beliebige unterstützte Fremdwährung um.
  • FM2FMSQLDate – Wandelt ein FileMaker-Datum in das Format eines MySQL-Servers um.
  • FM2UnixTimeStamp – Wandelt ein FileMaker Zeitstempelfeld in ein Unix Zeitstempelfeld um.
  • FormatNumber – Universelle Funktion zum Formatieren von Zahlenfeldern.
  • GetAddress – Liefert die postalische Adresse eines beliebigen GPS-Standorts.
  • GetMap – Stellt aus einer gelieferten Adresse den Sourcecode für einen Google Maps Anfahrtsplan her.
  • HexToRGB – Wandelt einen hexadezimalen Farbcode in einen RGB Farbcode um.
  • HTMLtoText – Wandelt einen HTML-Sourcecode in FileMaker-formatierten Text um.
  • IsValidEmail – Prüft eine gelieferte E-Mail-Adresse auf Gültigkeit.
  • MagicValueList – Custom Function zur Erstellung von Magic Valuelists.
  • ParseAllBetween – Textfunktion, die einen Textausschnitt zwischen zwei gelieferten Textstellen liefert.
  • PathFMToPlugin – Wandelt einen FileMaker-Pfad (Windows oder Mac OS X) in einen nativen Unix-Pfad um.
  • PathPluginToFM – Wandelt einen nativen Unix-Pfad in einen FileMaker-Pfad (Windows oder Mac OS X) um.
  • Platform – Liefert einen Wert zurück, auf welcher Systemplattform die Software gestartet wurde.
  • RandomInteger – Liefert einen zufälligen ganzzahligen Wert in einem bestimmten Zahlenbereich zurück.
  • Remove_Duplicates – Diese Funktion dient zur Identifizierung doppelter Datensätze
  • StringSpalten – Mit dieser Funktion können mehrere Parameter in einem String übergeben und gesplittet werden.
  • TextToHTMLEntities – Wandelt einen normalen Text mit Umlauten in einen Text mit HTML-Entities um.
  • vcard – Erstellt eine valide vCard aus gelieferten Adressdaten zum Exportieren einer VCF-Datei.

Verwendete FileMaker Plugins

Verwendete FileMaker-PluginsUm erweiterte Funktionen in FileMaker nutzen zu können, nutzt gFM-Business insgesamt zwei Plugins. Zum Einsatz kommt das MBS FileMaker Plugin von Monkeybread Software sowie das BaseElements Plugin. Beide Plugins zusammen erweitern FileMaker um mehr als 3.000 weitere Funktionen.

Bitte berücksichtigen Sie, daß bei Erwerb einer offenen Lizenz zusätzlich eine gültige Lizenz des MBS FileMaker Plugin für die Anzahl der genutzten Arbeitsplätze erworben werden muß. Plugins kommen ausschließlich auf Desktop-Computern unter Windows oder Mac OS X zum Einsatz – unter iOS sind FileMaker-Plugins nicht lauffähig.

gFM-Business Offene Lizenz Basis

Diese offene Lizenz beinhaltet als Basis alle Funktionen von gFM-Business free: Kontakt- und Adressverwaltung, Korrespondenzverwaltung mit Vorlagensystem, Artikelverwaltung und eine Fakturierung zum Erfassen von Angeboten, Aufträgen, Rechnungen, Lieferscheinen und Gutschriften. Module und Funktionen aus gFM-Business Professional können kostenpflichtig hinzugebucht werden. Gerne unterbreiten wir Ihnen ein individuelles Angebot.

Offene Lizenz Basis im goFileMaker Onlineshop

gFM-Business Offene Lizenz Professional

Diese offene Lizenz beinhaltet als Basis alle Funktionen von gFM-Business Professional und verfügt damit über den vollen Funktionsumfang. Die offene Lizenz Professional kann auch in Verbindung mit einer offenen Lizenz der Onlineshop-Schnittstelle für Gambio-basierte Onlineshops erworben werden. Selbstverständlich lässt sich dann auch die Schnittstelle für eigene Anforderungen individuell anpassen und erweitern.

Offene Lizenz Professional im goFileMaker Onlineshop

Offene Lizenz für FileMaker-Entwickler

Wenn SIe als FileMaker-Entwickler nicht über ein Basissystem für ein CRM- und Warenwirtschaftssystem verfügen, können Sie für Ihren Kunden eine Offene Lizenz von gFM-Business erwerben und diese individuell für Ihren Kunden anpassen und erweitern. Durch die systemweite dynamische Navigation und iPad-Integration lassen sich neue Funktionen auf der gFM-Business-Plattform besonders einfach und schnell implementieren.

Screenshots

Diesen Beitrag bewerten:

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (Bisher keine Bewertungen.)
Loading...

Über den Autor

Markus Schall
Entwicklung von FileMaker-Datenbanken seit 1994, Modifikation und Erweiterung von FileMaker-Lösungen, Konvertierung von FileMaker-Datenbanken von .fm, .fp3, .fp5 (FileMaker 2-6) oder .fp7 (FileMaker 7-11) zu .fmp12 (FileMaker 12-16), Schnittstellen zu Drittsystemen wie Onlineshops, CMS oder andere Datenbanken. Entwicklung individueller FileMaker-Datenbanksysteme auf Basis des gFM-Business-Frameworks mit persönlicher Beratung aus Oldenburg. Betreiber des Online-Fachportals goFileMaker.de, Entwickler des CRM- und Warenwirtschaftssystems gFM-Business. Mitglied in der FileMaker Business Alliance, FileMaker Developers Subscription und FMM Experte. Gewinner eines FMM Award 2011, vergeben durch das FileMaker Magazin.

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.