Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 13 Next »

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.

PerspektiveKontextBeschreibungDatenbasis
Performance-IndikatorKunden-DashboardMonatliche Umsatzentwicklung mit Vorjahresvergleich des ausgewählten KundenSQLView_vf_performanceindicator
TopsellersKunden-DashboardTop 5 Artikel gemäss UmsatzSQLView_vf_topsellers
SortimentDetailansicht

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_fieldEntity.attributetypeDescription
AddressIdBewegung.Bew_AdresseIDforeign keyID der Adresse
DeliveryMonth
vf_performanceindicator.DeliveryMonth
MONTH( Bewegung.Bew_Datum )

Monat vom Lieferdatum
DeliveryYear
vf_performanceindicator.DeliveryYear
YEAR( Bewegung.Bew_Datum )

Jahr vom Lieferdatum
Quantity
vf_topsellers.quantity
SUM (IF (Bewegung.Bew_Anrechenbar IN (0,3)) THEN (IsNull(Bewegung.Bew_Menge,0)) ELSE 0 ENDIF)

Summe der Mengen
Selling_amount
vf_topsellers.selling_amount
SUM (IF (Bewegung.Bew_Anrechenbar IN (0,2)) THEN (IsNull(Bewegung.Bew_NettoErloes,Bewegung.Bew_Menge * Bewegung.Bew_Preis)) ELSE 0 ENDIF)

Summe des Nettoerlöses

Filter


DBViewValue
whereBewegung.Bew_VorgangProcess-2
andBewegung.Bew_AdresseIDAddressIdis not null
andBewegung.Bew_GegenBewegungId-is null
andBewegung.Bew_Datum
>= CURRENT DATE - 730

Group by Klausel

AddressId
DeliveryMonth
DeliveryYear

Order by Klausel

Selling_amount

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_fieldEntity.attributetypeDescription
ArticleIdBewegung.Bew_ArtikelIDforeign keyID des Artikels
AddressIdBewegung.Bew_AdresseIDforeign keyID der Adresse
Quantity
vf_topsellers.quantity
SUM (IF (Bewegung.Bew_Anrechenbar IN (0,3)) THEN (IsNull(Bewegung.Bew_Menge,0)) ELSE 0 ENDIF)

Summe der Mengen
Selling_amount
vf_topsellers.selling_amount
SUM (IF (Bewegung.Bew_Anrechenbar IN (0,2)) THEN (IsNull(Bewegung.Bew_NettoErloes,Bewegung.Bew_Menge * Bewegung.Bew_Preis)) ELSE 0 ENDIF)

Summe des Nettoerlöses

Filter


DBViewValue
whereBewegung.Bew_VorgangProcess-2
andBewegung.Bew_AdresseIDAddressIdis not null
andBewegung.Bew_GegenBewegungId-is null
andBewegung.Bew_Datum
>= CURRENT DATE - 365

Group by Klausel

ArticleId
AddressId

Order by Klausel

Selling_amount

Sortiment

Mockup Sortiment


Field Mapping Sortiment

View_fieldEntity.attributetypeDescription
ArticleIdBewegung.Bew_ArtikelIDforeign keyID des Artikels
AddressIdBewegung.Bew_AdresseIDforeign keyID der Adresse
OrderIdBewegung.Bew_BelegIDforeign keyID des Belegs
OrderPositionIdBewegung.Bew_BelegIDforeign keyID der Artikleposition
WarehouseIdBewegung.Bew_LagerIDforeign keyID des Lagers
Unit_size_clAbfuellung.Abf_InhaltInClnumericFlaschengrösse in Zentiliter (cl), default 1
Statistic_relevanceBewegung.Bew_Anrechenbarinteger

0 = Umsatz und Menge

2 = Nur Umsatz

3 = Nur Menge (Gratiswaren)

Delivery_noBewegung.Bew_BelegNrintegerLieferschein-Nr
Delivery_dateBewegung.Bew_DatumdateLieferdatum gemäss Datum Lieferschein
Delivery_month
Berechnung Delivery_month
MONTH Bewegung.Bew_Datum
integerMonat der Lieferung
Delivery_year
Berechnung Delivery_year
YEAR Bewegung.Bew_Datum
integerJahr der Lieferung
Billing_no
Berechnung Billing_no
IF NOT Bewegung.Bew_AbgerechnetAm IS NULL THEN Beleg.Bel_BelegNr ENDIF

Rechnungs-Nr.
Billing_dateBewegung.Bew_AbgerechnetAmdateRechnungsdatum gemäss Datum der Rechnung
Billing_month
Berechnung Billing_month
MONTH Bewegung.Bew_AbgerechnetAm
integerMonat der Rechnung
Billing_year
Berechnung Billing_year
YEAR Bewegung.Bew_AbgerechnetAm
integerJahr der Rechnung
Quantity_unitBewegung.Bew_MengenumericMenge Stück/Flasche
Quantity_packageBewegung.Bew_MengeGGnumericMenge Grossgebinde
Quantity_litre
Berechnung Quantity_litre
Quantity_unit * ( Unit_size_cl / 100 )
numericMenge in Liter
Quantity_free
Berechnung Quantity_free
if Statistic_relevance = 3 then Quantity_unit
numericMenge Gratisware
ProcessBewegung.Bew_Vorganginteger

ist immer -2 = Warenausgang

Selling_priceBewegung.Bew_PreisnumericVerkaufspreis
Selling_amountBewegung.Bew_NettoerloesnumericGesamtbetrag Verkauf
Valuation_price_at_saleBewegung.Bew_EinstandspreisnumericBewertungspreis zum Zeitpunkt des Verkaufs
Valuation_price_currentArtikel.Art_LagerPreisnumericAktueller Bewertungspreis gemäss Artikel
Purchase_priceEKPreis.EK_EinstandspreisnumericAktueller Einstandspreis gemäss gültigem Einkaufspreis zum Artikel
Purchase_value
Berechnung Purchase_value
Quantity_unit * ( IsNull
                  ( IsNull
                    ( IsNull( Valuation_price_at_sale, Purchase_price )
                    ), Valuation_price_current
                  ), 0
                 )
numeric

Einkaufswert zu

  • Valuation_price_at_sale
  • default Purchase_price
  • default Valuation_price_current
  • default 0


Profit_margin
Berechnung Profit_margin
Selling_amount - Purchase_value
numericDeckungsbeitrag / Marge des Verkaufs in CHF

Profit_margin_percentage

Berechnung Profit_margin_percentage
(if (Selling_amount <> 0) then (Profit_margin / Selling_amount ) else 0 endif)
numericDeckungsbeitrag / Marge des Verkaufs in Prozent %

Filter


DBViewValue
whereBewegung.Bew_VorgangProcess-2
andBewegung.Bew_AdresseIDAddressIdis not null
andBewegung.Bew_GegenBewegungId-is null
andBewegung.Bew_Datum
CURRENT DATE - 730


Anhang

Modellerweiterung ViewVinX_mfstatitics mit Definition für View vf_statistics

  • No labels