MIS Abfragen via Service (LiveDocumentation)

Nachfolgend wird in kompakter Form beschrieben wie man über Services und MIS-BOs auf die MIS-Daten von OpaccERP zugreifen kann. Dabei ist zu beachten, dass auch über Services nur solche Daten (MIS-Kummulationen) ausgelesen werden können die in OpaccERP entsprechend geführt werden. Wenn beispielsweise im Opacc Studio die Kummulation KUNDE x ARTIKELGRUPPE nicht existiert, kann sie auch nicht via Service ausgelesen werden.

MIS BusinessObjcts (BO)

Folgende BusinessObjects werden verwendet:
  • MisSal
  • MisPur
  • MisAsst
  • MisSalView
  • MisPurView
  • MisAsstView

BO MisSal, MisPur und MisAsst

Die speziellen BOs MisSal, MisPur und MisAsst enthalten sämtliche MIS-Kumulationen, abhängig von den im Opacc Studio vorgenommenen Einstellungen. (Kumulations-Codes, Kumulations-IDs und Periode) Diese BOs sind keine ordered Collections. Bei der Verwendung des Service GetBo muss demzufolge immer ein Startpunkt und der Operator equal angegeben werden.
Der Startparameter setzt sich aus den zwei Segmenten MisBaseId und MisDateId zusammen.
Wichtig
Wichtig
Die beiden Segmente werden mit Komma "," getrennt.
MisBaseId
Dieses Segment enthält Kumulations-Codes und Kumulations-IDs.
Je nach MIS-Stufe kann dieses Segment bis zu 3 Werte-Paare enthalten. Die Codes sowie die IDs werden mit dem Delimiter ":" getrennt.
Die möglichen Kumulations-Codes können via LiveDocumentation mit dem Service GetInfoCodeValue für die Konstantentabellen MisSalCumul, MisPurCumul und MisAssCumul eingesehen werden.
 
Der Parameter MisBaseId bestimmt welche MIS-Kumulationen ausgelesen werden sollen.
Welche Kumulationen möglich sind, lässt sich mit folgenden Services herausfinden:
  • MisSal_GetCumul
  • MisPur_GetCumul
  • MisAss_GetCumul
Beispiele:
Total
MIS-Zahlen Total
Cust:3
MIS-Zahlen für den Kunden mit der Adress Nr. 3
3 = BoId des Kunden.
Cust:3:Art:34
MIS-Zahlen für den Kunden 3 mit dem Artikel 34
3 = BoId des Kunden
43 = BoId des Artikels (nicht die Artikel Nr.)
Empl:22:Cust:25:Art:54
MIS-Zahlen für Mitarbeiter x Kunde x Artikel
PurCharge:14
MIS-Zahlen für den Einkaufs Zu-/Abschlag (ZA 14)
SalDocAmntCharge:12
MIS-Zahlen für den Verkaufsdokument Zu-/Abschlag (ZA 12)
SalDcoItemAmntCharge:7
MIS-Zahlen für den Verkaufspositions-Betrag Zu-/Abschlag (ZA 7)
SalDocItemPriceCharge:9
MIS-Zahlen für den Verkaufspositions-Preis Zu-/Abschlag (ZA 9)
 
MisDateId
Dieses Segment beschreibt die Kumulierungs-Periode bestehend aus JahrTyp, Jahr, Beginn der Periode und Länge der Periode
  • JahrTyp: "C" oder "B" (Kalender- oder Geschäftsjahr)
  • Jahr: Kann fixiert oder relativ definiert werden.
    fixiert: z.B. "2012"
    relativ: z.B. "-1" (aktuelles Jahr -1)
    Default: Leer = aktuelles Jahr
  • Beginn der Periode: Kann fixiert oder relativ definiert werden.
    Die Definition kann als Monat, Quartal oder Semester erfolgen. Angaben ohne M, Q oder S gelten als Monat.
    fixiert: z.B. "1" (Monat 1, abhängig von JahrTyp) oder "Q" für Quartal oder "S" für Semester.
    relativ: z.B. "-12", "Q-1" oder "S-2"
    Default: Leer oder M = aktueller Monat
    2 oder M2 = zweiter Monat
    -2 oder M-2 = zwei Monate zurück (ausgehend vom aktuellen Monat)
    Q = aktuelles Quartal
    Q2 = zweites Quartal
    Q-2 = zwei Quartale zurück (ausgehend vom aktuellen Quartal)
    S = aktuelles Semester
    S2 = zweites Semester
    S-1 = ein Semester zurück (ausgehend vom aktuellen Semester)
  • Länge der Periode: Anzahl Monate
    Default: Entsprechend "Beginn Periode" ("6" wenn "S", "3" wenn "Q", ansonsten "1")
    n oder –n = Anzahl Monate. Bei Minus wird der Beginn der Periode als Ende gesetzt.
    Bsp. 4, -2 => April -2 => März bis April
    Beispiel für die Berechnung. Ausgehend von "aktueller Monat" = April
    Aktueller Monat -1 = April
    Aktueller Monat -2 = März
    Aktueller Monat -3 = Februar usw.
Hinweis
Hinweis
Egal in welcher Form der Parameter MisDateId bei einem GetBo Service eingegeben wird, das Attribut MisDateId im Result, bezieht sich immer auf das Kalenderjahr.
Beispiel:
GetBo auf das BO MisSal.
Startpunkt
Cust:[Kunden Nr.],B:2012:Q1
Suchanweisung
e
Index
Anzahl Datensätze
Fixierte Segmente
Filter
Rückgabe-Objekt
MisSal.MisDateId
Virtuelle Attribute
Result:
C:2012:1:3
Das Attribut MisDateId im Result, bezieht sich immer auf das Kalenderjahr.
 
Beispiele:
B:-1:Q1: (Erstes Quartal des vorherigen Geschäftsjahres.)
C::S-1:3 (Die ersten drei Monate des vorherigen Semsters.)
C:2012:10:4 (Vier Monate ausgehend vom Oktober 2012. Also Oktober 2012 bis Januar 2013)
 
Anforderung: Es soll der Juli 2012 ausgewertet werden.
Lösung: 2012:7:1
 
Anforderung: Es von April 2013 bis Juli 2013 ausgewertet werden.
Lösung: 2013:4:4 (Startmonat = 4, Auszugebende Anzahl Monate = 4 "April, Mai, Juni, Juli")
 
Anforderung: Es soll der komplette Umsatz des Kunden 10040 im Jahr 2012 ausgewertet werden.
Lösung: Cust:10040,C:2012:1:12

BO MisSalView, MisPurView und MisAsstView

Mit Hilfe dieser BOs ist es möglich, mehrstufige Kumulationen abzufragen. Beispielsweise dann, wenn man die Kumulation Kunde x alle Artikel anzeigen will. Das Resultat eines GetBo Service auf das BO MisSalView, liefert dann die MisBaseId zurück, mit welcher der Link auf das BO MisSal erfolgt. Entsprechend können dann die effektiven MIS Zahlen abgefragt werden.
Wichtig
Wichtig
MIS-relevante BOs besitzen implizite Links zu den MIS-Kumulations-BOs (MisSal, MisPur, MisAsst) so dass im entsprechenden Kontext nur noch die Zeitperiode bestimmt werden muss.
Bei den MIS-BOs kann für die Periodenbestimmung das virtuelle Attribut #RelationArg verwendet werden (#RelationArg=JahrTyp:Jahr:Beginn:Länge).
Der Startpunkt beim Service GetBo muss mindestens zwei Stufen beinhalten.
Beispiel:
Es sollen für einen bestimmten Kunden alle Artikel angezeigt werden. Die Periode entspricht dem gesamten Kalenderjahr.
Hierfür wird ein GetBo auf das BO MisSalView ausgeführt.
Startpunkt
Cust:[Kunden Nr.]:Art
Suchanweisung
ne
Index
1
Anzahl Datensätze
0
Fixierte Segmente
Filter
Rückgabe-Objekt
MisSalView.MisBaseId
Virtuelle Attribute
#RelationArg=C:2012:1:12
Das Resultat dieses GetBo sind nun MisBaseIds welche direkt auf das BO MisSal verlinken.
Über den Link vom BO MisSalView auf das BO MisSal lassen sich die Attribute von MisSal direkt beim GetBo auf MisSalView ausgeben.
 
Beispiel:
Es sollen für einen bestimmten Kunden alle Artikelumsätze innerhalb des gesamten Kalenderjahres angezeigt werden.
Hierfür wird ein GetBo auf das BO MisSalView ausgeführt.
Startpunkt
Cust:[Kunden Nr.]:Art
Suchanweisung
ne
Index
1
Anzahl Datensätze
0
Fixierte Segmente
Filter
Rückgabe-Objekt
MisSalView.BoId, MisSalView.MisBaseId, MisSal.Turnover
Virtuelle Attribute
#RelationArg=C:2012:1:12
Resultat (in LiveDocumentation)
Praxis-MIS_Abfragen_via_Service_1.jpg
 
Beispiel:
Es soll für einen bestimmten Kunden der Umsatz mit einem bestimmten Artikel für die Monate 1 bis 10 innerhalb des Kalenderjahres angezeigt werden.
Hierfür wird ein GetBo auf das BO MisSalView ausgeführt.
Beachten Sie, dass in diesem Fall beim Artikel die interne Artikelnummer angegeben werden muss!
Startpunkt
Cust:[Kunden Nr.]:Art:[Interne Artikelnummer]
Suchanweisung
e
Index
1
Anzahl Datensätze
0
Fixierte Segmente
Filter
Rückgabe-Objekt
MisSalView.BoId, MisSalView.MisBaseId, MisSal.Turnover
Virtuelle Attribute
#RelationArg=C:2013:1:10
Resultat (in LiveDocumentation)
Praxis-MIS_Abfragen_via_Service_11.jpg
 
Das Ganze funktioniert analog für die BOs MisPurView – MisPur und MisAsstView – MisAsst
 
Hilfreiche Services:
  • MisSal_GetYears - Jahresangaben holen für Verkauf
  • MisSal_GetCumul - Verkaufs-MIS-Kreise holen
  • MisPur_GetYears - Jahresangaben holen für Einkauf
  • MisPur_GetCumul - Einkaufs-MIS-Kreise holen
  • MisAss_GetYears - Jahresangaben holen für Service
  • MisAss_GetCumul - Servicewesen-MIS-Kreise holen

Beispiele

Umsatz eines Kunden ausgeben

Der Umsatz des Kunden 1056 soll für das Kalenderjahr 2012 ausgegeben werden.
Ansicht im WS 71000
Praxis-MIS_Abfragen_via_Service_2.jpg
 
Dieselbe Abfrage in der LiveDocumentation.
Praxis-MIS_Abfragen_via_Service_3.jpg
 
Resultat:
Praxis-MIS_Abfragen_via_Service_4.jpg
 

Umsatz eines Mitarbeiters mit einem Kunden

Es soll der Umsatz des Mitarbeiters 1056 ausgegeben werden, welchen dieser Mitarbeiter mit dem Kunden 1085 erzielt hat.
Ansicht im WS 71000
Praxis-MIS_Abfragen_via_Service_5.jpg
 
Dieselbe Abfrage in der LiveDocumentation.
Praxis-MIS_Abfragen_via_Service_6.jpg
 
Resultat:
Praxis-MIS_Abfragen_via_Service_7.jpg
 

Ausgeben der Dokument Zu-/Abschläge

Es soll der Dokument Zu-/Abschlag 10 für das Kalenderjahr 2010 ausgegeben werden.
Ansicht im WS 71000
Praxis-MIS_Abfragen_via_Service_8.jpg
 
Dieselbe Abfrage in der LiveDocumentation.
Praxis-MIS_Abfragen_via_Service_9.jpg
 
Resultat:
Praxis-MIS_Abfragen_via_Service_10.jpg