Auf dieser Seite wird die Standard SQL-View für die Statistik-Abfrage definiert.
Die Abfrage basiert auf der bei Kunden üblich eingesetzten Pivot-View. Es werden aber Fremdschlüssel ausgegeben.
Anforderungen
Die Anforderungen an statistische Daten sind für den Aussendienst sehr zentral. Im MVP des Aussendienstportals sind verschiedene Perspektiven auf statistische Daten vorgehesen. Diese werden nachfolgend beschrieben.
Perspektive | Kontext | Beschreibung | Datenbasis |
---|---|---|---|
Performance-Indikator | Kunden-Dashboard | Monatliche Umsatzentwicklung mit Vorjahresvergleich des ausgewählten Kunden | SQLView_vf_performanceindicator |
Topsellers | Kunden-Dashboard | Top 5 Artikel gemäss Umsatz | SQLView_vf_topsellers |
Sortiment | Detailansicht | Alle bezogenen Artikel des ausgewählten Kunden verdichtet pro Artikel. Zeitraum wählbar nach 30, 90 oder 180 Tagen oder benutzerdefinierter Zeitraum → Drilldown-Funktion auf einzelne Bewegung wünschenswert | SQLView_vf_statistics |
Performance Indikator und Topseller sind auch denkbar für System-Dashboard
Performance-Indikator
- Auf dem System-Dashboard sieht der Aussendienst seine Umsatzentwicklung der letzten 12 Monate pro Monat mit Vorjahresvergleich über all seine Kunden
- Auf dem Kunden-Dashboard sieht der Aussendienst seine Umsatzentwicklung der letzten 12 Monate pro Monat mit Vorjahresvergleich für den spezifischen Kunden
- Monate ohne Umsatz sollen erscheinen ohne Umsatzbalken
Verworfen in Phase 1
- Ein Filter auf der Statistik, mit welchem man zum Beispiel nach Artikeltyp selektionieren kann
- Ein Auswahlmöglichen, mit welchem man andere Daten anstelle des Umsatzes anzeigen kann (z.B. Menge, Liter, Deckungsbeitrag)
Mockup Performance Indikator
Field Mapping Performance-Indikator
SELECT DISTINCT
View_field | Entity.attribute | type | Description |
---|---|---|---|
AddressId | Bewegung.Bew_AdresseID | foreign key | ID der Adresse |
DeliveryMonth | Monat vom Lieferdatum | ||
DeliveryYear | Jahr vom Lieferdatum | ||
Quantity | Summe der Mengen | ||
Selling_amount | Summe des Nettoerlöses |
Topsellers
- Auf dem System-Dashboard sieht der Aussendiest die 10 Topseller aller seiner Kunden.
- Auf dem Kunden-Dashboard sieht der Aussendienst die 5 Topseller des entsprechenden Kunden sind
Mockup Topsellers
Field Mapping Topsellers
SELECT DISTINCT
View_field | Entity.attribute | type | Description |
---|---|---|---|
ArticleId | Bewegung.Bew_ArtikelID | foreign key | ID des Artikels |
AddressId | Bewegung.Bew_AdresseID | foreign key | ID der Adresse |
Quantity | Summe der Mengen | ||
Selling_amount | Summe des Nettoerlöses |
Filter
DB | View | Value | |
---|---|---|---|
where | Bewegung.Bew_Vorgang | Process | -2 |
and | Bewegung.Bew_AdresseID | AddressId | is not null |
and | Bewegung.Bew_GegenBewegungId | - | is null |
and | Bewegung.Bew_Datum | >= CURRENT DATE - 365 |
Group by Klausel
ArticleId |
AddressId |
Order by Klausel
Selling_amount |
Sortiment
Mockup Sortiment
Field Mapping Sortiment
View_field | Entity.attribute | type | Description |
---|---|---|---|
ArticleId | Bewegung.Bew_ArtikelID | foreign key | ID des Artikels |
AddressId | Bewegung.Bew_AdresseID | foreign key | ID der Adresse |
OrderId | Bewegung.Bew_BelegID | foreign key | ID des Belegs |
OrderPositionId | Bewegung.Bew_BelegID | foreign key | ID der Artikleposition |
WarehouseId | Bewegung.Bew_LagerID | foreign key | ID des Lagers |
Unit_size_cl | Abfuellung.Abf_InhaltInCl | numeric | Flaschengrösse in Zentiliter (cl), default 1 |
Statistic_relevance | Bewegung.Bew_Anrechenbar | integer | 0 = Umsatz und Menge 2 = Nur Umsatz 3 = Nur Menge (Gratiswaren) |
Delivery_no | Bewegung.Bew_BelegNr | integer | Lieferschein-Nr |
Delivery_date | Bewegung.Bew_Datum | date | Lieferdatum gemäss Datum Lieferschein |
Delivery_month | integer | Monat der Lieferung | |
Delivery_year | integer | Jahr der Lieferung | |
Billing_no | Rechnungs-Nr. | ||
Billing_date | Bewegung.Bew_AbgerechnetAm | date | Rechnungsdatum gemäss Datum der Rechnung |
Billing_month | integer | Monat der Rechnung | |
Billing_year | integer | Jahr der Rechnung | |
Quantity_unit | Bewegung.Bew_Menge | numeric | Menge Stück/Flasche |
Quantity_package | Bewegung.Bew_MengeGG | numeric | Menge Grossgebinde |
Quantity_litre | numeric | Menge in Liter | |
Quantity_free | numeric | Menge Gratisware | |
Process | Bewegung.Bew_Vorgang | integer | ist immer -2 = Warenausgang |
Selling_price | Bewegung.Bew_Preis | numeric | Verkaufspreis |
Selling_amount | Bewegung.Bew_Nettoerloes | numeric | Gesamtbetrag Verkauf |
Valuation_price_at_sale | Bewegung.Bew_Einstandspreis | numeric | Bewertungspreis zum Zeitpunkt des Verkaufs |
Valuation_price_current | Artikel.Art_LagerPreis | numeric | Aktueller Bewertungspreis gemäss Artikel |
Purchase_price | EKPreis.EK_Einstandspreis | numeric | Aktueller Einstandspreis gemäss gültigem Einkaufspreis zum Artikel |
Purchase_value | numeric | Einkaufswert zu
| |
Profit_margin | numeric | Deckungsbeitrag / Marge des Verkaufs in CHF | |
Profit_margin_percentage | numeric | Deckungsbeitrag / Marge des Verkaufs in Prozent % |
Filter
DB | View | Value | |
---|---|---|---|
where | Bewegung.Bew_Vorgang | Process | -2 |
and | Bewegung.Bew_AdresseID | AddressId | is not null |
and | Bewegung.Bew_GegenBewegungId | - | is null |
and | Bewegung.Bew_Datum | CURRENT DATE - 730 |
Anhang
Modellerweiterung ViewVinX_mfstatitics mit Definition für View vf_statistics