3. Funktionsweise

3.1. Überblick

Ein Tarif ist im allgemeinen eine beliebige Funktion (Verrechnungsfunktion) welche sich aus den Inputdaten und bzw. den vom Benutzer gewählten Bestellparametern zusammensetzt (z.B. Produkt, Ausschnitt, Ebenen, etc.).

Abbildung 1. Parameterübergabe an Verrechnungsfunktion

Parameterübergabe an Verrechnungsfunktion

Die Verrechnungsfunktion kann einfach sein, oft hängt sie jedoch von vielen unterschiedlichen Parametern ab:

  • Den gewählten Inputdaten (z.B. amtl. Vermessung oder Zonenplan).

  • Der bestellten Fläche.

  • Dem bestellten Datenprodukt (DXF, SHP, MIF/MID, INTERLIS/ITF etc.).

  • Dem Benutzer (z.B. normaler Tarif für gelegentlicher Benutzer wie z.B. Architekten bzw. Spezialrabatt für Dauerbezüger wie amtl. Stellen).

  • etc.

3.2. Datenfluss

Im GeoShop wird die Verrechnungsfunktion durch eine iG/Script Skript (s.a. [3]) implementiert. Mit iG/Script erhält man die notwendige Flexibilität um beliebige Tarife (inkl. MwSt. etc.) berechnen zu können. Der Skript wertet dazu die Parameter aus, welche dem Skript vom GeoShop Client Applet via GeoShop übermittelt werden. Die folgende Graphik zeigt den Datenfluss bei einer online Preisberechnung:

Abbildung 2. Datenfluss bei der Preisberechnung

Datenfluss bei der Preisberechnung

Erläuterungen zur letzten Graphik:

  • Der Benutzer selektiert die Daten mit dem GeoShop Client Applet und klickt auf die Funktion Preis berechnen.

  • Das Applet schickt alle Bestellparameter (Produkt, Ausschnitt, Ebenen, etc.) an den GeoShop.

  • Der GeoShop ruft den für das Produkt definierten Preisskript auf.

  • Der Preisskript berechnet auf Grund der Bestellparameter den Preis und gibt diese an den GeoShop zurück.

  • Der GeoShop leitet die Preisberechnung weiter an das GeoShop Client Applet (Preisantwort).

  • Das GeoShop Client Applet zeigt den Preis an.

Abbildung 3. Preisantwort im GeopShop Client

Preisantwort im GeopShop Client

3.3. Skriptparameter

Dem Preisskript werden alle Bestellparameter übergeben dazu gehören (abschliessende Aufzählung in 5.2):

  • Der Name des Datenprodukts.

  • Die Namen der gewählten Ebenen.

  • Der Name des aktuellen Benutzers.

  • etc.

Zusätzlich können vom GeoShop (vor dem Aufruf des Preisskripts) noch folgende zusätzliche Parameter aus den Daten berechnet werden:

  • Ein Verschnitt der Bestellfläche mit einem beliebigen Flächennetz (= Tarifzonen, z.B. Zoneneinteilung). Der Anteil jeder Zonenart wird dem Preisskript als Liste übergeben.

  • Ein Verschnitt mit einer beliebigen Punktebene. Dem Preisskript wird eine Liste der Anzahl Punkte pro Punktart übergeben.

Damit die zusätzlichen Parameter berechnet werden, muss die Tarifzone bzw. die Punktebene entsprechend konfiguriert werden (s.a. Kapitel 4).

3.4. Skriptresultat

Der Preisskript muss das Resultat in einer Textdatei (price.txt) zurück liefern. Die ersten zwei Zeilen sind reserviert und müssen wie folgt gefüllt werden:

  • 1. Zeile: Währung, z.B. SFr.

  • 2. Zeile: Preis (ohne Währung), z.B. 185.50.

Das GeoShop Client Applet zeigt die Resultatdatei dem Benutzer an (bis auf die ersten beiden Zeilen). Die ersten beiden Zeilen werden zur Bestellung in der Bestelldatenbank (server\orders) gespeichert, falls der Benutzer die Bestellung auch tatsächlich auslöst.