Andreas Unkelbach
Logo Andreas-Unkelbach.de

Artikel zum Stichwort PSM

Alle folgende Artikel sind unter den angegeben Stichwort (TAG) einsortiert. Sollte der gesuchte Artikel nicht dabei sein kann hier auch die Artikelsuche weiter helfen.

Oft sind aber auch die aktuellen Artikel in der jeweiligen Kategorie im Menü interessant.
Espresso Tutorial - die digitale SAP Bibliothek

SAP Fachliteratur ist unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.



Donnerstag, 10. August 2017
21:53 Uhr

CO Objekte indirekt auswerten Teil 2/2 hier: Innenauftrag zum Fond WIPLAN

Nachdem im ersten Teil dieser Kurzserie (siehe Artikel "CO Objekte indirekt auswerten Teil 1/2 hier: Anhand Kostenstelle im Report Writer zugeordnete CO Objekte Innenauftrag und Kostenstelle") anhand des Merkmal RESP_FLAG  die zur selektierten Kostenstelle zugeordneten CO Objekte (insbesondere die über die verantwortliche Kostenstelle zugeordneten Innenaufträge) im Report Painter / Report Writer ausgewertet worden sind, stellt sich die Frage, ob eine vergleichbare Funktion auch im Public Sector Management für die Rechercheberichte im Haushaltsmanagement möglich ist.

Im Artikel "Drittmittelstatistik nach LOMZ über Recherchebericht und SAP Query" habe ich schon kurz beschrieben, wie ein entsprechender Bericht aufbereitet werden kann und die unterschiedlichen Ausgabeformen sind auch im Artikel "Grundlagen Rechercheberichte Ausgabeart grafische Berichtsausgabe oder klassische Recherche" erläutert worden.

Dabei hat PSM-FM eine etwas andere Datenstruktur wie CO was auch schon im Artikel "Salden je Finanzposition mit Unterscheidung Personal oder Sachaufwand aus PSM-FM durch Query über logische Datenbank FMF" angedeutet ist.

FMDERIVE und Fond WIPLAN für Landesmittel (Finanzstelle oder Landesprojekte)

In der HHM-Ableitungsstrategie wird im ersten Schritt ein Fond für den Landeshaushalt (hier WIPLAN) gesetzt. Dieser wird sowohl genutzt wenn Buchungen auf Kostenstellen (aus denen die Finanzstelle abgeleitet wird) oder wenn CO Innenaufträge bebucht werden zu denen keine entsprechende Fonds angelegt worden sind bebucht. Da diese ebenfalls Landesmittelprojekte sind landen diese gemeinsam mit den Kostenstellen auf den Fond WIPLAN.

Auf die entsprechenden Ableitungsstrategien für FMDERIVE möchte ich nun nicht näher eingehen, jedoch soll ein Hinweis auf eine Auswertung der CO Innenaufträge hinter den Fond WIPLAN hingewiesen werden.

Anpasssung Bericht zum Formular um Merkmal CO Innenauftrag

Entsprechend soll im Recherchebericht das Merkmal CO Innenauftrag in den ericht übernommen werden, so dass Kennzahlen zum Fond WIPLAN auch für zugeordnete CO Innenaufträge ausgewertet werden können.

Im Recherchebericht ist es möglich in der Transaktion FMEL (Bericht ändern) das Merkmal  AUFTRAG mit aufzunehmen. Damit erscheint dann ebenfalls der CO Innenauftrag mit in der Navigation und es kann zum Fond WIPLAN (Landesmittel) auch die dahinter liegenden CO Innenaufräge aus Sicht des Haushaltsmanagement ausgewertet werden. Somit kann also von der Navigation das Merkmal Innenauftrag zur Ansicht im Aufrissbereich übernommen werden. Dieses funktioniert sowohl im klassischen Recherchebericht als auch bei der graphischen Berichtsausgabe, wie diese im Artikel "Grundlagen Rechercheberichte Ausgabeart grafische Berichtsausgabe oder klassische Recherche" vorgestellt worden ist.

Im Ergebnis kann es hier ebenso interessant sein den Fond WIPLAN auszuwerten und so sowohl Buchungen auf der Finanzstelle als auch den einzelnen CO Innenaufträgen zu haben, wie die Möglichkeiten über die Auswertung eines Profit-Center im Ergebnis die CO Objekte Kostenstelle und Innenauftrag näher zu betrachten, wie im Artikel "Erweiterung Bibliothek 8A2 Ausweis Kostenstelle und Innenauftrag bei Selektion Profit-Center in ReportWriter" durch Aktivierung des Merkmal Kostenselle und Innenauftrag bei der Auswertung in der Profit-Center-Rechnung beschrieben worden ist

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Sonntag, 6. August 2017
15:41 Uhr

Grundlagen Rechercheberichte Ausgabeart grafische Berichtsausgabe oder klassische Recherche

Im Buch »Berichtswesen im SAP®-Controlling« hatte ich mich etwas intensiver mit der Erstellung von Rechercheberichten im Controlling beschäftigt. Die Erstellung eines Berichtes ist im Artikel "Grundlagen: Was sind die Unterschiede zwischen Report Painter und Rechercheberichte?" schon ausführlicher behandelt worden und anhand der Beispiele "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget" sowie "»Rechercheberichte de lux« im Modul PSM FM Haushaltsmanagement" vorgestellt worden.

In diesem Artikel möchte ich, nachdem ein entsprechendes Formular erstellt worden ist und dieses einem Bericht zugeordnet wurde auf eine Besonderheit bezüglich der Berichtsausgabe eingehen.

In der Registerkarte Ausgabeart der Funktion Bericht ändern (aufrufbar für PSM-FM über die Transaktion FMEL und für die Profit-Center-Rechnung über die Transaktion KE82) können mehrere Punkte zur als Ausgabeart eines Berichtes gewählt werden.
  • grafische Berichtsausgabe
  • klassische Recherche
  • Objektliste (ALV)
  • XXL (Tabellenkalkulation)
Daneben gibt es noch die Funktion "Auf Selektionsbild auswählbar" wodurch zwischen unterschiedliche Berichtsarten beim Starten des Berichtes gewechselt werden können.

Bisher habe ich hier immer die "klassische Recherche" bevorzugt jedoch finden sich auch in der grafischen Berichtsausgabe einige Vorteile, weswegen ich beide Ausgabearten gegenüberstellen möchte. Eine reine Listausgabe (ALV oder XXL) dürfte selbst erklärend sein und kommt für ein interaktives Reporting nicht direkt in Frage.

Einsatzgebiet grafische Berichtsausgabe in der Profit-Center-Rechnung

Das Stichwort interaktives Reporting weist auch schon auf ein Einsatzgebiet der Rechercheberichte im SAP Standard hin. In der Profit-Center-Rechnung finden sich Rechercheberichte im SAP Menü unter
  • Rechnungswesen
  • Controlling
  • Profit-Center-Rechnung
  • Infosystem
  • Berichte zur Profit-Center-Rechnung
  • Interaktives Reporting
Hierbei handelt es sich um Rechercheberichte in der Profit-Center-Rechnung die als grafische Berichtsausgabe genutzt werden.

Daher möchte ich im folgenden auf den Aufbau der beiden Berichtsausgabearten eingehen.

Grafische Berichtsausgabe

In der grafischen Berichtsausgabe ist der Bildschirm in drei Bereiche (Fenster) aufgeteilt. In der Navigation befinden sich die für den Bericht verfügbaren Merkmale während daneben im Aufrissbereich die gewählten Merkmale entsprechend der Berichtsdefinition (basierend auf das Formular) aufgelistet werden. Im unteren Fenster werden als Detail die Summen der ausgewerteten Daten je Berichtsspalte aufgeführt und bezieht sich stets auf die im Aufrissbereich dargestellten Merkmale.

Dieses ist auch bei Wahl der grafischen Berichtsausgabe durch Wahl der Ausgabebereiche "Info, Navigation, Aufriß, Detail" festgelegt. Hier kann grundsätzlich auch eine andere Form gewählt werden, so dass als Minimalform nur "Navigation, Aufriß" gewählt werden.

Allerdings empfinde ich diese Form der Darstellung mit allen vier Informationen als sehr sinnvoll.

Wie für Rechercheberichte üblich kann mit der Methode Slide and dice ("In Scheiben schneiden und drehen") der aufgerufene Bericht nach eigenen Bedürfnissen angepasst werden. Hierzu kann die Darstellung der Spalten (Kennzahlen aus dem Formular) nach einen anderem in der Navigation vorhandenen Merkmal ausgewertet werden.

Hierzu kann mit gedrückter Maustaste ein Merkmal aus der Navigation in den Aufrissbereich gezoen werden und so wird dieses dann dargestellt. Dies funktioniert auch per Doppelklick auf ein Merkmal in der Navigation.

Umgekehrt kann aber auch ein Merkmal aus dem Aufrissbereich in die Navigation gezogen werden, so dass hierzwischen den einzelnen Merkmalwerten navigiert werden kann. Dieses funktioniert auch per Doppelklick auf das entsprechende Merkmal im Aufrissbereich.

Über die Schatflcäehe Exportieren (oder Tastenkombination STRG + UMSCH + F12) lassen sich die dargestellten Berichte exportieren.Es empfiehlt sich die exportierte Datei zu sichern und mit der gespeicherten Datei dann zu arbeiten, da bei Rückkehr nach SAP die Datei ohne nachzufragen geschlossen wird ohne Möglichkeit die Änderungen zu speichern.

Sofern ein Merkmal mit einer Hierarchie bspw. Finanzstellen oder Finanzpositionen im Modul PSM-FM gewählt wird ist ein Export über die Schaltfläche nicht möglich. Hierzu muss die Berichtsart klassischer Recherchebericht gewählt werden.

Klassischer Recherchebericht

Bei der klassischen Recherche ist die Navigation oberhalb des Aufrissbereiches dargestellt (oberhalb einer Tabelle) und nicht als Extrafenster. Um hier von einem Merkmal auf ein anderes zu wechseln ist dieses in dar Navigation auszuwählen (Klick mit der Maus) und danach die erste Spaltenüberschrift zu wählen. Danach sind die Merkmale ebenfalls ausgetauscht. Zum Navigieren innerhalb eines Merkmals kann dieses ebenfalls per Doppelklick im Aufrissberiech übernommen werden, so dass zwischen den einzelnen Merkmalen navigiert werden kann.

Der Vorteil im klassischen Recherchebericht ist, dass hier auch Berichte nach Hierarchiebereichen exportiert werden können.  Wird bspw. das Merkmal Finanzposition  statt Fonds dargestellt können diese Daten dennoch über die Schaltfläche Exportieren nach Excel übergeben werden.

Hierzu muss dann nur eine Ausgabedatei (bspw. c:muster.dat) und zum Start von Excel als Programm C:EXCELEXCEL sowie die Option Datei öffnen. Damit startet automatisch Excel und ein Speiuchern der Datei ist damit möglich.

Fazit Pro und Contra der einzelnen Berichtsausgabeformen

Aus Anwendersicht ist die grafische Berichtsausgabe sicherlich einfacher und intuitiver zu bedienen, während die klassiche Recherche den Vorteil hat, dass hier auch alle Merkmale exportiert werdne können. Für aktuelle Berichte habe ich mich daher entschieden die Option grafische Berichtsausgabe für Rechercheberichte zu aktivieren und als Ergänzung die Option "Auf Selektionsbild auswählbar" markiert. Hierdurch sind Benutzerfreundlichkeit aber auch weitergehende Funktionen sinnvoll miteinander verzahnt.

Nachdem nun also die einzelnen Vorzüge insbesondere der Export nach Excel vorgestellt sind, möchte ich noch auf eine Anreicherung dieser Summen aus den Bewegungsdaten um Stammdaten hinweisen. Im Artikel "Drittmittelstatistik nach LOMZ über Recherchebericht und SAP Query" ist dieses schon etwas ausführlicher beschrieben, wobei die Grundlagen auch schon unter "SAP Query Stammdaten PSM / CO Innenauftrag" sowie eine Besonderheit bei Datumswerten in der Klassifizierung im Artikel "Query zur Auswertung von Klassifizierungsmerkmale PSM Fonds zu CO Innenauftrag und Datumsfelder mit Konvertierung von FLOAT zu DATUM" dargestellt sind.

Es hat schon seine guten Gründe, warum ich im Artikel "Unterschiedliche Auswertungsmöglichkeiten im Controlling (Report Writer, Recherchebericht, SAP Query) und natürlich Excel ;-)" auf diese unterschiedlichen Methoden und Tools verweise.

Literaturhinweis

An dieser Stelle mag ich auch gerne darauf hinweisen, dass mein aktuelles Buch nun auch im Buchhandel (zum Beispiel bei Amazon*) hinweisen. Daneben kann das Buch auch über meine Seite direkt beim Verlag erworben werden.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Samstag, 27. Mai 2017
17:44 Uhr

Query zur Auswertung von Klassifizierungsmerkmale PSM Fonds zu CO Innenauftrag und Datumsfelder mit Konvertierung von FLOAT zu DATUM

Das Thema Klassifizierung scheint etwas zu sein, dass gerade im Modul PSM-FM (Public Sector Management - Funds Management / Haushaltsmanagement) zur Erweiterung von Stammdaten genutzt werden kann und von mir in den Grundlagen im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" inklusive eines kurzen Exkurs zum Anlegen von Klassen und Merkmalen beziehungsweise allgemein zum Thema Klassifizierung beschrieben worden ist.

Hier hatte ich über ein Zusatzfeld OBJNFOND aus Finanzkreis und FOND eine Auswertung der Klassifizierungsmerkmale beschrieben, so dass die einzelnen Felder der Tabelle CABN

In diesen Artikel habe ich über ein Zusatzfeld OBJNFOND aus Finanzkreis und einen Zusatzfeld FONDS, dass aus der CO-Innenauftragsnummer die Nummer des PSM Fond bildet, die PSM Objektnummer erstellt um hier einzelne Merkmale aus den Tabellen CABN "Merkmal" in der die einzelnen Merkmale gespeichert sind und AUSP  "Ausprägungswerte der Sachmerkmale" in der  zum Objekt (Fond) die Werte der einzelnen Merkmale gespeichert sind auswertete.

Im Rahmen des Artikel "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage" hatte ich das Coding und die Zusatzfelder noch ein wenig optimiert allerdings war hier noch der Nachteil vorhanden, dass die entstandene Query fest den Finanzkreis hinterlegt hatte und so nicht an andere Einrichtungen übertragen werden konnte.

Daher möchte ich in diesen Artikel noch einmal das Thema Verknüpfung von CO Innenauftrag und PSM Fonds sowie die Auswertung der Klassifizierung angehen um danach auf eine Besonderheit einzugehen, sofern es sich beim Merkmal um ein Datumsfeld handelt.

Verknüpfung von CO Innenauftrag und PSM Fond

Statt wie im ersten Artikel beschrieben ein kompliziertes Feld OBJNFOND anzulegen ist es wesentlich leichter mit den Zusatzfeld ZAUFNR zu arbeiten. Dieses hat gleichzeitig den Vorteil, dass die Stammdaten des Fonds problemlos als Zustztabelle eingebunden werden können.

Wie schon in den anderen Artikeln erwähnt sind die beiden Stammdatentabellen von CO Innenaufträgen (AUFK) und PSM Fonds (FMFINCODE) nicht über die Auftragsnummer beziehungsweise Fond verknüpfbar. Hintergrund ist, dass das Feld AUFK-AUFNR  in der Datenbank als Character mit 12 Zeichen und das Feld FMFINCODE-FINCODE als Character mit 10 Zeichen definiert ist.

Im zweiten Artikel wurde hierfür das Zusatzfeld ZAUFNR angelegt um aus der Innenauftragsnummer eine kompatibles Feld zum Fond zu machen.

Hierzu wurde das Zusatzfeld ZAUFNR mit per LIKE-Referenz FMFINCODE-FINCODE erstellt was in den folgenden Abschniten als Hilfsfeld genutzt werden kann. Nun muss "nur" noch die Auftragsnummer in dieses Feld zugewiesen werden.

Da auf Fond und Innenauftrag Drittmittelprojekte abgebildet werden, ist es das Ziel die Projektnummer vom Innenauftrag auch als Fond zu verwenden. Dazu möchte ich zwei Möglichkeiten für das Zusatzfeldcoding darstellen.

ZAUFNR mit fester Länge der Projektnummer des Innenauftrag

Für eine achtstellige Projektnummer (Innenauftrag) lautet das Coding wie folgt:

ZAUFNR = AUFK-AUFNR+4(8).


Hierbei bedient sich das Coding der Technik eines Offsets.

Durch die optionalen Angaben eines Offsets +<o> und eine Länge (<l>) direkt hinter dem Feldnamen <f>, wird der Teil des Felds, der auf Position <o>+1 beginnt und die Länge <l> hat, als eigenes Datenobjekt angesprochen.  In unseren Fall wird also für die Variable ZAUFNR das Feld AUFK-AUFNR (wir erinnern uns die zwölfstellige Auftragsnummer) eingelesen und ab der vierten Stelle insgesamt acht Stellen eingelesen. Da in der Datenbank die Auftragsnummer mit führenden 0000 hinterlegt wird erhalten wir also statt des Datenbankwerte 000012345678 die tatsächliche Auftragsnummer 12345678.

ZAUFNR mit festzulegender Länge der Projektnummer

Sollten Sie eine andere Länge bei den Aufträgen oder Fonds definiert haben ist das Coding natürlich entsprechend anzupassen.

Damit hier nicht selbst die Länge und Position für die Offsetermittlung errechnet werden muss habe ich hier das Coding wie folgt angepasst:

DATA L_AUFNR  type i.
DATA L_OFFSET type i.

* Tragen Sie hier die Länge ihrer Projektnummer ein
* Standard:  8 stellige Auftragsnummer

L_AUFNR = 8.

* Nun wird die Position im Feld AUFK-AUFNR ermittelt
* ab der die Projektnummer ohne 0 gespeichert ist.

L_OFFSET = 12 - L_AUFNR.

* Maximial 12 Zeichen sind in AUFK-AUFNR vorhanden

ZAUFNR = AUFK-AUFNR+L_OFFSET(L_AUFNR).

Damit kann durch Zuweisung eines Zahlenwertes die Position ab der die Projektnummer gespeichert ist direkt ermittelt werden.

Grundsätzlich könnte die Länge der Projektnummer als Variable L_AUFNR natürlich auch als Abfrageparameter, vergleichbar zum Artikel "Neue Wertgrenze für Investitionen bei Finanzstatistik oder Abfrageparameter in SAP Query zur Übernahme von Werten aus Selektionsbild" abgefragt werden, jedoch muss für das spätere Ergänzen der Klassifizierungsmerkmale hier ohnehin das Coding angepasst werden und in der Regel ändert sich die Länge der Projektnummer nicht, so dass diese als Selektionsparameter nur zur Verwirrung und möglichen Fehler führen würde.

Stammdaten Fond ergänzen per Zusatztabelle FMFINCODE

Durch das Zusatzfeld ZAUFNR ist es uns nun wesentlich einfacher möglich die Stammdaten der Fonds aus der Tabelle FMFINCODE ergänzend zur CO Stammdatnetabelle AUFK für die Innenaufträge mit ins Infoset aufzunehmen.

Ein wichtiger Punkt ist dabei die Reihenfolge der Codingabschnitte.

Beim Hinzufügen eines Zusatzfeldes oder einer Zusatztabelle kann am Punkt  Reihenfolge des Codeabschnitts gewählt werden. Auch wenn die Hilfe nicht in diese Richtung zu lesen ist, verstehe ich den Punkt so, dass wenn man Bezug auf vorab definierte Zusatzfelder nehmen möchte die hier nutzenden Felder im nachgeordneten Codeabschnitt liegen sollten.

Da ich in beiden kommenden Fällen mit den neu angelegten Feld ZAUFNR gearbeitet werden soll, werden beide kommenden Fälle im Codabschnitt 2 hinterlegt.

Zusatztabelle FMFINCODE

Anstatt eines Zusatzfeld kann im Register Zusätze über die Schaltfläche ANLEGEN auch eine ganze Tabelle eingefügt werden. Hierzu tragen wir als Name FMFINCODEfür die Stammdatentabelle der Fonds ein und wählen als Art der Zusatzinformation die Option ZUSATZTABELLE..

Im Feld "Reihenfolge des Codeabschnitts" wird nun eine 2 aus den geschilderten Gründen eingetragen.

Hintergrund ist dass erst das Feld ZAUFNR definiert sein soll, bevor Sie mit der Zusatztabelle arbeiten.

Nun erfolgt eine Abfrage über SELECT SINGLE * FROM FMFINCODE WHERE ...
in der folgedene (hervorgehobene) Bedingungen erfüllt sein sollen.

WHERE FIKRS  =  AUFK-BUKRS

da Finanzkreis und Buchungskreis identisch sind, können hier beide Felder sowohl in der Tabelle AUFK als auch FMFINCODE verwendet werden.

AND FINCODE = ZAUFNR

Hierdurch werden dann tatsächlich Fonds und Innenauftrag miteinander verknüpft und es steht die gesamte Tabelle FMFINCODE im Infoset zur Verfügung.

Klassifizierungsmerkmal aus AUSP auswerten

Bisher bin ich bei Klassifizierungsmerkmalen so verfahren, dass ich anhand ATINN den gespeicherten Merkmalswert aus der Tabelle AUSP ausgelesen habe und entsprechend mit ausgegeben habe.

Welche Merkmale sind vorhanden?

Die einzelnen Merkmale sind in der Tabelle CABN hinterlegt und werden über das Feld ATINN mit der Tabelle AUSP mit entsprechenden Inhalten verknüpft.
Entsprechend ist es Möglich für jedes Merkmal ein eigenes Zusatzfeld anhand der Merkmalsnummer (ATINN) zu erstellen.Die entsprechenden Einzelmerkmale können hierbei bspw. mit der Transaktion SE16 und der Auswertung der Tabelle CABN betrachtet werden.

Eines dieser Merkmale ist die Projektbewertung PBW.

Hierzu wird ebenfalls ein Zusatzfeld mit der Bezeichnung PBW für Projektbewertung mit Langtext und Überschrift Projektbewertung erstellt.

Dieses hat als Eigenschaften eine LIKE-Referenz auf AUSP-ATWRT.

Ferner wird im unteren Abschnitt des Fenster bei Reihenfolge des Codeabschnitts ebenfalls eine 2 eingetragen.

Danach wird als Coding zum Zusatzfeld ein passendes Coding zum Zusatzfeld hinterlegt, dass aus der Variable (Zusatzfeld) ZAUFNR und den Buchungskreis bzw. Finanzkreis eine Objektnummer erstellt, die dem Feld AUSP-OBJEK. entspricht.

AUSP-OBJEK Objektnummer mit vorgegebenen Finanzkreis

Unter der Annahme eines dreistelligen Finanzkreis KRK und dass das Merkmal die Interne Merkmalsnummer (Feld ATINN) folgenden Wert hat 0000000022 hat wird folgendes Coding zum Feld hinterlegt:

DATA: L_objfond TYPE AUFK-AUFNR.
DATA: L_MERKMALPBW type AUSP-ATWRT.

CONCATENATE 'KRK ' ZAUFNR INTO L_OBJFOND RESPECTING BLANKS.

SELECT SINGLE ATWRT INTO L_MERKMALPBW FROM AUSP
 WHERE OBJEK = L_OBJFOND AND ATINN ='0000000022' AND KLART = '042'.
IF sy-subrc <> 0.
  CLEAR PBW.
ELSE.
  PBW = L_MERKMALPBW.
ENDIF.


Im Ergebnis enthält nun das Feld PBW die in der Klassifizierung hinterlegte Projektbewertung des Fond.

Objektnummer aus Buchungskreis identisch zum Finanzkreis ermitteln

Wesentlich eleganter ist es jedoch, sofern Finanzkreis und Buchungskreis übereinstimmen, diesen aus der Stammdatentabelle AUFK auszulesen.

Hierzu habe ich das Coding an einer Zeile angepasst.

DATA: L_objfond TYPE AUFK-AUFNR.
DATA: L_MERKMALPBW type AUSP-ATWRT.


CONCATENATE  AUFK-BUKRS ZAUFNR INTO L_OBJFOND RESPECTING BLANKS.


SELECT SINGLE ATWRT INTO L_MERKMALPBW FROM AUSP
 WHERE OBJEK = L_OBJFOND AND ATINN ='0000000022' AND KLART = '042'.
IF sy-subrc <> 0.
  CLEAR PBW.
ELSE.
  PBW = L_MERKMALPBW.
ENDIF.


Durch die Codingzeile:

CONCATENATE  AUFK-BUKRS ZAUFNR INTO L_OBJFOND RESPECTING BLANKS.

wird der Buchungskreis unter Berücksichtigung von Leerzeichen mit den Zusatzfeld ZAUFNR verknüpft, so dass hier von dreistellige ebenso wie vierstellige Finanz- bzw. Buchungskreise berücksichtigt werden.

Datentyp beim Klassifizierungsmerkmal Unterschied AUSP-ATWRT und AUSP-ATFLP

Sofern die einzelnen Klassifizierungsmrerkmale in der Merkmalsverwaltung als Datentyp ZEICHENFORMAT definiert sind, kann hier das Thema schon abgeschlossen werden und die Query kann direkt genutzt werden.

Seitens einer anderen Hochschule bin ich jedoch darauf angesprochen worden, dass das Tabellenfeld AUSP-ATWRT leer ist und bei IHnen das Feld AUSP-ATFLP gefüllt ist. Dieses liegt daran, dass Sie als Klassifizierungsmerkmal den Datentyp DATUM gewählt haben um hier ein Datum zu hinterlegen.

Hierzu muss man wissen, dass die Tabelle AUSP "Ausprägungswerte der Sachmerkmale" die einzelnen Merkmalswerte in zwei Feldern speichert, je nachdem welcher Art die Daten sind.

Die Characterwerte (Zeichenformat) werden wie in oberen Beispiel beschrieben im Tabellenfeld AUSP-ATWRT "Merkmalswert" als Character mit 30 Zeichen gespeichert.

Handelt es sich jedoch um einen nummerischen Wert werden diese als Fließkommazahl (FLOAT) in das Tabellenfeld AUSP-ATFLV als Gleitpunktzahl mit 16 Stellen gespeichert.

Das Problem ist nun aus diesen Wert wieder ein Datumsfeld zu erhalten.

Gleitpunktzahl FLOAT in Datum (DATE) konvertieren

Zur Verdeutlichung des Problems habe ich einmal ein Merkmal als Datum definiert und den gespeicherten Wert in der Tabelle AUSP näher angesehen:
 
Datum Wert als Float AUSP-ATFLV
Datum als Float
01.01.2018 2,0180101000000000E+07
14.05.2017 2,0170514000000000E+07
13.07.2017 2,0170713000000000E+07

Nun stellt sich für die QUery die Frage, wie aus den FLOAT Wert ein Datumswert ermittelt werden kann.

Im ersten Schritt legen wir ein Zusatzfeld mit ATFLV1 an um den Wert zum Merkmal 0000000043 welches als Datentyp Datum definiert bekommen hat auszulesen. Analog zum ATWRT lautet das Coding im Abschnitt 2 dann wie folgt:

DATA: L_objfond TYPE AUFK-AUFNR.
DATA: L_ATFLVDATUM1 type AUSP-ATFLV.


CONCATENATE  AUFK-BUKRS ZAUFNR INTO L_OBJFOND RESPECTING BLANKS.


SELECT SINGLE ATFLV INTO L_ATFLVDATUM1 FROM AUSP
 WHERE OBJEK = L_OBJFOND AND ATINN ='0000000043' AND KLART = '042'.
IF sy-subrc <> 0.
  CLEAR ATFLV1.
ELSE.
  ATFLV1 = L_ATFLVDATUM1.
ENDIF.

Nun ist also im Feld ATFLV1 das Datum als FLOAT gespeichert. Jetzt gibt es drei Möglichkeiten um daraus ein Datum zu erhalten.
 

Funktionsbaustein CTCV_CONVERT_FLOAT_TO_DATE

Der Funktionsbaustein CTCV_CONVERT_FLOAT_TO_DATE wandelt einen Datumswert im Gleitpunktformat (Typ F) in das Datumsformat (Typ D) um.

Hier kann dann der Aufruf des Funktionsbaustein aus ATFLV1 ein Datum ausgeben.

Hierzu legen wir ein Zusatzfeld DATUM1 vom Typ D an (Länge von 8 wird automatisch vorgegeben) und können über folgendes Coding

DATA : L_datum1 LIKE ausp-atwrt,
       L_datumsformat LIKE sy-datum.
CLEAR T_DATUM.
IF AUSP-ATFLV <> 0.
CALL FUNCTION 'CTCV_CONVERT_FLOAT_TO_DATE'
  EXPORTING
    FLOAT         = ATFLV1
 IMPORTING
   DATE          = L_datum1
          .
WRITE  L_datum1 TO L_datumsformat DD/MM/YYYY.
DATUM1 = L_datumsformat.
ENDIF.

 

Float in Integer und Integer in Datum umwandeln

Hier kann ATFLP über weitere Hilfsvariablen in ein Datumsfeld umgewandelt werden.

Dazu wird ein Zusatzfeld vom Typ D für Datum angelegt und nun mit folgenden Code das ermittelte Feld ATFLV1 umgewandelt. Das Zusatzfeld erhält hier die Bezeichnung DATUM2.

DATA
ZL_integer TYPE I,
ZL_datum TYPE D.

ZL_integer = ATFLV1.

WRITE  ZL_integer TO  ZL_datum.

DATUM2 = ZL_DATUM.

Beide hier kurz vorgestellte Methoden sind im Formumsbeitrag "Convert float to date" unter https://archive.sap.com/discussions/thread/154147 ausführlicher beschrieben.
 

Umwandeln ATFLV in Datum durch lokale Felder in Query

Da wir uns bei der Verwendung obiger ABAP Coding nicht sicher waren, ob diese problemlos funktionieren haben wir eine dritte Variante genutzt in der das Feld ATFLP1 als Zusatzfeld im Infoset zur Verfügung gestellt wird und erst in der Query eine Umwandlung erfahren soll.

Hierzu erhält das Feld Datumsmerkmal auch die Kurzbezeichnung ATFLP1 in der Query. Dieses ist in der SQ01 in der Query zum Infoset über

  • SPRINGEN
  • FELDAUSWAHL
  • FELDAUSWAHL

möglich indem über

  • BEARBEITEN
  • KURZBEZEICHNUNGEN
  • EIN/AUSSCHALTEN

diese eingeschaltet werden und das Feld eine entsprechende Kurzbezeichnung erhält.

Nun ist es erforderlich über

  • BEARBEITEN
  • LOKALE FELD
  • ANLEGEN


mehrere lokale Zusatzfelder mit Formeln und Bedingungen anzulegen.

Als erstes wird ein Feld angelegt, dass die Gleitpunktzahl in eine bearbeitbare Zahl verwandelt.

Dazu legen wir das Feld DATUM als Rechenfeld mit 9 Ziffern und 8 Dezimalstellen an.
Als Berechnungsvorschrift erhält es
ATFLV1/100000000
und als Bedingung
ATFLV1<>0

Damit haben wir nun statt
2,0180101000000000E+07
die Dezimalzahl
0,20180101
erhalten.

Mit dieser arbeiten wir nun weiter und legen für die Datumsbestandteile folgende lokale Felder an.

Das lokale  Feld DATUMTXT erhält die Eigenschaften Textfeld mit 10 Zeichen.

und als Berechnungsvorschrift
DATUM
bei der Bedingung
DATUM<>0

Hierduch ist aus der Zahl ein String entstanden und dieser String kann wie im Artikel "Query Stammdatenvergleich Profit-Center und Auslesen von Textbestandteilen (Teilstring aus Variable)" ausgelesen werden.

Dieses nutzen wir für drei lokale Felder die Teile der Dezimalzahl verwenden um Jahr, Monat und Tag zu erhalten.

Das lokale Feld JAHR hat nun die Eigenschaften Textfeld mit vier Zeichen und folgende Berechnungsvorschrift:
DATUMTXT[3:6]
bei der Bedingung DATUM <>0

Folgerichtig ist das Feld Monat ein Textfeld mit 2 Zeichen und der Formel DATUMTXT[7:8] bei Datum <> 0.

Abschliessend fehlt noch der Tag als Textfeld mit zwei Zeichen und der Formel DATUMTXT[9:10] ebenfalls bei DATUM <>0.

Aus Jahr Monat und Tag lässt sich das Datum zumindest als Zahl ausdrücken.

Hierzu wird das Feld DATUMZAHL als Textfeld mit 8 Zeichen definiert und bekommt folgende Formel JAHR * 10000 +  MONAT * 100 + TAG bei DATUM <> 0

Im Ergebnis ist das Datum hier statt 0,20180101 als 20180101 hinterlegt.

Das spannende ist nun aber das Feld DATUMATFLV1 dieses ist als Datumsfeld definiert und hat folgende Formel DATUMZAHL bei Datum<>0.

Zur besseren Übersicht habe ich die einzelnen Felder noch einmal in folgender Tabelle aufgeführt.
 
Feld Format Berechnungsvorschrift Bedingung
Felder zum Auswertung AUSP-ATFLV
ATFLV1 Zusatzfeld aus Infoset entspricht AUSP-ATFLV
DATUM Rechenfeld
9 Ziffern
8 Dezimalstellen
ATFLV1/100000000 ATFLV1<>0
DATUMTXT Textfeld
10 Zeichen
DATUM DATUM<>0
JAHR Textfeld
4 Zeichen
DATUMTXT[3:6] DATUM<>0
MONAT Textfeld
2 Zeichen
DATUMTXT[7:8] DATUM<>0
TAG Textfeld
2 Zeichen
DATUMTXT[9:10] DATUM<>0
DATUMZAHL Textfeld
8 Zeichen
JAHR * 10000 +  MONAT * 100 + TAG DATUM<>0
DATUMATFLV1 Datumsfeld DATUMZAHL DATUM<>0

Damit ist das Feld ATFLV1 erfolgreich in ein Datum umgewandelt worden.

Der entsprechende Abschnitt der Query (inklusive der Hilfsfelder, die man sonst natürlich nicht mit in der Grundliste übernehmen würde sieht wie folgt aus:
 
ATFLV1 DATUM DATUMTXT JAHR MONAT TAG DATUMZAHL DATUMATFLV1
Query zur Auswertung ATFLV1 aus FLOW wird DATE
2,0180101000000000E+07 0,20180101 0.20180101 2018 01 01 20180101 01.01.2018
2,0170514000000000E+07 0,20170514 0.20170514 2017 05 14 20170514 14.05.2017

Im Ergebnis ist hier also tatsächlich ein korrekt beziehungsweise lesbares Datum aus den Feld entstanden. Somit können also auch Datumswerte innerhalb der Klassifizierung mit ausgewertet werden. Allerdings sind diese allerdings etwas umständlicher gespeichert. Dafür hat das Erarbeiten einer gemeinsamen Lösung tatsächlich Freude gemacht.

Glücklicherweise haben wir keine als Datum formatierten Merkmale, sonst würde das je Datumsfeld ein etwas umständliches Coding erfordern. Vermutlich würde ich mich dann auch eher mit den oben erwähnten Funktionsbaustein beschäftigen, aber so war dieses für ein einzelnes Datum auch eine praktische Übung beziehungsweise Herausforderung durch die Kollegen an einer anderen Hochschule.

Hinweis:
In der späteren Query bietet es sich dann allerdings tatsächlich an das Feld in der Grundliste mit der Option Feld nur ausgegeben wenn <>0 zu markieren. Andernfalls wird als Dautm 00.00.0000 ausgegeben.

 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 23. März 2017
20:07 Uhr

Grundlagen: Was sind die Unterschiede zwischen Report Painter und Rechercheberichte?

Schon im Artikel "Unterschiedliche Auswertungsmöglichkeiten im Controlling (Report Writer, Recherchebericht, SAP Query) und natürlich Excel ;-)" bin ich auf die von mir gerne genutzten Möglichkeiten zum Erstellen von kundeneigenen Berichten in SAP eingegangen und habe an dieser Stelle auch schon den ein oder anderen Artikel zum Thema geschrieben (als Beispiel möchte ich hier auf den Artikel "Grundlagen Kurzeinführung und Handbuch SAP Query" verweisen).

Durch einige Mailanfragen und ein hoffentlich in der Abschlussphase befindliches Projekt möchte ich an dieser Stelle einmal auf die Unterschiede zwischen Report Painter und Recherchebericht eingehen.

Report Painter

Die klassischen Report Painter Berichte dürften im Modul CO durch das Gemeinkostencontrolling durch Plan/Ist Vergleiche sowohl aus der Kostenstellenrechnung als auch Innenauftragsrechnung bekannt sein. Daneben sollten solche aber auch aus der Profit-Center-Rechnung im Infosystem unter Listorientierte Berichte bekannt sein.

Hierbei werden aus Bibliothek im Report Painter Merkmale und Kennzahlen zusammengefasst die in Zeilen, Spalten und in den allgemeinen Selektionskriterien einem Bericht zugeordnet werden können. Eine ausführliche Beschreibung dazu ist  im Artikel "Grundlagen Kurzeinführung und Handbuch Report Painter Report Writer" zu finden.

In der folgenden Tabelle sind die einzelnen Transaktionen zur Anlage eines Report Painter Berichtes aufgeführt:

Transaktion Funktion

Verwaltung Report Painter

GRR1 Report Painter: Bericht anlegen
GRR2 Report Painter: Bericht ändern
GRR3 Report Painter: Bericht anzeigen
GR55 Berichtsgruppe ausführen

Rechercheberichte

Daneben gibt es aber auch Rechercheberichte die nicht ohne Grund in der Profit-Center-Rechnung im Infosystem unter

  • Berichte zur Profit-Center-Rechnung
  • Interaktives Reporting

zu finden sind.

Hier werden die Berichte nicht an einer Stelle erstellt sondern in Formulare und Berichte aufgeteilt. Dabei definieren die Formulare die Art der Darstellung der gewünschten Daten und die Berichte die darzustellenden Objekte.

Der Vorteil an Rechercheberichten ist, dass die dargestellten Merkmale und  Kennzahlen im Bericht ausgetauscht beziehungsweise neu zusammengstellt werden können. Hierbei sind die Rechercheberichte als Würfelmodell zu betrachten und es besteht die Möglichkeit mit der Slide-and-Dice (»In Scheiben schneiden und drehen«) Methode nach eigenen Bedürfnissen diese anzupassen.

Dabei definiert das Formular die erste Scheibe und der Bericht die zweite Scheibe einer Auswertung, die dann gemeinsam ein Berichtsergebnis liefern.

Persönlich wende ich die Rechercheberichte gerne in der Hauptsache im Haushaltsmanagement (Modul PSM-FM) an, aber auch im FI und letztens im CO konnte ich hier schon den ein oder anderen Bericht erstellen. Aus der folgenden Tabelle sind die für mich relevanten Stellen sowie die zugehörigen Transaktionen aufgeführt.

Funktion / Modul EC PCA PSM-FM FI CLASS oder NEW GL

Verwaltung Rechercheberichte

Formular anlegen KE84 FMEN FSI4 oder FGI4
Formular ändern KE85 FMEO FSI5 oder FGI5
Formular anzeigen KE86 FMEP FSI6 oder FGI 6
Bericht anlegen KE81 FMEK FSI1 oder FGI1
Bericht ändern KE82 FMEL FSI2 oder FGI2
Bericht anzeigen KE83 FMEM FSI3 oder FGI3
Bericht ausführen KE80 FMEQ FSI0 oder FGI0
Damit sind die für mich am häufigst genutzten Transaktionen aufgeführt.

Rechercheberichte in den einzelnen SAP Modulen


Für andere Module ist auf der Seite "Einsatzgebiete der Recherche" der Seite fico-forum.de eine Übersicht zu finden. Wobei dieses Thema auch im Buch "Praxishandbuch Reporting im SAP-Finanzwesen" vorgestellt wird.

Interessant in diesem Zusammenhang ist auch die Frage, wo im SAP System die Pflege der Recherchberichte zu finden ist.

Für die Profit-Center-Rechnung (EC-PCA) sind diese im SAP Menü direkt unter folgenden Menüpfad leicht zugäng zu finden.
  • Rechnungswesen
  • Controlling
  • Profit-Center-Rechnung
  • Werkzeuge
  • Recherche
Hier ist dies also direkt in der Anwendung zu finden. Für das Haushaltsmanagement in der öffentlichen Verwaltung (Modul PSM-FM) befinden sich die Funktionen für die Rechercheberichte jedoch im Customizing und können über die Transaktion SPRO aufgerufen werden.

Hier sind diese dann unter folgenden Pfad zu finden
  • Public Sector Management
  • Haushaltsmanagement Öffentliche Verwaltung
  • Informationssysteme
  • Recherche-Berichte
Sollten Sie sich für das Thema Rechercheberichte im Modul PSM-FM näher interessieren ist der Artikel "»Rechercheberichte de lux« im Modul PSM FM Haushaltsmanagement"mit Sicherheit ein guter Ausgangspunkt um sich intensiver mit diesen Thema auseinander setzen zu können. Ebenso finden sich im Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget" einige Grundlagen zum Thema.

Für die Finanzbuchhaltung im klassischen Hautpbuch (für das New GL (neue Hauptbuch) ist der Pfad vergleichbar) ist dieses im Customizing unterhalb von
  • Finanzwesen (neu)
  • Hauptbuchhaltung (neu)
  • Informationssystem
  • Rechercheberichte (Sachkonten)
zu finden.

Im Artikel "Rechercheberichte im Modul FI (Bilanzanalyse)" bin ich dabei tiefer auf das Thema eingegangen.

Sollten Sie die Ergebnis- und Marktsegmentrechnung (SAP Modul CO-PA) einsetzen kann ich das Buch von Stefan Eifler "Schnelleinstieg in die SAP-Ergebnisrechnung (CO-PA)" empfehlen wo anhand eines konkreten Beispiel einer Deckungsbeitragsrechnung ein entsprechender Recherchebericht aufgebaut wird. Hier werden die Berichte über die Transaktion KE30 gestartet bzw. mit KE31 bis KE36 bearbeitet.

Allerdings kann hier nicht auf vorhandene Elemente zugegriffen werden sondern diese müssen teils selbst angelegt werden.

Fazit

Ich hoffe, dass hier ein kurzer Überblick über die Möglichkeiten dargestellt worden ist. Um etwas tiefer in das Thema einzusteigen kann ich von meiner Seite aus tatsächlich den Erwerb von SAP Know How  in Form der digitalen Bibliothek von Espresso Tutorials insbesondere für das Jahr 2017 empfehlen. ;-)

Nicht nur die letzten Monate habe ich die oben vorgestellten Tools besonders schätzen gelernt und mich damit auch etwas intensiver in Hinblick eines Berichtswesen auseinander gesetzt.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Montag, 13. Februar 2017
20:22 Uhr

Analyse und Abgleich Einzelposten und Summensätze im Haushaltsmanagement PSM-FM am Beispiel Abweichung Reisekostenobligo

Im Rahmen der Jahresabschlussarbeiten wird sich auch immer das Obligo auf einzelne Projekten betrachtet. Nun waren auf einigen Fonds und Finanzstellen innerhalb eines Rechercheberichtes, wie im Artikel "PSM Recherchebericht mit Jahresabgrenzung" beschrieben, noch einige Obligos vorhanden, obgleich diese im Belegjournal eigentlich alle erledigt sind und somit vollständig abgebaut.

Von der Höhe der Werte her war es dann jedoch relativ schnell klar, dass es sich bei den Obligos um nicht abgebaute Reiskostenobligos handelte, die aus einen anderen SAP System übertragen worden sind.

Löschen von Obligos im Haushaltsmanagement

Der erste Gedanke war daher, diese Obligo Belege wie im Artikel "Löschen von fehlerhaften (Obligo)-Belegen im Modul PSM-FM (Haushaltsmanagement)" beschrieben zu löschen.

Allerdings waren die Belege hier nicht identifizierbar, so dass diese Belege nicht gelöscht werden konnte. Da aber auch eine andere Einrichtung ein vergleichbares Problem hatte, wurden wir dann ebenfalls auf eine Lösung hingewiesen, auf die ich in diesen Artikel ebenfalls hinweisen möchte.

Analyse Einzelposten und Summensätze im Haushaltsmanagement

Innerhalb des Modul PSM-FM gibt es entsprechende Analysefunktionen, die dann tatsächlich die Ursache finden und entsprechend auch einen Schiefstand beheben können.

Im SAP Menü unter:
  • Public Sector Management
  • Haushaltsmanagement
  • Infosystem
  • Analysen
können verschiedene Abstimmungen zu anderen Komponenten (bspw. zu FI Belegen oder zu Bestellungen aus MM) aber auch innerhalb des Modul Haushaltsmanagement durchgeführt werden.

Diese sind im Ordner Analysen an folgender Stelle zu finden:
  • Obligo und Ist
  • Abgleich
  • Innerhalb Haushaltsmanagement
  • Summensätze zu Einzelposten
beziehungsweise über die Transaktion S_ALR_87012636 ausgeführt werden. Hier können je Geschäftsjahr (auch eingeschränkt nach einzelnen Finanzstellen, Fonds oder auch Werttyp und Periode) die Summen der Einzelposten mit den Jahreswerten abgeglichen werden.

Im Ergebnis wird eine Liste erstellt in der alle Positionen aufgeführt werden bei denen die Einzelposten je HHM - Kontierung (Finanzposition, Finanzstelle, Fonds und  auch Hauptbuch bzw. CO Objektnummer) nicht übereinstimmen.

Einzelposten und Summensätze in Tabellen FMTOX und FMOIX -> Hinweis auf Query

Diese Auswertung zeigt im Ergebnis dann tatsächlich worin die Ursache der Abweichung von Einzelpostenliste und Summenbericht in Form des Rechercheberichtes.

Im Artikel "Salden je Finanzposition mit Unterscheidung Personal oder Sachaufwand aus PSM-FM durch Query über logische Datenbank FMF" wurde schon einmal auf die beiden Tabellen, welche in der logischen Datenbank FMF ausgewertet werden können, FMTOX "Summensätze: Obligo und Ist   - Erweitert" und der Einzelpostentabelle FMOIX "Einzelposten  - Erweitert" hingewiesen. Der Bericht wertet tatsächlich die Unterschiede zwischen beiden Parteien aus.

Abgleich von Einzelposten und Summensätze im Haushaltsmanagement und Anpassung Summensätze an Einzelposten

Während der Bericht S_ALR_87012636 "Abgleich von Einzelposten und Summen" beziehungsweise der dahinterliegende ABAP Report RFFMRC00 "Abgleich von Einzelposten und Summensätzen für das HHM" aufruft stellt sich nun die Frage, wie die gefundenen Abweichungen korrigiert werden können.

Hier ist der ABAP Report RFFMRC04 "Übereinstimmende Einzelposten und Summensätze für HHM" hilfreich. Dieser erweitert die Auswertung um ein Updateflag wodurch tatsächlich die identifizierten Abweichungen korrigiert weden, während der Report das Updateflag auf Anzeige gesetzt hat.

Sofern der Report RFFMRC04  über SA38 gestartet wird kann das Feld "Testlauf" im Abschnitt Steuerung deaktiviert wird der Bericht im Echtlauf ausgeführt und die zugehörigen Summensätze den Einzelposten angepasst, so dass hier sowohl die Auswertung der Einzelposten als auch die Summen im Recherchebericht übereinstimmen.

Beim Ausführen des Reports sollte darauf geachtet werden, dass keine Buchungen durchgeführt werden, da anderenfalls eventuell Fehler korrigiert werden, die gar keine sind.

Das Feld "Testlauf" ist im Report RFFMRC00  nicht vorhanden, wodurch tatsächlich nur die Anzeige in der Transaktion S_ALR_8701263 vorhanden ist.

Statt Aufruf des Report über die Transaktion SA38 kann auch die nicht im SAP Menü hinterlegte Transaktion FMAF "Abgleich Einzelposten Summenposten" aufgerufen werden.

Im Ergebnis sind dann auch die Obligos im Recherchebericht ausgeglichen.

Grundsätzlich kann es sinnvoll sein in regelmäßigen Abständen entweder die Transaktion S_ALR_8701263 zur Analyse auszuführen oder tatsächlich quartalsweise oder wenigstens im Rahmen des Jahresabschlusses durch die Transaktion FMAF ein entsprechender Abgleich der Summensätze und Einzelposten durchzuführen.

Das Thema Obligo ist auch im Controlling relevant. Auf dieses Thema wird im Artikel "Obligo Verwaltung im SAP Modul CO - Customizing, Standardberichtswesen, Report Writer/Painter und SAP Query" behandelt.

An solchen Themen zeigt sich der Vorteil, wenn sich über aktuelle Themen oder Probleme auch übergreifend ausgetauscht wird, so dass hier gemeinschaftlich an einer Lösung gearbeitet werden kann, oder alternativ Lösungen auch untereinander ausgetauscht werden.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Sonntag, 5. Februar 2017
21:55 Uhr

Sender und Empfänger anhand des Hierarchiebeleg in der klassischen PSM-FM Budgetierung

Damit auch hier im Blog wieder ein wenig zum "SAP Know How" veröffentlicht wird möchte ich auf eine etwas zurückliegende Anfrage antworten.

Im Rahmen der klassischen Budgetierung im SAP Modul Public Sector Management - Haushaltsmanagement (PSM-FM) wurden im Rahmen einer Umstellung auch der Nummernkreis für bestimmte Fonds geändert.

Ausgangslage:
Ab einer neuen Budgetierungsphase sind entsprechende Budgets nur noch auf den neuen Nummernkreis der Fonds zu buchen. Dabei wurden die Projekte nur an einer Stelle mit einer neuen Ziffer versehen und eigentlich sollten Umbuchungen von den alten Projekten über einen Sammler auf neue Projekte erfolgen. Leider hat es aber eine Menge Umbuchungen von Altprojekt direkt auf Neuprojekt gegeben

Nehmen wir an, dass die alten Projekte mit 100 begonnen und die neuen Projekte mit 200 Sofern nun Budget von Projekt 100350 auf das neue Projekt 200350 umgebucht werden sollte wäre der vorgesehene Weg eigentlich von 100350 auf einen Sammler für die Restmittel aus der ersten Phase (sprich von 100350 auf 200000) und dann von diesen Sammler auf 200350 zu buchen. Teilweise wurde aber tatsächlich von 100350 direkt auf 200350 gebucht, so dass hier am neuen Projekt sowohl originäre Budgetzuweisungen als auch von bisherigen Projekten Budget umgebucht wurde.

Die Vorgehensweise der klassischen Budgetierung ist im Artikel "SAP PSM-FM klassische Budgetierung mit unterschiedlichen Budgetversionen" beschrieben worden.

Zwar lassen sich die Budgetbelege von Rechercheberichten (wie zum Beispiel im Artikel "»Rechercheberichte de lux« im Modul PSM FM Haushaltsmanagement") über Zusätze Einzelposten auf einen Budgetwert ebenso wie durch eine Query wie im Artikel "Salden je Finanzposition mit Unterscheidung Personal oder Sachaufwand aus PSM-FM durch Query über logische Datenbank FMF" für die Einzelposten oder besser "Einzelposten Klassische Budgetierung Hierarchiebelge" für die Hierarchiebelege nur auswerten unter Angabe des entsprechenden empfangenden Fond.

Zwar zeigt die Transaktion FM2F (zu finden unter Public Sector Management-> Haushaltsmanagement-> Budgetierung-> klassische Budgetierung -> Belege -> Hierarchiebelege -> Anzeigen (Transaktion FM2F) tatsächlich sowohl die Hierarchiestufen des Sender ebenso wie Empfänger, aber wenn über die logische Datenbank FMF oder einen Recherchebericht ein Budgetbeleg aufgerufen wird, wird durch die Angabe der selektierten Fonds nur die Seite des betroffenen Empfänger (sofern hier die neuen Projekte) oder die Seite der Sender (bei Auswertung der alten Projekte) dargestellt.

Entsprechend mühsam ist es nun für jeden einzelnen Beleg die Senderseite durch Aufruf des Erfassungsbeleg (Transaktion FR60) bzw. Click-Through am Hierarchiebeleg auszuwerten.

Lösung Zweifache Auswertung
Die durchaus pragmatische Lösung um nun tatsächlich die Budgetbelege zu identifizieren, die direkt vom alten Projekt auf das neue Projekt statt über den Sammler gebucht worden sind ist dann aber eine recht simple Lösung genutzt worden.

Im ersten Schritt wurden alle Budgetbelege gebucht auf Fonds 100001 bis 100999 ausgewertet und die Hierarchiebelegnummer in die Zwischenablage kopiert (oder einen Texteditor).

Danach wurden die Hierarchiebelege der Fonds 200001 bis 200999 (somit ohne den Sammler 200000) ausgewertet und danach ein Filter auf die vorher identifizierten Belege gesetzt und tatsächlich nun sind nur die Hierarchiebelege die direkt vom alten aufs neue Projekt gebucht worden sind mit aufgelistet.

Eigentlich ist dieses eine reichlich simple Lösung, aber hin und wieder kommt es auch vor, dass man eine ganze Weile überlegt und nicht auf einen solch nahe liegenden Kniff kommt. Ob nun die Hierarchiebelege anhand eines Absprung zu den Einzelposten aus Rechercheberichten oder anhand der Query zu den Hierarchiebelegen ist dabei zweitrangig.

Sobald man sich den Aufbau und Unterschied zwischen Erfassungsbeleg und Hierarchiebeleg klar ist, dürfte der Umgang mit den Budgeteinzelposten auch etwas einfacher sein.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Mittwoch, 2. November 2016
05:48 Uhr

Salden je Finanzposition mit Unterscheidung Personal oder Sachaufwand aus PSM-FM durch Query über logische Datenbank FMF

Schon im Artikel "Einzelposten Klassische Budgetierung Hierarchiebelge" wurde die logische Datenbank FMF "Haushaltsmanagement (Klassische Budgetierung)" zur Auswertung von Budgetbelegen und einer entsprechenden Kontrolle verwendet. Allerdings sind hier auch Bewegungsdaten über die beiden Tabellen FMTOX "Summensätze: Obligo und Ist   - Erweitert" und FMOIX "Einzelposten  - Erweitert" vorhanden. Bei beiden handelt es sich jedoch nicht um eine transparente Tabelle sondern um eine Struktur welche erst zur Laufzeit mit entsprechenden Daten versorgt wird.

Der Vorteil bei der Verwendung einer logischen Datenbank, wie im Beispiel FMF, ist dass hierdurch für die Query zur Laufzeit ebenfalls notwendige Daten zur Verfügung gestellt werden.

Infoset über logische Datenbank FMF

Aus der vorherigen Infoset (Budgetauswertung) sind noch folgende Feldgruppen vorhanden:

Feldgruppe 01 "Budgetbelege Gesamtbudget"
Fonds ( BPBTX-FONDS )
Finanzstelle ( BPBTX-FICTR )
Finanzposition ( BPBTX-FONDS )
Belegnummer Budgetvergabe und Strukturplanung ( EPBT-BELNR )
Positionstext ( EPBT-BELNR )
Gesamtbudget in Finanzkreiswährung ( EPBT-WLGES )

Feldgruppe 02 "Budgetbelege Jahresbudget"
Fonds ( BPBYX-FONDS )
Finanzstelle ( BPBYX-FICTR )
Finanzposition ( BPBYX-FIPEX )
Belegnummer Budgetvergabe und Strukturplanung ( EPBY-BELNR )
Positionstext ( EPBY-SGTEXT )
Verteiltes Jahresbudget in Finanzkreiswährung ( EPBY-WLJHV )

Ergänzend zum bestehenden Infoset der Budgetbelege im oben verlinkten Beispiel werden folgende Feldgruppen angelegt um hier sowohl Einzelposten als auch Summen über eine Query auswerten zu können.

Für Saldenliste:
FMTOX - "Summensätze: Obligo und Ist   - Erweitert"

Für Einzelposten:
FMOIX - "Einzelposten  - Erweiter"

Dabei werden folgende Felder werden in die jeweiligen Feldgruppen übernommen:

Feldgruppe 03 "Summensätze Obligo Ist"
Finanzposition ( FMTOX-FIPEX )
Finanzstelle ( FMTOX-FICTR )
Fonds ( FMTOX-FONDS )
Geschäftsjahr ( FMTOX-GJAHR )
Periode ( FMTOX-PERIO )
Werttyp ( FMTOX-WRTTP )
Obligo/Ist (Zahlungsbudget) in Finanzkreiswährung ( FMTOX-FKBTRP )
HHM: Budgetperiode ( FMTOX-BUDGET_PD )
Betragsart ( FMTOX-BTART )

Feldgruppe 04 "Einzelposten"
Finanzstelle ( FMOIX-FICTR )
Fonds ( FMOIX-FONDS )
Finanzposition ( FMOIX-FIPEX )
Geschäftsjahr ( FMOIX-GJAHR )
Periode ( FMOIX-PERIO )
Werttyp ( FMOIX-WRTTP )
Buchungsdatum im Beleg ( FMOIX-BUDAT )
Im Workflow verarbeiteter Betrag in Finanzkreiswährung ( FMOIX-FKBTRW )
Positionstext ( FMOIX-SGTXT )

Danach wir das Infoset generiert und gesichert.

Query Saldenliste PSM-FM

Für unsere Auswertung sind jedoch nur die Salden je Finanzposition erforderlich. Durch die Feldgruppe 03 beziehungsweise der Struktur FMTOX können je Finanzposition alle Buchungen zusammengefasst werden.

Da hier eine logische Datenbank ausgewertet wird, müssen keine Selektionsfelder definiert werden, da die Selektion für die Daten vom Infoset her selbst vorgegeben werden. Entsprechend sind alle Felder als Listenfelder (L) markiert worden. Die Felder werden hier in der Reihenfolge angegeben, wie diese dann auch in der Query ausgegeben werden sollen:

Jahr (L) FMTOX-GJAHR
Periode (L) FMTOX-PERIO
Finanzstelle (L) FMTOX-FICTR
Fonds (L) FMTOX-FONDS
Fondtext (L) Zusatzfeld von FMTOX Text: Fonds  TEXT_FMTOX_FONDS
Finanzposition (L) FMTOX-FIPEX
WT (L) technische Nummer Werttyp FMTOX-WRTTP
Werttyp (L) Zusatzfeld von FMTOX Text: Wertyp  TEXT_FMTOX_WRTTP
Obligo/Ist Zahl.Budget (L) FMTOX-FKBTRP
(Hierbei ist bei der Währungsfeldposition die Option kein Währungsfeld ausgewählt)
Betragsart (L) FMTOX-BTART
Betragsart (L) Zusatzfeld von FMTOX Text: Betragsart  TEXT_FMTOX_BTART

Als Summationsfeld ist das Feld "Obligo/Ist" gewählt worden, so dass hier eine Zwischensumme beim Aufruf der Query gebildet wird. Im Ergebnis werden nun die Summen je Finanzposition unterschieden nach Werttyp ausgegeben. Dabei sind die Einzelposten nicht ersichtlich, so dass nicht mehr Personen etc. erkennbar sind.

Soweit besteht nun eine Liste der Ergbisse je PSM-FM-Objekt und es können hier Summen über diverse Konten (Finanzpositionen), Finanzstellen oder Fonds gebildet werden.

Erweiterung Query zum Ausweis von Ertrag, Aufwand und Personalkosten

Der Vorteil dieser Query gegenüber dem Belegjournal (Transaktion FMRP_RFFMEP1AX ) ist, dass hier direkt eine Summe je Finanzposition ausgewiesen wird und nicht die Einzelposten mit ausgewiesen werden. Sofern mehr Interesse an den Einzelposten besteht dürfte eher der Artikel "Kundeneigene Transaktionen zu Berichten in PSM FM Haushaltsmanagement zum Beispiel Belegjournal anlegen (Variantentransaktion)" hiflreich sein.

Wie auch schon im Artikel "Query Einzelpostenliste Innenauftrag mit Ausweis Ertrag und Aufwand Zweiter Teil Query zur Datenaufbereitung" vorgeschlagen kann anhand der Finanzposition die einzelne Buchung auch einer bestimmten Gruppierung zugeordnet werden.

Neben der reinen Auswertung  der im Infoset zur Verfügung gestellten Feldern kann innerhalb der Query auch die Ergebnisse dieser Datenbankabfrage verarbeitet werden.

Kurzbezeichnung für Finanzposition  und Wert


Dazu müssen einzelnen Feldern eine Kurzbezeichnung zugewiesen werden um auf diese in den lokalen Feldern dann Bezug genommen werden zu können.

Hierzu gehen wir nicht in die Grundliste der Query (wo später  auch das Layoutdesign gepflegt wird) sondern wechseln innerhalb der Querypflege mit nächstes Bild (F6) auf die Feldauswahl der Query. Sofern wir uns noch in der Layoutpflege befinden kann über Zurück dorthin gewechselt werden. Alternativ kann auch im Menü über

SPRINGEN->FELDAUSWAHL->FELDAUSWAHL

in die Feldauswahl der Query gewechselt werden.

Achten Sie bitte darauf, dass über

EINSTELLUNGEN ->EINSTELLUNGEN

der grafischer Query Painter aktiviert ist, wobei dieses auch im Standard der Fall sein sollte. Andernfalls würde sich die Oberfläche zur Querydefinition etwas ändern (was zwar mehr Möglichkeiten bietet, aber leider auch ein wenig am Komfort der Pflege von Query verhindert.

Um den einzelnen Feldern eine Bezeichnung zuzuweisen ist es erforderlich über die Funktion

BEARBEITEN->KURZBEZEICHNUNGEN ->EINSCHALTEN

einzelne Felder eine Kurzbezeichnung zuordnen und mit dieser Bezeichnung dann arbeiten.

Erst nachdem die Kurzbezeichnungen eingeschaltet sind, kann über die Feldauswahl eine Kurzbezeichnung den einzelnen Feldern des Infoset zugewiesen werden.

Hierzu sollen nun das Feld Finanzposition die Kurzbezeichnung FIPO und das Feld Obligo/Ist (Zahlungsbudget) in Finanzkreiswährung die Kurzbezeichnung WERT erhalten.
 

Lokales Feld für Ertrag, Aufwand und Personalkosten anlegen

Die nun zugewiesenenKurzbezeichnungen WERT und FIPO sind notwendig, da wir auf diese dann Bezug nehmen, wenn wir ein lokaes Feld mit einer Formel anlegen.

Dieses geht über

BEARBEITEN->LOKALES FELD->ANLEGEN.

Dieses Lokale Feld wird dann in der Feldgruppe  "Summensätze Obligo Ist" angelegt, in der wir uns gerade befinden und die auch die einzige ist, die wir für die Saldenliste verwenden.

Nun können folgende Felder angelegt werden.

1. Lokales Feld ERTRAG_5
Kurzbezeichnung:  ERTRAG_5
Feldbezeichnung: 5er Ertrag
Überschrift: 5er Ertrag
Eigenschaften:
Gleiche Eigenschaften wie Feld:  WERT
Berechnungsvorschrift:
Hier muss ausnahmsweise keine komplexe Berechnung eingetragen werden, da wir nur eine Bedingung (ein Intervall an Kostenarten) benötigen.

Entsprechen lautet die Berechnung  WERT
und die zugehörige Bedingung
FIPO >= 50000000 AND FIPO <= 59999999

Alternativ kann dieses auch als
Bedingung:  FIPO >= 50000000 AND FIPO <= 59999999
Formel: WERT

angegeben werden und Sonst leer gelassen werden. Somit wird das Feld Wert nur im lokalen Feld ausgegeben, wenn die Kostenart zwischen 50000000  und 59999999 liegt.

Genauso definieren wir folgendes Feld:

2. Lokales Feld AUFWAND_6
Kurzbezeichnung:  AUFWAND_6
Feldbezeichnung: 6er Aufwand
Überschrift: 6er Aufwand
Eigenschaften:
Gleiche Eigenschaften wie Feld:  WERT
Berechnungsvorschrift:
Bedingung: FIPO >= 60000000 AND FIPO <= 69999999
Formel: WERT

Hierdurch haben wir schon einmal eine Unterscheidung nach Ertrag und Aufwand.

Exkurs: Kontenrahmen und Kostenartenintervalle am Beispiel Personalkosten

Nehmen wir als Beispiel den Industriekontenrahmen (IKR). Hier sind die einzelnen Kontenklassen ebenfalls als Intervalle gepflegt.
Aufbau Industriekontenrahmen (IKR) - Kontenklassen  Auszug aus Schnelleinstieg ins SAP Controlling (CO)  ISBN 9783960126874
Innerhalb der Klasse 6 (Betriebliche Aufwendungen) wären die Personalkosten in den Intervallen Löhne (620000 bis 629999), Gehälter (630000 bis 639999) und Personalnebenkosten (640000 bis 649999). Je nach Sichtweise können zu den Personalkosten auch die Sonstigen Personalaufwendungen (660000 bis 669999) betrachtet werden unter die unter anderen die  Aufwendungen für Fort- und Weiterbildung fallen.

Ein weiteres Feld soll nun jedoch auch für den Ausweis von Personalkosten genutzt werden. Hierzu definieren wir diese als Intervall von 62* bis 64*.

3. Lokales Feld AUFWAND_6PERS
Kurzbezeichnung:  AUFWAND_62-64_Peko
Feldbezeichnung: 6er Personalaufwand
Überschrift: 6er Personalaufwand
Eigenschaften:
Gleiche Eigenschaften wie Feld:  WERT
Berechnungsvorschrift:
Bedingung: FIPO >= 62000000 AND FIPO <= 64999999
Formel: WERT

Jedes dieser lokalen Felder kann natürlich ebenfalls in der Query übernommen werden (dafür sind diese ja vorgesehen) und so kann die Query weiterverarbeitet werden.

Eine in meinen Augen sehr praktische Möglichkeit der Weiterverarbeitung in Excel ist hier durch Pivot-Tabelle in Kombination mit Datenschnitten (siehe Artikel "Pivottabellen ab Excel 2010 dynamischer filtern mit Datenschnitten am Beispiel Hochschulfinanzstatistik") möglich. Grundsätzlich liessen sich die Berechnungen für Ertrag, Aufwand etc. auch in Excel über WENN Funktion erheben oder (was ich noch nicht versucht habe) auch wie im Artikel "Excel Berechnete Felder in Pivottabellen" durchführen.

Inwieweit die Daten später dann auch graphisch aufbereitet werden (hier sei der Artikel "Datentrends für Drittmittelstatistik mit Sparklines ab Excel 2010 darstellen durch Liniendiagramme in Zellen" mit Hinweis auf verschiedene Gestaltungsmöglichkeiten erwähnt oder ob die Query selbst nur eine gute Basis für Datenanalysen sein soll steht wieder auf einer anderen Seite. Gerade für das Gestalten von Daten möchte ich gerne auf einen Beitrag von Ing. Katharina Schwarzer hinweisen "Meine Daten – meine Informationsquelle: Wichtige Tipps für das Reporting". Die an dieser Stelle erwähnten Grundsätze zur Gestaltung einer soliden Datengrundlage sollten auch bei der Erstellung einer Query beachtet werden, da auch hier die Form der Datenauswertung entscheidend ist. In diesen Zusammenhang möchte ich auch gerne das Blog von ihr "Soprani Software" empfehlen, dass ebenfalls durch strukturierte und gut verständliche Artikel punktet.

Der Vorteil der oben beschriebenen Auswertung kann mit zwei Punkten beschrieben werden:
  • Die Daten werden als Liste sowohl mit Finanzstelle als auch Fond ausgegeben. Hier würde im Recherchebericht nur der Fond BLANK oder WIPLAN für die Finanzstellen ausgegeben werden
  • Die Einzelposten würden anonymisiert werden, da die einzelnen Positionen mit Belegtext zusammengefasst sind und diese Info nicht vorhanden ist
Ansonsten ist für eine reine Betrachtung der Fonds der Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget" ebenfalls hilfreich.

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Montag, 24. Oktober 2016
19:51 Uhr

»Rechercheberichte de lux« im Modul PSM FM Haushaltsmanagement

Das Thema Berichtswesen innerhalb der klassischen Budgetierung im Modul PSM-FM bietet sowohl bei Finanzstellen als auch Fonds einige interessante Möglichkeiten bei der Gestaltung von Berichten. Daher soll diesmal ein wenig intensiver auf das Zusammenspiel von Formular und Bericht bei der Erstellung eines Recherchebericht eingegangen werden.  Da die letzten Wochen auch das Thema Auswertung von Kennzahlen immer wieder ein Thema war, soll eingangs auf einige Grundlagen zur Budgetierung eingegangen werden und später noch ein Blick auf die Zukunft gerade in Hinblick auf Wechsel zu S/4 HANA geworfen werden.

Berichtswesen im Zusammenspiel von Erfolgsbudget (Drittmittel nach LOMZ) oder Grundbudget


Neben der Grundbudgetierung, wie im Artikel "Leistungsmengen im Grundbudget je Fächergruppe (Cluster) im Vergleich oder bedingte Formatierung für Minimalwerte und Maximalwerte" beschrieben, gibt es im Rahmen von Erfolgsbudget auch oftmals eine Nachfrage nach Drittmittel. Entsprechend umfangreich kann daher das Thema Drittmittelberichtswesen sein, wie auch schon im Artikel "Drittmittelstatistik nach LOMZ über Recherchebericht und SAP Query" näher beschrieben wurde. Hier wurde die Drittmittelstatistik auf Basis der Stammdaten aus CO und PSM-FM ausgewertet und zusätzlich ein Recherchebericht für die Bewegungsdaten verwendet.

(Budget)-Berichtswesen innerhalb SAP PSM-FM (Public Sector Management Haushaltsmanagement)


Sofern die Budgetierung der Hochschule (und sei es innerhalb eines Teilbereichs) im Modul PSM-FM  erfolgt möchte ich hier eine elegante Möglichkeit der Rechercheberichte darstelllen.

ACHTUNG:
Am Ende des Artikels auch gleichzeitig ein Warnhinweis für eine Abkehr von der klassichen Budgetierung hin zum BCS angefügt werden.


Während der Überlegung ein Berichtswesen für Budgetberichte umzustellen kam von einer Hochschule die Rückfrage, ob nicht ein bestimmter Recherchebericht (zur Darstellung von Gesamtbudget, Jahresbudget, Aufwand und Ertrag sowie Saldo gegen Budget oder Saldo gegen Geldeingang) für unterschiedliche Auswertungen genutzt werden könnte.

Aus dieser Anfrage ist später dann auch ein umfangreiches Berichtsportfolio entstanden, dass im Artikel "Kundeneigene Transaktionen zu Berichten in PSM FM Haushaltsmanagement zum Beispiel Belegjournal anlegen (Variantentransaktion)" näher beschrieben ist. Trotzdem soll hier in erster Linie auf die flexible Gestaltung von Rechercheberichten eingegangen werden. Der Aufbau eines solchen Berichtes ist im Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget" näher beschrieben.

Ausgangslage: Identische Darstellung unterschiedlicher Berichtsobjekte

Allerdings soll dieser Bericht nicht nur für Drittmittel sondern auch für Sondermittel, Studienbeiträge und auch Landeshaushalt verwendet werden. Der Aufbau des Bericht ist für alle Bereiche gleich bleibend, allerdings sollen sowohl verfügbare Merkmale als auch die Überschrift des Bericht unterschiedlich ausgesteuert werden.

Unterschiedliche Berichte gruppieren (Beispiel: Report Writer/Painter Berichtsgruppen)


Es soll also in identischer Weise Darstellung eine andere Hülle für den Bericht, wie zum Beispiel neue Überschriften geschaffen werden. Hier können Berichte die unterschiedlichen Berichtsgruppen im Bereich Report Writer / Report Painter als Schablone verwendet werden.

Für Berichte die mit Report Painter oder Report Writer entwickelt werden kann eine solche wechselnde Überschrift oder auch unterschiedliche Zusammenstellung von Berichten durch das Anlegen einer Berichtsgruppe geregelt werden.

Sofern Interesse an der Erstellung von Report Painter oder Report Writer Berichten besteht können diese unter "Grundlagen Kurzeinführung und Handbuch Report Painter Report Writer" weiter betrachtet werden.
 

Rechercheberichte im Public Sector Management

Die Darstellung von Rechercheberichten für das SAP Modul PSM-FM (Public Sector Management - Haushaltsmanagemet) ist im Customizing (Transaktion SPRO) unter
  • Public Sector Management
  • Haushaltsmanagement Öffentliche Verwaltung
  • Informationssystem
  • Recherchebericht
zu finden. Dabei sind hier sowohl Formulare als auch Berichte anzulegen. Der erste Schritt ist tatsächlich hier ein Formular anzulegen durch das die einzelnen Spalten (Ausgabe) des Berichtes definiert werden soll. Dieses kann entweder durch die Transaktion FMEN (Formular anlegen) zum Anlegen eines Formular oder über die Transaktion FMEK (Bericht anlegen über die Schaltfläche Formular (STRG + F1 zum Anlegen eines Formular) definiert werden.

Definition der Recherchberichte mit Recycling vorhandender Formulare

Nachdem das Grundformular angelegt wurde kann nun ein Bericht über die Transaktion FMEK (Bericht anlegen) mit Bezug auf das Formular angelegt werden. Alternativ kann hier auch ein vorhandener Bericht als Vorlage mit Bezug zum Formular ausgewählt werden. Eine Übersicht der vorhandenen Berichte ist über die Bericht ändern (Transaktion FMEL) oder Bericht anzeigen (Transaktion FMEM) näher betrachtet werden. Über die Berichtsbeschreibung (neben Berichtsname) wird später auch die Selektionsmaske des Berichtes definiert, so dass hier die Überschrift des bestehenden Berichtes definiert wird.

Ein weiterer wichtiger Punkt ist die Reihenfolge der Ausgewählten Merkmale. Diese können auch über die Schaltfläche "Freie Merkmale sortieren" in einer bestimmten Reihenfolge gebracht werden. Sofern also das Merkmal Fonds auf erster Position steht wird der Bericht auch die Fonds als erste Wahl ausgeben. Hier bietet sich natürlich für einen Landesmittelbericht (über Finanzstellen) als erste Position Finanzstellen zu hinterlegen, so dass hier eine Variante des Formular auf Ebene der Finanzstellen direkt beim Aufrufen dargestellt. Ebenso würden sich hier Fin.Zweck zur Darstellung der im Stammdatum des Fond gepflegten Finanzierungszweck dargestellt bekommen.

Auf diese Weise kann die Saldenliste auch auf Ebene der einzelnen Finanzierungszwecke dargestellt werden ohne, dass hierfür vorher in der Merkmaldefinition festgelegt werden. Entsprechend kann also das identische Formular (mit Salden) auch unter vorbelegte Sichten aufgerufen werden. Dieses ist zum Einen über die Transaktion FMEQ (Recherchebericht ausführen) gestartet werden. Auch wenn ich grundsätzlich die Namensidentität von Recherchebericht und Formular empfehle kann hier die mehrmalige Entwicklung eines Formulars und entsprechende Darstellung des Berichtes auch mehrfach unter neuen Gesichtspunkten dargestellt werden.

Flexible Darstellung am Beispiel Finanzierungszweck

Besonders die Darstellung von "Fin.Zweck" zur Übernahme des Finanzierungszweck als Zeile bietet sich dabei an sofern nicht nur festverknotete Finanzierungszwecke als Spalten (siehe Artikel "Drittmittelstatistik nach LOMZ über Recherchebericht und SAP Query") dargestellt werden soll. Eine solche Darstellung der Finanzierungszwecke in Zeilen mit den entsprechenden Spalten ermöglicht es auch "neue" Finanzierungszwecke darzustellen ohne dabei erneut einen bestehenden Bericht anpassen zu müssen.

Da im SAP Menü unterhalb von
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Stammdaten
  • Kontierungselemente
  • Fonds
  • Finanzierungszweck
diese über die Transaktion FM6I (anlegen) oder FM6U (ändern) bearbeitet werden können bieten sich diese auch als Gruppierungsmerkmale für Fondsstammsätze unter anderen eben im Berichtswesen an.und können über die F4 Auswahlhilfe auch im Fond selbst oder auch bei Query verwendet werden.

Die Verwendung des FINANZIERUNGSZWECK als Unterscheidungsmerkmal (Stammdatum) bei Fonds ist auch im Artikel "PSM-FM Grundlagen Finanzierungszweck im Haushaltsmanagement bei Recherchebericht und Selektion" behandelt worden.
 

Zielgruppengerechte Bericht-Formular Zuordnung

Wie schon erwähnt kann die Saldenliste (Formular) mit mehreren Berichten verwendet werden. Zur Verdeutlichung ist in folgender Tabelle ein möglicher Berichtsaufbau erläutert.
 
Bericht (Transaktion FMEK) Formular (Transaktion FMEN)
Konzept Rechercheberichte Zuordnung Berichte und Formular
ZSALDO_LH
Auswertung Landeshaushalt (Überschrift)
Darstellung der Ergebnisse auf Finanzstelle
Formular ZSALDO
  • Gesamtbudget
  • Jahresbudget
  • Erlöse
  • Aufwand
  • Saldo gegen Geldeingang
  • Saldo gegen Jahresbudget
  • Saldo gegen Gesamtbudget
ZSALDO_DM
Auswertung Drittmittel (Überschrift)
Darstellung der Ergebnisse auf Fonds
ZSALDO_SM
Auswertung Sondermittel (Überschrift)
Darstellung der Ergebnisse auf Fonds
ZSALDO_MG
Auswertung MIttelgeber (Überschrift)
Darstellung der Ergebnisse auf Finanzierungszweck)

Die einzelnen Berichte ZSALDO_LH, ZSALDO_DM, ZSALDO_SM und ZSALDO_MG nutzen alle das Formular ZSALDO aber durch die Positionierung des jeweiligen Merkmal (Darstellung der Ergebnisse auf ...) auf erster Position sind diese nicht nur durch die Überschrift unterschiedlich sondern können auch entsprechend ins Berichtskonzept eingebunden werden.

Aufbau eines zielgruppengerechten Berichtswesen


Der Königsweg ist dann natürlich eine eigene Transaktion für einen solchen Bericht anzulegen. Im Artikel "Parametertransaktion für Recherchebericht" ist eben diese Möglichkeit näher erläutert.

Hier könnten dann die obigen Berichtsnamen auch gleichzeitig als Transaktionsbezeichnung übernommen werden.

Damit sind solche Berichte, wie im Artikel "Benutzereigene SAP Menüs (Favoriten, Benutzermenü, Bereichsmenü)" beschrieben,  bestens geeignet diese entsprechend in ein Berichtskonzept eingebunden zu werden. Damit kann eben auch ein Bericht "Recherchebericht Budget + Ertrag ggü. Aufwand" entsprechend mehrfach verwendet werden. Im Rahmen des Artikel "Unterschiedliche Auswertungsmöglichkeiten im Controlling (Report Writer, Recherchebericht, SAP Query) und natürlich Excel ;-)" wurden hier die einzelnen Berichtstools und ihre Möglichkeiten zum Einbinden in das Berichtskonzept vorgestellt und können dann entsprechend verwendet werden.
 

Weitere Anwendungsgebiete von Rechercheberichten

Insgesamt sind hier die Rechercheberichte tatsächlich ein sehr spannendes Instrument und bei Gelegenheit sollte ich mir ihre Verwendung im Rahmen der Profit-Center-Rechnung ebenfalls näher ansehen. Eine vergleichbare Verwendung mit Potential ist ja auch im Artikel "Rechercheberichte im Modul FI (Bilanzanalyse)" für das Bilanzreporting beschrieben worden. Innerhalb CO werden die Rechercheberichte ebenfalls sowohl in der Profit-Center-Rechnung als auch in der Ergebnisrechnung verwendet.

Hierzu empfehle ich gerne folgendes Buch, das ich unter "Ergebnis und Marktsegmentrechnung mit SAP" näher vorgestellt habe :

 
Schnelleinstieg in die SAP-Ergebnisrechnung (CO-PA)
Verlag: Espresso Tutorials GmbH
1. Auflage (01. Oktober 2012)
Paperback ISBN: 978-3943546101

Für 19,95 € direkt bestellen

Oder als SAP Bibliothek-Flatrate *

Ebook ISBN: B00B4QNATC


Beim Einsatz von Rechercheberichten im Modul PSM-FM sollte aber auch folgender Abschnitt beachtet werden!!

Neuerungen im Bereich Berichtswesen durch Wechsel auf S/4 HANA

Besonders beim Berichtswesen im Public Sector Management sollte man sich jedoch bewust machen, dass mit S/4 HANA, neues Hauptbuch und Umstellungen von der klassischen Budgetierung auf das BCS (Budgetverwaltungssystem) welches im Artikel "PSM Haushaltsmanagement Budgetverwaltungssystem BCS oder klassische Budgetierung"  näher beschrieben worden ist.

Durch den Artikel "Budgetierung in SAP PSM unter S/4 HANA" im Marlin Blog (Blog der Marlin Consulting UG über aktuelle Themen aus dem Bereich SAP in der öffentlichen Verwaltung von Bjoern Kemmoona) bin ich auf den OSS Hinweis 2226048  aufmerksam gemacht worden. Die Kernaussage des dort zitierten OSS Hinweis lautet "Die klassische Budgetierung wird mit der Einführung von SAP S/4 HANA nicht mehr unterstützt. Die Funktion für die Budgetpflege wird nur über das Budgetverwaltungssystem (BCS) von PSM unterstützt, so dass ein Wechsel von der klassischen Budgetierung hin zu BCS entsprechend erforderlich wird. Soferm weiterhin die klassische Budgetierung in PSM-FM genutzt werden soll ist gegebenfalls schon vor einen etwaigen Wechsel nach SAP S/4 HANA eine Migration zum Budgetverwaltungssystem (BCS) sinnvoll und spätestens beim Wechsel notwendig.

Weiterbildung im Bereich SAP unter anderen im Controlling oder auch bei anderen Themen

Daher sollte man auch weiterhin neue Berichtstools oder auch andere Ideen im Bereich Budgetierung, Berichtswesen besonders modulübergreifend (zum Beispiel im Modul CO) berücksichtigt werden. Ebenso ist auch im Bereich der klassischen Profit-Center-Rechnung hier ein Unterschied zu sehen. Im Rahmen  der 4. FICO-Forum Infotage am 9/10 November 2015 in Köln wurden im Vortrag  "Unterschiede klassische/neue Profitcenter Rechnung" von Martin Munzel (Espresso Tutorials) unter http://fico-forum.de/ET/infotage_2015/PCA/ genauer vorgestellt. Gerade im Bereich Berichtswesen ist daher eine ständige Weiterbildung auch durch solche Vorträge hilfreich und eigentlich auch notwendig. Möglicherweise können Ihnen hier auch enige Buchempfehlungen oder die digitale SAP Bibliothek (siehe "SAP Fachbücher Flatrae") zu nutzen. Dieses ist auch einer der Gründe warum ich weiterhin (auch außerhalb der bestehenden Partnerschaft) dieses als mögliche Form der Weiterbildung von Keyusern und auch Powerusern empfehlen kann.

Dieses ist auch einer der Gründe warum ich sowohl einige Fachblogs rund um SAP, Office oder auch diverse Onlineforen gerne nutze um mich selbst fortzubilden und auch der Austausch mit Kolleginnen und Kollegen hier hilfreich ist. Besonders bei Themen die einem eigentlich bekannt sind kann man beim näheren Betrachten immer einmal wieder Teilaspekte finden, die dann neue Möglichkeiten aufzeigen.  Egal ob nun mit Report Painter / Report Writer, SAP Query (hier verweise ich gerne auf "Grundlagen Kurzeinführung und Handbuch SAP Query" oder auch künftige Veröffentlichungen.

In den "Webempfehlungen" habe ich hier einige Quellen die ich zur persönlichen Weiterbildung nutze zusammengestellt. Daneben können aber auch die Onlinemedien wie "Video2brain - Onlineschulung per Videostreaming unter Android, Windows, iOS und Web" oder auch "Infotainment oder Nachrichtenapps für Android" genutzt werden.

Auch im Bereich der "(Software)-tools" sind hier einige Weiterbildungsmöglichkeiten gegeben, so mag ich sowohl "Mindmapping und Sketchnotes im Beruf nutzen für Brainstorming oder Mind Mapping mit XMIND" als auch "Software für Prozessbeschreibungen (DIA)"  so kann ich auch Wikis und andere Webtools auch im Bereich "Praktische Nutzung von social media Diensten für meinen Arbeitsalltag" empfehlen.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Samstag, 22. Oktober 2016
15:09 Uhr

Drittmittelstatistik nach LOMZ über Recherchebericht und SAP Query

Einer der Vorteile bei der Erstellung einer Drittmittelstatistik auf Basis einer leistungsorientierten Mittelzuweisung (LOMZ) Definition von einzelnen Drittmittelgebern über einen Recherchebericht (siehe "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget") ist dass hier der Finanzierungszweck ergänzend zu den einzelnen Finanzpositionen (zum Beispiel über alle innerhalb der Hierarchie der Finanzpositionen der Finanzposition ERTRAEGE zugeordneten Finanzpositionen) als einzelnen Spalten definiert werden können. Auf diese Weise können alle Erträge vom Bund (einzelnen Finanzierungszwecke) kombiniert mit den Einnahmen ausgewiesen werden.

Damit werden alle Fonds entsprechend ihres Mittelgebers ausgewiesen. Ergänzend dazu könnten noch einzelne Finanzpositionen ohne Zuordnung eines Finanzierungszweckes ausgewiesen werden, so dass auch Einnahmen die auf Kostenstellen bzw. Finanzstellen oder aber Fond WIPLAN (zur Abbildung des Landeshaushalt) so zum Beispiel Geldspenden ausgewiesen werden.*

Im Artikel "Kundeneigene Transaktionen zu Berichten in PSM FM Haushaltsmanagement zum Beispiel Belegjournal anlegen (Variantentransaktion)" hatte ich schon etwas ausführlicher beschrieben, wie ein solcher Bericht (neben Einzelpostenlisten) in einer vorgegebenen Variante als kundeneigene Transaktion ausgerollt werden kann. Besonders bei Rechercheberichten bietet sich hier auch der Artikel "Parametertransaktion für Recherchebericht" zum Nachlesen an.

Nehmen wir nun aber einmal an, dass ein Finanzbericht über alle Projekte (sowohl Drittmittel als auch diverse Sondermittel) berichtet werden sollen, dann kann es sinnvoll sein hier die Definition von LOMZ fähigen Drittmitteln und andere Projekten nicht nur anhand des Finanzierungszwecks sondern auch über andere Merkmale zu definieren.

Im Anwendungsfall sind Mittel Dritter (Drittmittel) über ein Nummernintervall als für die Drittmittelstatistik relevant festgelegt und eine Teilmenge davon ist als Dienstleistungsprojekt (reine Anwendung gesicherter Erkenntnisse) nicht als LOMZ-relevant identifizierbar. Hierzu wurde in der Klassifizierung ein Merkmal PBW für die Projektbewertung definiert und dieses entsprechend mit den Wert DL versehen. Eine Auswertung von Merkmalen der Klassifizierung ist beispielsweise im Artikel "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage" oder aber mit Grundlagen zur Klassifizierung auch im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" beschrieben.

Sprechende Nummernschlüssel bei Stammdaten

Kleiner Hinweis am Rande, das Thema sprechende Nummernschlüssel wurde sehr ausführlich in unseren Buch
 

Schnelleinstieg ins SAP-Controlling (CO)
Verlag: Espresso Tutorials GmbH

1. Auflage (01. November 2014)

Paperback ISBN: 9783960126874

Für 19,95 € direkt bestellen

Oder als SAP Bibliothek-Flatrate *

Ebook ISBN: 9783960120414
 
diskutiert und zeigt hier tatsächlich unterschiedlichste Ansätze in der Stammdatenkonzeption, aber dieses nur am Rande.


Um nun über Nummernkreis und Merkmale der Klassifizierung die Drittmittel entsprechend einzuordnen bedarf es drei Zusatzfelder im Infoset.

Vorbedingung: Auswertung PSM und CO Stammdaten

Als erstes müssen, erneut, die Stammdaten von CO mit PSM verknüpft werden.

Innerhalb des Abschnitt "Zusatzfeld ZAUFNR (Übernahme AUFK-AUFNR als FMFINCODE-FINCODE" im Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" wurde nun eine clevere Alternative dargestellt.

Zusatzfeld ZAUFNR zur Verknüpfung von Innnenauftrag und Fond

Hierzu wurde das Zusatzfeld ZAUFNR mit per LIKE-Referenz FMFINCODE-FINCODE erstellt was in den folgenden Abschniten als Hilfsfeld genutzt werden kann.

Als erläuternde Überschrift und Langtext kann "Auftragsnummer 10 stellig" genommen werden.

Das in meinen Augen clevere Coding beschränkt sich auf einen Einzeiler in dem dem Feld per Offset die Auftragsnummer aus der Tabelle AUFK zugewiesen wird.

Für eine achtstellige Projektnummer (Innenauftrag) lautet das Coding wie folgt:

ZAUFNR = AUFK-AUFNR+4(8).

Hierbei bedient sich das Coding der Technik eines Offsets.

Durch die optionalen Angaben eines Offsets +<o> und eine Länge (<l>) direkt hinter dem Feldnamen <f>, wird der Teil des Felds, der auf Position <o>+1 beginnt und die Länge <l> hat, als eigenes Datenobjekt angesprochen.  In unseren Fall wird also für die Variable ZAUFNR das Feld AUFK-AUFNR (wir erinnern uns die zwölfstellige Auftragsnummer) eingelesen und ab der vierten Stelle insgesamt acht Stellen eingelesen. Da in der Datenbank die Auftragsnummer mit führenden 0000 hinterlegt wird erhalten wir also statt des Datenbankwerte 000012345678 die tatsächliche Auftragsnummer 12345678.

Sollten Sie eine andere Länge bei den Aufträgen oder Fonds definiert haben ist das Coding natürlich entsprechend anzupassen.

Im Ergebnis haben wir nun das Feld ZAUFNR, welches die gleichen Eigenschaften wie das Feld FINCODE innerhalb der Tabelle FMFINCODE hat.

Nun kann das Feld für verschiedene Formen der Verknüpfung genutzt werden.
 

Merkmal aus Klassifizierung zur Projektbewertung mit auswerten

Nehmen wir an, dass im Rahmen der Klassifizierung von Fonds im Modul PSM-FM die Projektbewertung in ein Merkmal festgehalten wird. Dann ist auch die im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" erheblich erleichtert.

Hierzu wird ebenfalls ein Zusatzfeld bspw. PBW für Projektbewertung mit Langtext und Überschrift Projektbewertung erstellt.

Dieses hat als Eigenschaften eine LIKE-Referenz auf AUSP-ATWRT.

Ferner wird im unteren Abschnitt des Fenster bei Reihenfolge des Codeabschnitts ebenfalls eine 2 eingetragen.

Danach wird als Coding zum Zusatzfeld ein passendes Coding zum Zusatzfeld hinterlegt, dass aus der Variable (Zusatzfeld) ZAUFNR und den Buchungskreis bzw. Finanzkreis eine Objektnummer erstellt, die dem Feld AUSP-OBJEK. entspricht.


Unter der Annahme eines dreistelligen Finanzkreis KRK und dass das Merkmal die Interne Merkmalsnummer (Feld ATINN) folgenden Wert hat 0000000022 hat wird folgendes Coding zum Feld hinterlegt:

DATA: L_objfond TYPE AUFK-AUFNR.
DATA: L_MERKMALPBW TYPE AUSP-ATWRT.

CONCATENATE  'KRK ' ZAUFNR INTO L_OBJFOND RESPECTING BLANKS.

SELECT SINGLE ATWRT INTO L_MERKMALPBW FROM AUSP
 WHERE OBJEK = L_OBJFOND AND ATINN ='0000000022' AND KLART = '042'.
IF sy-subrc <> 0.
  CLEAR PBW.
ELSE.
  PBW = L_MERKMALPBW.
ENDIF.


Im Ergebnis enthält nun das Feld PBW die in der Klassifizierung hinterlegte Projektbewertung des Fond.

LOMZ relevante Drittmittel

Nun kommt allerdings die Zuordnung über die Projektnummer in Kombination zu der Projektbewertung. Hierzu wird die gleiche Programmlogik verwendet wie im Artikel "Auswertung sprechender Nummernkreisintervalle von CO Innenaufträgen mit Query Zusatzfeldcoding und Unterscheidung numerischer oder alphanumerischer Schlüssel" allerdings beschränkt auf einen Nummernkreis der Drittmittelprojekte sowie einen Bezug auf die Projektbewertung über das Feld PBW.

Hierzu wurde ein Zusatzfeld LOMZ mit den Eigenschaften LIKE AUSP-ATWRT im letzten Codeabschnitt des Infoset (hier Reihenfolge des Codeabschnitts 4) angelegt.

Das zugehörige Coding zum Zusatzfeld sieht dabei wie folgt aus:
 

CLEAR LOMZ.
IF AUFK-AUFNR CO  '1234567890'.
  IF AUFK-AUFNR => '000032000000' AND AUFK-AUFNR <= '000032999999'.
    CASE PBW.
      WHEN 'DL'.
        LOMZ = 'DL'.
      WHEN OTHERS.
        LOMZ = 'LOMZ'.
    ENDCASE.
  ENDIF.

  IF AUFK-AUFNR => '000042000000' AND AUFK-AUFNR <= '000042999999'.
    CASE PBW.
      WHEN 'DL'.
        LOMZ = 'DL'.
      WHEN OTHERS.
        LOMZ = 'LOMZ'.
    ENDCASE.
  ENDIF.
ENDIF.

Dieses Zusatzfeld hat nun für die Beispielnummernkreise 32000000 bis 32999999 und 42000000 bis 42999999 eine Überprüfung, ob es sich dabei um LOMZ Drittmittel oder nur DL für Dienstleistungsprojekte handelt. Die in anderen Nummernkreise abgebildeten Projekte sind keine Drittmittel auf die die LOMZ Definition angewandt wird und erhalten daher auch keinen Wert im Zusatzfeld LOMZ (das Feld bleibt daher leer).
 

Weiterentwicklung Query oder Recherchebericht zur Drittmittelstatistik

Ergänzend zur LOMZ Definition können nun natürlich auch noch die Mittelgeber der jeweiligen Projekte über den Finanzierungszweck identifiziert werden. Gerade für ein zentrales Berichtswesen kann hier eine Gruppierung der einzelnen Finanzierungszwecke, so als Beispiel die einzelnen EU Förderprogramme, zu Gruppen erfolgen, oder eben einfach der Finanzierungszweck ebenfalls mit ausgegeben werden. 

Diese Methodik ist im Artikel "Gruppierung von Finanzierungszwecken bei Drittmittelprojekten per Zusatzfeldcoding mit IF oder CASE" erläutert worden.

In Kombination mit einen Recherchebericht oder auch direkt einer Einzelpostenliste als SAP Query, wie im Artikel "Query Einzelpostenliste Innenauftrag mit Ausweis Ertrag und Aufwand Zweiter Teil Query zur Datenaufbereitung" kann nun relativ ohne Probleme eine entsprechende Auswertung der Drittmittelstatistik erfolgen. Denkbar wäre auch eine Saldenliste basierend auf der logischen Datenbank FMF in der die Summen je Finanzposition auf Kontierungsobjekt FOND und Finanzstelle ausgewertet werden können. Diese logische Datenbank habe ich bisher für die Auswertung von "Einzelposten Klassische Budgetierung Hierarchiebelge" verwendet denkbar ist hier aber auch die Summensätze der Tabelle FMTOX "Summensätze: Obligo und Ist   - Erweitert" in der die Summen je Kontierungsobjekt festgehalten sind. Hier hat ein Kollege einen recht praktischen Extrakt der Summensaldenliste je Finanzposition auf Ebene der Fonds entworfen. Ein Nachteil ist hier nur noch, dass zur Darstellung von Ertrag und Aufwand das Ergebnis erneut summiert werden muss. Jedoch ist dieses über lokale Felder oder Zusatzfelder die die Finanzpositionen gemäß Industriekontenrahmen (Kontenplan) beginnend mit 5*als Ertrag und 6* als Aufwand zuordnen können.

Sind die Berichte fertig erstellt können diese auch per Serienmail versandt werden. Bisher nutzte ich nur die Serienmailfunktion in Winword zum Versand von Serienmails (siehe Artikel "Serienmails über Serienbrieffunktion in Winword per Outlook, Thunderbird oder anderen Mailprogramm versenden") auf Facebook (siehe Beitrag vom 22.10.2016) bin ich jedoch auf zwei Methoden getroffen durch die entweder durch Plugin im Mailer Thunderbrid oder per VBA mit Outlook auch Dateianhänge wie ein Finanzbericht automatisch per Serienmail versandt werden können, so dass diese Berichte nicht zum Beispiel im SAP Business Work Place (siehe Artikel "SBWP: Berechtigungen Allgemeine Ablage") abgelegt werden müssen sondern auch direkt an die Finanzberichtsempfänger versandt werden können.

Innerhalb Excel sind dann natürlich auch graphische Analysen, wie im Artikel "Datentrends für Drittmittelstatistik mit Sparklines ab Excel 2010 darstellen durch Liniendiagramme in Zellen" beschrieben möglich. Wobei dieser Artikel gleichzeitig neben Sparklines auch verschiedene andere Auswertungsmöglichkeiten per Excel darstellt wodurch auch auf einen Blick die Bedeutung der einzelnen Daten hervorgehoben werden können.
 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Samstag, 3. September 2016
22:14 Uhr

Kundeneigene Transaktionen zu Berichten in PSM FM Haushaltsmanagement zum Beispiel Belegjournal anlegen (Variantentransaktion)

Im Rahmen einer Überarbeitung eines PSM-FM Berichtswesen sollen neben den Rechercheberichten auch Varianten zu Einzelpostenlisten als eigene Transaktion in ein Benutzermenü (siehe Artikel "Benutzereigene SAP Menüs (Favoriten, Benutzermenü, Bereichsmenü)") hinterlegt werden. Auf diese Weise können Infouser direkt bestimmte Informationen, so zum Beispiel Sachmittel, als Liste auswerten ohne, dass sie vorher genau auswählen müssen ob sie nun Personalkosten, Lehrbeauftragte und Hilfskräfte oder Sachmittel angezeigt bekommen wollen.
Ferner können durch die geschickte Wahl einer Variante auch erledigte Positionen, wie abgebaute Mittelbindungen, ausgeblendet werden, so dass nur die relevanten Positionen innerhalb einer Einzelpostenliste dargestellt werden und später auch nach Excel exportiert werden können (siehe auch "Grundlagen - Berichte von SAP nach Excel exportieren" )

Die Grundlagen zur Erstellung eines Recherchebericht in PSM-FM (Public Sector Management-Haushaltsmanagement) habe ich in den Artikeln "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget" und "Recherchebericht Budget + Ertrag ggü. Aufwand" ausführlich beschrieben. Allerdings sind Rechercheberichte mittlerweile auch im Bilanzreporting oder in der Ergebnisrechnung ein Berichtstool wie im Artikel "Rechercheberichte im Modul FI (Bilanzanalyse)" gezeigt wird.

Solche Rechercheberichte können als Parametertransaktion, wie im Artikel "Parametertransaktion für Recherchebericht" beschrieben als kundeneigene Transaktion angelegt werden. Der Unterschied zwischen den einzelnen Transaktionsarten ist unter anderen auch im Artikel "Transaktion anlegen (Report, Parameter) bspw. für SAP Query / Unterschied Parameter- oder Reporttransaktion" beschrieben.

Nun soll aber für eine vorhandene Transaktion eine entsprechende Variante einer Einzelpostenauswertung angelegt werden.

Belegjournal - Obligo/Ist Alle Buchungen


Innerhalb des Belegjournal (Transaktion FMRP_RFFMEP1AX) zu finden unter
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Infosystem
  • Einzelposten
  • Obligo und Ist
  • Alle Buchungen (Transaktion FMRP_RFFMEP1AX )
sind verschiedene Varianten zur Vorbelegung des Selektionsbildschirm angelegt worden.
 

Varianten zum Belegjournal PSM-FM Einzelposten

Hierbei sind verschiedene Felder schon ausgefüllt (u.a. auch mit Kennzeichen GPA ausschalten siehe Artikel "SAP Berichte alter Name Kostenstelle (falscher Stichtag)" oder auch "PSM: Selektionsvarianten und Wertübernahme aus vorherigen Selektionen") und müssen daher durch die Infouser nur noch um die relevanten Fonds oder Finanzstellen ergänzt werden.. Ein wichtiger Punkt ist auch hinter der Freien Abgrenzung unter den Obligo-Einzelposten der Punkt "Position erledigt" welcher per Optionen als Einzelwert aktiviert mit Leerzeichen gewählt sein sollte um abgebaute Mittelbindungen, die erledigt sind, nicht mehr anzeigen zu lassen.

Für die Anzeigevarianten (benutzerübergreifend oder benutzerspezifisch) ist hier auch das Berechtigungsobjekt S_ALV_LAYO mit der Aktivität 23 für Pflegen. Ist die Berechtigung nicht vorhanden können nur benutzerspezifische Layoutvarianten gespeichert werden.

Neben der Variante ALLGEMEIN sind hier auch SACH für Sachmittel und PERSONAL für Personalmittel angelegt worden, so dass über diese Varianten entsprechende Selektionen vorweggenommen werden können und die Infouser direkt mit dieser Variante arbeiten können.

Nun sollen für diese einzelnen Varianten kundeneigene Transaktion (als Z* oder Y*) angelegt werden.

Der erste Gedanke wäre hier tatsächlich, vergleichbar zu CO Berichten eine sogenannte Variantentransaktion anzulegen.

Variantentransaktion anlegen

Anstatt hier direkt anhand des Belegjournal das Beispiel durchzugehen möchte ich die folgenden Schritte mit einen CO Bericht erläutern.

Nehmen wir an, dass für den Bericht S_ALR_87013611 eine entsprechende Variante ALLGEMEIN angelegt ist. Nun kann über die Transaktion SE93 eine neue Transaktion angelegt werden.

Nachdem der neue Transaktionscode angegeben worden ist ist hier zum Einen ein Kurztext für die Transaktion anzugeben und als Startobjekt eine Auswahl getroffen werden.

Die erste Wahl wäre hier

"Transaktion mit Variante (Variantentransaktion)".


Danach kann die ursprüngliche Transaktion ausgewählt werden, in unseren Beispiel also S_ALR_87013611 und über das Feld Transaktionsvariante die entsprechende Variante der Transaktion. Leider stehen hier dann nicht die angelegte Varianten zur Verfügung. Gleiches gilt leider auch für das Belegjournal. Vermutlich würde diese Art der Transaktion mit Varianten der Transaktion KOK5 (CO Innenauftrag Stammdatenliste) funktionieren.

Also der zweite Versuch

"Programm und Selektionsbild (Reporttransaktion)"


Hier kann der Report (Technische Info) zur Transaktion hinterlegt werden z.B. GP4QLQKH46VZJ3P1A40A23S3HJG850 für S_ALR_87013611 .

Hier funktioniert dann auch für das Selektionsbild 1000 der Start mit der Variante die direkt hinterlegt werden kann.

Leider ist dieses nicht möglich für den Report hinter den Belegjournal (Report RFFMEPGAX zur Transaktion FMRP_RFFMEP1AX) Es erfolgt die Fehlermeldung "Es wurden keine geeigneten Varianten für Bild 1000 gefunden".

Somit bleibt auch hier nur die vertraute

"Transaktion mit Parametern (Paramtertransaktion)"

Hier können nun ebenfalls für die Transaktion START_REPORT unter anderen die Felder
  • Reporttyp
  • Report
  • Erweiterter Name
  • Variante
mit Werten versorgt werden.

Dazu wird in der Transaktion SE93 eine Parametertransaktion angelegt mit den Vorschlagswerten für die Transaktion START_REPORT. Wichtig ist nun, dass das Feld Einstiegsbild überspringen aktiviert wird. Ferner sollten im Abschnitt Klassifikation die GUI EIgenschaften geerbt werden. Nachdem die Transaktion START_REPORT mit Enter bestätigt worden sind, kann per F4 Auswahlhilfe in der Tabelle mit Vorschlagswerten die einzelnen Dynprofelder ausgewählt werden.

Interessant sind nun folgende Felder
Name des Dynprofeldes Wert
Parametertransaktion für Recherchebericht RFFMEPGAX
D_SREPOVARI-REPORT RFFMEPGAX
D_SREPOVARI-VARIANT Die angelegte Variante bspw. SACH oder PERS

Sofern nun diese neu angelegte Transaktion gestartet wird, wird automatisch das Belegjournal mit den entsprechenden vorbelegten Feldern gestartet. Im Unterschied zu der eigentlichen Transaktion FMRP_RFFMEP1AX sind hier zwar noch weitere Abschnitte im Selektionsbild eingeblendet (Obligo/Ist und FI-Beleg), was am aufgerufenen Report liegt, aber auch diese Felder können per "Feld schützen" vor unbeabsichtigten Änderungen geschützt werden. Somit können also neben Recherchberichten auch Varianten des Belegjournal als eigene Transaktion angelegt werden.

Varianten schützen

Da diese Varianten durch die Parametertransaktion erwartet werden und die Transaktion START_REPORT nicht gegen das Berechtigungsobjekt S_TCODE geprüft wird sondern lediglich der hinter der Transaktion liegende Report (Berechtigungen für Recherchebericht oder auch Belegjournal) ist es notwendig, die Varianten zu speichern und die Option Variante schützen zu wählen.

Sollten einmal geschützte Variante dennoch bearbeitet werden, ist sicherlich der Hinweis auf den Artikel "Frühjahrsputz oder geschützte Varianten und nicht mehr benötigte Rechercheberichte entfernen oder reorganisieren", aber auch die Notwendigkeit angelegte Berichte ordentlich zu dokumentieren ist auch im Artikel "Fachliche und technische Dokumentation von Selektionsvarianten und individuelle Berichte in SAP identifizieren" mit einigen Empfehlungen bedacht worden.

Der Vorteil an solcherart angelegten Transaktionen zum direkten Aufruf von Varianten von Standardberichten ist, dass man hier direkt auf diese Transaktionen im Support verweisen kann und das Berichtswesen nicht mehr innerhalb eines Handbuch auf verschiedene Handhabungen eines bestehenden Berichtes verweisen muss sondern hier die Möglichkeiten vorhanden sind die gewünschte Information in einer gewünschten Art und Weise darzustellen ohne dass dabei ein Missverständnis zustande kommt oder aber SAP wieder einmal ganz und gar andere Daten ausspuckt als der Berichtsempfänger eigentlich erwartet hätte.

Dennoch oder vielleicht auch gerade deswegen sollte sich hier sehr genau darüber Gedanken gemacht werden welche Berichte zur Verfügung gestellt werden und ferner sollte man sich darüber bewusst sein, dass weiterhin für die Endanwende die Möglichkeit besteht eine eigene Variante des Berichtes auszuwählen oder gar eine individuelle Berichtsvariante abzuspeichern. Gerade an dieser Stelle ist das Berichtswesen gleichzeitig mit Berechtigungswesen zu verknüpfen.

Einige interessante Ansätze liefern hier die Artikel "Belegartberechtigung F_BKPF_BLA" oder auch "SAP BC: Personalkontenberechtigungen". Auch wenn ich meine Diplomarbeit zur Erlangung des Grades eines Diplom-Betriebswirt (FH) über das Thema: "Berechtigungswesen in SAP auf Basis der Überarbeitung des vorhandenen Konzeptes der FH Gießen-Friedberg im Bereich Finanzwesen und Controlling" nicht veröffentlciht habe, mag ich an dieser Stelle doch die verwendete Literatur empfehlen und denke mir, dass Grundlagen wie "Welche User haben die Berechtigung zur Auswertung einer bestimmten Kostenstelle oder Innenauftrag?" auch weiterhin ihre Bedeutung und Berechtigung im Werkzeugkasten eines Keyusers haben sollten.

Nicht ohne Grund ist der Artikel "Unterschiedliche Auswertungsmöglichkeiten im Controlling (Report Writer, Recherchebericht, SAP Query) und natürlich Excel ;-)" stellvertretend für die Ansicht, dass heutzutage ein SAP Modul übergreifendes Denken und Nutzen der Werkzeuge der Module PSM-FM (Public Sector Management - Funds Management (Haushaltsmanagement)), CO (Controlling) aber auch FI (Finanzbuchhaltung) und HCM (Personalwesen) elementar für ein integratives und wirkungsvolles Berichtswesen, dass sicherlich nciht nur im Hochschulberichtswesen relevant ist. 

Wichtig ist dabei, dass man sich aber auch über die Grenzen einer solchen Vorgabe im Klaren sein sollte und darauf achten muss, dass entsprechende Berichte weiterhin gepflegt werden müssen und spätestens zum Jahresabschluss die Varianten gepflegt werden sollten, was ihren Zeitraum oder andere Werte betreffen mag. So flexibel hier Berichte auch sein mögen, so pflegeintensiv kann hier auch das Vorgehen sein und daher ist eine Dokumentation auch ein wesentlicher Teil eines sinnvollen Berichtswesen und sei es auch nur, dass Nochfolgende CO Keyuser später einmal in ein Fachkonzept Controlling schauen können und nicht dazu gezwungen sind die Dokumentation selbst noch einmal umzuschreiben um ein Verständnis für das dahinter liegende Berichtswesen zu erlangen oder gar aus Versehen scheinbar nicht verwendete Varianten löschen, die dann später doch noch in bestimmten Varianten oder Transaktionen dringend benötigt werden.

Integratives ERP System ->modulübergreifendes Berichtswesen


Aber dieses ist vielleicht auch einer der Gründe warum das Thema Berichtswesen nie langweilig wird und sich nicht nur Keyuser gerne mit Themen wie "Grundlagen Kurzeinführung und Handbuch Report Painter Report Writer" oder auch "Grundlagen Kurzeinführung und Handbuch SAP Query" beschäftigen. Oftmals ist die Frage des Berichtswesen keine von IT Skills sondern eine des Mutes neue Möglichkeiten und Wege zu entdecken und diese dann für das eigene Berichtswesen umzusetzen.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 11. August 2016
19:32 Uhr

PSM-FM Grundlagen Finanzierungszweck im Haushaltsmanagement bei Recherchebericht und Selektion

Das Thema "Finanzierungszweck" innerhalb des SAP Modul Public Sector Management - Haushaltsmanagement (PSM-FM) ist bisher in der Hauptsache Thema bei der Erstellung von Stammdatenlisten für Fonds gewesen. Hier ist im Artikel "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage" beziehungsweise in den Artikeln "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" und "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen" dieses relativ ausführlich erläutert.

Aus Sicht einer Anwendenden ist es aber oftmals so, dass nicht eine Stammdatenliste sondern ein Bericht für diverse Projekte hier hilfreich ist. Natürlich kann innerhalb eines erstellten Rechercheberichtes (siehe "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget") anhand des Würfelmodells bei der Auswertung von der Darstellung der Fonds auf Finanzierungszwecke gewechselt werden.

Unter den Punkt Navigation ist ein Vorrat der verfügbaren Merkmale des Berichts vorhanden. Hier kann nun der Finanzierungszweck mit einfachen Klick markiert werden und per Klick auf die Schlüsselspalte die Darstellung von Fonds auf Finanzierungszwecke gewechselt werden. Sofern Sie nun ein Merkmal wie einen bestimmten Finanzierungszweck doppelt klicken wird dieses als Merkmalsfilter  gesetzt und es werden alle Fonds zu diesen Merkmal dargestellt Sofern Sie hier die Merkmalsdarstellung erneut auf Fonds umstellen oder alternativ auch die Fonds per Doppelklick als Filter verwenden um dann die Buchungskonten auf Ebene der Finanzpositionen dargestellt zu bekommen.

Es kann jedoch sein, dass Sie schon im Vorfeld nur Fonds eines bestimmten Finanzierungszweck auswerten wollen. Dazu können Sie im Einstiegsbild des Rechercheberichtes auf die Wertauswahlhilfe (F4 Taste) gehen und erhalten eine Suchhilfe über die Fonds. Im Reiter "Suche über Attribute" ist es dann möglich über die Fondsart oder eben auch Finanzierungszweck schon die relevanten Fonds auszuwählen.

Nebenbei handelt es sich beim Finanzierungszweck um ein Stammdatum, dass Sie in der Stammdatenpflege des Fonds unter
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Kontierungselemente
  • Fonds
in der Stammdatenpflege (Transaktion FM5I für Anlegen oder FM5U für Ändern) im Abschnitt Zusatzdaten über das Feld Finanzierungszweck auswählen können. Hier sind alle im System schon angelegte Finanzierungszwecke zur Auswahl vorhanden.

Sofern Sie weitere Finanzierungszwecke benötigen besteht die Möglichkiet diese ebenfalls als Stammdatum mit Bezeichnung und Beschreibung anzulegen.

Diese werden ebenfalls innerhalb des Finanzkreises angelegt. Sie finden die Funktion unter:
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Kontierungselemente
  • Fonds
  • Finanzierungszweck
und hier mit der Transaktion FM6I zum Anlegen, FM6U zum Ändern und FM6S zum Anzeigen.

Gerade beim Stammdatenverzeichnis (Transaktion S_KI4_38000039 - Verzeichnis der Fonds) ist die Verwendung eines Finanzierungszwecks sehr praktisch. Nebenbei gerade im Zusammenhang mit Rechercheberichten dürfte auch der Artikel "Frühjahrsputz oder geschützte Varianten und nicht mehr benötigte Rechercheberichte entfernen oder reorganisieren" bei der Pflege eines aktiven Berichtswesen sinnvoll.
 

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Freitag, 22. Juli 2016
17:25 Uhr

Frühjahrsputz oder geschützte Varianten und nicht mehr benötigte Rechercheberichte entfernen oder reorganisieren

Hin und wieder bietet sich auch die Sommerzeit dazu an ein wenig Frühjahrsputz innerhalb der bisher angelegten Berichte oder Varianten zu machen. Gerade bei Varianten sind oftmals welche im SAP System angelegt (und gesperrt) die durch organisatorische oder fachliche Veränderungen mittlerweile nicht mehr benötigen werden. In diesem Zusammenhang verweise ich gerne auf den hilfreichen Artikel "Geschützte Selektionsvarianten entsperren" um hier etwaige geschützte Varianten doch noch entfernen zu können.

ACHTUNG: Hinterlegte Variante in Z- oder Y-Transaktion

Sollten Sie eine Parametertransaktion angelegt haben in der eine Variante mit der Bezeichnung ALLGEMEIN mit übergeben wird (Parameter D_SREPOVARI-VARIANT) müssen Sie entweder diesen Wert löschen oder erneut eine Variante mit der Bezeichnung ALLGEMEIN erneut anlegen, sofern Sie diese gelöscht haben. Alternativ kann die Parametertransaktion nicht mehr gestartet werden. Zur Pflege einer Parametertransaktion verweise ich gerne auf "Transaktion anlegen (Report, Parameter) bspw. für SAP Query / Unterschied Parameter- oder Reporttransaktion". Damit ist auch für einen Recherchebericht diese zu beachten und ggf. bei der Berichtskonzeption zu beachten.

 

Vorhandene Rechercheberichte

Gerade wenn Sie in den letzten Jahren auch viel mit Rechercheberichten (unabhängig ob nun im Haushaltsmanagement (PSM-FM) wie im Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget", "Rechercheberichte im Modul FI (Bilanzanalyse)" in der Ergebnisrechnung  oder in der Profit-Center-Rechnung stellt sich die Frage, wie Sie nicht mehr benötigte Berichte entfernen beziehungsweise löschen können.

Dieses soll am Beispiel eines Recherchebericht im Bereich der öffentlichen Verwaltung (public sector management) im Haushaltsmanagement (funds management) sprich im Modul PSM-FM erläutert werden.

Aufbau Rechercheberichte

Während die Berichtsdefinition (Aufbau des Ergebnisblatt) innerhalb eines Formular festgelegt wird, wird die Steuerung des Berichtes in einen Bericht definiert (inkl. aller Merkmale die für den  Würfel (Merkmalaustausch) zur Verfügung stehen. Um entsprechende Berichte zu starten kann entweder eine Transaktion wie Rechercheberichhte ausführen (für PSM-FM ist dieses die Transaktion FMEQ) oder alternativ eine kundeneigene Transaktion zum Aufruf der Berichte, wie im Artikel "Parametertransaktion für Recherchebericht" angelegt werden.

Rechercheberichte reorganisieren beziehungsweise löschen

Laut Dokumentation im Customizing ist das Löschen von Berichten und Formularen über die Reorganisierung vorgesehen. Hier kann über eine Liste von selektierten Berichten und Formularen diese dann inklusive der zugehörige Daten gelöscht werden.

Diese Funktion ist im Customizing (Transaktion SPRO) unter:
  • Public Sector Management
  • Haushaltsmanagement Öffentliche Verwaltung
  • Informationssystem
  • Rechercheberichte
  • Bericht -> Bericht reorganisieren (Transaktion FME6)
  • und danach
  • Formulkar -> Formular reorganisieren (Transaktion FME5)
zu finden.

Sofern jedoch einzelne Berichte beziehungsweise Formulare gelöscht werden sollen, ist es in meinen Augen wesentlich einfacher diese über die Transaktionen Bericht ändern (Transaktion FMEL) und hier über das Menü RECHERCHEBERICHT-> LÖSCHEN (UMSCH + F2) beziehungsweise im Anschluss Formular ändern (Transaktion FMEO) und hier über FORMULAR -> LÖSCHEN (UMSCH + F2) zu löschen.

Berichtsdaten löschen


Wie im Artikel "Formatanzeige im Recherchebericht (Darstellung in 1 EUR)" im Abschnitt Berichtsdaten sichern beschrieben besteht auch bei Rechercheberichten die Möglichkeit Daten zu halten (einzufrieren). Eine vergleichbare Funktion ist auch bei Report Painter / Report Writer Berichten durch Extrakte (siehe "ReportWriter Grundlagen - Extrakte sichern und verwalten") möglich. Um diese gespeicherten Daten zu löschen ist allerdings tatsächlich die Reorganisierung sehr praktisch die in diesen Fall unter:
  • Public Sector Management
  • Haushaltsmanagement Öffentliche Verwaltung
  • Informationssystem
  • Rechercheberichte
  • Bericht
  • Berichtsdaten reorganisieren (Transaktion FME7)
zu finden ist.Hierdurch werden. Anhand Merkmale wie Geschäftsjahr oder auch Erstellungsdatum etc. können hier die zu löschenden Berichtsdaten auch feingliedriger selektiert werden. Alternativ ist dieses natürlich auch nachdem der Bericht aufgerufen wurde (mit den gespeicherten Daten) unter BERICHT -> LÖSCHEN DATEN möglich.

Grundsätzlich ist eine Bereinigung von Berichten und vorhandenen Varianten sicherlich sinnvoll nicht nur aus Speicher- und Performancegründen sondern auch für eine bestehende Berichtsdokumentation und Handhabung von Berichten. Zumindest im Kreise von Kolleginnen und Kollegen ist es oft sinnvoll hier einen gewissen Aufwand in der Bereinigung von bestehenden Berichten und eventuell nicht mehr benötigte Varianten sich Gedanken zu machen.

Auch hier gilt, ebenso wie im Berechtigungswesen, die Umsetzung der Philosophie von "So viele Berichte wie nötig, so wenig Pfelgeaufwand wie irgendwie möglich".... Hier ist es einfach eine Frage von Übersichtlichkeit, Pflegeaufwand oder auch Nutzen von einzelnen Maßnahmen.

Entsprechend spannend ist natürlich die Fragestellung, wie das lokale Berichtswesen organisiert wird und einige spannende Ansätze bietet hier sicherlich der Artikel "Unterschiedliche Auswertungsmöglichkeiten im Controlling (Report Writer, Recherchebericht, SAP Query) und natürlich Excel ;-)". Von daher kann ich hier nur allen Lesenden dieses Artikel viel Vergnügen bei der Bereinigung bestehender und Konzeptierung eigener Berichte wünschen.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Sonntag, 3. Juli 2016
14:56 Uhr

Gruppierung von Finanzierungszwecken bei Drittmittelprojekten per Zusatzfeldcoding mit IF oder CASE

Gerade beim Coding von Zusatzfeldern werden Variablen oftmals auch auf ihren Inhalt hin überprüft. Hier bieten sich, wie auch in anderen Skriptsprachen, Bedingen (oder Verzweigungen) an, wie zum Beispiel IF oder CASE Statements im ABAP Coding. Anhand von Gruppierungen des Finanzierungszweck eines Haushaltsfonde (Drittmittelprojekt) soll dieses hier dargestellt werden.

Hintergrund: Anwendung Finanzierungszweck im SAP Modul Public Sector Management (PSM)

Innerhalb des Modul Haushaltsmanagement (PSM-FM) können zur Unterscheidung von Drittmittelprojekten als Merkmal sogenannte Finanzierungszwecke genutzt werden. Unerhalb der Fonds können hier einzelne Finanzierungszwecke angelegt, geändert oder auch angezeigt werden. Diese können dann innerhalb der Stammdaten von Fonds im Abschnitt Zusatzdaten ebenso wie Budgetprofile (siehe "Budgetprofil klassische Budgetierung") gepflegt werden. Hierbei handelt es sich um einen alphanummerischen Schlüßel der als Gruppierung und Auswertungsmerkmal für Fonds verwendet werden kann.

Die Finanzierungszwecke können unterhalb:
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Stammdaten
  • Kontierungselemente
  • Fonds
  • Finanzierungszweck
gepflegt werden über Anlegen (Transaktion FM5I), Ändern (Transaktion FM6U) oder Anzeigen (Transaktion FM6S).

Finanzierungszweck in einer Query einbinden (Zusatzfeld oder Zusatztabelle)

Innerhalb einer Query können Sie diese dann sowohl als Zusatzfelder eingebunden werden (siehe "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen") oder durch Verknüpfung der Tabelle FMFINCODE mit den Stammdaten der Innenaufträge (Tabelle AUFK) als Zusatztabelle (siehe "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage") zugeordnet werden.

Unterschied CASE WHEN zu  IF, ELSEIF Statement

So detailiert entsprechende Finanzierungszwecke abgebildet werden kann es doch auch für das interne Berichtswesen interessant sein mehrere Finanzierungszwecke (FINUSE). Für eine entsprechende Auswertung sollten dann mehrere Finanzierungszwecke zusammengefasst werden wodurch dann zum Beispiel die Fiannzierungszwecke EU/ESF, EU/FRP6, EU/FRP7, EU/FRP8 und andere Mittel der Europäischen Union zu einen gemeinsamen Merkmal "EU" zusammengefasst werden, so dass hier verschiedene Drittmittelprojekte die durch die EU finanziert werden insgesamt zusammengefasst werden.

Schon bei der Darstellung im Abschnitt "Zusatzfeld VLE zur Darstellung virtueller Lehreinheit aus Teilstring der verantwortlichen Kostenstelle sofern nicht in einen anderen Feld ein Wert steht" wurden einzelne Daten ausgelesen und über eine IF Schleife das Zusatzfeld per IF und ELSEIF einen Wert zugewiesen.

Die Besonderheit von IF Statements ist, dass hier besondere Prüfungen vorgenommen werden können. Neben IF gibt es aber auch die Möglichkeit per CASE Anweisung durch ABAP Code den Einzelwert eines Feldes direkt zu prüfen.

Insgesamt können in einer CASE Abfrage bis zu acht Zustände (Bedingungen) überprüft werden.

Der Syntax dazu lautet:

CASE variable.
WHEN bedingung1 OR bedingung2 .
..
Ausgelöste Aktion
..
WHEN bedingung9 OR bedingung10.
..
Ausgelöste Aktion
...
WHEN OTHERS.
..
Kein Fall tritt ein
..
ENDCASE.

Hierdurch ist die Case Anweisung wesentlich flexibler da mehrere Bedingungen per ODER verknüpft werden können, allerdings muss eine absolute Übereinstimmung mit den Werten vorhanden sein. Sofern mit Platzhaltern * gearbeitet werden soll, ist dann doch eher die Variante von IF und ELSEIF hilfreich.

IF variable = wert.
..
ausgelöste Aktion
..
ELSIF bedingung.
..
ausgelöste Aktion bei der die Bedingung, die auch komplexer sein darf, zutrifft.
..
ELSE.
..
ausgelöste Aktion, wenn keine Bedingung zutrifft.
..
ENDIF.

Im Grunde ist diese Funktion vergleichbar mit anderen Skriptsprachen. So wäre bei PHP ein vergleichbarer Fall mit IF (siehe "Wenn das Wörtchen if nicht wär...") oder SWITCH (siehe "Hierhin switchen, dahin switchen...") vergleichbar. Dieses ist auch einer der Gründe, warum ich zum Erlernen einer Programmiersprache auch gerne auf PHP und natürlich das Buch "PHP für dich, Version 2014: So einfach war PHP-lernen noch nie!" verweise, da es sehr anschaulich die Grundlagen einer Programmiersprache darstellt und PHP relativ einfach im Bereich Webseiten für eigene Projekte bzw. die private Homepage genutzt werden kann.

Nun aber wieder zurück zur Anwendung der CASE Anweisung bei Fonds und ihren Finanzierungszwecken.

Zur Erinnerung wir haben den Finanzierungszweck entweder über ein Zusatzfeld (und damit in der Variable finuse) oder über eine Zusatztabelle und damit über das Tabellenfeld FMFINCODE-FINUSE vorliegen.
 

Exkurs Finanzierungszweck über Zusatzfeld finuse

Zusatzfeld PSM-FM Finanzierungszweck aus Fond

Das Coding für das Feld FINUSE sieht dabei wie folgt aus (wobei statt BUK natürlich Ihr Buchungskreis im Coding hinterlegt sein sollte):

    * Lokale Variablen definieren
    DATA: L_FINZWECK type FMFINCODE-FINUSE.
    DATA: L_FOND type FMFINCODE-FINCODE.
    DATA: L_AUFTRAG type AUFK-AUFNR.
    * Zuweisung von Variablen aus der Selektion
    L_AUFTRAG = AUFK-AUFNR.
    * Verschieben des gespeicherten Wertes in der Tabelle AUFK um 4 Zeichen
    * HINTERGRUND:
    * Das Fekd AUFK-AUFNR hat insgesamt 12 Zeichen.
    * Die achtstellige Auftragsnummer wird mit 0000 aufgefüllt
    * Durch die Verschiebung ist die Auftragsnummer direkt in der
    * lokalen Variable gepseichert.
    SHIFT L_AUFTRAG BY 4 PLACES LEFT.
    L_FOND = L_AUFTRAG.
    * Über die Selektabfrage hat nun das Feld Fond die richtige Länge
    SELECT SINGLE finuse FROM fmfincode INTO L_FINZWECK
           WHERE fikrs = 'BUK'
             AND fincode = L_FOND.
    * Abfangen eines Fehlers und Wertzuweisung in Zusatzfeld
    IF sy-subrc <> 0.
      CLEAR finuse.
    ELSE.
      finuse = L_FINZWECK.
    ENDIF.

ACHTUNG: Länge der Auftragsnummer / Fondsnummer beachten!

Im oberen Coding gehen wir davon aus, dass Innenauftrag und Fond jeweils acht Stellen haben. Sollte die Auftragsnummer bzw. Fondcode nur siebenstellig sein ist die Zeile auf
SHIFT L_AUFTRAG BY 5 PLACES LEFT
anzupassen.

Um nun auf die Variable oder den Finanzierungszweck zuzugreifen legen wir ein neues Zusatzfeld an.

Zusatzfeld FINANZIERUNGSGRUPPE mit CASE Anweisung

Über die Schaltfläche Zusätze (F5) bzw. innerhalb der Transaktion SQ02 (Pflege des Infosets) über  SPRINGEN-> ZUSÄTZE ZUM KNOTEN kann ein eigenes Zusatzfeld angelegt werden. Hierzu kann im Register Zusätze die Schaltfläche Anlegen ausgewählt werden. Es erscheint eine Maske in der der Name des Zusatzfeldes angegeben werden soll (im folgenden Beispiel FINGRUPPE)  und die Art der Zusatzinformation. Neben des schon angesprochenen Zusatzfeldes  sind dieses: Zusatztabelle, Zusatzstruktur und Coding. In unserem Beispiel soll ein Zusatzfeld mit den Namen FINGRUPPE angelegt werden.

Dieses hat folgende Eigenschaften: Langtext und Überschrift haben beide Finanzierungsgruppe erhalten. Die Formatangabe wurde über LIKE-Referenz idenitsch zum Feld FMFINCODE-FINUSE gehalten. Damit entspricht dieses Feld den Formatangaben in der Tabelle FMFINCODE (Typ C (Character) Länge 016 Ausgabenlänge 016). Dieses sollte, sofern Sie FINUSE per Zusatzfeld definiert haben, in einen tiefergelegten Codingabschnitt hinteregt werden.

Damit ist das Feld angelegt, hat jedoch nur eine Datendefinition aber noch keine eigene Daten (anders bei der Zusatztabelle, die sich direkt aus der Datenbank einen passenden Datensatz liest).

Nachdem ein Feld jedoch angelegt ist kann über die Schaltfläche "Coding zum Zusatz" ein passendes ABAP Coding für das Feld hinterlegt werden

Hier entscheidet dann die erste Zeile des Coding woran die Bedingungen überprüft werden sollen.

1. Variante Orientierung am Zusatzfeld FINUSE.


Wie in oberen Beispielcoding ersichtlich erhält die Variable finuse ihren endgültigen Wert durch die Anweisung

finuse = L_FINZWECK.

Somit ist die erste Zeile des Coding für unsere FINANZIERUNGSGRUPPE also:

CASE finuse.

2. Variante Einbindung als Zusatztabelle

Sollten Sie die Tabelle FMFINCODE als Zusatztabelle über das Zusatzfeld ZAUFNR eingebunden haben (siehe oben verlinkten Artikel) würde die erste Codingzeile wie folgt lauten:

CASE FMFINCODE-FINUSE.

3. Coding mit Bedingungen

In beiden Fällen kann das Coding nun wie folgt weitergehen, so dass eine entsprechende Ausgabe erfolgen wird.

  WHEN 'EU/ESF' OR 'EU/FRP7' OR 'EU/FRP8' OR 'EU/FRP6'.
    FINGRUPPE = '
EU-Projekte'.
  WHEN 'INDUSTRIE'.
    FINGRUPPE = '
Industrie'.
 WHEN OTHERS.
    FINGRUPPE = '
Andere Projekte'.
ENDCASE.

Insgesamt können je WHEN Zeile acht Varianten als Bedingung gesetzt werden.
Sinnvoller ist es natürlich bei WHEN OTHERS. dann den Finanzierungszweck des Fond auszugeben.

Für die Zusatztabelle wäre hier das Coding:

 WHEN OTHERS.
    FINGRUPPE = FMFINCODE-FINUSE.
ENDCASE.

und für das Zusatzfeld:
 

 WHEN OTHERS.
    FINGRUPPE = finuse.
ENDCASE.

Damit kann dann später noch entschieden werden, was mit einen Finanzierungszweck passieren soll und gegebenenfalls künftig eine weitere Bedingung mit eingebaut werden.

Anwendungsgebiet Finanzierungsgruppe

Während in einer Drittmittelstatistik Daten möglichst ausführlich dargestellt werden sollten kann es für Managementberichte sinnvoll sein vorhandene Daten zusammen zu fassen und so diese Projekte gruppiert darzustellen. Hierzu eigent sich dann tatsächlich die Methode der Finanzierungsgruppe, da hiermit die Ergebnisse einer Auswertung (als Beispiel sei hier der Recherchebericht "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget" um eine Stammdatenliste ergänzt werden die sowohl CO Stammdaten, Klassifizierungsmerkmale als eben auch die Fiannzierungsgruppe mit ausweisen kann. Für weitere Möglichkeiten einer solchen Query verweise ich gerne auf die Artikelserien:

  1. "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage"
  2. "Query Einzelpostenliste Innenauftrag mit Ausweis Ertrag und Aufwand Zweiter Teil Query zur Datenaufbereitung"
Oder aber auf:
  1. "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen"
  2. "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer"
  3. "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM"
  4. "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE"
Je nach beabsichtigten Berichtszweck dürfen hier auch weitere Mögichkeiten vorahnden sein.
 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 3. März 2016
17:50 Uhr

Query Einzelpostenliste Innenauftrag mit Ausweis Ertrag und Aufwand Zweiter Teil Query zur Datenaufbereitung

Wie schon im ersten Teil dieses Artikel ("Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage") beschrieben wurde aus einer anderen Hochschule ("erweiterten" KollegInnenkreis) basierend auf eine CO Schulung mit SAP Query (aus der auch viele Anregungen im Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" vorgestellt wurden) die Idee die Stammdaten eines CO Innenauftrages mit einer Einzelpostenliste zu kombinieren und dabei eine Spalte für Ertrag und eine Spalte für Aufwand inklusive Abschreibungen entwickelt und entsprechend umgesetzt. Die hier genutzte Lösung innerhalb der Query möchte ich hier gerne vorstellen.

Im Ergebnis kann hier, vergleichbar zur Saldenliste im PSM-FM (siehe Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget") eine Auswertung über bestimmte Innenaufträge aller Erträge und Aufwendungen erfolgen. Ferner können hier sowohl als Selektionsmerkmal als auch für die Liste als Ausgabe entsprechende Stammdaten mit ausgegeben werden.

Basis: Infoset AUFK-COEP und Zustzfelder/Zusatztabellen

Als Grundlage für die Query habe ich ein recht umfangreiches Infoset angelegt, dass sowohl Stammdaten aus CO und PSM-FM als auch die CO Einzelposten aus der Tabelle COEP miteinander in Verbindung setzt.

Als schematische Darstellung sieht das Infoset inklusive Zusatzfelder (mit Coding) und Zusatztabelle, welche beide gelb eingefärbt sind,  wie folgt aus:

Infoset AUFK-COEP und Zusatzfelder sowie Zusatztabelle FMFINCODE

Der Aufbau des Infoset und der Zusatzfelder ist im ersten Teil dieses Artikel ausführlich beschrieben. ACHTUNG der Left outer Join gehört zwischen COEP und CSKB und nicht COEP und CSKU (Hintergrund geänderte Kostenartentexte). Hier ist die Zeichnung leider fehlerhaft.

Exkurs: Auswertung Einzelposten COEP statt Summen COSS, COSP

Per Mail wurde ich bezüglich des  Infoset angesprochen, ob es nicht sinnvoller wäre statt der Einzelposten hier die Summentabelle COSP auszuwerten, da dieses einen Performancegewinn für die spätere Query hätte. Der Gedanke der Summentabellen klingt auf den ersten Blick sympathisch hat jedoch einen entscheidenden Nachteil. In der Tabelle COSP werden nur die Primärkosten als Summe gespeichert, die sekundären Kostenarten sind in der Tabelle COSS enthalten. Die COEP hat dafür alle Einzelposten. Ebenso sind die Planbelege ein weiteres Problemfeld, da diese in der Tabelle COEJ hinterlegt sind und ebenfalls eine Herausforderung zur Auswertung bieten. Auf die Auswertung der Plan-Einzelposten bin ich im Artikel "CO Planeinzelposten Objekt und Partnerobjekt auswerten / Mehrere Felder summieren" eingegangen. In diesem Zusammenhang ist auch die Tabelle TJ01 "Betriebswirtschaftliche Vorgänge" interessant, da diese für jeden betriebswirtschaftlichen Vorgang erfasst, wo die erfassten Bewegungsdaten in Tabellenform festgehalten werden.

Zuordnung Infoset zu Query

Das entsprechende Infoset sollte, in der Transaktion SQ02 über die Schaltfläche "Zuordnung zu Rollen/Benutzergruppen" der Benutzergruppe zugeordnet werden in der nun auch die Query erstellt werden soll.

Dieses kann dann in der Transaktion SQ01 erfolgen. In der Query soll nun auf die Gruppierung der Kostenarten nach Ertrag und Aufwand eingegangen werden, sowie die eigentliche Query basierend auf diesem Infoset erstellt werde.

Dazu arbeiten wir auch wieder mit lokalen Feldern in der Query.

Neben der reinen Auswertung von einzelnen Tabellenfeldern beziehungsweise der im Infoset zur Verfügung gestellten Feldern kann innerhalb der Query auch die Ergebnisse dieser Datenbankabfrage verarbeitet werden.

Kurzbezeichnung für Wert und Kostenart


Dazu müssen einzelnen Feldern eine Kurzbezeichnung zugewiesen werden um auf diese in den lokalen Feldern dann Bezug genommen werden zu können.

Hierzu gehen wir nicht in die Grundliste der Query (wo später  auch das Layoutdesign gepflegt wird) sondern wechseln innerhalb der Querypflege mit nächstes Bild (F6) auf die Feldauswahl der Query. Sofern wir uns noch in der Layoutpflege befinden kann über Zurück dorthin gewechselt werden. Alternativ kann auch im Menü über

SPRINGEN->FELDAUSWAHL->FELDAUSWAHL

in die Feldauswahl der Query gewechselt werden. 

Achten Sie bitte darauf, dass über

EINSTELLUNGEN ->EINSTELLUNGEN

der grafischer Query Painter aktiviert ist, wobei dieses auch im Standard der Fall sein sollte. Andernfalls würde sich die Oberfläche zur Querydefinition etwas ändern (was zwar mehr Möglichkeiten bietet, aber leider auch ein wenig am Komfort der Pflege von Query verhindert.

Um den einzelnen Feldern eine Bezeichnung zuzuweisen ist es erforderlich über die Funktion

BEARBEITEN->KURZBEZEICHNUNGEN ->EINSCHALTEN

einzelne Felder eine Kurzbezeichnung zuordnen und mit dieser Bezeichnung dann arbeiten.

Erst nachdem die Kurzbezeichnungen eingeschaltet sind, kann über die Feldauswahl eine Kurzbezeichnung den einzelnen Feldern des Infoset zugewiesen werden.

Hierzu wechseln wir in die Felder der Feldgruppe "CO-Objekt: Einzelposten periodenbezogen" beziehungsweise der Feldgruppe in der Sie die Felder der Tabelle COEP zugewiesen haben.

Hier erhalten nun die Felder "Wert gesamt in Kostenrechnungskreiswährung" und  "Kostenart" eine Kurzbezeichnung. Hier wählen wir die Kurzbezeichnungen WERT und KOA.

Exkurs: Unterschiedliche Währungen im Controlling

Alternativ hätte die Kurzbezeichnung WERT auch den Feldern "Wert gesamt in Objektwährung" oder "Wert gesamt in Kostenrechnungskreiswährung" zugeordnet werden können. Sofern alle Werte in Euro geführt werden dürfte dieses identisch sein.

Allerdings kann im Controlling, besonders bei internationalen Konzernen unterschiedliche Währungen geführt werden.

Beim Festlegen eines Kostenrechnungskreis wird im Customizing auch gleichzeitig eine Kostenrechnungskreiswährung festgelegt. Dem Kostenrechnungskreis können unterschiedliche Buchungskreise zugeordnet werden, die zwar eine eigene Buchungskreiswährung  (bspw. US Doller USD oder Schweizer Franken SFR) haben aus denen aber die Kostenrechnung die gemeinsame Konzernwährung Euro ableitet, so dass innerhalb des Kostenrechnungskreis eine einheitliche Konzernwährung geführt wird.

Die Transaktionswährung weist dafür die Währung aus, in der die Belege im Controlling tatsächlich gebucht sind.

Daneben können zu einzelnen CO-Objekten, so auch Kostenstelle  oder Innenauftrag ebenfalls eigene Währungen definiert werden (bspw. in der Kostenstelle im Feld Währung in der Registerkarte Grunddaten). In der Regel wird hier aber dem CO-Objekt die Währung als Vorschlagswert beim Anlagen vorgeschlagen und zugewiesen, die auch im Kostensrechnungskreis hinterlegt ist.

Zusammenhang T-Währung (COEP-WTGBTR), O-Währung (COEP-WOGBTR), K-Währung (COEP-WKGBTR)  und Währungsumstellung

Durch den Hinweis eines Kollegen bin ich darauf aufmerksam gemacht worden, dass bei einen Mehrmandantensystemen scheinbar nur das Feld "Wert gesamt in Kostenrechnungskreiswährung"( COEP-WKGBTR ) gefüllt ist und nicht die Felder Transaktionswährung ( COEP-WTGBTR) oder Objektwährung ( COEP-WOGBTR ). Entsprechend sinnvoll ist es daher tatsächlich die Kostenrechnungskreiswährung für diese Query zu verwenden. An welcher Stelle im Customizing dieses Verhalten ausgesteuert ist kann ich leider noch nicht sagen, aber die Artikel, welche die COEP im Rahmen einer Query auswerten, habe ich passend angepasst. Hintergrund ist hier vermutlich, dass einige Mandanten die Währungsumstellung von DM auf EUR mitgemacht haben und andere erst nach der Umstellung auf Euro angelegt worden sind. Dieses spricht dafür, dass die T-Währung und O-Währung nur dann gefüllt wird, wenn auch tatsächlich unterschiedliche Währungen im Systemn vorhanden waren und ansonsten wird nur das Feld  "Wert gesamt in Kostenrechnungskreiswährung" gefüllt, wobei diesse Währung auch identisch zur Buchungskreiswährung ist.


Ich habe mich daher für WERT für "Wert gesamt in Kostenrechnungskreiswährung" als Feld entschieden.

Lokales Feld für Ertrag, Aufwand und Verrechnung bzw. Umlage anlegen

Die nun zugewiesenenKurzbezeichnungen WERT und KOA sind notwendig, da wir auf diese dann Bezug nehmen, wenn wir ein lokaes Feld mit einer Formel anlegen.
Dieses geht über

BEARBEITEN->LOKALES FELD->ANLEGEN.

Dieses Lokale Feld wird dann in der Feldgruppe angelegt, in der wir uns gerade befinden. Entsprechend sinnvoll ist es soweit in der Feldliste herunterzunavigieren, bis wir in der Feldgruppe sind in der auch die Zusatzfelder Gesperrt, Projektbewertung und VLE (Virtuelle Lehreinheit) hinterlegt sind.

Nun können folgende Felder angelegt werden.

1. Lokales Feld ERTRAG_5
Kurzbezeichnung:  ERTRAG_5
Feldbezeichnung: 5er Ertrag
Überschrift: 5er Ertrag
Eigenschaften:
Gleiche Eigenschaften wie Feld:  WERT
Berechnungsvorschrift:
Hier muss ausnahmsweise keine komplexe Berechnung eingetragen werden, da wir nur eine Bedingung (ein Intervall an Kostenarten) benötigen.

Entsprechen lautet die Berechnung  WERT
und die zugehörige Bedingung
KOA >= 50000000 AND KOA <= 59999999

Alternativ kann dieses auch als
Bedingung:  KOA >= 50000000 AND KOA <= 59999999
Formel: WERT

angegeben werden und Sonst leer gelassen werden. Somit wird das Feld Wert nur im lokalen Feld ausgegeben, wenn die Kostenart zwischen 50000000  und 59999999 liegt.

Genauso definieren wir die beiden übrigen Felder:

2. Lokales Feld AUFWAND_6
Kurzbezeichnung:  AUFWAND_6
Feldbezeichnung: 6er Aufwand
Überschrift: 6er Aufwand
Eigenschaften:
Gleiche Eigenschaften wie Feld:  WERT
Berechnungsvorschrift:
Bedingung: KOA >= 60000000 AND KOA <= 69999999
Formel: WERT

Wobei dieses nun sowohl den Sachaufwand als auch die AfA umfasst.

Daneben legen wir noch ein weiteres Feld für die sekundären Kostenarten der Kosten-Leistungs-Rechnung an über die Verrechnungen und Umlagen erfolgen.3

3. Lokales Feld AUFWAND_9
Kurzbezeichnung:  AUFWAND_9
Feldbezeichnung: Umlage Verrechnung
Überschrift: Umlage Verrechnung
Eigenschaften:
Gleiche Eigenschaften wie Feld:  WERT
Berechnungsvorschrift:

Hier können dann mehrere Bedingungen hinterlegt werden, als Beispiel sind hier drei Nummernkreise der Kostenarten festgelegt:

Bedingung: KOA >= 91000000 AND KOA <= 91999999
Formel: WERT

Bedingung: KOA >= 93000000 AND KOA <= 93999999
Formel: WERT

Bedingung: KOA >= 95000000 AND KOA <= 95999999
Formel: Wert


Für alle anderen Kostenarten könnte nun ein weiteres Feld mit Prüfung angelegt werden, sofern keines der anderen Felder gefüllt ist.Natürlich können auch andere Intervalle (zum Beispiel für Personalkosten, AfA oder Sachkosten) gewählt werden.

Exkurs: Kontenrahmen und Kostenartenintervalle am Beispiel Personalkosten

Nehmen wir als Beispiel den Industriekontenrahmen (IKR). Hier sind die einzelnen Kontenklassen ebenfalls als Intervalle gepflegt.
Aufbau Industriekontenrahmen (IKR) - Kontenklassen  Auszug aus Schnelleinstieg ins SAP Controlling (CO)  ISBN 9783960126874
Innerhalb der Klasse 6 (Betriebliche Aufwendungen) wären die Personalkosten in den Intervallen Löhne (620000 bis 629999), Gehälter (630000 bis 639999) und Personalnebenkosten (640000 bis 649999). Je nach Sichtweise können zu den Personalkosten auch die Sonstigen Personalaufwendungen (660000 bis 669999) betrachtet werden unter die unter anderen die  Aufwendungen für Fort- und Weiterbildung fallen.


Eine ausführliche Beschreibung der hier zugrundeliegenden Kostenartenrechnung  ist im Buch "Schnelleinstieg ins SAP Controlling (CO)" (ISBN 9783960126874 *)  zu finden... .



Hier werden auch weitere Intervalle (im Kapitel Kostenartenrechnung) sowie der Industriekontenrahmen IKR ausführlicher erläutert. Eine gute Einführung in das interne und externe Rechnungswesen anhand der SAP Module FI und CO habe ich ferner im Artikel "Schnelleinstieg ins SAP Rechnungswesen mit cat content ;-)" vorgestellt. Sollten Sie sich für SAP Fachliteratur interessieren dürfte auch die digitale SAP-Bibliothek von Espresso Tutorials interessant sein (siehe SAP ebook Flatrate).

In der in diesem Artikel erstellten Query kann, anhand der lokalen Felder, aber schon anhand der Summe der Spalten und der Summe der Spalte Wert kontrolliert werden, ob tatsächlich alle Kosten ordentlich zugeordnet sind. Sollten Sie auch weitere Aufwendungen über Kostenarten beginnend mit 7* buchen, wäre eine weitere künftige Spalte bzw. lokales Feld anzulegen.
 

Grundliste der Query anlegen


Nach Anlage der lokalen Zusatzfelder kann nun die Grundliste der Query angelegt werden.
Hierzu kann über SPRINGEN->GRUNDLISTE->AUFBAU auf die Pflege der Grundlise gewechselt werden in der sowohl das Layout als auch die einzelnen auszugebenden (oder zu selektierenden Felder) ausgewählt werden.

Innerhalb der Query werden nun auf folgende Felder der einzelnen Tabellen Zugriff genommen. Bzw. in der Grundliste zugewiesen. Hierbei ist L als Listenfeld und S als Selektionsfeld zu verstehen.

Die Felder werden hier in der Reihenfolge angegeben, wie diese dann auch in der Query ausgegeben werden sollen:


Tabelle AUFK "Aufragsstammdaten"
Auftragsnummer (L,S) AUFK-AUFNR
Kurztext  (L) AUFK-KTEXT
Arbeitsbeginn (L) AUFK-USER7
Arbeitsende (L) AUFK-USER8

Zusatzfelder (aus Infoset)
G(esperrt) (L) GESPERRT

Tabelle AUFK "Aufragsstammdaten"
Antragsteller (L) AUFK-USER0
Verantwortlicher (L) AUFK-USER2
Abteilung (L) AUFK-USER6

Tabelle FMFINCODE "FIFM: Finanzierungscode"
Finanzierungszweck von Drittmitteln  (L,S) FMFINCODE-FINUSE

Zusatzfelder (aus Infoset)
Projektbewertung (L,S) PBW

Tabelle AUFK "Aufragsstammdaten"
Verantwortliche Kostenstelle (L,S) AUFK-KOSTV


Tabelle COEP "CO-Objekt: Einzelposten periodenbezogen"
Geschäftsjahr (L,S) COEP-GJAHR
Vorgang CO (L) COEP-VRGNG
Belegnummer (L,S) COEP-BELNR
Kostenart (L,S) COEP-KSTAR

Tabelle CSKU "Kostenartentexte"
Bezeichnung Kostenart (L) CSKU-KTEXT

Tabelle COEP "CO-Objekt: Einzelposten periodenbezogen"
Wert gesamt in Kostenrechnungskreiswährung (L) COEP-WKGBTR
Je nach Betrieb kann es hier sinnvoll sein die Währungsfeldposition davor oder dahinter zu setzen. Sofern nur eine Währung genutzt wird kann natürlich auch kein Währungsfeld genutzt werden.

Tabelle COBK "CO-Objekt: Belegkopf"
Erfassungsdatum des Beleges (L,S) COBK-CPUDT
Buchungsdatum  (L) COBK-BUDAT
Benutzername  (L) COBK-USNAM

Tabelle COEP "CO-Objekt: Einzelposten periodenbezogen"
Positionstext (Segmenttext) (L)  COEP-SGTXT

Tabelle COBK "CO-Objekt: Belegkopf"
Belegkopf-Text (L) COBK-BLTXT

Lokale Zusatzfelder (aus der Feldliste der Query)
5er ERTRAG (L)
6er Aufwand (L)
9er UmlageVerrechnung (L)

Zur Zuordnung der Verantwortung kann nun noch die verantwortliche Kostenstelle und natürlich die Lehreinheit mit ausgegeben werden.

Tabelle CSKS "Kostenstellenstammsatz"
Kostenstelle (L) CSKS-KOSTL

CSKT "Kostenstellentexte"
Bezeichnung Kostenstelle (L) CSKT-KTEXT

Tabelle CSKS "Kostenstellenstammsatz"
Verantwortlicher (L) CSKS-VERAK
Abteilung (L) CSKS-ABTEI

Zusatzfelder (aus Infoset)
VLE (virtuelle Lehreinheit) (L) VLE

Damit kann die Query tatsächlich genutzt werden und je Innenauftrag auf Basis der einzelnen Spalten eine Zwischensumme für Ertrag, Aufwand und die interne Verrechnung beziehungsweise der Umlage ausgewiesen werden.

Besonderheiten bei Klassifizierung beziehungsweise Auswerten der Merkmale zur Unterscheidung Drittmittel, Dienstleistung oder Sonstige..


Noch eine kleine Anmerkung zur Klassifizierung. Die Merkmale der Klassifizierung  ermöglichen eine weitergehende Information zum Fond und könnten ebenso auch bei den Innenaufträgen aktiviert werden. Eine gute Übersicht zur Einführung der Klassifizierung habe ich im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" beschrieben. In der erstellten ALV Liste der Query kann dann auch tatsächlich nach einzelnen Merkmalen der Klassifizierung sortiert oder auch gefilert werden. Dieses ist dann wesentlich komfortabler als die Suchfunktion innerhalb der Komponente Klassifizierung von SAP. Auch wenn die Merkmale der Klassifizierung als Selektionsmerkmal in der Query keine Wertauswahlhilfe (F4) anbieten kann es hilfreich sein hier diese ebenfalls als Kriterium zu nehmen.

Somit können alle in der Projektbewertung als DL für Dienstleistung festgelegte beziehungsweise klassifizierten Projekte ausgewertet werden.

Sollten Sie die einzelnen Merkmale einmal von Freitext auf vorgegebene Merkmalswerte umgestellt haben kann die Query Daten in den Merkmalen liefern die im Stammsatz beziehungsweise in der Klassifizierung nicht vorhanden ist beziehungsweise da fehlerhaft nicht ausgewiesen wird.

Als Beispiel konnte das Merkmal PBW früher mit DM2001 gefüllt werden (Drittmittel 2001) und heutzutage werden mit DM, DL, AF bestimmte Merkmale vorgegeben und es kann kein weiteres Merkmal gepflegt werden. Dieses Problem ist im Abschnitt "Sonderfall Inkonsistenz bei Merkmalspflege" im Artikel zur Klassifizierung beschrieben.

Entsprechend spannend kann es daher sein noch weitere Merkmale der Klassifizierung, wie zum Beispiel das Förderkennzeichen des öffentlichen Mittelgeber als weiteres Selektionsmerkmal zu hinterlegen und hier entsprechende Auswertungen zu erstellen. Damit können auch anhand des Förderkennzeichen mit *ESF* alle Projekte des ESF ausgewertet werden.

 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 18. Februar 2016
20:51 Uhr

Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage

Ausgangslage
Aus "erweiterten" KollegInnenkreis (andere Hochschule) wurde mir basierend auf eine CO Schulung mit SAP Query die Idee die Stammdaten eines CO Innenauftrages mit einer Einzelpostenliste zu kombinieren und dabei eine Spalte für die Ertrag und eine Spalte für Aufwand inklusive Abschreibungen auszuweisen vorgestellt, so dass am Ende nach Selektion bestimmter Merkmale aus den CO Stammdaten eine passende Einzelpostenauswertung erstellen zu können, die dann auch noch nach Innenaufträgen summiert werden können.

Diese Idee habe ich im kommenden Artikel aufgegriffen und um den ein oder anderen Punkt erweitert. Insgesamt kommt so eine Liste vergleichbar der Transaktion KOB1 (Aufträge Einzelposten Istkosten anzeigen) heraus. Als Summenbericht ist eine solche Auswertung problemlos im Report Writer / Painter möglich, wie im Artikel "Erweiterung Report Writer Berichtsbibliothek 1CT zur Darstellung rollierendes Geschäftsjahr für Kostenstelle und Innenauftrag" beschrieben. Allerdings können hier nicht alle Stammdaten des auszuwertenden CO-Objekt in unseren Fall also der Innenauftrag als Information oder auch als Selektionsfeld ausgewählt werden.

Entsprechend verfolgen wir mit einer neuen Query einen vergleichbaren Ansatz zu der Query im Artikel "Query Einzelpostenliste IST über CO Objekte (Auflösen von Innenauftrag, Kostenstelle) sowie Benutzerstammdaten und Erfassungsdatum". Jedoch sollen hier nicht einfach die CO-Objekte als Kostenstelle oder Innenauftrag ausgegeben werden sondern gerade die Innenaufträge als Auswertungsmerkmal gesondert betrachtet werden um beispielsweise alle Innenaufträge mit einen bestimmten Merkmal (zum Beispiel über das Feld "Arbeitsgenehmigung liegt vor" oder anhand der verantwortlichen Kostenstelle) auszuwerten. So kann das CHECKIN Feld zum Beispiel zur Kennzeichnung von vollkostenpflichtigen Projekten genutzt werden.

Wie bereits in der Überschrift  erwähnt, wird dieser Artikel in zwei Teilen erscheinen. Im ersten Teil wird die Grundlage für die Auswertung in Form eines Infoset erstellt werden. Hierbei sind auch viele kleine neueren Erkenntnisse rund um die Kombination von Stammdaten aus PSM-FM und CO mit eingebunden. Ferner wird innerhalb des Infoset dank Zusatzfeldcoding auch manches Datum schon vorbereitet wofür es in vorherigen Artikeln relativ umfassende komplexe Berechnungen in der Query gab. Es lohnt sich also tatsächlich diesen recht langen Artikel komplett zu lesen.
 

Infoset Stammdaten Innenauftrag und CO Einzelposten im Ist

Hierzu wurde als erstes ein Join über folgende Tabellen angelegt.

Stammdaten CO Innenauftrag AUFK verkn�pft mit CO Ist-Einzelposten (COEP und COBK)

Das Infoset ist dabei vergleichbar des oben beschriebenen Artikel angelegt, so dass sowohl die Einzelpositionen des CO Beleg als auch die Belegkopfdaten ausgewertet werden können. ACHTUNG: Dabei ist jedoch zu beachten, dass der Left Outer Join zwischen CSKB und COEP und nicht CSKU und COEP gesetzt werden sollte. Hier ist die Darstellung leider fehlerhaft.

Nun sollen aber zu den Stammdaten aus CO (beziehungsweise der Tabelle AUFK "Auftragsstammdaten") noch weitere Informationen über Zusatzfelder und Zusatztabellen mit ausgegeben werden.

Bisherige Vorgehensweise (wird im weiteren Verlauf dieses Artikels erheblich verbessert)

Hier bietet sich die Gelegenheit die in der Artikelserie

  1. "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen"
  2. "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer"
  3. "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM"
  4. "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE"

bereits vorgestellten Methoden sinnvoll zu aktualisieren und die zum Beispiel im Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" gewonnenen Erkenntnisse ebenfalls einzuarbeiten und hier ein wenig das Infoset anzupassen beziehungsweise für mich neure und in meinen Augen auch intelligentere Methoden zwecks Verknüpfung von Stammdaten aus CO und PSM-FM zu erstellen. Daneben hat sich auch bei der Erstellung eines Feldes zur Darstellung der virtuellen Lehreinheit eine Menge entwickelt, so dass diese nun direkt im Infoset als Zusatzfeld ermittelt werden kann.


Da dieses Vorhaben etwas umfangreicher ist, wurde dieser Artikel in einen Teil zur Datengrundlage (Infoset) und der Auswertung des Infoset in Form einer Query aufgeteilt.
 

Erweiterung des Infoset über Zusatzfelder


Über die Schaltfläche Zusätze (F5) bzw. innerhalb der Transaktion SQ02 (Pflege des Infosets) über  SPRINGEN-> ZUSÄTZE ZUM KNOTEN kann ein zusätzliches Feld in ein Infoset definiert werden, welches nicht direkt in der auszuwertenden Tabelle erscheint. Ich möchte im folgenden Artikel vier Zusatzfelder anlegen um hier wesentlich weitergehende Auswertungsmöglichkeiten als das Lesen einer Tabelle oder eines Infoset zu ermöglichen.

Innerhalb des nun aufgerufenen Register Zusätze kann über die Schaltfläche "Anlegen" ein Zusatzfeld erstellt werden. Es erscheint eine Maske in der der Name des Zusatzfeldes angegeben werden soll und die Art der Zusatzinformation.

Im Einzelnen können dieses Zusatztabelle, Zusatzfeld, Zusatzstruktur und Coding sein. In den folgenden drei Abschnitten soll hier Zusatzfelder erstellt werden. Wobei eines davon später für das Einfügen einer Zusatztabelle genutzt wird. Wichtig ist es nach Eingabe des Zusatzfeldes auch die Eigenschaften wie Langtext, Überschrift sowie Textlänge und Typ definiert werden. Teilweise kann hier auch mit LIKE Referenz gearbeitet werden, so dass die Feldeigenschaften eines referenzierten Tabellenfeldes entsprechen.

Damit ist dann grundsätzlich ein Feld angelegt allerdings enthält es (anders als beim Einfügen einer Zusatztabelle, die direkt mitsamt ihren Daten ins Infoset geladen wird) keine Werte. Um nun eine entsprechende Wertzuweisung im Infoset zu bekommen kann hier mit Coding zum Feld gearbeitet werden.

Nachdem ein Feld jedoch angelegt ist kann über die Schaltfläche "Coding zum Zusatz" ein passendes ABAP Coding für das Feld hinterlegt werden über das wiederum eine Datenbankabfrage erfolgen kann. In den folgenden Abschnitten habe ich das von mir eingefügte Coding angegeben und kurz erläutert.

Berechtigungen für Zusatzfelder mit ABAP Coding

Für die Pflege von Zusatzcoding sind jedoch weiter gehende Basisberechtigungen erforderlich. Hierzu werden die Berechtigungen auf das Berechtigungsobjekt S_DEVELOP und die Berechtigungsfeldwerte Objekttyp PROG, Objektname AQ* sowie die Aktivitäten 01 und 02 geprüft. Da es sich hier um recht weitgehende Berechtigungen handelt, sollten diese auch nur im Entwicklungssystem vergeben werden. Die Berechtigungsprüfung erfolgt ebenfalls, wenn die Query, wie im Artikel "Transport von SAP Queries (DL/UL)" beschrieben, per Dateiupload ins Testsystem oder Produktivsystem transportiert werden soll. Das Infoset selbst lässt sich nach einem erfolgreichen Upload noch bearbeiten, lediglich das Coding ist durch die Berechtigungsprüfung vor weiteren Änderungen geschützt.

In den folgenden Abschnitten wird auf die einzelnen Zusatzfelder mit ihren Eigenschaften und zugehörigen Coding zum Zusatzfeld eingegangen.


Zusatzfeld Gesperrt (Sperrkenzeichen auswerten)

Auch hier wird wieder ausgewertet, ob ein Innenauftrag den Systemstatus Gesperrt (in der Transaktion KO02 "Innenauftrag ändern" per Bearbeiten->Sperre setzen) hat.

Hierzu wird ein Zusatzfeld GESPERRT mit den Eigenschaften Typ C (Charcter) und einer Länge von 001 angelegt. Dahinter wird als Coding folgende Anweisung hinterlegt:

DATA: L_AUFKOBJ type AUFK-OBJNR.
DATA: L_TEMP type AUFK-OBJNR.
L_AUFKOBJ = AUFK-OBJNR.
SELECT  SINGLE objnr FROM JEST into L_TEMP
    WHERE stat = 'I0043'
    AND objnr = L_AUFKOBJ
    AND inact = ''.
IF sy-subrc <> 4.
GESPERRT = 'X'.
ELSE.
CLEAR GESPERRT.
ENDIF.

Damit der Sperrstatus ermittelt werden kann wird anhand der Objektnummer des Innenauftrag (Feld AUFK-OBJNR) in der Tabelle JEST geprüft ob der Status I0043  gesetzt ist.

Zur Verdeutlichung des Zusammenhang sei auf folgende Grafik verwiesen:

Darstellung Infoset aus AUFK, JEST (mit TJ02) und JCDS
Wobei das Thema Systemstatus auch sehr umfassend in den beiden Artikeln:
erklärt ist und für diese Auskunft lediglich die Information ausreicht, ob der aktuelle Innenuaftrag gesperrt ist oder eben nicht.


 

Zusatzfeld VLE zur Darstellung virtueller Lehreinheit aus Teilstring der verantwortlichen Kostenstelle sofern nicht in einen anderen Feld ein Wert steht

Innerhalb der Kostenstellen einer Hochschule sind auch entsprechend Lehreinheiten mit den ersten vier Ziffern verschlüsselt. Sofern abweichend zu den ersten vier Ziffern innerhalb der Fachbereichskostenstellen eine andere Lehreinheit der Kostenstelle zugeordnet werden soll, ist diese im Feld Teletexnummer (welches nicht mehr für andere Zwecke verwendet wird, ausgewiesen.

Die Ausgabe der verantwortlichen Kostenstelle ist relativ aufwändig innerhalb von lokalen Zusatzfeldern in einer Query gelöst worden. Die hier genutzte Vorgehensweise ist im Artikel "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer" beschrieben worden.

Diese Methode hat jedoch den Nachteil, dass jede Query erneut solche Felder und Formeln definiert bekommen muss. Entsprechend positiv wäre es natürlich, wenn eine solche Erhebung direkt im Infoset zum Beispiel über ein Zusatzfeld mit passenden Coding erfolgen kann.

Ein Auslesen der ersten vier Ziffern einer Kostenstelle über eine IF Bedingung ist mir soweit auch gelungen, allerdings hatte ich Probleme eine Abfrage zu erstellen, dass sofern das Feld Teletexnummer gefüllt ist, diese als Lehreinheit genommen wird.

Auf fico-forum.de hatte ich hier eine sehr hilfreiche Unterhaltung mit MrBojangles (Autor des Blog  SAPManDoo) im Beitrag "Query: Auslesen Stammdaten (Zusatzcoding ABAP) Problem SELECT Statement AUFK-KOSTV und CSKS-TELTX".

Das Ergebnis unserer Unterhaltung, inklusiver einer Anpassung für den Fall, dass die Kostenstelle nicht nur numerisch sondern auch Buchstaben enthält habe ich dann wie folgt als Coding zum Zusatzfeld VLE eingebaut.

Hierbei hat das Zusatzfeld VLE durch LIKE-Referenz die Eigenschaften des Tabellenfeldes CSKS-TELTX erhalten (Typ C und Länge 030).

Rahmenbedingungen:
Es werden achtstellige Kostenstellen verwendet, sofern die verantwortliche Kostenstlele des Innenauftrag zwischen 10000000 und 12345678 liegt sollen die ersten vier Ziffern der Kostenstelle als Wert für die Lehreinheit genommen werden.

Ein Sonderfall stellt nun noch die Kostenstelle 47110000 dar. Hier soll als Lehreinheit die 1047BE ausgegegeben werden. Ferner sollen die Kostenstellen der betrieblichen Einrichtung der Kostenstellen 20815000 bis 20815999  der Lehreinheit 208BE und 24300000 bis 24399999 der Einrichtung 243BE zugeordnet werden.

In allen anderen Fällen soll die verantwortliche Kostenstelle des Innenauftrages (aus der Tabelle AUFK-KOSTV) ausgewiesen werden.

Problematisch dabei ist, dass wir zwar achtstellige Kostenstellen nutzen, in SAP jedoch insgesamt zehn Stellen vorgesehen sind, so dass die Kostenstelle aus dem  Tabellenfeld  AUFK-KOSTV mit führenden 00 ausgegeben würden. Mein erster Gedanke wäre daher den erhaltenen Wert mit * 1 zu multiplizieren und so eine Zahl zu erhalten. Hier wurde ich im Forum zu Recht darauf hingewiesen, dass sobald die Kostenstelle auch nur einen Buchstaben enthält ein "ABAP Dump" erzeugt wird. Hier ist eine wesentlich schönere Variante durch die Anweisung NO-ZERO die führenden 00 aus dem Feld zu entfernen und deiesen Wert als VLE zu speichern.

Abschliessend soll nun noch geprüft werden, ob das Feld CSKS-TELTX (Teletexnummer im Kostenstellenstammsatz) mit einen Wert gefüllt ist und dieser Wert in jeden Fall unabhängig der anderen Bedingungen ausgegeben werden.

Hierzu ist eine entsprechende SELECT Abfrage über die Kostenstellen durchgeführt worden. Besonders gelungen empfinde ich hierbei, dass die Gültigkeit des Kostenstellenstammsatzes dahingehend überprüft wird, ob die Information zum Datum der Auswertung (SY-DATUM auch gültig ist, da sich das Feld ja auch auf Basis von zeitabhängigen Daten bei der Kostenstelle ändern kann. Durch ne space wird auch direkt festgehalten, ob die Teletexnummer einen Wert enthält. Sollte dieses der Fall sein, bekommt das Zusatzfeld VLE den Wert der lokalen Variable L_CSKSTELTX zugewiesen, andernfalls den Wert, der anhand der IF Bedingung ermittelt wurde.

Das auf diese Anforderungen erstellte (beziehungsweise angepasste) Coding sieht dann wie folgt aus:

DATA: L_CSKSTELTX type CSKS-TELTX.
IF AUFK-KOSTV => '0010000000' AND AUFK-KOSTV =< '0012345678'.
WRITE AUFK-KOSTV(6) TO VLE NO-ZERO .
ELSEIF AUFK-KOSTV = '0047110000'.
  VLE = '1047BE'.
ELSEIF AUFK-KOSTV => '0020815000' AND AUFK-KOSTV =< '0020815999'.
  VLE = '208BE'.
ElSEIF AUFK-KOSTV => '0024300000' AND AUFK-KOSTV =< '0024399999'.
  VLE = '243BE'.
ELSE.
  WRITE AUFK-KOSTV TO VLE NO-ZERO .
ENDIF.
* bei gefülltem TELTX VLE auf TELTX setzen
SELECT teltx FROM csks INTO L_CSKSTELTX up to 1 rows
  WHERE kokrs = AUFK-KOKRS
  AND kostl = AUFK-KOSTV
  and datbi >= SY-DATUM
  and teltx ne space.
ENDSELECT.
IF sy-subrc = 0.
    VLE = L_CSKSTELTX.
ENDIF.


Nebenbei ist ein solcher fachlicher Austausch mit ein Grund, warum ich immer noch Blogs, Foren und Wikis als ein sehr hilfreiches Arbeitsmittel betrachte und sehr froh darüber bin, dass es immer noch eine Community gibt in der sich gegenseitig geholfen wird. Ein wenig hoffe ich sowohl hier im Blog als auch in einigen Onlineforen meinen Part dazu beitragen zu können. Sehr allgemein habe ich dieses Thema  im Artikel "Praktische Nutzung von social media Diensten für meinen Arbeitsalltag" angesprochen.

Stammdatenfelder aus Fond (PSM-FM) ergänzend zum Innenauftrag ausgegeben

In den beiden Artikeln "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen" und  "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE" wurden einzelne Felder aus der Tabelle FMFINCODE durch eine Select Abfrage und SHIFT Anweisung ausgelesen und einzeln dem Infoset hinzugefügt.

Hintergrund ist, dass das Feld AUFK-AUFNR  in der Datenbank als Character mit 12 Zeichen und das Feld FMFINCODE-FINCODE als Character mit 10 Zeichen definiert ist.

Selbst wenn die Auftragsnummer und die Nummer des Fond übereinstimmen können beide Felder nicht miteinander in Form eines Infoset verknüpft werden, da diese eine "illegale Verknüpfung" wäre, da rein technisch die Felder nicht übereinstimmen.

Innerhalb des Abschnitt "Zusatzfeld ZAUFNR (Übernahme AUFK-AUFNR als FMFINCODE-FINCODE" im Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" wurde nun eine clevere Alternative dargestellt.

Zusatzfeld ZAUFNR zur Verknüpfung von Innnenauftrag und Fond

Hierzu wurde das Zusatzfeld ZAUFNR mit per LIKE-Referenz FMFINCODE-FINCODE erstellt was in den folgenden Abschniten als Hilfsfeld genutzt werden kann.

Als erläuternde Überschrift und Langtext kann "Auftragsnummer 10 stellig" genommen werden.

Das in meinen Augen clevere Coding beschränkt sich auf einen Einzeiler in dem dem Feld per Offset die Auftragsnummer aus der Tabelle AUFK zugewiesen wird.

Für eine achtstellige Projektnummer (Innenauftrag) lautet das Coding wie folgt:

ZAUFNR = AUFK-AUFNR+4(8).

Hierbei bedient sich das Coding der Technik eines Offsets.

Durch die optionalen Angaben eines Offsets +<o> und eine Länge (<l>) direkt hinter dem Feldnamen <f>, wird der Teil des Felds, der auf Position <o>+1 beginnt und die Länge <l> hat, als eigenes Datenobjekt angesprochen.  In unseren Fall wird also für die Variable ZAUFNR das Feld AUFK-AUFNR (wir erinnern uns die zwölfstellige Auftragsnummer) eingelesen und ab der vierten Stelle insgesamt acht Stellen eingelesen. Da in der Datenbank die Auftragsnummer mit führenden 0000 hinterlegt wird erhalten wir also statt des Datenbankwerte 000012345678 die tatsächliche Auftragsnummer 12345678.

Sollten Sie eine andere Länge bei den Aufträgen oder Fonds definiert haben ist das Coding natürlich entsprechend anzupassen.

Im Ergebnis haben wir nun das Feld ZAUFNR, welches die gleichen Eigenschaften wie das Feld FINCODE innerhalb der Tabelle FMFINCODE hat.

Nun kann das Feld für verschiedene Formen der Verknüpfung genutzt werden.

SAP Query: Reihenfolge des Codeabschnittes

Beim Hinzufügen eines Zusatzfeldes oder einer Zusatztabelle kann am Punkt  Reihenfolge des Codeabschnitts gewählt werden. Auch wenn die Hilfe nicht in diese Richtung zu lesen ist, verstehe ich den Punkt so, dass wenn man Bezug auf vorab definierte Zusatzfelder nehmen möchte die hier nutzenden Felder im nachgeordneten Codeabschnitt liegen sollten.

Da ich in beiden kommenden Fällen mit den neu angelegten Feld ZAUFNR gearbeitet werden soll, werden beide kommenden Fälle im Codabschnitt 2 hinterlegt.

Zusatztabelle FMFINCODE

Anstatt eines Zusatzfeld kann im Register Zusätze über die Schaltfläche ANLEGEN auch eine ganze Tabelle eingefügt werden. Hierzu tragen wir als Name FMFINCODEfür die Stammdatentabelle der Fonds ein und wählen als Art der Zusatzinformation die Option ZUSATZTABELLE..

Im Feld "Reihenfolge des Codeabschnitts" wird nun eine 2 aus den geschilderten Gründen eingetragen.

Hintergrund ist dass erst das Feld ZAUFNR definiert sein soll, bevor Sie mit der Zusatztabelle arbeiten.

Nun erfolgt eine Abfrage über SELECT SINGLE * FROM FMFINCODE WHERE ...
in der folgedene (hervorgehobene) Bedingungen erfüllt sein sollen.

WHERE FIKRS  =  AUFK-BUKRS

da Finanzkreis und Buchungskreis identisch sind, können hier beide Felder sowohl in der Tabelle AUFK als auch FMFINCODE verwendet werden.

AND FINCODE = ZAUFNR

Hierdurch werden dann tatsächlich Fonds und Innenauftrag miteinander verknüpft und es steht die gesamte Tabelle FMFINCODE im Infoset zur Verfügung.
 

Merkmal aus Klassifizierung mit auswerten

Nehmen wir an, dass im Rahmen der Klassifizierung von Fonds im Modul PSM-FM die Projektbewertung in ein Merkmal festgehalten wird. Dann ist auch die im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" erheblich erleichtert.

Hierzu wird ebenfalls ein Zusatzfeld bspw. PBW für Projektbewertung mit Langtext und Überschrift Projektbewertung erstellt.

Dieses hat als Eigenschaften eine LIKE-Referenz auf AUSP-ATWRT.

Ferner wird im unteren Abschnitt des Fenster bei Reihenfolge des Codeabschnitts ebenfalls eine 2 eingetragen.

Danach wird als Coding zum Zusatzfeld ein passendes Coding zum Zusatzfeld hinterlegt, dass aus der Variable (Zusatzfeld) ZAUFNR und den Buchungskreis bzw. Finanzkreis eine Objektnummer erstellt, die dem Feld AUSP-OBJEK. entspricht.


Unter der Annahme eines dreistelligen Finanzkreis KRK und dass das Merkmal die Interne Merkmalsnummer (Feld ATINN) folgenden Wert hat 0000000022 hat wird folgendes Coding zum Feld hinterlegt:

DATA: L_objfond TYPE AUFK-AUFNR.
DATA: L_MERKMALPBW type AUSP-ATWRT.

CONCATENATE  'KRK ' ZAUFNR INTO L_OBJFOND RESPECTING BLANKS.

SELECT SINGLE ATWRT INTO L_MERKMALPBW FROM AUSP
 WHERE OBJEK = L_OBJFOND AND ATINN ='0000000022' AND KLART = '042'.
IF sy-subrc <> 0.
  CLEAR PBW.
ELSE.
  PBW = L_MERKMALPBW.
ENDIF.


Im Ergebnis enthält nun das Feld PBW die in der Klassifizierung hintelregte Projektbewertung des Fond.

Zum Abschluss können alle Zusatzfelder und die Felder der Zusatztabelle als Felder in den Feldgruppen des Infoset übernommen werden.

Persönlich habe ich mir angewöhnt, für die Zusatztabelle eine eigene Feldgruppe anzulegen und auch die Zusatzfelder in einer Extra Feldgruppe mit aufzunehmen.

Schematisch betrachtet sieht der technische Aufbau unseres Infoset nun wie folgt aus:
Infoset inklusive Zusatztabellen und Zusatzfelder f�r AUFK, FMFINCODE und COEP

ACHTUNG: Auch hier hat sich in der Zeichnung ein Fehler reingeschlichen, da der left outer join zwischen CSKB und COEP und nicht CSKU und COEP sein sollte.

Damit können in einer Query nun sowohl Stammdaten aus CO / PSM-FM als auch die Ist-Einzelposten ausgewertet werden. Daher sollten auch alle Tabellenfelder mit in das Infoset in Feldgruppen mit aufgenommen werden. So kann später die Query auch sehr flexibel angepasst werden.

Die Idee der eingangs angesprochenen freundlichen Hochschule aus der Nachbarschaft die einzelnen Felder nach Art der Verwendung zu gruppieren wird im zweiten Teil dieses Artikel dargestellt. Hier soll nur erst einmal die Datengrundlage für die Query geschaffen werden.

Der zweite Teil ist im Artikel "Query Einzelpostenliste Innenauftrag mit Ausweis Ertrag und Aufwand Zweiter Teil Query zur Datenaufbereitung" ebenfalls online zu finden.

 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 28. Januar 2016
22:32 Uhr

Einzelposten Klassische Budgetierung Hierarchiebelge

Im Artikel "SAP PSM-FM klassische Budgetierung mit unterschiedlichen Budgetversionen" habe ich ja schon die Vorgehensweise zur Budgetbuchung innerhalb der klassischen bdugetierung beschrieben. Sowohl bei der Buchung von Originalbudget als auch bei Budgetumbuchungen sind für Fonds auch immer neben Sender und Empfänger Fonds auch die Finanzstellen als Sender und Empfänger mit angegeben. Innerhalb eines Recherchebericht (wie bspw. im Artikel "Recherchebericht Budget + Ertrag ggü. Aufwand" werden alle Budgetbuchungen mit ausgegeben, unabhängig welche Finanzstelle hier als Sender/Empfänger gesetzt ist. Allerdings gibt es Berichte in der auf Basis der verantwortlichen Kostenstelle des Innenauftrags die Finanzstelle zum Fond ausgewertet wird (sofern Finanzstelle = verantwortliche Kostenstelle des Innenauftrages und der Innenauftrag auch dem Fond entspricht).

Grundsätzlich ist es über das Standardberichtswesen möglich hier die jeweiligen Einzelposten der Belege darstellen zu lassen. Dazu kann als Selektionmerkmal der Fond eingetragen werden und man erhält eine Liste der Hierarchiebelege (dieses bedeutet, dass die Einzelbuchungen auch für jede Hierarchieebene der Finanzpositionenhierarchie eine eigene Belegposition schreibt.

Sowohl für Gesamtbudget als auch Jahresbudget sind die Budgeteinzelposten im SAP Menü unter folgenden Abschnitt zu finden:
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Infosystem
  • Einzelposten
  • Budget (klassische Budgetierung)
  • Hierarchiebelege
    • Gesamtbudget (Transaktion FMRP_RFFMEP2BX)
    • Jahresbudget (Transaktion FMRP_RFFMEP1BX)
Dieses ist eine schöne Möglichkeit die einzelnen Positionen der Belege dargestellt zu bekommen. Sofern jedoch eine Layoutvariante mit Filtern als Vorgabe genutzt wird kann es passieren, dass man diese vergisst und sich wundert, dass für die Fehlersuche nicht der "falsch kontierte" (z.B. abweichende Finanzstelle) Fond beziehungsweise Buchung auftaucht.

Daher stellt sich die Überlegung, ob eine solche Liste nicht auch als Query möglich zu erstellen wäre.Hier bietet der Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" einen passenden Lösungsansatz in Form der Nutzung einer logischen Datenbank.

Exkurs: Logische Datenbanken enthalten schon Verknüpfungen und können direkt als Grundlage für ein Infoset verwendet werden. Dieses hat den Vorteil, dass man nicht selbst erst einzelne Tabellenverknüpfungen erstellen muss. Die Struktur einer logischen Datenbank kann in der Transaktion SE36 eingesehen werden. Im Bereich HCM wären dieses bspw. PNP oder PCH während innerhalb des Rechnungswesen ggf. die Datenbanken ADA für die Anlegenbuchhaltung und BRF für FI Belege interessant sind.


Um unsere Berichtsanforderung zu erfüllen gibt es auch für das Modul PSM-FM eine passende logische Datenbank. Innerhalb der logischen Datenbank FMF werden verschiedene Datenstrukturen mit Bewegungsdaten versorgt. Ein Blick auf diese Datenbank mit der Transaktion SE36 kann hier tatsächlich hilfreich sein.
 

Infoset für PSM-FM Budgetbelege

Auf Basis der FMF kann folgendes Infoset über die einzelnen Strukturen erstellt werden. dabei werden zwei Feldgruppen angelegt und diesen folgende Tabellenfelder zugewiesen.

Hierbei werden aus der Datenbank von folgenden Tabellen bzw. Strukturen die Daten übernommen:

Für Gesamtbudget:
BPBTX "Summensätze: Jahresunabhängiges Budget zu Fonds  - Erweitert"
EPBT "Einzelposten: Jahresunabhängiges Budget zu Fonds"

Für Jahresbudget:
BPBYX "Summensätze: Jahresbudget  - Erweitert"
EPBY "Einzelposten: Jahresbudget"

Da es sich bei allen vieren um Strukturen handelt muss hier tatsächlich aus der LDB diese versorgt werden. Eine direkte Auswertung, über View oder Tabellenansicht ist nicht möglich.

Folgende Felder werden in die jeweiligen Feldgruppen übernommen:

Feldgruppe 01 "Budgetbelege Gesamtbudget"
Fonds ( BPBTX-FONDS )
Finanzstelle ( BPBTX-FICTR )
Finanzposition ( BPBTX-FONDS )
Belegnummer Budgetvergabe und Strukturplanung ( EPBT-BELNR )
Positionstext ( EPBT-BELNR )
Gesamtbudget in Finanzkreiswährung ( EPBT-WLGES )

Feldgruppe 02 "Budgetbelege Jahresbudget"
Fonds ( BPBYX-FONDS )
Finanzstelle ( BPBYX-FICTR )
Finanzposition ( BPBYX-FIPEX )
Belegnummer Budgetvergabe und Strukturplanung ( EPBY-BELNR )
Positionstext ( EPBY-SGTEXT )
Verteiltes Jahresbudget in Finanzkreiswährung ( EPBY-WLJHV )

Danach wir das Infoset generiert und gesichert.

Query Hierarchiebelege Gesamtbudget

Die Query zur Darstellung der Einzelbelge zum Gesamtbudget enthält dann die in der entsprechenden Feldgruppe zugeordneten Felder der Strukturen. Für die Darstellung des Gesamtbudget sind entsprechende Felder gewählt worden.

Da hier eine logische Datenbank ausgewertet wird, müssen keine Selektionsfelder definiert werden, da die Selektion für die Daten vom Infoset her selbst vorgegeben werden. Entsprechend sind alle Felder als Listenfelder markiert worden. Die Felder werden hier in der Reihenfolge angegeben, wie diese dann auch in der Query ausgegeben werden sollen:


Summensätze: Jahresunabhängiges Budget zu Fonds  - Erweitert (BPBTX)
Finanzstelle (L) BPBTX-FICTR
Fonds (L) BPBTX-FONDS
Finanzposition (L) BPBTX-FIPEX

Einzelposten: Jahresunabhängiges Budget zu Fonds (EPBT)
Text (L) EPBT-SGTEXT
Belegnr (L) EPBT-BELNR
Gesamtbudget (L) EPBT-WLGES

Grundsätzlich könnte man nun eine zweite Query für die Auswertung der Jahresbudget Einzelposten anlegen (dann allerdings aus der Feldgruppe 02 "Budgetbelege Jahresbudget" die entsprechenden Felder, welche dort definiert sind.

Um eine schnelle Identifikation der "abweichenden" Finanzstelle für einen Fond bei der Budgeterfassung zu identifizieren bietet es sich an im Grundlayout der Query das Feld Finanzstelle in den Werkzeugkasten Sortierfelder zu ziehen. Da meistens die Finanzstellen hierarisch und aufsteigend aufgebaut sind, sollten bei der Einzelpostenliste für den Fond die Finanzstellen entsprechend an oberster Position sortiert sein.

Absprung zur Beleganzeige (Berichtszuordnung FM2F)

Hierzu kann innerhalb der Pflege der Query (Einstiegsbild nach Aufruf der Query in der SQ01) über SPRINGEN->Berichtszuordnung über das +Zeile einfügen weiere Query eingefügt werden. Über anderer Berichtstyp kann hier die Funktion TR Transaktion ausgewählt werden und die Transaktion FM2F "HHM: Budget Beleg anzeigen"

Aus der Transaktion FM2F (Anzeige des Hierarchiebeleges) besteht über die Schaltfläche "Erfassbeleg" auch auf die Transaktion FR60 abzuspringen und die Kontierung am Erfassungsbeleg angezeigt zu bekommen.

Neben der eingangs im Artikel zur klassischen Budgetierung erwähnten Zusammenhang von Erfasungs- und Hierarchiebelegen könnte auch folgender Artikel "Buchungstext ändern bei Budgetbelegen in PSM-FM - Haushaltsmanagement" hilfreich sein, sofern nur der Buchungstext eine Anpassung bedarf.

Nachtrag: Einzelpostenliste (Salden) je Finanzposition nach Finanzstelle und Fond

Im Artikel "Salden je Finanzposition mit Unterscheidung Personal oder Sachaufwand aus PSM-FM durch Query über logische Datenbank FMF" ist ergänzend zu den Budgetbelegen auch eine Darstellung der gebuchten Salden je Finanzposition auf Finanzstelle und Fond dargestellt und dabei als extra Spalte noch Personalaufwand und Sachaufwand unterschieden. Gerade zum Export oder Weiterverarbeitung von Daten bietet sich eine Saldenliste in SAP an. Statt eines Rechercheberichtes kann hier eine Query eine ALV Liste nach Finanzstelle, Fond und Finanzposition liefern ohne dabei wie beim Belegjournal (Transaktion FMRP_RFFMEP1AX ) die Einzelposten mit Belegtexten auszuweisen.

 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 12. November 2015
18:26 Uhr

SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement

Nachdem im letzten Artikel "Grundlagen Kurzeinführung und Handbuch Report Painter Report Writer" ausführicher behandelt worden ist, soll hier das Thema SAP Query und die Nutzung im Haushaltsmanagement ausführlicher behandelt werden.

Im Rahmen einer SAP Schulung durch Martin Peto (Mitautor des Buch "Reporting im SAP-Finanzwesen: Standardberichte, SAP QuickViewer und SAP Query" welches ich etwas ausführlicher unter SAP Query Buch beschrieben habe) sind einige Eckpunkte zum Berichtswesen mit SAP Query und der Auswertung innerhalb des Moduls PSM-FM angesprochen worden. Die erlangten Kenntnisse habe ich in diesen Artikel festgehalten und betrachte diese als eine Ergänzung zur Einführung, die ich im Artikel "Grundlagen Kurzeinführung und Handbuch SAP Query"  angefangen habe. Neben den empfehlenswerten Buch soll daher auch dieser Artikel einige Denkanstöße zur Nutzung von SAP Query bieten. Da ein besonderes Interesse an der Nutzung von SAP Query mit PSM-FM bestanden hat, sind auch die hier aufgelisteten Erkenntnisse in der Hauptsache mit Bezug zum "public sector management" aufgeführt.

Im Einzelnen konnte ich dabei folgende Punkte aus der Schulung (und der gedanklichen Weiterentwicklung) mitnehmen Ich denke, dass die in der Schulung angesprochenen Punkte tatsächlich hilfreich sind und sich die aufgezählten Punkte als Erweiterung sehr gut eignen. Entsprechend lehrreich könenn auch Schulungen neben Literatur sein und so die eigene Arbeitsweise noch ein Stück verbessern. Gerade der Schwerpunkt auf der Nutzung von SAP Query innerhalb der Rechnungswesenmodule hat hier doch einige gute Erweiterungen gebracht, auch wenn nicht alle Beispiele auf das Hochschulberichtswesen 1:1 übertragbar sind. Ansonsten sind für das Berichtswesen im Bereich PSM-FM weiterhin die im Artikel "PSM Haushaltsmanagement Budgetverwaltungssystem BCS oder klassische Budgetierung" ebenfalls erwähnten Anmerkungen zur Nutzung der Rechercheberichte erläutert.






Logische Datenbank im Bereich PSM-FM

Bisher hatte ich eher mit den logischen Datenbanken BRF für die Finanzbuchhaltung oder ADA für die Anlagenbuchhaltung zu tun.

Logische Datenbanken enthalten schon Verknüpfungen und können direkt als Grundlage für ein Infoset verwendet werden. Dieses hat den Vorteil, dass man nicht selbst erst einzelne Tabellenverknüpfungen erstellen muss. Die Struktur einer logischen Datenbank kann in der Transaktion SE36 eingesehen werden. Im Bereich HCM wären dieses bspw. PNP oder PCH während innerhalb des Rechnungswesen ggf. die Datenbanken ADA für die Anlegenbuchhaltung und BRF für FI Belege interessant sind.

Allerdings gibt es auch für das Modul PSM-FM eine vergleichbare Datenbank.
Innerhalb der logischen Datenbank FMF werden verschiedene Datenstrukturen mit Bewegungsdaten versorgt. Ein Blick auf diese Datenbank mit der Transaktion SE36 kann hier tatsächlich hilfreich sein.

Neben den reinen Stammdaten können hier auch Bewegungsdaten (unter anderen Summensätze und Einzelposten von Jahresbudget oder Gesamtbudget ebenso ausgewertet werden, wie die Summensätze aus Einzelposten und Obligo.

Leider handelt es sich bei den meisten zugeordneten Tabellen nicht um transparente Tabellen die direkt ausgewertet werden können sondern um Strukturen, die zur Laufzeit gefüllt werden. Immerhin kann durch die Verwendung der logischen Datenbank hier auch eine Struktur ausgewertet werden, so dass neben der Auswertung der PSM-FM Daten über Rechercheberichte auch mit SAP Query eine Einzelauswertung erfolgen kann.



Stammdatentabellen im Modul PSM-FM

Neben der Auswertung der logischen Datenbank kann aber auch der Zugriff auf einzelnen Tabellen im Bereich PSM-FM hilfreich sein.
Hierzu sind folgende transparente und damit direkt auswertbare Tabellen hilfreich, insbesondere da diese auch mit anderen Tabellen in Infosets verknüpft werden können.



Verknüpfung der Tabellen FMFINCODE und AUFK

Während ich in meiner Artikelserie:
  1. "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen"
  2. "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer"
  3. "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM"
  4. "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE"
teilweise einzelne Felder aus der Tabelle FMFINCODE einzeln übernommen habe (durch individuelles Coding je Feld), hatte Martin Peto die Idee die Tabelle FMFINCODE als Zusatztabelle einzubinden.Hierfür hat er ein Zusatzfeld ZAUFNR für die Übernahme der Auftragsnummer aus der Tabelle AUFK (Feld AUFNR)  welches als Feld mit 12 Stellen definiert ist in das zehnstellige Feld vergleichbar mit der Tabelle FMFINCODE (Feld FINCODE) für den Fond.

Die beiden Tabellen AUFK und FMFINCODE lassen sich nicht verknüpfen, da die Feldlänge mit 10 bzw. 12 Zeichen nicht übereinstimmen. Daher wurde innerhalb des Infoset das Feld ZAUFNR als "Auftragsnummer 10 stellig"  mit LIKE-Referenz (also den gleichen Eigenschaften von FMFINCODE-FINCODE angelegt.

Zusatzfeld ZAUFNR (Übernahme AUFK-AUFNR als FMFINCODE-FINCODE

Über die Schaltfläche Zusätze (F5) bzw. innerhalb der Transaktion SQ02 (Pflege des Infosets) über  SPRINGEN-> ZUSÄTZE ZUM KNOTEN können eigene Felder definiert werden. Hierzu kann im Register Zusätze die Schaltfläche Anlegen ausgewählt werden. Es erscheint eine Maske in der der Name des Zusatzfeldes angegeben werden soll (im folgenden Beispiel ZAUFNR)  und die Art der Zusatzinformation. Zur Auswahl stehen: Zusatzfeld, Zusatzstruktur und Coding. In unserem Beispiel soll ein Zusatzfeld mit den Namen ZAUFNR angelegt werden.

Dieses hat folgende Eigenschaften: Langtext und Überschrift haben beide Auftragsnummer 10 stellig oder einfach Auftragsnummer erhalten. Die Formatangabe wurde über LIKE-Referenz idenitsch zum Feld FMFINCODE-FINCODEgehalten. Damit entspricht dieses Feld den Formatangaben in der Tabelle FMFINCODE (Typ C (Character) Länge 010 Ausgabenlänge 010).

Damit ist das Feld angelegt, hat jedoch nur eine Datendefinition aber noch keine eigene Daten (anders bei der Zusatztabelle, die sich direkt aus der Datenbank einen passenden Datensatz liest.

Nachdem ein Feld jedoch angelegt ist kann über die Schaltfläche "Coding zum Zusatz" ein passendes ABAP Coding für das Feld hinterlegt werden über das wiederum eine Datenbankabfrage erfolgen kann.

Das in meinen Augen clevere Coding beschränkt sich auf einen Einzeiler in dem dem Feld per Offset die Auftragsnummer aus der Tabelle AUFK zugewiesen wird.

Für eine achtstellige Projektnummer (Innenauftrag) lautet das Coding wie folgt:

ZAUFNR = AUFK-AUFNR+4(8).

Hierbei bedient sich das Coding der Technik eines Offsets.

Durch die optionalen Angaben eines Offsets +<o> und eine Länge (<l>) direkt hinter dem Feldnamen <f>, wird der Teil des Felds, der auf Position <o>+1 beginnt und die Länge <l> hat, als eigenes Datenobjekt angesprochen.  In unseren Fall wird also für die Variable ZAUFNR das Feld AUFK-AUFNR (wir erinnern uns die zwölfstellige Auftragsnummer) eingelesen und ab der vierten Stelle insgesamt acht Stellen eingelesen. Da in der Datenbank die Auftragsnummer mit führenden 0000 hinterlegt wird erhalten wir also statt des Datenbankwerte 000012345678 die tatsächliche Auftragsnummer 12345678.

Sollten Sie eine andere Länge bei den Aufträgen oder Fonds definiert haben ist das Coding natürlich entsprechend anzupassen.


Im Ergebnis haben wir nun das Feld ZAUFNR, welches die gleichen Eigenschaften wie das Feld FINCODE innerhalb der Tabelle FMFINCODE hat.

Zusatztabelle FMFINCODE ins Infoset übernehmen (Stammdaten Fond) aus ZAUFNR

Dieses Feld kann nun zur Einbindung einer Zusatztabelle genutzt werden.

Über die Schaltfläche Zusätze (F5) bzw.  über  SPRINGEN-> ZUSÄTZE ZUM KNOTEN  innerhalb der Transaktion SQ02 (Pflege des Infosets) kann nun eine Zusatztabelle eingefügt werden. Hierzu kann im Register Zusätze die Schaltfläche Anlegen ausgewählt werden.
Hierzu tragen wir die den Namen FMFINCODE  und als Art der Zusatzinformation Zusatztabelle ein.

Hier ist es nun wichtig, dass Sie bei "Reihenfolge de Codeabschnitts" eine 2 eintragen, da natürlich erst das Feld ZAUFNR definiert sein soll, bevor Sie mit der Zusatztabelle arbeiten.

Nun erfolgt eine Abfrage über SELECT SINGLE * FROM FMFINCODE WHERE ...
in der folgedene (hervorgehobene) Bedingungen erfüllt sein sollen.

WHERE FIKRS  =  AUFK-BUKRS

da Finanzkreis und Buchungskreis identisch sind, können hier beide Felder sowohl in der Tabelle AUFK als auch FMFINCODE verwendet werden.

AND FINCODE = ZAUFNR

Hierdurch werden dann tatsächlich Fonds und Innenauftrag miteinander verknüpft und es steht die gesamte Tabelle FMFINCODE im Infoset zur Verfügung.



Merkmale der Klassifizierung durch Definition Feld OBJNFOND

Entsprechend einfacher ist auch die Übernahme dieser Auftragsnummer zur Definition des Feldes OBJNFOND um Merkmale der Klassifizierung zu übernehmen.

Auf die dahinter liegende Methode bin ich schon im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" eingegangen.

Allerdings muss jetzt das Zusatzfeld OBJNFOND nicht mehr per SHIFT aus der Auftragsnummer definiert werden sondern kann im Codeabschnitt 2 wie folgt definiert werden.

Per ABAP zwei Strings mit Leerzeichen verknüpfen

Nun haben wir also die Nummer des Fonds (sofern ein entsprechender Fond passend zum Innenauftrag angelegt worden ist im Feld ZAUFNR angelegt. Dieses muss nun mit "FIK " verknüpft werden.

Die Abap Anweisung

CONCATENATE altenstring neuenstring INTO altenstring.

 verkettet getrennte Zeichenfolgen zu einer Zeichenfolge. Hier wäre nun eine Verkettung des Finanzkreises  'FIK ' mit anschliessenden Leerzeichen und des Fonds denkbar. Allerdings werden Leerzeichen innerhalb der Strings ignoriert. Bei Werten des Typs C (Character) besteht aber die Möglichkeit diese Anweisung um den Parameter RESPECTING BLANKS zu erweitern. Dieses ist nur bei Zeichenketten auch Leerzeichen berücksichtigt werden. Ohne diesen Parameter werden Leerzeichen (Zeichen 32 im ASCII Code) einfach entfernt.

Zusatzfeld OBJNFOND aus ZAUFNR ableiten

(Finanzkreis und Fond verknüpfen entsprechend AUSP-OBJEK)

Entpsprechend wird ein weiteres Zusatzfeld angelegt. Dieses Feld erhält die Bezeichnung OBJNFOND und per LIKE die gleichen Eigenschaften wie das Feld AUSP-OBJEK.

Darüberhinaus wird im Feld "Reihenfolge des Codeabschnittes" statt wie bisher automatisch eine 1 eine 2 eingetragen. Hierdurch wird das Coding zum Feld OBJFOND nach erfolgreicher Wertzuweisung für das Feld ZAUFNR durchgeführt.

Nachdem ein Feld angelegt ist kann über die Schaltfläche "Coding zum Zusatz" ein passendes ABAP Coding für das Feld hinterlegt werden um das Zusatzfeld OBJNFND mit den Finanzkreis zu verknüpfen.

Hierzu ist folgende kurze Codezeile erforderlich:

CONCATENATE  'FIK ' ZAUFNR  INTO OBJNFOND RESPECTING BLANKS.

Nun ist im Zusatzfeld OBJNFOND der entsprechende Fond entsprechend der Objektnummer im Tabellenfeld AUSP-OBJEK gespeichert. Entsprechend hilfreich ist hier die Definition des Feldes ZAUFNR.

Nun können die einzelnen Merkmale der Klassifizierung wie im verlinkten Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" zur Klassifizierung eingebunden werden.

Das Ergebnis ist identisch zur bisherigen Methode, allerdings erscheint es mir etwas weniger aufwändig und natürlich durch die Einbindung der Stammdatentabelle FMFINCODE als Zusatztabelle auch eleganter.


Dynamische Datumsberechnung bei Varianten

Weniger im Bereich Query selbst dafür aber in Verbindung mit der Nutzung von Varianten interessant war die Möglichkeit bei Selektionsvarianten bei Varaiblen diese als Dynamisch im Feld Variablentyp zu definieren. Hierdurch besteht bspw. die Möglichkeit über eine Variable das aktuelle Tagesdatum +30 Tage definiert werden.
Auch sonst war der kurze Überblick über verschiedene Standardberichtstool im Bereich FI ein Vorteil der Schulung ebenso wie im Buch




Deaktivierung des grafischen Query Painter

Hier war der Vorteil der Schulung, dass tatsächlich nicht mit den grafischen Query Painter sondern mit der "alten" Ansicht gearbeitet wurde.Hierdurch konnten Sortierreihenfolgen und Formatierungen insbesondere für die ABAP Liste statt ALV  einige Formatierungen und Zwischensummen innerhalb der Grundliste aktiviert werden. Gerade durch mehrere Ebenen ist es hier ein Vorteil, dass noch weitere Informationen ausgegeben werden können. In der Praxis (oder vielmehr in meinen Alltag) verwende ich jedoch tatsächlich eher die Query im Format einer ALV, so dass ich problemlos die Daten exportieren kann und so nur die Spaltenüberschriften als Information verwende.

Trotzdem gibt es hier eine einfache Möglichkeit einzelne Datenfelder in unterschiedliche Zeilen aufzuteilen, oder Sortierkriterien festzulegen. Auch die Summenbildung kann hier sehr feinstufig festgelegt werden. Hier sind die Gruppenstufen der Grundliste einen Blick wert, aber auch die Gruppenstufentexte oder Kopf- und Fußzeilen sind ein Thema, was Berichte für die Ausgabe direkt am Screen hilfreich macht. Ferner können hier auch die Überschriftentexte auf einfache Weise angepasst werden. Nebenbei ist hier auch die Empfehlung die Überschriften schon im Infoset anzupassen. Ein Vorteil bei der Gestaltung dieser einzelnen Elemente und Formatierungen allgemein ist es auch die im System schon vorhandenen Berichte ein wenig besser zu verstehen.

Dieses ist vermutlich vergleichbar mit Kollegen, die immer die Excelintegration aktiviert haben und somit zum Beispiel bei Report Writer / Report Painter Berichten keine Zusatzinformationen sondern das Ergebnis ohne Kopfzeilen und Co dargestellt bekommen.


Coding in Zusatzfeldern

Ein weiterer, eigentlich einfacher Punkt ist in der Schulung die Idee gewesen das Soll / Haben Kennzeichen nicht nur in der Query zur Darstellung des Wertes zu verwenden. So habe ich im Artikel "Query FI Einzelposten als Belegjournal - Belegsegment (BSEG) und Belegkopf (BKPF) verknüpfen" beschrieben, wie anhand eines lokalen Feldes anhand des Soll-/Haben-Kennzeichen - SHKZG (BSEG-SHKZG)  und des  Betrag in Hauswährung - DMBTR (BSEG-DMBTR) nicht erst in der Query über ein lokales Feld und entsprechender Formeln, wie zum Beispiel :


1. Feld (Gebuchter Wert)
Kurzbezeichnung: WERT
Feldbezeichnung: gebuchter Wert
Überschrift: gebuchter Wert
gleiche Eigenschaften wie: DMBTR
Berechnungsvorschrift:
Hier wird eine komplexe Berechnung mit folgenden Bedingungen hinterlegt:
  • Bedingung: SHKZG = 'S'
    Formel: 1 * DMBTR
  • Bedingung: SHKZG = 'H'
    Formel: -1 * DMBTR
der gebuchte Wert mit passenden Vorzeichen dargestellt wird, sondern auch direkt im Infoset ein Zusatzfeld (als Beispiel BETRAGVZ), dieses schon im Infoset anhand folgendes Coding verwirklicht.

IF BSEG-SHKZG = 'H'.
      BETRAGVZ =  BSEG-DMBTR  * -1.
ELSE
     BETRAGVZ = BSEG-DMBTR.
ENDIF.

Damit steht das Betragsfeld mit "richtigen" Vorzeichen unter Berücksichtigung des Soll/Haben Kennzeichen für alle Query zur Verfügung und muss nicht jedes Mal aufs Neue berechnet werden.

 

Literaturempfehlung und weitere Quellen

Wie bereits erwähnt haben Martin Peto und Katrin Klewinghaus zum Thema SAP Query auch folgendes Buch geschrieben.

Reporting im SAP - Finanzwesen
Themen sind unter anderen
  • SAP-Informationssysteme im Überblick
  • Standard-Reporting mit SAP List Viewer (ALV)
  • Einsatzmöglichkeiten und Grenzen des SAP QuickViewers
  • Aufbau von SAP Queries mit Praxisbeispiel

Sollte sich noch jemand für das angesprochene Buch interessieren, so ist dieses auch auf meiner Unterseite zum Buch  "Reporting im SAP-Finanzwesen: Standardberichte, SAP QuickViewer und SAP Query" beschrieben und kann hier auch bestellt werden.


Daneben kann ich aber auch das Buch von Stephan Kaleske (bzw. in der neuen Auflage auch von Karin Bädekerl, Heinz Forsthuber empfehlen.

Praxishandbuch SAP Query-Reporting
ISBN: 978-3836218405

Eine ausführlichere Beschreibung dieses Buch ist auf der Seite "Praxishandbuch SAP Query-Reporting" zu finden. Dieses Buch geht sogar noch ein wenig tiefer in die Materie SAP Query ein und eignet sich damit hervorragend als Nachschlagewerk für fortgeschrittene Anwendende.

 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 5. November 2015
17:51 Uhr

PSM Haushaltsmanagement Budgetverwaltungssystem BCS oder klassische Budgetierung

Da sich auch das Modul PSM ("public sector management") weiterentwickelt möchte ich hier kurz die offensichtlichen Unterschiede zwischen der klassischen Budgetierung und dem neuen Budgetverwaltungssystem BCS festhalten (schon damit ich nicht immer wieder selbst nach dieser Zusammenstellung suchen muss).

Das Budgetverwaltungssystem (BCS) stellt im Haushaltsmanagement eine Alternative zur klassischen Budgetierung dar.  Als neue Kontierungelemente stehen hier nun neue Stammdaten (Hauhaltsprogramm, Förderungen des Fördermittelmanagement) zur Verfügung. 
 
Mit Haushaltsprogrammen können neben dem Funktionsbereich eine weitere funktionale Gliederung von Ausgaben innerhalb der Organisation (Finanzkeis) abgebildet werden. Sie können budgetiert, aber nicht direkt kontiert werden. Die Kontierung wird bei der Buchung immer aus einem anderen Kontierungsobjekt, beispielsweise aus einem CO-Auftrag oder Projektstrukturplanelement abgeleitet.
 
SAP sieht eine parallele Nutzung von BCS und klassischer Budgetierung nicht vor, so dass eine Migration der bestehenden Budgetdaten erforderlich ist.
 
Das BCS berücksichtigt bei der Budgetierung nicht mehr die Hierarchie der Finanzstellen und der Finanzpositionen. Das bedeutet, dass keine Verteilungs- oder Summierungsfunktion zur Verfügung steht. Die Hierarchien können aber weiterhin für Berichtszwecke genutzt werden. Ferner soll kein negatives Budget  mehr möglich sein. Somit dürften auch die im Artikel "PSM Recherchebericht: Verwendung alternative Finanzpositionshierarchie" weiterhin genutzt werden.

Hierdurch sind natürlich auch Korrekturen wie im Artikel "Reorganisation von Finanzstellenhierarchien" beschrieben nicht mehr direkt erforderlich.

Statt einer Finanzpositionhierarchie gibt es Budgetstrukturpläne, die bestimmte Stammdaten miteinander kombinieren und hier für Budget gebuchten  Finanzpositionen und Fonds (so auch der den Finanzstellen zugeordnete Fond ) einschränkt.
 
Die einzelnen Budgetvorgänge können hier mit unterschiedlichen Phasen versehen werden (Erfassung, Ausgleich (Beleg ist zahlungswirksam verbucht), Übertragung oder budgeterhöhende Einnahme).

Daneben können verschiedene Budgetversionen genutzt werden und im Gegensatz zur klassischen Budgetierung diese auch eingefroren werden.  Das Arbeiten mit mehreren Budgetversionen wurde auch schon im Artikel "SAP PSM-FM klassische Budgetierung mit unterschiedlichen Budgetversionen" beschrieben.

Ferner können Budgets aus CO Plandaten oder Excel übernommen werden. 
 
Technisch sind die Budgetwerte nicht mehr in einer Tabelle sondern in mehreren Tabellen vorhanden. Es gibt nur wenige Standardberichte im Bereich BCS; so dass hier eine entsprechende Anpassung und Entwicklung erforderlich ist, sofern die vorhandene Berichte nicht ausreichen. So können mit Aktivierung von BCS auch Report Writer / Report Painter ( Bibliothek 4FM) genutzt werden (siehe "Bibliothek für ReportWriter/ReportPainter innerhalb des Modul PSM/FM"). Bisher waren eher Rechercheberichte wie zum Beispiel im Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget" beschrieben im Einsatz.

Gerade beim Thema Budgetierung stellt sich aber auch die Frage, ob bei BCS auch weiterhin Korrekturen wie im Artikel "Buchungstext ändern bei Budgetbelegen in PSM-FM - Haushaltsmanagement"  beschrieben weiterhin möglich sein werden. Aber dieses ist dann eher ein Thema von Einzelpostenbelegen ;-).
 
Als umfassendes Reporting-Tool ist für das Budgetverwaltungssystem das Business Warehouse System (BW-System) vorgesehen. Dennoch gibt es auch im Bereich BCS passende Budgetberichte erstellt werden.

Wichtiger Hinweis
Durch den Artikel "Budgetierung in SAP PSM unter S/4 HANA" im Marlin Blog (Blog der Marlin Consulting UG über aktuelle Themen aus dem Bereich SAP in der öffentlichen Verwaltung von Bjoern Kemmoona) bin ich auf den OSS Hinweis 2226048  aufmerksam gemacht worden. Die Kernaussage des dort zitierten OSS Hinweis lautet "Die klassische Budgetierung wird mit der Einführung von SAP S/4 HANA nicht mehr unterstützt. Die Funktion für die Budgetpflege wird nur über das Budgetverwaltungssystem (BCS) von PSM unterstützt, so dass ein Wechsel von der klassischen Budgetierung hin zu BCS entsprechend erforderlich wird. Soferm weiterhin die klassische Budgetierung in PSM-FM genutzt werden soll ist gegebenfalls schon vor einen etwaigen Wechsel nach SAP S/4 HANA eine Migration zum Budgetverwaltungssystem (BCS) sinnvoll und spätestens beim Wechsel notwendig. Auch sonst bietet der verlinkte Artikel noch einige Hinweise und auch das Marlin Blog selbst ist sicherlich lesenswert.

Interessant in diesen Zusammenhang dürfte auch sein, dass Ende Dezember 2015 ein Buch in SAP Press erscheint, welches die Themen klassische Budgetierung und BCS ebenfalls behandelt. Privat habe ich dieses auch schon auf meinen Amazon Wunschzettel notiert ;-)

Öffentliches Haushalts- und Fördermittelmanagement mit SAP

Cover Öffentliches Haushalts- und Fördermittelmanagement mit SAP

ISBN: 978-3836237482

Meines Wissens nach gab es bisher noch kein Fachbuch zum Modul PSM (public sector management), so dass ich erstaunt bin, dass mittlerweile von SAP Press (Rheinwerk Verlag (ehemals Galileo Press)) für Dezember 2015 ein Buch zum Modul PSM angeboten wird. Hierbei soll das Buch das Customizing (und die Integration mit anderen SAP Modulen (besonders FI,CO,MM, SD und HCM) erläutern aber auch auf die einzelnen Funktionen zur Planung, Bewirtschaftung und den Jahresabschluss eingehen. Dabei werden auch die Prozesse in öffentlichen Verwaltungen, Verbänden und Universitäten dargestellt. Der Autor selbst ist als SAP Berater im öffentlichen Sektor tätig, so dass dieses Buch auch sehr praxisnah erscheint.

Neben der hier schon angesprochenen klassische Budgetierung und das moderne BCS (Budgetverwaltungssystem) werden auch Themen wie Berichtswesen, Haushalts- und Fördermittelmanagement aber auch Archivierung beschrieben.Eine ausführliche Buchbeschreibung wird dann auch auf der Seite "Öffentliches Haushalts- und Fördermittelmanagement mit SAP" zu finden sein.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Freitag, 19. Dezember 2014
15:00 Uhr

Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE

Bisher wurden schon einige Stammdaten der CO Innenaufträge und der PSM-FM Fonds miteinander in Verbindung gesetzt. Bei der Definition der Variablen innerhalb des ABAP Coding ist dabei darauf zu achten, dass diese innerhalb der Zusatzfelder auch entsprechend bei den einzelnen Variablen nicht mehrfach ausgewertet werden. Daher habe ich im Folgenden noch einmal die einzelnen schon im Artikel "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck" erwähnten Zusatzfelder an dieser Stelle noch einmal aufgeführt und im Coding ein wenig angepasst.

Das grundsätzliche Infoset zur Auswertung von Innenaufträgen ist in folgender Darstellung bereits im entsprechenden Artikel erläutert.

Infoset Verknüpfung AUFK und CSKS bzw. CEPC zur Darstellung Innenauftrag, verantwortliche Kostenstelle und Profit-Center
Neben den schon erwähnten Feld Finanzierungszweck aus den Stammdaten des Fonds sind auch weitere Felder noch über ein Zusatzfeld und dahinter liegenden Coding zu ermitteln.

Alle hier aufgeführten Coding befinden sich im Codeabschnitt 1. Für die Merkmale der Klassifizierung ist der Codeabschnitt 3 verwendet worden und wird im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM".

In den Folgenden Beispielen wird davon ausgegangen dass sich die PSM-FM Stammdaten alle im Finanzkreis FIK befinden.

Die einzelnen Zusatzfelder werden als erstes mit ihren Verweis auf die Eigenschaften des jeweilige Tabellenfeld definiert. Danach folgt eingerückt das zugehörige ABAP-Coding zum Zusatzfeld.

Zusatzfeld: Ist ein Fond zum Innennauftrag vorhanden?

Es wird das Zusatzfeld FONDS angelegt um in der Tabelle FMFINCODE nach einen mit identischer Nummer zum Innenauftrag angelegten Fond im Modul PSM-FM zu suchen.

FONDS like FMFINCODE-FINCODE.
Das entsprechende Coding zum Zusatzfeld sieht wie folgt aus:

DATA: l_fincode TYPE FMFINCODE-FINCODE.
DATA: l_aufnr TYPE aufk-aufnr.
l_aufnr = aufk-aufnr.
SHIFT l_aufnr BY 4 PLACES LEFT.
l_fincode = l_aufnr.
SELECT SINGLE FINCODE FROM FMFINCODE INTO l_fincode
       WHERE fikrs = 'FIK'
         AND FINCODE = l_fincode.
IF sy-subrc <> 0.
  CLEAR fonds.
ELSE.
  fonds = l_fincode.
ENDIF.

Zusatzfeld: Bezeichnung des Fond

Sofern ein passender Fond gefunden wurde soll auch die Bezeichnung des Fond mit ausgewertet werden. Hierzu soll das Feld BEZEICH aus der Tabelle FMFINT ausgewertet werden.

BEZEICHNUNG  Like FMFINT-BEZEICH
Das entsprechende Coding sieht dabei wie folgt aus:

DATA: l_bezeich TYPE fmfint-bezeich.
DATA: l_fincodebezeichnung Type FMFINCODE-FINCODE.
DATA: l_aufnrbezeichnung TYPE aufk-aufnr.
l_aufnrbezeichnung = aufk-aufnr.
SHIFT l_aufnrbezeichnung BY 4 PLACES LEFT.
l_fincodebezeichnung = l_aufnrbezeichnung.
SELECT SINGLE bezeich FROM fmfint INTO l_bezeich
       WHERE fikrs = 'FIK'
         AND fincode = l_fincodebezeichnung.
IF sy-subrc <> 0.
  CLEAR bezeichnung.
ELSE.
  bezeichnung = l_bezeich.
ENDIF.

Zusatzfeld: Gültigkeit des Fond

Neben Arbeitsbeginn und Arbeitsende soll auch die Gültigkeit des Fonds ausgewertet werden.
Hierzu sollen die beiden Felder DATAB und DATBIS der Tabelle FMFINCODE ausgewertet werden. Entsprechend sind hier zwei Zusatzfelder angelegt worden.

DATUM_AB  Like FMFINCODE-datab
Das entsprechende Coding lautet:

DATA: l_datab TYPE FMFINCODE-datab.

DATA: l_fincodedatab Type FMFINCODE-FINCODE.
DATA: l_aufnrdatab TYPE aufk-aufnr.
l_aufnrdatab = aufk-aufnr.
SHIFT l_aufnrdatab BY 4 PLACES LEFT.
l_fincodedatab = l_aufnrdatab.
SELECT SINGLE datab FROM FMFINCODE INTO l_datab
       WHERE fikrs = 'FIK'
         AND FINCODE = l_fincodedatab.
IF sy-subrc <> 0.
  CLEAR datum_ab.
ELSE.
  datum_ab = l_datab.
ENDIF.

DATUM_BIS Like FMFINCODE-datbis
Das entsprechende Coding lautet:

DATA: l_datbis TYPE FMFINCODE-datbis.
DATA: l_fincodedatbis Type FMFINCODE-FINCODE.
DATA: l_aufnrdatbis TYPE aufk-aufnr.
l_aufnrdatbis = aufk-aufnr.
SHIFT l_aufnrdatbis BY 4 PLACES LEFT.
l_fincodedatbis = l_aufnrdatbis.
SELECT SINGLE datbis FROM FMFINCODE INTO l_datbis
       WHERE fikrs = 'FIK'
         AND FINCODE = l_fincodedatbis.
IF sy-subrc <> 0.
  CLEAR datum_bis.
ELSE.
  datum_bis = l_datbis.
ENDIF.

Zusatzfeld: Fondsart

Innerhalb des Haushaltsmanagement können einzelne Fonds einer Fondart zugewiesen werden, die dann für Reportingzwecke verwendet werden können.
Hierzu soll das Tabellenfeld TYPE in der Tabelle FMFINCODE ausgewertet werden.

FONDSART   Like FMFINCODE-TYPE
Das Coding lautet dabei wie folgt:

DATA: l_type TYPE FMFINCODE-TYPE.
DATA: l_fincodefondsart Type FMFINCODE-FINCODE.
DATA: l_aufnrfondsart TYPE aufk-aufnr.
l_aufnrfondsart = aufk-aufnr.
SHIFT l_aufnrfondsart BY 4 PLACES LEFT.
l_fincodefondsart = l_aufnrfondsart.
SELECT SINGLE type FROM FMFINCODE INTO l_type
       WHERE fikrs = 'FIK'
         AND FINCODE = l_fincodefondsart.
IF sy-subrc <> 0.
  CLEAR fondsart.
ELSE.
  fondsart = l_type.
ENDIF.

Zusatzfeld: Budgetprofil

Über das Budegtprofil lassen sich verschiedene Budgetsteuerungen (bspw. Unterscheidung Jahresbudget, Gesamtbudget oder auch Zeithorizonte) festlegen. Die Customizing-Einstellungen sind im Artikel "Budgetprofil klassische Budgetierung" und die Budgetierung an sich im Artikel "SAP PSM-FM klassische Budgetierung mit unterschiedlichen Budgetversionen" näher vorgestellt. Innerhalb des Infosets soll jedoch nur das zugeordnete Budgetprofil zum jeweiligen Fond mit ausgegeben werden. Dieses ist im Tabellenfeld PROFIL der Tabelle FMFINCODE gespeichert.
Entsprechend wurde folgendes Zusatzfeld angelegt:

BUDGETPROFIL   Like FMFINCODE-PROFIL
Das dahinter liegende Coding hat dabei folgenden Aufbau:

DATA: l_profil TYPE FMFINCODE-PROFIL.
DATA: l_fincodebudgetprofil TYPE FMFINCODE-FINCODE.
DATA: l_aufnrbudgetprofil TYPE aufk-aufnr.
l_aufnrbudgetprofil = aufk-aufnr.
SHIFT l_aufnrbudgetprofil BY 4 PLACES LEFT.
l_fincodebudgetprofil = l_aufnrbudgetprofil.
SELECT SINGLE profil FROM FMFINCODE INTO l_profil
       WHERE fikrs = 'FIK'
         AND FINCODE = l_fincodebudgetprofil.
IF sy-subrc <> 0.
  CLEAR budgetprofil.
ELSE.
  budgetprofil = l_profil.
ENDIF.

Soweit wären hier alle relevanten Stammdaten der Transaktion FM5S (Fond anzeigen) aufgeführt. Eine Erweiterung der Stammdaten um einzelne Merkmale der Klassifizierung ist im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" ausführlich beschrieben. Hier sind die einzelnen Zusatzfelder (für die Merkmale der Klassifizierung innerhalb des Abschnit 3 zu hinterlegen, da diese sich auf das Zusatzfeld OBJNFOND im Abschnitt 2 bezieht.

OBJNFOND   like  AUSP-OBJEK

CONCATENATE  'FIK ' FONDS INTO OBJNFOND RESPECTING BLANKS.

Die einzelnen Merkmale aus der Tabelle AUSP müssen dann jedoch noch über die Tabelle CABN anhand des Felds ATINN ausgewertet werden. Dieses ist aber im entsprechenden Artikel wesentlich ausführlivher erläutert.

Hinweis: Query Stammdaten CO Innenauftrag PSM-FM Fond

Dieser Artikel ist Teil einer Serie um Stammdaten von CO Innenaufträgen und PSM-FM Fonds miteinander zu verknüpfen.
  1. "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen"
  2. "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer"
  3. "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM"
  4. "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE"
Insbesondere was die Auswertung von PSM Stammdaten anbelangt (so eben auch Klasifizierung oder Finanzierungszweck) dürfte der Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" noch eine Menge Potential beschreiben und teilweise auch eine etwas einfachere Variante anbieten. Ein tatsächlich umfangreiches Beispiel ist in der Artikelserie unter "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage" zu finden.


 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Freitag, 12. Dezember 2014
14:21 Uhr

SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM

Neben den einzelnen Stammdaten besteht auch die Möglichkeit weitere Informationen zu einen Objekt im Wege der Klassifizierung anzulegen um hier über die reinen Stammdaten hinaus noch weitere Informationen zu einzelnen Kontierungsobjekten zu hinterlegen.
Problematisch ist nur, dass die Merkmale der Klassifizierung nicht in einer Stammdatenliste direkt mit aufgeführt werden können. Entsprechend naheliegend ist es diese ebenfalls in einer Query neben verschiedenen anderen Stammdaten auszuwerten.

Exkurs: Klassensystem

Das Klassensystem ermöglicht es innerhalb einer Klasse verschiedene Merkmale zusammenzufassen und diese dann an Stammdaten als weitere Felder zu pflegen.

Innerhalb PSM-FM ist dieses bspw. für die Klassen 042 Fonds, 041 Finanzstelle oder auch 043 Finanzpositionen möglich. Sobald eine Klasse entsprechend angelegt ist, kann die Klassifizierung am jeweiligen Objekt gepflegt werden.

Die Klassifizierung kann auch im Controlling beispielsweise für die Klassenart 013 Controlling: Aufträge gepflegt werden. Hierzu ist es jedoch erforderlich, dass in der Auftragsart (Transaktion KOT2_OPA) bei den Steuerkennzeichen die Klassifizierung aktiviert wurde.

CT04 Merkmalverwaltung

Über die Merkmalverwaltung (Transaktion CT04) können einzelne Merkmale definiert werden. Diese können entweder einwertig oder mehrwertig sein und in den Basisdaten auch als erforderlich markiert werden. Im Reiter Werte können auch schon entsprechende Vorschlagswerte festgelegt werden. Hierbei ist zu beachten, dass die Spalte Merkmalswert dann auch der eigentliche Wert des Merkmals enthält und die Bezeichnung eine passende Beschreibung dazu enthält. Andernfalls handelt es sich beim Merkmal um ein Freitextfeld. Innerhalb der Registerkarte Einschränkungen kann dass Merkmal auf eine bestimmte Klassenart (bspw. 042 Fonds) eingeschränkt werden und nur in dieser Klasse verwendet werden.

CL02 Klassenverwaltung

Über die Klassenverwaltung (Transaktion CL02) können mehrere Merkmale zu einer Klasse zusammengefasst werden und einer bestimmten Klassenart bspw. 042 für Fonds oder 013 für Innnenaufträge zugeordnet werden.

Merkmale pflegen

Über die Schaltfläche Klassifizierung in der Stammdatenpflege (egal ob nun KO02 für Innenaufträge oder FM5U für Fonds) können die einzelnen Merkmale gepflegt werden.

Suche über Klassifizierung

Über eine Stammdatenliste (bspw. Transaktion S_KI4_38000039 für die alphabetische Lsite Fonds) kann über den Knopf Klassifizierung über die entsprechende Klasse und der Klassenart (es besteht somit auch die Möglichkeit für eine Klassenart bspw. Fonds mehrere Klassen anzulegen) entsprechende Objekte in Klassen zu suchen. Im Ergebnis erhält man eine Liste die dann alle entsprechenden übereinstimmende Objekte, die dann als Selektion in die Stammdatenliste übernommen werden können. Alternativ können Sie auch über die Transaktion CL30N eine entsprechende Suche starten.

Alle Funktionen zur Klassifizierung sind innerhalb des SAP Menü unter Anwendungsübergreifende Komponenten > Klassensystem zu finden.

Technisch betrachtet sind die einzelnen Merkmalswerte in der Tabelle AUSP  "Ausprägungswerte der Sachmerkmale" hinterlegt. Sofern Sie die Zuordnung der einzelnen Merkmale zu den einzelnen Klassenarten auswerten wollen, können Sie hier die Tabelle TCLA "Klassenarten" über die Tabelle INOB "Zuordnung einer internen Nummer zu einem bel. Objekt" über das Feld "KLART" miteinander verknüpfen.

Ausgangslage:
In unseren Fall möchten wir jedoch die bestehende Stammdatenliste aus Innenaufträge und entsprechende Fonds (wie im Artikel "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck" um bestimmte Merkmale aus der Klassifzierung erweitern.

Zur Erinnerung nocheinmal das Infoset aus den vorherigen Artikel
Darstellung Infoset über die Tabellen AUFK, FMFINCODE sowie Zusatztabellen



Bisher haben wir in dieser Query den Finanzierungszweck aus PSM, die Laufzeit aus CO sowie das Sperrkenzeichen und die aus den Kostenstellen abgeleitete Lehreinheit gelistet.

Innerhalb der Tabelle AUSP werden die Kontierungsobjekte (zum Beispiel ein Fond) im Feld OBJEK (Schlüssel des zu klassifizierenden Objektes) gespeichert. Daneben kann die Auswahl auch über das Feld KLART (Klassenart) auf Merkmale der Klassenart 042 eingeschränkt werden.

Problematisch am Aufbau des Feldes OBJEK ist jedoch, dass hier für Fonds der Finankreis gefolgt von der Nummer des Fonds als Identifikator gilt. Dieses hat den Nachteil, dass sofern der Finanzkreis weniger als vier Zeichen enthält hier ein entsprechendes Leerzeichen eingefügt wird.

Als Beispiel wäre das Projekt 40210001 im Buchungskreis FIK als "FIK 40210001" in dieser Tabelle gespeichert.

Wo die Objektnummer im Innenauftrag noch in der Tabelle AUFK im Feld OBJNR gespeichert ist (OR000040210001) befindet sich in der Tabelle FMFINCODE kein entsprechendes Feld.

Hierzu müsste als Feld die Nummer des Fonds mit den Finanzkreis und einen Leerzeichen verbunden werden.

Zusatzfeld Fond aus Innenauftrag ableiten

Das bereits angelegte Infoset soll um zwei weitere Zusatzfelder erweitert werden. In der Pflege des Infosets innerhalb der Transaktion SQ02 (Pflege des Infosets)  kann über die Schaltfläche Zusätze (F5) bzw. über  SPRINGEN-> ZUSÄTZE ZUM KNOTEN eigene Felder definiert werden.

Hierzu kann im Register Zusätze die Schaltfläche Anlegen ausgewählt werden. Es erscheint eine Maske in der der Name des Zusatzfeldes angegeben werden soll (im folgenden Beispiel FONDS)  und die Art der Zusatzinformation.

Um hier die Nummer des Fond zu erhalten, soll ein Zusatzfeld mit den Namen FONDS angelegt werden.

Dieses hat folgende Eigenschaften: Langtext und Überschrift haben beide Fonds erhalten. Die Formatangabe wurde über LIKE-Referenz idenitsch zum Feld
AUFK-AUFNR gehalten. Damit entspricht dieses Feld den Formatangaben in der Tabelle AUFK (Typ C (Character) Länge 012 Ausgabenlänge 012). Damit ist das Feld angelegt, hat jedoch nur eine Datendefinition aber noch keine eigene Daten, da hier ja keine Selektion hinterlegt ist.

Nachdem ein Feld jedoch angelegt ist kann über die Schaltfläche "Coding zum Zusatz" ein passendes ABAP Coding für das Feld hinterlegt werden über das wiederum eine Datenbankabfrage erfolgen kann. Dieses Coding entspricht auch den ABAP Code, den ich von einen Kollegen zur Verfügung gestellt bekommen habe. Das Coding für das Feld FONDS  sieht dabei wie folgt aus (wobei statt KRK natürlich Ihr Kostenrechnungskreis im Coding hinterlegt sein sollte):

DATA: l_fincode1 TYPE FMFINCODE-FINCODE.
DATA: l_aufnr TYPE aufk-aufnr.
l_aufnr = aufk-aufnr.
* Verschieben des gespeicherten Wertes in der Tabelle AUFK um 4 Zeichen
* HINTERGRUND:
* Das Fekd AUFK-AUFNR hat insgesamt 12 Zeichen.
* Die achtstellige Auftragsnummer wird mit 0000 aufgefüllt
* Durch die Verschiebung ist die Auftragsnummer direkt in der
* lokalen Variable gepseichert.
Somit sind die führenden Nullen entfernt

SHIFT l_aufnr BY 4 PLACES LEFT.
l_fincode1 = l_aufnr.

* Durch die Abfrage der Tabelle FINCODE wird die Nummer nur ausgegeben, wenn
* auch tatsächlich ein Fond angelegt ist.
SELECT SINGLE FINCODE FROM FMFINCODE INTO l_fincode1
       WHERE fikrs = 'KRK'
         AND FINCODE = l_fincode1.
IF sy-subrc <> 0.
  CLEAR fonds.
ELSE.
  fonds = l_fincode1.
ENDIF.

Auch diese Query geht davon aus, dass die Nummer des Innenauftrages und des Fonds identisch sind.

ACHTUNG: Länge der Auftragsnummer / Fondcode ist entscheidend!

Sollten die Auftragsnummern bspw. siebenstellig sind, ist hier natürlich mittels

SHIFT l_aufnr BY 5 PLACES LEFT.

das Coding entsprechend anzupassen.

Per ABAP zwei Strings mit Leerzeichen verknüpfen

Nun haben wir also die Nummer des Fonds (sofern ein entsprechender Fond passend zum Innenauftrag angelegt worden ist im Feld FONDS angelegt. Dieses muss nun mit "FIK " verknüpft werden.

Die Abap Anweisung

CONCATENATE altenstring neuenstring INTO altenstring.

 verkettet getrennte Zeichenfolgen zu einer Zeichenfolge. Hier wäre nun eine Verkettung des Finanzkreises  'FIK ' mit anschliessenden Leerzeichen und des Fonds denkbar. Allerdings werden Leerzeichen innerhalb der Strings ignoriert. Bei Werten des Typs C (Character) besteht aber die Möglichkeit diese Anweisung um den Parameter RESPECTING BLANKS zu erweitern. Dieses ist nur bei Zeichenketten auch Leerzeichen berücksichtigt werden. Ohne diesen Parameter werden Leerzeichen (Zeichen 32 im ASCII Code) einfach entfernt.

Zusatzfeld OBJNFOND aus Fond ableiten

(Finanzkreis und Fond verknüpfen entsprechend AUSP-OBJEK)

Entpsprechend wird ein weiteres Zusatzfeld angelegt. Dieses Feld erhält die Bezeichnung OBJNFOND und per LIKE die gleichen Eigenschaften wie das Feld AUSP-OBJEK.

Darüberhinaus wird im Feld "Reihenfolge des Codeabschnittes" statt wie bisher automatisch eine 1 eine 2 eingetragen. Hierdurch wird das Coding zum Feld OBJFOND nach erfolgreicher Wertzuweisung für das Feld FONDS durchgeführt.

Nachdem ein Feld angelegt ist kann über die Schaltfläche "Coding zum Zusatz" ein passendes ABAP Coding für das Feld hinterlegt werden um das Zusatzfeld FONDS mit den Finanzkreis zu verknüpfen.

Hierzu ist folgende kurze Codezeile erforderlich:

CONCATENATE  'FIK ' FONDS INTO OBJNFOND RESPECTING BLANKS.

Nun ist im Zusatzfeld OBJNFOND der entsprechende Fond entsprechend der Objektnummer im Tabellenfeld AUSP-OBJEK gespeichert.

Nun können die einzelnen Merkmale (bzw. deren Werte) als Zusatzfeld im Infoset angelegt werden. Als Selektionskriterium kann nun die Merkmalsnummer und die Klassenart verwandt werden.

Welche Merkmale sind vorhanden?

Die einzelnen Merkmale sind in der Tabelle CABN hinterlegt und werden über das Feld ATINN mit der Tabelle AUSP mit entsprechenden Inhalten verknüpft.
Entsprechend ist es Möglich für jedes Merkmal ein eigenes Zusatzfeld anhand der Merkmalsnummer (ATINN) zu erstellen.Die entsprechenden Einzelmerkmale können hierbei bspw. mit der Transaktion SE16 und der Auswertung der Tabelle CABN betrachtet werden.

Eines dieser Merkmale könnte dann unter anderen das Merkmal FBINSTITUT für die Angabe des dem Fond zugeordneten Kürzel des Fachbereichs beziehungsweise das Kürzel eines zentralen Institutes oder EInrichtung sein. Alternativ könnte auch die betroffene Branche oder eine ausführlichere Zuordnung für die Bilanz sein (bspw. Unterscheidung nach Auftragsforschung, Dienstleistung, ...).

Merkmalswert aus Klassifizierung von Fonds auswerten


Für unser Beispiel nehmen wir an, dass das Merkmal Branche gepflegt ist und die Interne Merkmalsnummer (Feld ATINN) folgenden Wert hat 0000000001. Nun kann ein weiteres Zusatzfeld mit der Bezeichnung Branche angelegt werden.

Dieses erhält über die LIKE-Referenz die gleichen Eigenschaften wie das Tabellenfeld AUSP-ATWRT (hier ist der Merkmalswert gespeichert).
Beachten Sie, dass der Langtext später in der Query als Feldname genutzt wird und die Überschrift dann als Überschrift für die Spalte genutzt wird. Der technische Name steht dahingehend den Query-Erstellenden nicht zur Verfügung. Dennoch kann es sinnvoll sein den Langtext und den technischen Namen identisch zu halten, insbesondere wenn später noch Anpassungen erforderlich sein sollten.

Darüberhinaus wird im Feld Reihenfolge des Codeabschnitts 3 eingetragen, so dass als erstes das Feld FONDS danach OBJNFOND und abschließend die einzelnen Merkmalsfelder definiert werden können.

Das entsprechende Coding zum Feld würde dann wie folgt lauten:

DATA: L_BRANCHE type AUSP-ATWRT.
SELECT SINGLE ATWRT INTO L_BRANCHE FROM AUSP
 WHERE OBJEK = OBJNFOND AND ATINN ='0000000001' AND KLART = '042'.
 IF sy-subrc <> 0.
  CLEAR BRANCHE.
ELSE.
  BRANCHE = L_BRANCHE.
ENDIF.

Entsprechend kann auch für jedes weitere Merkmal verfahren werden.
Hierbei muss jedoch darauf geachtet werden, dass jedes Feld einzeln mit der entsprechenden ATINN gepflegt werden muss.

Wie bereits erwähnt kann in der Tabelle CABN die ATINN für die einzelnen Merkmale entnommen werden. Es bietet sich daher an in einen zweiten Modus über die Transaktion SE16 sich die Merkmale aus der Tabelle CABN ausgeben zu lassen.

Nachdem alle Felder erfasst sind, können diese in einer entsprechenden Feldgruppe (bspw. PSM-FM Stammdaten) eingefügt werden und damit für eine Query verwendet werden.

Dieses kann einen entsprechend hohen Aufwand verursachen insbesondere dann wenn weitere Merkmale hinzukommen.

Zusatzfelder in Query verwenden

Nun stehen die einzelnen Zusatzfelder (oder Merkmale) als eigene Felder im Infoset zur Verfügung und können so in eine Query eingebunden werden. Da das gesamte Infoset jedoch als Basis die Tabelle AUFK hat und anhand der Innenaufträge eine Selektion der einzelnen Datensätze erfolgt ist es leider nicht möglich über die Merkmale der Klassifizierung eine entsprechende Abfrage zu erstellen. Hier müsste der umgekehrte Weg über die Tabelle AUSP und Verknüpfung FMFINCODE mit AUFK gegangen werden, was jedoch den Nachteil hat, dass reine CO-Innnenaufträge in einer Auswertung nicht mehr ausgewiesen wären.

Query Stammdatenliste Innnenaufträge und verknüpfte Fonds sowie Merkmale aus Klassifizierung

Innerhalb der Query werden nun auf folgende Felder der einzelnen Tabellen (bzw. Zusatzfelder) des Infosets Zugriff genommen beziehungsweise in der Grundliste zugewiesen. Hierbei ist L als Listenfeld und S als Selektionsfeld zu verstehen.

Die Felder werden hier in der Reihenfolge angegeben, wie diese dann auch in der Query ausgegeben werden sollen:


Auftragsstammdaten AUFK
Auftragsart (S) AUFK-AUART
Auftragsnummer (L,S) AUFK-AUFNR
Kurztext (L) AUFK-KTEXT
Verantwortliche Kostenstelle (L,S) AUFK-KOSTV
Kostenstellentexte CSKT
Beschreibung (L) CSKT-KTEXT
Auftragsstammdaten AUFK
Profitcenter (L,S)
AUFK-PRCTR
Profit-Center-Stammdaten Texte (CEPCT)
Allgemeine Bezeichnung (L) CEPCT-KTEXT
Zusatzfelder (die im Infoset angelegt wurden)
Finanzierungszweck (L,S)  FINUSE
Auftragsstammdaten AUFK
Arbeitsbeginn (L,S) AUFK-USER7
Arbeitsende (L) AUFK-USER8
Antragssteller (L) AUFK-USER0
Verantwortlicher (L) AUFK-USER2
Abteilung (L) AUFK-USER6
Externe Auftragsnummer (L) AUFK-AUFEX
Zusatzfelder (die im Infoset angelegt wurden)
Gesperrt (L)  GESPERRT
lokale Zusatzfelder

Lehreinheit  (L) 


Das Feld Lehreinheit wurde dabei aus der verantwortlichen Kostenstelle des Innenauftrages abgeleitet (siehe Artikel "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer".
Nun können die einzelnen Merkmale der Klassifizierung als Listenfelder übernommen werden. Diese sind als Datenfelder unterhalb der Zusatzfelder zu finden und wurden wie beschrieben im Infoset definiert. Als Beispiel wären hier folgende Merkmale bzw. entsprechende Felder denkbar.

Zusatzfelder
Branche (L)
FB/Institut (L)
Geldgeber (L)
Dienstleistung (L)
Auftragsforschung (L)
UST-Pflicht (L)
VoKoR (L)
...

Das Zusatzfeld OBJNFOND muss nicht extra in der Grundliste der Query eingefügt werden, da darauf aus den einzelnen Merkmalen referenziert wird.

Insgesamt könnten damit wesentlich umfangreiche Stammdatenanforderungen aus SAP erfüllt werden. Im Gesamtergebnis kann hier nun aber eine Stammdatenliste zur Verfügung gestellt werden, die einzelne Daten aus den CO-Innenauftrag, Fond des Haushaltsmanagements (PSM-FM) und zusätzlich noch aus der Klassifizierung und das Sperrkennzeichen beinhaltet. Hierdurch ist eine mühsame Ausgabe über die Stammdatenliste der Innenaufträge (Transaktion KOK5), der Klassensuche (Transaktion CL30N) oder der alphabetischen Liste der Fonds (Transaktion S_KI4_38000039) nicht mehr zwingend erforderlich. Zumal die Klassifizierung in der Hauptsache als weiteres Selektionskriterium für eine Stammdatenliste und einzelnen Aufruf der entsprechende Fonds oder direkt im Stammsatz des jeweiligen Kontierungsobjektes genutzt wurde.

Wie schon beschrieben ist es leider nur möglich die Klassifizierungsmerkmale als Listenfelder und nicht als Selektionsfelder zu verwenden. Dennoch können so auch tiefergehende Informationen zum einzelnen Objekt mit ausgegeben werden.

ACHTUNG: Sonderfall Inkonsistenz bei Merkmalspflege

Die nun erstellte Query verhält sich in Bezug auf einen Sachverhalt abweichend zum SAP System. Sofern in der Merkmalspflege (Transaktion CT04) bestimmte Merkmale fest hinterlegt sind (und nicht die Funktion zusätzliche Werte aktiviert wurde um ein Freitextfeld zu ermöglichen) kann es bei Änderung der Merkmale dazu kommen, dass in der Query ein ehemals gepflegter Merkmalswert ausgewertet wird, wohingehend in der Stammdatenklassifizierung das Merkmal ohne Wert angezeigt wird und statt dessen die Schaltfläche Inkonsistenzen (mit Warnglocke) angezeigt wird.Sofern man auf diese Schaltfläche drückt, wird der nicht mehr gültige Wert als Ladefehler beziehungsweise Wertekonflikt ausgegeben.

Nehmen wir als Beisspiel das Merkmal BRANCHE. Bisher wurden viele Projekte der Branche IKT = Informations und Kommunikationstechnik zugeordnet. Künftig wird dieser Wert jedoch gelöscht und statt dessen die beiden Werte IT = Informationstechnik und KT = Kommunikationstechnik gepflegt.
Bei alten Projekten (Fonds) wird daher in der Transaktion FM5S beziehungsweise in der Klassifizierung ein Wertekonflikt ausgegeben und das Feld wird ohne Wert angezeigt, wohingehend in der Query noch der alte Wert IKT beim Projekt 40210001 ausgegeben wird, da dieser Fond in der Klassifizierung damals das zulässige Merkmal IKT zugewiesen bekam. Daher sollte beim Ändern der Werte eines Merkmals auch immer darauf geachtet werden, ob vorhandene Klassifizierungen ggf. angepasst werden sollten. Dieses sollte aber kein Problem der Query sondern des Stammdatenmanagement sein.

Hinweis: Query Stammdaten CO Innenauftrag PSM-FM Fond

Dieser Artikel ist Teil einer Serie um Stammdaten von CO Innenaufträgen und PSM-FM Fonds miteinander zu verknüpfen.
  1. "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen"
  2. "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer"
  3. "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM"
  4. "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE"

Insbesondere was die Auswertung von PSM Stammdaten anbelangt (so eben auch Klasifizierung oder Finanzierungszweck) dürfte der Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" noch eine Menge Potential beschreiben und teilweise auch eine etwas einfachere Variante anbieten.

NACHTRAG: Merkmale der Klassifizierung durch Zusatztabelle

Seit 2014 ist auch wieder ein wenig Zeit vergangen, so dass ich zwischenzeitlich ebenfalls eine Erleichterung bei der Auswertung der Merkmale der Klassifizierung im Artikel "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage" innerhabl des Abschnitt "Merkmal aus Klassifizierung mit auswerten" durch das Zusatzfeld ZAUFNR kann nciht nur FMFINCOE als Zusatztabelle eingebunden werden sondern auch die Verknüpfung zwischen Fond und Klassifizierungsmerkmale ist dank CONCATENATE   wesentlich einfacher. Daher möchte ich ausdrücklich auch diese Methode empfehlen. ;-)


 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Montag, 3. November 2014
19:31 Uhr

SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen

Ausgangslage:
Im Artikel "Query FI Einzelposten als Belegjournal - Belegsegment (BSEG) und Belegkopf (BKPF) verknüpfen" wurde durch Thomas auf eine Möglichkeit hingewiesen eine Query über eine Zusatztabelle zu erweitern:

Kommentar von Thomas
Wirklich eine Super Anleitung!

Mir hat noch die Kontenbezeichnung gefehlt.
Das lässt sich so realisieren:
SQ02
Zusätze (F5)
Knoten: BSEG
Anlegen
Zusatztabelle -> SKAT
SPRAS = SY-LANGU
KTOPL = 'XXXX' (4stelliger Kontoplan in einfachen Hochkomma)!
Wir arbeiten nur mit einem Kontenplan. Deshalb der Festwert.
SAKNR = BSEG-HKONT
(in diesem Fall noch "intern puffern anhaken"
Jetzt ist die Tabelle unter BSEG eingebunden und das Textfeld (SKAT-TXT20 oder TXT50) kann in das Belegsegment hineingezogen werden.
Gruß
Thomas

Zwischenzeitlich habe ich mich auch ein wenig mehr mit Zusatzfeldern beschäftigt und kann nun die Anforderungen aus 2011 (siehe Artikel "SAP Query Stammdaten PSM / CO Innenauftrag") dank des Codingvorschlages eines Kollegen ebenfalls erfüllen.


Es soll eine Stammdatenliste aus den beiden Modulen CO und PSM-FM (Innenauftrag und Fond) erstellt werden. Hierbei sollen in der Liste Laufzeit des Projektes (Arbeitsbeginn und Arbeitsende aus CO) der Finanzierungszweck (ein Stammdatenfeld aus Fond) und die Information ausgegeben werden, ob dieses Projekt gesperrt ist.

Grundsätzlich sind die Tabellen bekannt in denen diese Informationen stehen. Die Stammdaten der Fonds befinden sich in der Tabelle FMFINCODE und der Innenaufträge in AUFK. Allerdings ist das Feld FMFINCODE-FINCODE   (Fond) vom Typ Char mit einer Länge von 10 Zeichen und das Feld AUFK-AUFNR (Auftragsnummer) zwar auch vom Typ Char allerdings mit einer Länge von 12 Zeichen. Somit können beide Felder nicht verknüpft werden, da diese Werte nicht übereinstimmen.

Der Systenstatus ist zwar ebenfalls in einer Tabelle gespeichert (JEST - siehe Artikel "
SAP Query: Systemstatus CO Innenauftrag") allerdings sind hier mehrere Datenzeilen je Status vorhnaden und uns interessiert eigentlich nur der Status I0043 für gesperrt. Anders als 2011 vermutet bedarf es bei der Pflege von SAP Query aber keines Entwicklerschlüssel für die Nutzung von ABAP Code, so dass hier eine Möglichkeit besteht per Coding an die relevanten Informationen zu kommen. Die Umsetzung ist in diesem Artikel unter "Zusatzfeld GESPERRT bei gesperrten Innenaufträgen" erläutert.
 

Verknüpfung von PSM-FM Stammdaten von Fonds und CO Innenaufträgen

Um dieses zu verwirklichen legen wir ein Infoset für die CO Stammdaten an analog der Beschreibung im Artikel "Query Stammdaten CO Kontrolle Verantwortliche". In der späteren Verwendung des Infosets steht jedoch nicht mehr die Kontrolle der Verantwortlichen von Kostenstelle, Profit-Center und Innenauftrag im Vordergrund, sondern die Zusatzinformationen über Systemstatus und Stammdaten aus PSM-FM.

Infoset als View über AUFK, CSKS, CSKT, CEPC und CEPCT definieren

Innerhalb der Transaktion SQ02 wird folgendes Infoset definiert. Hierfür wird als Datenquelle ein Tabellen-Join über Tabelle AUFK angelgt.
Es werden folgende Tabellen miteinander in Beziehung gesetzt:
AUFK: Auftragsstammdaten
CSKS: Kostenstellenstammsatz
CSKT: Kostenstellenelemente (für die Texte)
CEPC: Stammdatentabelle von Profit Centern
CEPCT: Profit-Center-Stammdaten Texte

Verknüpfungsbedingungen:
Die vorgeschlagenen Verknüpfungsbedingungen seitens SAP sollte hier wieder entfernt werden und folgende Verknüpfungsbedingungen definiert werden.

Folgende Tabellenfelder werden hierbei miteinander verknüpft:

AUFK-KOSTV <-> CSKS-KOSTL
Hierdurch wird die Verantwortliche Kostenstelle des Innenauftrages mit den Stammdaten der Kostenstellen verknüpft.

CSKS-KOSTL <-> CSKT-KOSTL
Hierdurch werden die Stammdaten der Kostenstelle mit der Bezeichnung der Kostenstelle verknüpft.

AUFK-PRCTR <-> CEPC-PRCTR
Hierdurch wird das Profitcenter des Innenauftrages mit den Stammdaten der Profit-Center verknüpft.

CEPC-PRCTR <-> CEPCT-PRCTR
Hierdurch werden die Stammdaten der Profit-Center mit der Bezeichnung der Profit-Center verknüpft.

Etwas ausführlicher (inklusive Verknüpfung "Kostenrechnungskreis" KOKRS und "Datum gültig bis" DATBI sind die Verknüpfungen in folgender Zeichnung dargestellt:

Darstellung JOIN über AUFK und CO Stammdaten


Damit sind alle Verknüpfungen der Tabellen erfolgt. Der Einfachheit halber können nun alle Feldgruppen/Datenfelder übernommen werden. Dieses hat den Vorteil, dass dieses Infoset auch für weitere Queries zur Verfügung steht.

Erweiterung des Infoset über Zusatzfelder

Über die Schaltfläche Zusätze (F5) bzw. innerhalb der Transaktion SQ02 (Pflege des Infosets) über  SPRINGEN-> ZUSÄTZE ZUM KNOTEN können nicht nur wie von Thomas erwähnt Zusatztabellen in das Infoset aufgenommen werden sondern auch eigene Felder definiert werden. Hierzu kann im Register Zusätze die Schaltfläche Anlegen ausgewählt werden. Es erscheint eine Maske in der der Name des Zusatzfeldes angegeben werden soll (im folgenden Beispiel FINUSE)  und die Art der Zusatzinformation. Neben der schon angesprochenen Zusatztabelle sind dieses: Zusatzfeld, Zusatzstruktur und Coding. In unserem Beispiel soll ein Zusatzfeld mit den Namen FINUSE angelegt werden.

Dieses hat folgende Eigenschaften: Langtext und Überschrift haben beide Finanzierungszweck erhalten. Die Formatangabe wurde über LIKE-Referenz idenitsch zum Feld FMFINCODE-FINUSE gehalten. Damit entspricht dieses Feld den Formatangaben in der Tabelle FMFINCODE (Typ C (Character) Länge 016 Ausgabenlänge 016).

Damit ist das Feld angelegt, hat jedoch nur eine Datendefinition aber noch keine eigene Daten (anders bei der Zusatztabelle, die sich direkt aus der Datenbank einen passenden Datensatz liest.

Nachdem ein Feld jedoch angelegt ist kann über die Schaltfläche "Coding zum Zusatz" ein passendes ABAP Coding für das Feld hinterlegt werden über das wiederum eine Datenbankabfrage erfolgen kann. Hier habe ich dankenswerterweise von einen Kollegen ein passendes Coding erhalten um die Bezeichnung des Fonds (FMFINT-BEZEICH), Gültigkeitsdatum des Fond (FMFINCODE-DATAB und FMFINCODE-DATBIS) sowie Schlüssel/Nummer des Fond (FMFINCODE-FINCODE) zu erhalten, sofern ein Fond angelegt ist. Dieses Coding hatte ich mir als Vorlage genommen um auch den Finanzierungszweck auszulesen.

Zusatzfeld PSM-FM Finanzierungszweck aus Fond

Das Coding für das Feld FINUSE sieht dabei wie folgt aus (wobei statt BUK natürlich Ihr Buchungskreis im Coding hinterlegt sein sollte):

* Lokale Variablen definieren
DATA: L_FINZWECK type FMFINCODE-FINUSE.
DATA: L_FOND type FMFINCODE-FINCODE.
DATA: L_AUFTRAG type AUFK-AUFNR.
* Zuweisung von Variablen aus der Selektion
L_AUFTRAG = AUFK-AUFNR.
* Verschieben des gespeicherten Wertes in der Tabelle AUFK um 4 Zeichen
* HINTERGRUND:
* Das Fekd AUFK-AUFNR hat insgesamt 12 Zeichen.
* Die achtstellige Auftragsnummer wird mit 0000 aufgefüllt
* Durch die Verschiebung ist die Auftragsnummer direkt in der
* lokalen Variable gepseichert.
SHIFT L_AUFTRAG BY 4 PLACES LEFT.
L_FOND = L_AUFTRAG.
* Über die Selektabfrage hat nun das Feld Fond die richtige Länge
SELECT SINGLE finuse FROM fmfincode INTO L_FINZWECK
       WHERE fikrs = 'BUK'
         AND fincode = L_FOND.
* Abfangen eines Fehlers und Wertzuweisung in Zusatzfeld
IF sy-subrc <> 0.
  CLEAR finuse.
ELSE.
  finuse = L_FINZWECK.
ENDIF.

ACHTUNG: Länge der Auftragsnummer / Fondsnummer beachten!

Im oberen Coding gehen wir davon aus, dass Innenauftrag und Fond jeweils acht Stellen haben. Sollte die Auftragsnummer bzw. Fondcode nur siebenstellig sein ist die Zeile auf
SHIFT L_AUFTRAG BY 5 PLACES LEFT
anzupassen.

Zusatzfeld GESPERRT bei gesperrten Innenaufträgen

Als weitere Anforderung sollte in der Liste auch mitgegeben werden, ob ein Innenauftrag gesperrt ist oder nicht. Hierzu wurde ebenfalls ein Zusatzfeld angelegt. Dieses erhält als Langtext und Überschrift "Gesperrt" und die Eigenschaften Typ C (Character) und Länge, Ausgabelänge 001, da im Ergebnis nur ein X ausgegeben werden soll, wenn der Auftrag gesperrt ist. Das zugehörige Coding lautet wie folgt:

DATA: L_AUFKOBJ type AUFK-OBJNR.
DATA: L_TEMP type AUFK-OBJNR.
L_AUFKOBJ = AUFK-OBJNR.
SELECT  SINGLE objnr FROM JEST into L_TEMP
    WHERE stat = 'I0043'
    AND objnr = L_AUFKOBJ
    AND inact = 'X'.
IF sy-subrc <> 0.
GESPERRT = 'X'.
ELSE.
CLEAR GESPERRT.
ENDIF.


Die beiden Zusatzfelder können dann in eine eigene Feldgruppe ins Infoset übernommen werden und stehen damit einer Query zur Verfügung.

Bezüglich des Status eines Innenauftrages können über die ABAP Anweisung

CONCATENATE altenstring neuenstring INTO altenstring.

auch weitere Statuszustände in das Feld übernommen werden. Hierzu würde ein Feld STATUS definiert werden und über eine weitere Schleife über die Bedingung Where STAT = 'I0028' zum Beispiel das Merkmal ABRV in die Variable gespeichert werden. Die Anweisung könnte dann CONCATENATE status  ' ABRV ' INTO STATUS. lauten. Dieses war jedoch keine Anforderung für diese Liste. Ferner sind die einzelnen Phasen eines Innenauftrages auch in der Tabelle AUFK hinterlegt und könnten in der Query über ein kundeneigenes Feld verknüpft werden. Lediglich die Sperre des Innenauftrages ist hier nicht mitaufgeführt.

Die für die einzelnen Phasen eines Innenauftrages mittels X = JA markierten Felder sind:

  • AUFK-PHAS0 -  Phase 'Auftrag eröffnet'
  • AUFK-PHAS1 -  Phase 'Auftrag freigegeben'
  • AUFK-PHAS2 -  Phase 'Auftrag technisch abgeschlossen'
  • AUFK-PHAS3 -  Phase 'Auftrag abgeschlossen'
 

Berechtigungen für Zusatzfelder mit ABAP Coding

Für die Pflege von Zusatzcoding sind jedoch weiter gehende Basisberechtigungen erforderlich. Hierzu werden die Berechtigungen auf das Berechtigungsobjekt S_DEVELOP und die Berechtigungsfeldwerte Objekttyp PROG, Objektname AQ* sowie die Aktivitäten 01 und 02 geprüft. Da es sich hier um recht weitgehende Berechtigungen handelt, sollten diese auch nur im Entwicklungssystem vergeben werden. Die Berechtigungsprüfung erfolgt ebenfalls, wenn die Query, wie im Artikel "Transport von SAP Queries (DL/UL)" beschrieben, per Dateiupload ins Testsystem oder Produktivsystem transportiert werden soll. Das Infoset selbst lässt sich nach einem erfolgreichen Upload noch bearbeiten, lediglich das Coding ist durch die Berechtigungsprüfung vor weiteren Änderungen geschützt.
 

Query Stammdatenliste Innnenaufträge und verknüpfte Fonds

Innerhalb der Query werden nun auf folgende Felder der einzelnen Tabellen (bzw. Zusatzfelder) des Infosets Zugriff genommen beziehungsweise in der Grundliste zugewiesen. Hierbei ist L als Listenfeld und S als Selektionsfeld zu verstehen.

Die Felder werden hier in der Reihenfolge angegeben, wie diese dann auch in der Query ausgegeben werden sollen:

 

Auftragsstammdaten AUFK
Auftragsart (S) AUFK-AUART
Auftragsnummer (L,S) AUFK-AUFNR
Kurztext (L) AUFK-KTEXT
Verantwortliche Kostenstelle (L,S) AUFK-KOSTV
Kostenstellentexte CSKT
Beschreibung (L) CSKT-KTEXT
Auftragsstammdaten AUFK
Profitcenter (L,S)
AUFK-PRCTR
Profit-Center-Stammdaten Texte (CEPCT)
Allgemeine Bezeichnung (L) CEPCT-KTEXT
Zusatzfelder (die im Infoset angelegt wurden)
Finanzierungszweck (L,S)  FINUSE
Auftragsstammdaten AUFK
Arbeitsbeginn (L,S) AUFK-USER7
Arbeitsende (L) AUFK-USER8
Antragssteller (L) AUFK-USER0
Verantwortlicher (L) AUFK-USER2
Abteilung (L) AUFK-USER6
Externe Auftragsnummer (L) AUFK-AUFEX
Zusatzfelder (die im Infoset angelegt wurden)
Gesperrt (L)  GESPERRT
lokale Zusatzfelder

Lehreinheit  (L) 

Erweiterung: Lehreinheit aus Kostenstelle ableiten

Das lokale Zusatzfeld Lehreinheit wird im Artikel "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer" noch beschrieben.

Der Vorteil dieser Query ist, dass in der Selektion nicht nur anhand der Innenauftragsnummer, Auftragsart
oder der verantwortlichen Kostenstellen selektiert werden kann sondern auch über den Finanzierungszweck inklusive einer Wertauswahlhilfe (F4), so dass hier direkt die gepflegten Finanzierungszwecke ausgelesen werden können.

Bei den Finanzierungszwecken selbst handelt es sich ebenfalls um Stammdaten die unter
Rechnungswesen > Public Sector Managament > Haushaltsmanagement > Stammdaten > Kontierungselemente > Fonds > Finanzierungszweck > gepflegt werden können (Transakton FM6I - Anlegen, FM6U - Ändern und FM6S Anzeigen).

Erweiterung: Merkmale der Klassifizierung

Eine erhebliche Erweiterung dieser Query ist im Artikel "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM" beschrieben. Hier wird neben den Finanzierungszweck und den CO bzw. PSM-FM Stammdaten auch die Merkmale der Klassifizierung von Haushaltsfonds ausgewertet. Damit sollten alle relevanten Stammdaten von Innenaufträgen und damit verbundenen Fonds ausgewertet werden können.
 

Erweiterung: Weitere Zusatzfelder

Wie schon erwähnt besteht auch die Möglichkeit weitere Stammdaten aus den Fonds aus PSM - FM im Infoset per Coding aufzunehmen. Einige häufig angefragten Felder habe ich im Artikel "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE" beschrieben. Teilweise wurde hier auch das Coding der in diesen Artikel beschriebenen Felder noch optimiert.
 

Hinweis: Query Stammdaten CO Innenauftrag PSM-FM Fond

Dieser Artikel ist Teil einer Serie um Stammdaten von CO Innenaufträgen und PSM-FM Fonds miteinander zu verknüpfen.
  1. "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck oder auch Status GESPERRT bei Innenaufträgen"
  2. "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer"
  3. "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM"
  4. "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE"

Eine Erweiterung des hier vorgestellten Coding hin zur Verwendung einer Zusatztabelle für die Einbindung der PSM-FM Stammdaten wie Finanzierungszweck ist im Artikel "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage" beschrieben.
 


Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 25. September 2014
17:11 Uhr

Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget

Ausgangslage:
Es soll er aktuelle Projektsaldo von Drittmittelprojekten dargestellt werden. Teilweise werden die Projekte über eine Bewilligung (Budget) oder über eigene Erträge finanziert. Hierzu soll eine Liste mit separaten Ausweis von Saldo gegen Ertrag (Geld) und Saldo gegen Budget ausgegeben werden.

Sofern der Ausweis des Budgets nur auf Ebene des Gesamtbudget erforderlich ist (andernfalls kann der Artikel "PSM Recherchebericht mit Jahresabgrenzung" weiter helfen) kann hier ebenfalls ein entsprechender Recherchebericht angelegt werden.

Wie unter SAP PSM Recherchebericht beschrieben legen wir über die Transaktion FMEK einen neuen Bericht an. Dieser ist im Bereich: Hierarchie der HHM Kontierungselemente angesiedelt. Von hier wird ein entsprechendes Formular angelegt.

Alternativ könnte auch das Formular über die Transaktion FMEN direkt angelegt werden und später über die Transaktion FMEK den Bericht zugeordnet werden.

Recherchebericht: Formular anlegen (Transaktion FMEN) oder aus Recherchebericht erstellen (Transaktion FMEK)


Da wir den Bericht recht flexibel halten wollen weisen wir die Struktur an, nur eine Koordinate zu verwenden ("Die Merkmalsdimension wird erst bei der Berichtsdefinition festgelegt."). Hierdurch können wir dann durch die einzelnen Merkmale im Bericht navigieren. Für eine Definition von Spalten und Zeilen würde als Struktur die Matrix gewählt werden.

Nun befinden wir uns in der Formulardefinition in der die einzelnen Spalten des Berichts definiert werden.

Über Bearbeiten->Allgemeine Selektionen
können der Finanzkreis (als Festwert zum Beispiel  FIKR) und das Merkmal Stat. Kennz. mit der Variable STATS  eingetragen werden.

Diese Einstellung sollte jedoch nur bei der Erstellung des Formulars gewählt werden.

Mögliche Fehlerquelle (Fehlermeldung: Machen Sie im Mussfeld FIKRS eine Angabe bei der Verwendung von Stammdatengruppen (Fondsgruppe, Finanzstellengruppe)
Sobald das Formular jedoch abschliessend erstellt ist, sollte der Finanzkreis auf die Variable 0FIKRS eingestellt werden, da andernfalls beim Ausführen des Rechercheberichtes nicht auf einzelne Stammdatengruppen (bspw. Fondsgruppen oder Finanzstellengruppen) zugegriffen werden können. Dieses Problem wurde auch im Artikel "
PSM Recherchebericht: Verwendung alternative Finanzpositionshierarchie" beschrieben.


Als einzelne Kennzahlen des Berichtes werden nun folgende Spalten angelegt:
  1. Gesamtbudget
  2. ERTRAG
  3. AUFWAND
  4. Saldo gegen Ertrag
  5. Saldo gegen Budget
Hierbei werden, wie im Artikel "Recherchebericht Budget + Ertrag ggü. Aufwand" beschrieben folgende Eigenschaften hinterlegt.

1. Gesamtbudget Aktuell
Kennzah: Gesamtbudget (Aktuell)
Merkmale:
Budgetversion: 0
Je nach Verwendung der Budgetversionen können hier auch mehrere Budgetversionen eingegeben werden. Innerhalb der klassischen Budgetierung werden im Beispiel die Budgets jedoch nur in der Version 0 verbucht. 

2. Ertrag
Kennzahl: Obligo/Ist (Zahlungsbud.) hierarch. FkW.
Merkmale:
Budgetversion: 0
Finanzposition (Hierarchieknoten) ERTRAEGE
Da keine Obligoertrag gebucht wird, kann hier auf die Angabe eines Werttyps verzichtet werden. Hierbei setzen wir vorraus, dass alle Ertragskonten (Finanzpositionen) innerhalb der Finanzpositionenhierarchie dem Knoten ERTRAEGE zugeordnet sind.

Aufwand
Kennzahl: Obligo/Ist (Zahlungsbud.) hierarch. FkW.
Merkmale:
Budgetversion: 0
Finanzposition (Hierarchieknoten) AUFWAND
Durch Markierung des Hierarchieknotens/Set kann hier direkt aus der Finanzpositionenhierarchie die Finazposition AUFWAND gewählt werden. Entsprechend wäre in dieser Spalte dann alle innerhalb der Hierarchie der Finanzposition AUFWAND untergeordneten Finanzpositionen zugeordnet. Somit also auch Personal- und Sachaufwand.
Werttyp: 54,57,61,64,66,95
Ohne einen Werttyp werden neben den getätigten Aufwendeungen auch die entsprechenden Obligos (zum Beispiel  Mittelbindungen oder Bestellungen ausgegeben. Im Beispiel ist der Aufwand auf folgende Werttypen beschränkt:
54 Rechnungen
57 Zahlungen
61 Anzahlungen
64 Mittelumbuchungen
66 Erfolgsumbuchungen
95 Ist-Buchungen im CO

Alternativ wäre es auch möglich gewesen eine Extraspalte für die Obligos zu verwenden.
Über die Textpflege kann diese Spalte dann auch in Aufwand umbenannt werden. Andernfalls wäre als Bezeichnung der Merkmalswert (Obligo/Ist (Zahlungsbud.) hierarch. FkW.) hinterlegt.

Saldo
Kennzahl: Obligo/Ist (Zahlungsbud.) hierarch. FkW.
Merkmale:
Budgetversion: 0
Werttyp: 54,57,61,64,66,95
Hier wird auf die besondere Angabe der Finanzpositionen verzichtet. Entsprechend werden in dieser Spalte dann alle Finanzpositionen ausgewählt. Hier ist dann zu beachten, dass beim Aufruf des Berichtes nicht relevante Finanzpositionen in der Selektion ausgeschlossen werden müssen (denkbar ist hier die Finanzposition AFA, so die AfA nach PSM fortgeschrieben auf diese Finanzposition über die FMDERIVE zugeordnet wird.

Da Erträge mit negativen Kennzeichen in SAP ausgewiesen werden und Aufwand mit positiven Kennzeichen wäre der Saldo, sofern der Aufwand höher als der Ertrag ist positiv (und umgekehrt).

Damit dieses nicht zur Verwirrung sorgt, haben wir uns entschlossen diese Spalte über BEARBEITEN->ZEILE->AUSBLENDEN auszublenden. Soll dieses später erfolgen ist darauf zu achten, dass in der Transaktion FMEO über SRPINGEN->SPALTENDARSTELLUNG gewechselt werden sollte, da bei der Anlage mit Einer Koordinate die definierten Zeilen automatisch als Spalten kopiert worden sind und daher eine Ausblendung nachträglich auch bei den Spalten erfolgen muss.

Als weitere Felder werden nun als Elementtypen Formeln eingefügt.

Saldo gegen Ertrag
Formel: -1 * Saldo

Saldo gegen Budget
Formel: Gesamtbudget - Aufwand

Recherchebericht mit Bezug auf Formular anlegen (Transaktion FMEK)


Nun kann das Formular gespeichert werden und der eigentliche Bericht mit Bezug zum Formular in der Transaktion FMEK angelegt werden.

Als Merkmale bieten sich hier folgende an:
  • Fonds
  • Geschäftsjahr
  • Finanzstelle
  • Finanzposition
  • Periode/Jahr
Daneben sollte bei der Ausgabeart

Klassische Recherche:
Grundliste: Aufriß


gewählt werden. Wie im Artikel "Formatanzeige im Recherchebericht (Darstellung in 1 EUR)" beschrieben bietet es sich an die Anzeige der Währungsformate auszublenden.

Layoutpflege - Kopf- und Fußzeilen mit Informationen

Eine Bearbeitung des Layouts (inklusive der Kopf- und Fußzeilen ist ebenfalls bei der Anlage des Berichtes oder nachträglich in der Transaktion FMEM möglich. Hier ist auf dem Reiter Ausgabeart bei der Layoutpflege die Bearbeitung und Aktivierung von Kopfzeilen und Fußzeilen möglich.Über neu Anlegen gelangt man dann in einer entsprechenden Pflegeoption und kann hier auf verschiedene Berichtsvariablen zurück greifen.

Über die Schaltfläche Sel.Param. können hier verschiedene Selektionsparameter des Berichtes ausgegeben werden:

Es bietet sich hier an folgende Definition zu treffen:

Auswertungszeitraum:
Hier können als Sel. Parameter folgende Variablen eingegeben werden:
Variablentyp: Textvariable für Selektionsparameter
Selektionsparameter:
- Periode (Textart Wert, Breite 2)
- Geschäftsjahr (Textart Wert, Breite 4)
- Bis-Periode (Textart Wert, Breite 2)
- Bis-Geschäftsjahr (Textwart Wert, Breite 4)

Eine etwas kritischere Darstellung ist die Darstellung von Merkmalsbezogenen Textvariablen.
Hier sollen die selektierten Fonds-Intervalle dargestellt werden. Hierbei ist jedoch zu beachten, dass nur Einzelintervalle korrekt dargestellt werden und diese Darstellung nicht bei mehreren Einzelwerten oder gar Gruppen funktioniert. Dennoch kann dieses hilfreich sein, sofern nur ein Fond oder ein spezifisches Intervall von Fonds dargestellt wird.

Variablentyp: Merkmalsbezogene Textvariable
- Merkmal Fonds (Textart Wert,Wertart Von-Wert, Breite 15)
- Merkmal Fonds (Textart Wert,Wertart Bis-Wert, Breite 15)
 

Berechtigungen für Rechercheberichte und Ausführen der Berichte per FMEQ oder Transaktion

Der Bericht kann nun entweder über die Transaktion FMEQ "Recherchebericht ausführen" oder wie im Artikel "Parametertransaktion für Recherchebericht" beschrieben über eine kundeneineigene Transaktion (zum Beispeil ZPSALDO ) aufgerufen werden.


Die Rechercheberichte setzen auf die Datenbankstruktur IFMEISA (Hierarchien der HHM-Kontierungselemente) auf. Von der Berechtigungsprüfung wird zum Start der Berichte das Berechtigungsobjekt K_KA_RPT geprüft.
Dieses Berechtigungsobjekt muss dabei mit folgenden Werten gefüllt werden:

Berechtigungsobjekt:
K_KA_RPT - CO: Interaktive Recherche - Berichte
Aktivität:
03 (Anzeigen)
04 (Drucken, Nachrichten bearbeiten)
16 (Ausführen)
28 (Einzelposten anzeigen)
61 (Exportieren)
66 (Aktualisieren)
L0 (Alle Funktionen)
Applikationsklasse für die Recherche:
FM
Bericht:
Name des angelegten Berichtes
Tabellenname:
IFMEISA

Sofern noch nicht vorhanden ist auch folgendes Berechtigungsobjekt sinnvoll:

Berechtigungsobjekt:
F_IT_ALV -  Einzelpostenanzeige: Ändern und Sichern von Layouts
Aktivität:
03 (Anzeigen)

Sofern eine kundeneigene Transaktion angelegt ist sollte diese natürlich als Berechtigungsfeldwerte im Berechtigungsobjekt S_TCODE - "Transaktionscode-Prüfung bei Transaktionsstart" mit aufgenommen werden.

Varianten zum Ausführen des Berichts anlegen

Bei einen solchen Bericht ist es oftmals sinnvoll entsprechende Varianten im Selektionsbild des Berichtes zu speichern.

Dieses bietet sich zum einen für das Feld "Statistikkennzeichen" an. Dieses Feld sollte über die Selektionsoptionen (F2) Als "= Einzelwert" mit Leer gespeichert werden.
Hierdurch werden dann keine statistischen (nicht budgetrelevanten Positionen angezeigt).

Je nach Finanzpositionenhierarchie können dann noch bestimmte symbolische Finanzpositionen (bspw. AFA) ebenfalls ausgeschlossen werden.

Ferner sollte für Fonds, Fondsgruppe, Finanzstelle, Finanzstellengruppen und vor allem das Feld Stichtag die Option GPA ausschalten beim Speichern der Variante gewählt werden.
Der Hintergrund hierzu ist im Artikel "PSM: Selektionsvarianten und Wertübernahme aus vorherigen Selektionen" ausführlich beschrieben.

Fazit Vorteile und Nachteile

Gerade wenn man allgemein budgetierte (ohne Jahresbezug) und mit Jahresbudget versehene Fonds (zum Beispiel zur Abbildung von Drittmitteln oder Haushaltsmittelprojekten) einsetzt ergibt sich durch die Betrachtung einer Saldenliste in dieser Form ein relativ schnelles Bild über die einzelnen Projektstände, die dann auch noch durch die Darstellung auf Ebene der Finanzstellen entsprechend auswertbar sind (sofern eine fein gegliederte Finanzstellenhierarchie vorhanden ist andernfalls kann es sinnvoll sein durch eine "Reorganisation von Finanzstellenhierarchien"  (siehe Artikel) hier eine entsprechende Gliederung herzustellen oder neu aufzubauen.

Dennoch sollte bei dieser Auswertung auch beachtet werden, dass sowohl Ertrag als auch Aufwand zeitraumbezogen ausgewertet werden (zum Beispiel bis zum 31.12. des Vorjahres) auf der Budgetseite aber die gesamte Projektlaufzeit betrachtet wird. Dieses kann durchaus Absicht sein (insbesondere wenn die Auswertung auch eine Kostenhochrechnung bis zum Ende der Projektlaufzeit berücksichtigt), allerdings sollte man sich dessen dennoch bewusst sein.

Hier ist es sinnvoll auf diesen Umstand entweder in der Kurzbeschreibung des Berichtes oder (was auch für andere Informationen einen erheblichen Vorteil hätte) dieses in der Kopfzeile oder in der Fußzeile des Berichtes nachzuholen.

Grundsätzlich eignen sich Rechercheberichte hervorragend für eine Summen-Salden-Betrachtung und ermöglichen durch die Darstellung als klassische Rechercheberichte auch innerhalb des Berichtes noch eine interaktive Darstellung der einzelnen Merkmale eines Berichtes, so dass auch die einzelnen Finanzpositionen je Projekt oder auch tatsächlich ganze Zeiträume interaktiv selektiert werden können. Hier sollte jedoch ein entsprechender Schulungsaufwand für die Personen, die entsprechende Berichte ausführen, betrieben werden.

Nachtrag:
Gerade wenn man mehrere Rechercheberichte angelegt hat kann es hilfreich sein, diese eine eigene Transaktion zuzuordnen. Hierzu bietet sich eine "Parametertransaktion für Recherchebericht". Der Unterschied zwischen Parameter- und Reporttransaktion ist im Artikel "Transaktion anlegen (Report, Parameter) bspw. für SAP Query / Unterschied Parameter- oder Reporttransaktion" erläutert.

Sofern ausführlciher mit Varianten gearbeitet wird (die ebenfalls in einer eigenen Transaktion hinterlegt werden können) bietet sich auch ein Blick auf den Artikel "Frühjahrsputz oder geschützte Varianten und nicht mehr benötigte Rechercheberichte entfernen oder reorganisieren" an besonders, wenn noch ein wenig Altlast von vorherigen Berichten vorhanden ist. Ansonsten ist auch der Artikel "Recherchebericht Budget + Ertrag ggü. Aufwand" lesenswert.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Sonntag, 29. Juni 2014
08:36 Uhr

Buchungstext ändern bei Budgetbelegen in PSM-FM - Haushaltsmanagement

Ausgangslage

Die Grundlage der klassischen Budgetierung ist im Artikel "SAP PSM-FM klassische Budgetierung mit unterschiedlichen Budgetversionen" beschrieben. Grundsätzlich werden innerhalb der klassischen Budgetierung in  PSM-FM Belege auf Basis der Hierarchie der Finanzstellen und Finanzpositionen gebucht.

Sofern beim Buchen des Budgets bei der Angabe von Fond und Finanzstelle nicht die richtige Finanzstelle angegeben wurde (diese sollte der verantwortlichen Kostenstelle des entsprechenden Innenauftrages entsprechen) bleibt tatsächlich nur die Möglichkeit diesen Beleg über die Transaktion FR89 zu stornieren.

Im Rahmen der klassischen Budgetierung werden inhaltlich zwei Belege gebucht. Der Erfassungsbeleg umfasst dabei die eigentliche Buchungsinformation (Angabe von Sender und Empfänger) und der Hierarchiebeleg bucht im Rahmen der Hierarchie der Finanzstellen und Finanzpositionen alle entsprechende Ebenen innerhalb dieser Hierarchie.

Oftmals wurde jedoch nicht falsche Kontierungselemente eingegeben, die dann entsprechend storniert oder umgebucht werden müssten, sondern der Budgettext weist eine fehlerhafte Information aus.

Während in anderen Modulen die Belege nicht verändert werden können, ist diese Information tatsächlich auch bei einen gebuchten Beleg änderbar. Hierzu müssen jedoch sowohl der Erfassungsbeleg als auch der Hierarchiebeleg geändert werden.

Änderung des Hierarchiebeleg

Die Änderung des Hierarchiebeleges erfolgt entweder über die Transaktion FM2E direkt oder über folgenden Menüpfad innerhalb des SAP Menüs.
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Budgetierung
  • Klassische Budgetierung
  • Belege
  • Hierarchiebelege
  • Ändern ( Transaktion FM2E)
Nach Eingabe der Hierarchiebelegnummer kann hier über das Feld Text der Belegkopftext des Hierarchiebelegs geändert werden. Über die Ansichtsschaltfläche (Brille mit ErfassBeleg) kann auch der zugehörige Erfassungsbeleg  (Transaktion FR60) angezeigt werden. Über die entsprechende Erfassungsbelegnummer kann nun auch dieser Beleg geändert werden.

Änderung des Erfassungsbeleg

Der Erfassungsbeleg kann entweder direkt über die Transaktion FR59 oder innerhalb des SAP Menü an folgender Stelle.
  • Rechnungswesen
  • Public Sector Management
  • Haushaltsmanagement
  • Budgetierung
  • Klassische Budgetierung
  • Belege
  • Erfassungsbelege
  • Ändern ( Transaktion FR59)
An dieser Stelle befindet sich auch die eingangs erwähnte Stornofunktion (Transaktion FR89), welche bei reiner Textänderung jedoch nicht erforderlich ist. Hier scheint im ersten Moment das Erfassungsbild der Belegänderung wie in der Belegansicht mit gesperrten (nicht änderbaren) Feldern versehen zu sein. Über die Schaltfläche Belegkopf (Zylindersymbol bzw. STRG+UMSCHALT+0) kann jedoch ebenfalls der Belegkopf und damit über das Feld Text der Belegkopftext geändert werden.

Interessanterweise ändert sich der eigentliche Beleg dadurch nicht sondern nur der Text. Die wesentlichen Informationen, wie Betrag, Fond und Finanzstelle lassen sich hier zwar nicht ändern, allerdings ist es oftmals sehr hilfreich den Budgettext nach erfolgter Buchung nochmals ändern zu können.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Freitag, 12. Juli 2013
14:45 Uhr

SAP PSM-FM klassische Budgetierung mit unterschiedlichen Budgetversionen

Ausgangslage
Im Rahmen der klassichen Budgetiertung im Modul PSM-FM können nicht nur die einzelnen Planungszeiträume wie im Artikel "Budgetprofil klassische Budgetierung " beschrieben hinterlegt werden.

Es besteht auch die Möglichkeit mit unterschiedlichen Budgetversionen zu arbeiten.

Dieses kann zum Beispiel hilfreich sein, wenn man neben der tatsächlichen Bewilligung von Budgets auch eine Planung von "Budgetverbindlichkeiten" darstellen möchte. Dieses könnten Zusagen sein, die schon getroffen aber noch nicht bewilligt worden sind (analog einer Budgetvormerkung) oder auch Planungsgrößen für Budgetwerte.

Vergleichbar mit Planversionen im SAP Modul CO besteht auch in PSM-FM die Möglichkeit hier unterschiedliche Budgetversionen einzusetzen um eine solche Anforderung umzusetzen.

Grundlage - klassische Budgetierung

Zum besseren Verständnis möchte ich kurz eine Vorgehensweise im Rahmen der klassischen Budgetierung vereinfacht erläutern.



Klassische Budgetierung in PSM-FM
a) Originalbudget einstellen

Über die Transaktion FR50 kann im Einstiegsbild der Transaktion ein Fond angegeben werden auf dem ein Budget eingestellt werden soll. Alternativ kann dieser auch leer gelassen werden (oder alternativ statt BLANK (Leer) auch der Fond LANDESMITTEL genutzt werden). Danach können die Felder Version und Geschäftsjahr eingegeben werden. Sofern das Budget in der Originalversion eingestellt werden soll, kann hier auch statt 0 kein Wert eingetragen werden.

Werden diese Eingaben bestätigt können Finanzstelle, Finanzposition und der zu budgetierende Betrag eingetragen werden. Daneben besteht die Möglichkeit über den Zylinder auch einen Buchungstext zu hinterlegen.

Durch die Einstellung von Originalbudget stehen nun Budgetmittel auf diesen Kontierungsobjekt zur Verfügung.

b) Budget umbuchen

Über die Transaktion FR58 kann innerhalb einer Budgetversion (in der Regel auch wieder 0) von einem Senderfond auf einem Empfängerfond über Sender- und Empfängerjahr eine Umbuchung erfolgen.

Sofern eine Umbuchung auf Finanzstellen erfolgen soll ist das Feld Fond wiederum leer zu lassen. Im nächsten Bildschirm können dann Finanzstelle und Finanzposition ebenso wie der Wert als Sender und Empfänger angegeben werden.

Vor der Buchung wird auch geprüft, ob genügend Budget auf den Kontierungsobjekten zur Verfügung steht. Daher müssen die Beträge von Sender und Empfänger übereinstimmen und vorab auch entsprechend Budget im Jahr vorhanden sein (vorab per FR50 bspw. eingestellt sein).

Buchungstechnik
Seitens PSM-FM werden die Budgetwerte nicht nur als Erfassungsbeleg (dieses sind die Eingaben von FR50 bzw. FR58 sondern auch als Hierarchiebelege über die Finanzpositionenhierarchie und die Finanzstellenhierarchie gebucht. Daher sind die Hierarchiebelege auch mit mehreren Positionen versehen, da jede Finanzstelle innerhalb der Hierarchie bebucht wird. In diesem Zusammenhang verweise ich auch noch auf den Artikel "Reorganisation von Finanzstellenhierarchien", da eine Änderung von Finanzstellenhierarchien auch Auswirkungen auf die klassische Budgetierung hat.



Wie bereits beschrieben können die Budgetwerte in der Budgetversion 0 erfasst werden und dann bspw. in Rechercheberichte ausgewertet werden.

Daneben können aber auch weitere Budgetversionen angelegt werden.

Diese können im Customizing (Transaktion SPRO) unter
  • Public Sector Management
  • Haushaltsmanagement Öffentliche Verwaltung
  • Budgetierung
  • Budgetversionen
  • Budgetversionen definieren
gepflegt werden oder alternativ auch im SAP Menü unter laufenden Einstellungen unter
  • Public Sector Management
  • Haushaltsmanagement
  • Umfeld
  • Laufende Einstellungen
  • Budgetierung (für klassische Budgetierung)
  • Budgetversion pflegen
    bzw. Transaktion S_ALR_87008458


Hierbei können diese Versionen bearbeitet aber auch kopiert werden.
In der SAP-Standardauslieferung sind die Budgetversionen 0,1 und 2 enthalten.

Falls Sie noch weitere Budgetversionen benötigen, können Sie diese über Bearbeiten -> Neue Einträge definieren.

Für das Feld Version sind drei alphanumerische Stellen vorgesehen. Im Feld Beschreibung kann eine passende Beschreibung festgelegt werden.

Sobald diese Einstellungen gespeichert sind, wird ein Customizing Transportauftrag erstellt der entsprechend freigegeben und transportiert werden kann. Die Einstellungen werden im View V_TBP3A über die Tabellen TBP3A "Budget / Plan Versionen ab Rel. 3.0" und TBP3B "Versionen Planung / Budgetierung Texte")
gespeichert.


Exkurs Berechtigungen:

Berechtigungsseitig kann über das Berechtigungsobjekt "F_FICB_VER" der Zugriff auf die einzelnen Budgetversionen gesteuert werden.
Hierbei kann im Berechtigungsfeld FM_VERSN - "FM Version Planung/Budgetierung" für dezentrale Infouser die Budgetversion 0 und für andere User weitere Budgetversionen berechtigt werden.

Sofern vorher schon mit der klassischen Budgetierung gearbeitet worden ist, sollte darauf geachtet werden, ob im bestehenden Berechtigungskonzept dieses Berechtigungsobjekt nicht schon weitgehend gepflegt worden ist.

Eine Auswertung der derzeit gepflegten Berechtigungen kann über die Transaktion S_BCE_68001422 "Rollen nach Berechtigungsobjekt" bzw. im Benutzerinformationssystem unter
  • Administration
  • Benutzerpflege
  • Infosystem (Bereichsmenü/Transaktion SUIM)
  • Rollen
  • nach Berechtigungsobjekten
möglich.

Sofern ein User keine Berechtigung für die entsprechende Budgetversion hat, kommt es zu folgender Fehlermeldung "Keine Berechtigung für Finanzkreis .... Version ... Aktivität Anzeigen Meldungsnr. F6701".

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Dienstag, 21. Mai 2013
17:20 Uhr

PSM Recherchebericht: Verwendung alternative Finanzpositionshierarchie

Ausgangslage
Innerhalb eines PSM Rechercheberichts soll eine alternative Finanzpositionenhierarchie ab einer bestimmten Finanzpositon ausgewertet werden.

Exkurs: Alternative Finanzpositionhierarchie
Innerhalb einer Finanzposition kann nicht nur die übergeordnete Finanzpositon innerhalb der Hierarchiezuordnung gepflegt werden sondern auch im Reiter eine Alternative Hierarchie für andere Varianten gepflegt werden. Dieses kann zum Beispiel sinnvoll sein, wenn teilweise Finanzpositionen abweichend zur Standardhierarchie zugeordnet werden.

Hierzu soll in der Transaktion FMEO (Formular ändern) das Merkmal "Finanzpositon" bspw. über die Kennzahl "Obligo/Ist (Zahlungsbud.) hierarch. FkW." ausgewertet werden. Nach Angabe der Fin.positionen-Hier. und der entsprechenden Finanzposition kommt es zu folgender Fehlermeldung. "Finanzkreis &0FI nicht vorhanden" beziehungsweise ist eine Auswahl über die F4 Auswahlhilfe von Finanzpositionen nicht möglich.

Lösung
Ursache hierfür ist in der Regel der Finanzkreis als Variable "0FIKRS" hinterlegt ist, da andernfalls eine Auswertung innerhalb der Selektionskriterien von Finanzstellen- oder Fondgruppen nicht möglich ist.

Daher muss bei der Definition des Finanzkreises beim Anlegen eines Formulares folgende Besonderheit beachtet werden.
Bei der Änderung des Formulares muss fix der Finanzkreis als Merkmal mit den lokalen Wert bspw. "FIKR" hinterlegt werden.

Dieses ist über
  • Bearbeiten->
  • Allgemeine Selektionen->
  • Allgemeine Selektionen (alternativ STRG F5)
möglich.

Da der Finanzkreis auch bei weiteren Merkmalen (bspw. Finanzpositionen) notwendig ist, sollte hier auch immer der lokale Finanzkreis eingetragen werden und keine Variable, da nur auf diese Weise bspw. Finanzpositionen aus der Finanzpositionhierarchie als Spalten ausgwertet werden können.

Sobald das Formular jedoch abschliessend geändert worden ist, sollte der Finanzkreis auf die Variable 0FIKRS zurückgestellt werden, da andernfalls beim Ausführen des Rechercheberichtes nicht auf einzelne Stammdatengruppen (bspw. Fondsgruppen oder Finanzstellengruppen) zugegriffen werden können.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Sonntag, 10. Februar 2013
16:47 Uhr

PSM Recherchebericht mit Jahresabgrenzung

Ausgangslage
Im Rahmen der Umstellung von Gesamtbudget auf Jahresbudget ist im Bereich des Berichtswesn folgendes Problem aufgetreten.

Teilweise haben alte Fonds noch ein Gesamtbudget, welches jahresunabhängig in einer entsprechenden Budgetversion gebucht ist, das aber im Rahmen eines Budgetabschlusses mit den Kosten bis zu einen bestimmten Zeitraum ausgewertet werden soll. Hierzu wird ein Recherchebericht vergleichbar des unter Recherchebericht Budget + Ertrag ggü. Aufwand beschriebenen Berichtes verwendet.

Dieser Bericht hat jedoch den Nachteil, dass hier keine Selektion über ein bestimmtes Geschäftsjahr erfolgen kann, so dass stets der gesamte Zeitraum eines Fonds (bzw. Finanzstelle) betrachtet wird.

Lösung
Anstatt nun meherere Berichte (einen für die Auswertungen für das Gesamtbudget und einen für das Jahresbudget) zu erstellen besteht die Möglichkeit innerhalb der Formulare (Transaktion FMEP) wie folgt anzupassen.

Ziel ist eine Darstellung folgender Spalten:

- Gesamtbudget
- Jahresbudget
- Ertraege
- Aufwand
- Obligo
- JSaldo ggü Budget
- GSaldo ggü Budget

Hierzu werden folgende Merkmale hinterlegt.

Bearbeiten->
Allgemeine Selektionen
Stat.Kennz. : Variable STATS
Finanzkreis : Variable 0FIKRS

Bei der Definition des Finanzkreises ist beim Anlegen eines Formulares folgende Besonderheit zu beachten.
Bei der Anlage des Formulares wird fix der Finanzkreis als Merkmal mit den lokalen Wert bspw. "FIKR" hinterlegt. Da der Finanzkreis auch bei weiteren Merkmalen (bspw. Finanzpositionen) notwendig ist, sollte hier auch immer der lokale Finanzkreis eingetragen werden und keine Variable, da nur auf diese Weise bspw. Finanzpositionen aus der Finanzpositionhierarchie als Spalten ausgwertet werden können. Ist das Formular jedoch fertig definiert, sollte der Finanzkreis wiederum auf die Variable 0FIKRS umgestellt werden, da andernfalls beim Ausführen des Rechercheberichtes nicht auf einzelne Stammdatengruppen (bspw. Fondsgruppen oder Finanzstellengruppen) zugegriffen werden können.

Innerhalb der Pflege der Kennzahlen des Berichtes werden folgende Kennzahlen mit entsprechenden Merkmalen hinterlegt:

Gesamtbudget
Kennzahl Gesamtbudget (Aktuell) (Feldname BGF01)
Merkmale:
- Budgetversion 0 (sofern die Budgets direkt in der Budgetverion 0 gebucht werden).

Unter der Vorraussetzung, dass innerhalb des Budgetprofils eines Fonds die Jahresbudgets automatisch als Gesamtbudget fortgeschriben werden, sollte hier sowohl das als Gesamtbudget eingebuchte Budget als auch das Jahresbudget in Gesamtsumme ausgewiesen werden, ohne dass hierbei auf die selektierten Jahre Rücksicht genommen wird.

Jahresbudget
Kennzahl Jahresbudget (Verteilbar) hierarchisch (Feldname BUF99)
Merkmale:
- Budgetversion 0 (siehe oben)
In folgenden Feldern werden entsprechende Variablen hinterlegt:
- Geschäftsjahr
Von Variable 0FY1 bis Variable 0FY2
- Periode
Von Variable 0FP1 bis Variable 0FP2

Auf diese Weise werden für diese Kennzahl abhängig von der Selektion nur die für den Zeitraum relevanten Werte angezeigt.

Ertraege / Aufwand
Kennzahl Obligo/Ist (Zahlungsbud.) hierarch. FkW. (Feldname IOF01)
Je nach Finanzpositionenhierarchie können hier die entsprechenden übergeordneten Finanzpositionen als Hierarchieknoten für das Merkmal Finanzposition hinterlegt werden:
- Finanzpostion (mit Hacken auf Set oder Hierarchieknoten) bspw. ERTRAG oder AUFWAND
- Budgetversion 0 (wie gehabt)
- Geschäftsjahr
Von Variable 0FY1 bis Variable 0FY2
- Periode
Von Variable 0FP1 bis Variable 0FP2

Obligo
Sofern auch Mittelbindungen oder Reiseobligos ausgewiesen werden sollen, ist es sinnvoll hier über die Werttypen die Kennzahl Obligo/Ist (Zahlungsbud.) hierarch. FkW. (Feldname IOF01)
auszugeben:
- Werttyp (bspw. 52 für Reiseobligo und 65 für mittelbidnung)
- Budgetversion 0 (wie gehabt)
- Geschäftsjahr
Von Variable 0FY1 bis Variable 0FY2
- Periode
Von Variable 0FP1 bis Variable 0FP2


JSaldo und GSaldo als Formeln
Für die Ermittlung der Salden können folgende Formeln definiert werden:

JSaldo = Jahresbudget - Aufwand - Obligo
GSaldo = Gesamtbudget - Aufwand - Obligo

Sofern die Erträge icht berücksichtigt werden sollen. Andernfalls können Erträge ebenfalls abgezogen werden, da Erträge mit negativen Vorzeichen ausgewiesen werden, wirkt sich eine Subtraktion als Budgeterhöhung aus.

Verfeinerung / Optimierung
Ist eine solche Verfeinerung des Rechercheberichtes erfolgt, sollte innerhalb der Transaktion FMEM der Recherchebericht um Kopfzeilen ergänzt werden in der die Selektionskritieren mit ausgegeben werden sollten.

Dieses ist im Reiter Ausgabeort bei der Layoutpflege unter Kopfzeilen möglich.

Über die Schaltfläche Sel.Param. können hier verschiedene Selektionsparameter des Berichtes ausgegeben werden:

Es bietet sich hier an folgende Definietion zu treffen:

Auswertungszeitraum:
Hier können als Sel. Parameter folgende Variablen eingegeben werden:
Variablentyp: Textvariable für Selektionsparameter
Selektionsparameter:
- Periode (Textart Wert, Breite 2)
- Geschäftsjahr (Textart Wert, Breite 4)
- Bis-Periode (Textart Wert, Breite 2)
- Bis-Geschäftsjahr (Textwart Wert, Breite 4)

Eine etwas kritischere Darstellung ist die Darstellung von Merkmalsbezogenen Textvariablen.
Hier sollen die selektierten Fonds-Intervalle dargestellt werden. Hierbei ist jedoch zu beachten, dass nur Einzelintervalle korrekt dargestellt werden und diese Darstellung nicht bei mehreren Einzelwerten oder gar Gruppen funktioniert. Dennoch kann dieses hilfreich sein, sofern nur ein Fond oder ein spezifisches Intervall von Fonds dargestellt wird.

Variablentyp: Merkmalsbezogene Textvariable
- Merkmal Fonds (Textart Wert,Wertart Von-Wert, Breite 15)
- Merkmal Fonds (Textart Wert,Wertart Bis-Wert, Breite 15)




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Sonntag, 10. Februar 2013
15:27 Uhr

Löschen von fehlerhaften (Obligo)-Belegen im Modul PSM-FM (Haushaltsmanagement)

Ausgangslage:
Innerhalb eines Fonds werden über das Reisemanagement Obligo-Belege angezeigt, die keiner Reise zugeordnet werden können. Hier wurde das durch FI-TV angeleigte Obligo nicht ordnungsgemäß abgebaut und kann auch nicht ohne Weites abgebaut werden. Dieses ist insbesondere dann problematisch wenn nicht nur die Ist-Buchungen (unter anderen in Form von Rechnungen) sondern auch die Verpflichtungen (beispielsweise durch Obligos aus der Reisekostenabrechnung) ausgewiesen werden.

Lösung:
Über das ABAP Programm RFFMDLOI können einzelne Obligobelege gelöscht werden, was im Standard nicht vorgesehen ist. Hierbei werden sowohl die Einzelbelege in der Tabelle FMIOI (Obligobelege im Haushaltsmanagement) als auch die Summensätze in der Tabelle FMIT (Summentabelle für das Haushaltsmanagement) zurückgesetzt.

Vorraussetzungen:
Zur Nutzung dieses Berichtes ist ein Eintrag der berechtigten SAP User in der Datenbank "FMEXPERT_MODE - Expertenmodus für EA-PS Reports aktivieren" erforderlich. Dieser Eintrag kann über die Transaktion SM30 (Tabellenansicht-Pflege) erfolgen.

Hier sollte für den Benutzer das Programm RFFMDLOI für den Mandanten eingetragen werden. Hier sollten die User eingetragen werden, welche auch die Löschung des Obligos durchführen sollen.

Es handelt sich dabei um eine Customizing-Tabelle, welche über einen Transaportauftrag in das entsprechende System übertragen wird.

Vorgehensweise:
Zum Start des Programms kann entweder die Transaktion SA38 genutzt werden oder im SAP Menü über System->Dienste->Reporting die ABAP Programmausführung aufgerufen werden.

Bei der Ausführung des Programms muss darauf geachtet werden, dass hier auch Belege gelöscht werden, die bereits über einen Obligovortrag ins kommende Geschäftsjahr übertragen worden sind.

Um dieses zu vermeiden ist die Option "Belege im GJW nicht löschen zu markieren.

Beim Ausführen des Programms sind sowohl Buchungskreis, Geschäftsjahr und Nr. des Referenzbeleges als auch der Werttyp bspw. 52 für Reisekostenobligo angezeigt. Zur Sicherheitt kann auch erst ein Testlauf durchgeführt werden und durch die Option Protokoll die zu löschende Belege angezeigt werden.

Nach erfolgreicher Ausführung dieses Programms sind die einzelnen Obligo-Belege nicht mehr vorhanden sondern erfolgreich gelöscht. Auf diese Weise können alle nicht ordentlich abgebauten Obligos gelöscht werden, so dass hier entsprechend die Salden wieder übereinstimmen.

Allgemein Löschen von Einzelbelegen in PSM-FM (Haushaltsmanagement)

Neben der beschriebenen Vorgehensweise für Obligo-Belege gibt es noch weitere Reports um Belege im Haushaltsmanagement zu löschen. Hierzu stehen folgende Berichte zur Verfügung, die über die Transaktion SA38 aufgerufen werden können.
  • RFFMDLFI löscht die PSM-FM Daten über die FI Belegnummer (Transaktion FM_DLFI)
  • RFFMDLOI wie beschrieben, löscht das Obligo  (Transaktion FM_DLOI)
Eine solche Möglihckeit gibt es leider nur für übergeleitete FI-Belege und wie beschrieben für die Obligos.

Sämtliche PSM-FM Daten löschen

Im Rahmen der Testphase können auch sämtliche Istdaten in PSM-FM gelöscht werden.

RFFMDLFM löscht sämtliche PSM-FM Daten (Transaktion FM_DLFM)
Hierdurch wären sämtliche Obligodaten und Istdaten im Haushaltsmanagement gelöscht. Das Programm erlaubt keine Selektion von einzelnen Belegen sondern löscht alle Daten eines Finanzkreises.

RFFMDLCU löscht die von CO nach PSM fortgeschriebene Daten (Transaktion OFDH)
Das Programm löscht alle Daten eines Buchungskreises. Es erlaubt ebenfalls keine Selektion auf einzelne Belege.
 

Belege aus anderen Modulen nach PSM-FM nachbuchen


Über den Report RFFMRP15 können die einzelnen PSM-FM Belege anhand der FI Belege erneut aufgebaut werden. Ferner können Sie auch die vorhandenen Controlling-Belege ins PSM-FM nachbuchen. Eine entsprechende Funktion finden Sie innerhalb des Customizing (Transaktion SPRO) unter:
  • Public Sector Management
  • Haushaltsmanagement Öffentliche Verwaltung
  • Ist- und Obligofortschreibung/Integration
  • Interne Datenübernahme ins Haushalsmanagement
  • Nachbuchung
    • Finanzbuchhaltungs-Belege nachbuchen
    • Controlling-Belege nachbuchen

Sofern eine Fortschreibung von CO nach PSM-FM erfolgt, besteht leider keine Möglichkeit diese Belege einzeln in PSM-FM zu löschen.
 

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Mittwoch, 16. Januar 2013
16:15 Uhr

Query Kontenplan für Module CO, FI und PSM

Ausgangslage
Für eine Stammdatenauswertung sollen alle Buchungskonten der Module FI, CO und PSM ausgewertet werden. Dieser Kontenplan soll das Sachkonto (Modul FI), die Kostenart (Modul CO) und die mit den Sachkonto verknüpfte Finanzposition (Modul PSM) enthalten.

Voraussetzung
Grundvoraussetzung für eine Auswertung per Query, ist dass die Nummernkreise von Sachkonto und Kostenarten übereinstimmen. Dieses bedeutet, dass das Sachkonto 6543 auch als Kostenart 6543 angelegt ist. Sofern hier die Sachkonten aus FI mit den Kostenarten aus CO übereinstimmen sollte dieses kein Problem sein. Allerdings werden so reine CO Konten (bspw. sekundäre Kostenarten) nicht ausgwertet.

Problem / bzw. mögliche Fehlerquelle
Hierbei ist zu beachten, dass teilweise durch die FMDERIVE mglw. eine andere Aussteuerung der Sachkonten auf entsprechende Finanzpositionen gepflegt sein kann.

Lösung
Sofern die Voraussetzungen (übereinstimmende Nummernlogik von Sachkonto und Kostenart) erfüllt sind besteht die Möglichkeit einen modulübergreifenden Kontenplan durch Auswertung von Datenbanken zu erstellen.

1.) Infoset definieren
Über SAP Query müssen hierbei mehrere Tabellen miteinander verknüpft werden.
Folgende Tabellen enthalten die für uns erforderlichen Stammdaten:

Tabellen
SKA1 - Sachkontenstamm (Kontenplan)
SKAT - Sachkontenstamm (Kontenplan: Bezeichnung)
SKB1 - Sachkontenstamm (Buchungskreis)
CSKA - Kostenarten (Kontenplanabhängige Daten)
FMCI - Finanzpositionen Stammdaten
CSKB - Kostenarten (Kostenrechnungskreisabhängige Daten)
CSKU - Kostenartentexte
FMCIT - Finanzpositionen Texte


Folgende Felder werden hierbei miteinander verknüpft.

Verknüpfungen
Hierbei steht <--> für einen normalen Join und >LO< für einen left outer join. Die left outer joins sind erforderlich um auch Datensätze auszugeben, die nicht in allen Tabellen vorhanden sind.

SKA1-KTOPL <--> SKAT-KTOPL (Kontenplan)
SKA1-SAKNR <--> SKAT-SAKNR (Nummer des Sachkonto)
SKA1-SAKNR >LO< SKB1-SAKNR (Nummer des Sachkonto)

SKAT-KTOPL >LO< CSKA-KTOPL (Kontenplan)
SKAT-SAKNR >LO< CSKA-KSTAR (Nummer Sachkonto und Kostenart)

CSKA-KTOPL <--> CSKU-KTOPL (Kontenplan)
CSKA-KSTAR <--> CSKU-KSTAR (Kostenart)

CSKA-KSTAR <--> CSKB-KSTAR (Kostenart)

SKA1-SAKNR >LO< SKB1-SAKNR (Nummer des Sachkonto)

SKB1-FIPOS <--> FMCI-FIPOS (Finanzposition)

FMCI-FIKRS <--> FMCIT-FIKRS (Finanzkreis)
FNCI-GJAHR <--> FMCIT-GJAHR (Geschäftsjahr)
FMCI-FIPEX <--> FMCIT-FIPEX (Finanzposition)

Feldgruppen

In den einzelnen Feldgruppen der Query können eigentlich alle Felder der Tabellen übernommen werden. Da für die Finanzpositionen nur bestimmte Felder relevant sind (die Finanzpositionen sind relativ stammdatenpflegefreundlich ;-)).

Entsprechend umfassen die Feldgruppen folgende Felder:

FMCI:
FMCI-FIPOS Finanzposition
FNCI-FIVOR Finanzvorgang
FMCI-POTYP Finanzpositionstyp
FMCI-VPTYP Vortragspositionstyp der Finanzposition
FMCI-FIPUP Übergeordnete Finanzpositions

Gerade das Feld FMCI-FIPUP ist hierbei zu beachten, da anhand der übergeordneten Finanzposition die Standardhierarchie der Finanzpositionen innerhalb PSM abgebildet wird.

FMCIT:
FMCIT-BEZEI Bezeichnung
FMCIT-TEXT1 Beschreibung


2.) Query definieren
Innerhalb der Query werden nun auf folgende Felder der einzelnen Tabellen Zugriff genommen bzw. in der Grundliste zugewiesen. Hierbei ist L als Listenfeld und S als Selektionsfeld zu verstehen.

Die Felder werden hier in der Reihenfolge angeben, wie diese dann auch in der Query ausgegeben werden sollen:

a) Sachkonto

SKA1 - Sachkontenstamm (Kontenplan)
Sachkonto (L,S) SKA1-SAKNR
KtoG (L) SKA1-KTOKS (Kontengruppe)
SKAT - Sachkontenstamm (Kontenplan: Bezeichnung)
Kurztext (L) SKAT-TEXT20
Langtext (L) SKAT-TEXT50
SKB1 - Sachkontenstamm (Buchungskreis)
St (L) SKB1-MWSKZ (Steuerkategorie)
Sor (L) SKB1-ZUAWA (Sortierschlüssel)
FStG (L) SKB1-FSTAG (Feldstatusgruppe)
A (L) SKB1-XINTB (Kennzeichen: Konto nur automatisch bebuchbar)
Finanzposition (L) SKB1-FIPOS

Die einzelnen Daten werden bewust in der Reihenfolge ausgegeben in der die Stammdaten auch gepflegt werden.

b) Kostenart

CSKA - Kostenarten (Kontenplanabhängige Daten)
Kostenart (L) CSKA-KSTAR
CSKU - Kostenartentexte
Bezeichnung (L) CSKU-KTEXT
Beschreibung (L) CSKU-LTEXT
CSKB - Kostenarten (Kostenrechnungskreisabhängige Daten)
KA (L) CSKB-KATYP (Kostenartentyp)

c) Finanzposition

FMCI - Finanzpositionen Stammdaten
Finanzposition (L) FMCI-FIPOS
FMCIT - Finanzpositionen Texte
Bezeichnung (L) FMCIT-BEZEI
Beschreibung (L) FMCIT-TEXT1
FMCI - Finanzpositionen Stammdaten
VG (L) FMCI-FIVOR (Finanzvorgang)
P (L) FMCI-POTYP (Finanzpositionstyp)
Vo (L) FMCI-VPTYP (Vortragspositionstyp)
Übergeordnete Finanzpos. (L) FMCI-FIPUP

Hinweis zur Anwendung
Durch diese Query können nun zu den Sachkonten die entsprechende Kostenarten / Finanzpositionen ermittelt werden. Auf diese Weise kann bspw. ein Stammdatenabgleich zwischen unterschiedlichen Systemen erfolgen. Interessant in diesen Zusammenhang ist auch, dass hier die Zuordnung von Sachkonten zu "symbolischen" Finanzpositionen ersichtlich ist. Bspw. eine Zuordnung zu einer Finanzposition AFA etc..

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Dienstag, 6. Dezember 2011
21:03 Uhr

Recherchebericht Budget + Ertrag ggü. Aufwand

Ausgangslage
Es sollen verschiedene Fonds innerhalb des Moduls PSM ausgwertet werden. Hierbei gibt es welche auf denen, innerhalb der klassischen Budgetierung, ein Gesamtbudget gebucht ist (wobei hier dieses teilweise auch als Jahresbudget umgebucht ist) und solche die lediglich durch Einnahmen sich "finanzieren". Innerhalb der Finanzpositionenhierarchie sind die einzelnen Buchungskonten aufwandsseitig der Finanzposition AUFWAND zugeordnet und ertragsseitig der Finanzposition ERTRAEGE.
Weitere Unterteilungen sind bspw. AUFWAND.PERSONAL oder AUFWAND.SACHMITTEL.

Nun sollen in einen Bericht die Budgetwerte den gegenlaufenden Aufwendungen gegenüber gestellt werden.

Ansatz
Hierzu wird ein Recherchebericht eingesetzt. Im Gegensatz zum ReportWriter arbeitet der Recherchebericht mit Bericht und Formular. Wobei innerhalb des Berichts die Selektions-Navigationsmerkmale gepflegt werden und innerhalb des Berichtes der eigentliche Aufbau des Berichtes.

Berichtsentwicklung
Wie unter SAP PSM Recherchebericht beschrieben legen wir über die Transaktion FMEK einen neuen Bericht an. Dieser ist im Bereich:
Hierarchie der HHM Kontierungselemente angesiedelt. Von hier wird ein entsprechendes Formular angelegt. Da wir den Bericht recht flexibel halten wollen weisen wir die Struktur an, nur eine Koordinate zu verwenden. Hierdurch können wir dann durch die einzelnen Merkmale im Bericht navigieren. Für eine Definition von Spalten und Zeilen würde als Struktur die Matrix gewählt werden.
Im Folgenden wird der Aufbau des Formulars und des Berichtes beschrieben.
 

1.) Formular anlegen

Der Bericht soll folgende Spalten enthalten:
1.) Gesamtbudget
2.) Jahresbudget
3.) Aufwand
4.) Ertrag
5.) Saldo
6.) Verfügbar zu Gesamt
7.) Verfügbar zu Jahr

Hierzu werden folgende Merkmale getroffen.

Allgemeine Selektion
Finanzkreis (Variable): FIKRS
Hier ist es wichtig eine Variable für den Finanzkreis zu wählen, da andernfalls die Sets der Finanzpositionen, Finanzstellen oder Fonds in der Selektion des Berichtes nicht ausgewählt werden können. Ausserdem hat diese Definition den Vorteil, dass der Bericht relativ flexibel gestaltet werden kann und auch auf anderen System sinnvoll verwendbar ist.

Nun werden die einzelnen Kennzahlen definiert. Diese Kennzahlen werden dann als entspredchende Spalten im Bericht dargestellt.

Gesamtbudget Aktuell
Kennzah: Gesamtbudget (Aktuell)
Merkmale:
Budgetversion: 0
Je nach Verwendung der Budgetversionen können hier auch mehrere Budgetversionen eingegeben werden. Innerhalb der klassischen Budgetierung werden im Beispiel die Budgets jedoch nur in der Version 0 verbucht.

Jahresbudget
Kennzahl: Jahresbudget (Verteilbar) hierarchisch
Merkmale:
Budgetversion: 0

Aufwand
Kennzahl: Obligo/Ist (Zahlungsbud.) hierarch. FkW.
Merkmale:
Budgetversion: 0
Finanzposition (Hierarchieknoten) AUFWAND
Durch Markierung des Hierarchieknotens/Set kann hier direkt aus der Finanzpositionenhierarchie die Finazposition AUFWAND gewählt werden. Entsprechend wäre in dieser Spalte dann alle innerhalb der Hierarchie der Finanzposition AUFWAND untergeordneten Finanzpositionen zugeordnet. Somit also auch Personal- und Sachaufwand.
Werttyp: 54,57,61,64,66,95
Ohne einen Werttyp werden neben den getätigten Aufwendeungen auch die entsprechenden Obligos (bspw. Mittelbindungen oder Bestellungen ausgegeben. Im Beispiel ist der Aufwand auf folgende Werttypen beschränkt:
54 Rechnungen
57 Zahlungen
61 Anzahlungen
64 Mittelumbuchungen
66 Erfolgsumbuchungen
95 Ist-Buchungen im CO

Alternativ wäre es auch möglich gewesen eine Extraspalte für die Obligos zu verwenden.
Über die Textpflege kann diese Spalte dann auch in Aufwand umbenannt werden. Andernfalls wäre als Bezeichnung der Merkmalswert (Obligo/Ist (Zahlungsbud.) hierarch. FkW.) hinterlegt.

Ertrag
Kennzahl: Obligo/Ist (Zahlungsbud.) hierarch. FkW.
Merkmale:
Budgetversion: 0
Finanzposition (Hierarchieknoten) ERTRAEGE
Da keine Obligoertrag gebucht wird, kann hier auf die Angabe eines Werttyps verzichtet werden.

Saldo
Kennzahl: Obligo/Ist (Zahlungsbud.) hierarch. FkW.
Merkmale:
Budgetversion: 0
Werttyp: 54,57,61,64,66,95
Hier wird auf die besondere Angabe der Finanzpositionen verzichtet. Entsprechend werden in dieser Spalte dann alle Finanzpositionen ausgewählt. Hier ist dann zu beachten, dass beim Aufruf des Berichtes nicht relevante Finanzpositionen in der Selektion ausgeschlossen werden müssen (bspw. die der AFA, so die AfA nach PSM fortgeschrieben wird.

Verfügbar zu Gesamt
Hier wird statt eines Merkmals eine Formel eingefügt.
Formel: Gesamtbudget - Saldo

Verfügbar zu Jahr
Formel: Jahresbudget - Saldo


Damit wäre das Formular des Berichtes entsprechend fertig und es kann der eigentliche Bericht angelegt werden.
 

2.) Bericht anlegen

Innerhalb des Berichts werden nun die Selektionsmerkmale und die für die Navigation vorgesehene Merkmale eingestellt. Eine Besonderheit der Rechercheberichte ist bspw. dass hier die Möglichkeit besteht das angezeigte Merkmal per Doppelklick zu tauschen (bspw. Darstellung von Finanzpositionen statt Fonds) oder auch als weitere Darstellungsebene (bspw. durch Doppelklick auf den Fond und die Darstellung des Geschäftsjahr, was wiederum über einen Doppelklick in die Selektion übernommen wird) zu nutzen. Dieses ist auch der Grund, warum in diesen Bericht das Merkmal Geschäftsjahr nicht fest hinterlegt ist, so dass hier "dynamisch" eine Darstellung nach Jahren für die einzelnen Fonds gewählt werden kann.

Auch der Bericht ist nun mit Bezug auf das oben angelegte Formular in der "Hierarchien der HHM-Kontierung" angelegt.

Nun müssen folgende Register gepflegt werden:

Merkmale
Als ausgewählte Merkmale sind folgende gewählt:

Ausgewählte Merkmale:
Fonds
Finanzposition
Fin.Zweck
Geschäftsjahr
Periode/Jahr
Finanzstelle
Periode
Budgetart
Werttyp

Die Reihenfolge der Merkmale beeinflusst auch die Darstellung des Berichtes. Über die Schaltfläche "Freie Merkmalsortierung" kann die Reihenfolge beliebig verändert werden. Das Merkmal mit der Nummer 1 ist automatisch auch das Merkmal, das beim Aufruf des Berichtes dargestellt wird.

Variablen

Über die Variablen können für die Variablen auch Vorschlagswerte für die Selektion hinterlegt werden. In diesen Bericht kann hier der Finanzkreis vorbelegt werden.

Wir erinnern uns, dass beim Aufruf des Berichtes folgende Werte zur Selektion angegeben werden können.

Fonds, Finanzstelle, Finanzpositionen.

Um hier auch auf entsprechende Stammdatengruppen zugreifen zu können, hatten wir in der Allgemeinen Selektion des Formulars den Finanzkreis als Variable gewählt. Durch diese Variante muss der Finanzkreis dann nicht beim Aufruf des Berichtes direkt eingetragen werden sondern wird als Vorschlagswert eingetragen.


Ausgabeart:
Hier kann die Ausgabe des Berichtes dargestellt werden. Sympathisch ist mir hier die Darstellung als
Klassische Recherche:
Grundliste: Aufriß

Durch Markierung des Feldes Auf Selektionsbild auswählbar könnte diese von den Berichtsnutzenden auch umgestellt werden.

 

3.) Ausführen des Berichtes

Der Bericht kann entweder über die Transaktion FMEQ direkt gestartet werden oder alternativ über eine Paramtertransaktion für Rechercheberichte gestartet werden.

Innerhalb des Berichtes kann nun direkt die Fonds (oder Fondsgruppen) bzw. entsprechende Finanzstellen angegeben werden. Desweiteren können hier Finanzpositionen slektiert oder auch von der Auswertung ausgeschlossen werden.
 

4.) Berechtigung für Rechercheberichte

Die Rechercheberichte setzen auf die Datenbankstruktur IFMEISA (Hierarchien der HHM-Kontierungselemente) auf. Von der Berechtigungsprüfung wird zum Start der Berichte das Berechtigungsobjekt K_KA_RPT geprüft.
Dieses Berechtigungsobjekt muss dabei mit folgenden Werten gefüllt werden:

Berechtigungsobjekt:
K_KA_RPT - CO: Interaktive Recherche - Berichte
Aktivität:
03 (Anzeigen)
04 (Drucken, Nachrichten bearbeiten)
16 (Ausführen)
28 (Einzelposten anzeigen)
61 (Exportieren)
66 (Aktualisieren)
L0 (Alle Funktionen)
Applikationsklasse für die Recherche:
FM
Bericht:
Name des angelegten Berichtes
Tabellenname:
IFMEISA

5. Berichtswesen mit Rechercheberichte

Gerade wenn man mehrere Rechercheberichte angelegt hat kann es hilfreich sein, diese eine eigene Transaktion zuzuordnen. Hierzu bietet sich eine "Parametertransaktion für Recherchebericht". Der Unterschied zwischen Parameter- und Reporttransaktion ist im Artikel "Transaktion anlegen (Report, Parameter) bspw. für SAP Query / Unterschied Parameter- oder Reporttransaktion" erläutert.

Sofern ausführlciher mit Varianten gearbeitet wird (die ebenfalls in einer eigenen Transaktion hinterlegt werden können) bietet sich auch ein Blick auf den Artikel "Frühjahrsputz oder geschützte Varianten und nicht mehr benötigte Rechercheberichte entfernen oder reorganisieren" an besonders, wenn noch ein wenig Altlast von vorherigen Berichten vorhanden ist.

Eine ausführliche Anleitung zur Erstellung von Rechercheberichten ist auch im Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget".
 

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Dienstag, 6. Dezember 2011
09:44 Uhr

SAP Query Stammdaten PSM / CO Innenauftrag

Leider wird die Tabelle FMZUOB (Zuordnung von CO Objekten zu PSM Objekten) durch die Einführung der FMDERIVE nicht mehr gepflegt, so dass keine Verknüpfung von Fonds innerhalb der Tabellen FMFINT bzw. FMFINCODE (bspw. für den Finanzierungszweck) mit den Stammdaten der Innenaufträge in der Tabelle AUFK möglich ist. Hier war bis zur Einführung der FMDERIVE eine Verknüpfung über die OBJNR möglich.

Eine direkte Verknüpfung der Tabellen FMFINCODE mit AUFK scheitert daran, dass die Auftragsnummer in der Tabelle AUFK mit führenden 0en gespeichert wird und in der Tabelle FMFINT ohne führender 0. Eine entsprechende Auswertung ist daher über die Stammdeten der Fonds aus PSM und der Innenaufträge in CO scheinbar nicht möglich.

Technischer Hintergrund:
Das Feld FMFINCODE-FINCODE   (Fond) ist vom Typ Char mit einer Länge von 10 Zeichen, das Feld AUFK-AUFNR (Auftragsnummer) ist zwar auch vom Typ Char allerdings mit einer Länge von 12 Zeichen. Somit können beide Felder nicht verknüpft werden, da diese Werte nicht übereinstimmen.

Per Codig innerhalb eines Zusatzfeldes ist es jedoch möglich nur den hinteren Teil aus AUFK-AUFNR zu verwenden und damit eine Verknüpfung zu erstellen.

Diese Methode ist im Artikel "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck" beschrieben, inklusive einer Angabe, ob der Innenauftrag gesperrt ist.

Hinweis: Query Stammdaten CO Innenauftrag PSM-FM Fond

Der erwähnte Artikel ist Teil einer Serie um Stammdaten von CO Innenaufträgen und PSM-FM Fonds miteinander zu verknüpfen.
  1. "SAP Query ABAP Coding im Zusatzfeld für Verknüpfung Innenauftrag und Fond bzw. Finanzierungszweck"
  2. "Query über verantwortliche Kostenstelle des Innenauftrag - Bestimmung der Lehreinheit im Fachbereich durch Teil der Kostenstellennummer"
  3. "SAP Query - Auswertung Merkmale der Klassifizierung am Beispiel Fonds in PSM-FM"
  4. "Weitere Zusatzfelder im Infoset mit ABAP Coding zur Verwendung in SAP Query über die Tabellen AUFK und FMFINCODE"

Erweiterung durch Zusatzfeld/Zusatztabelle Coding im Infoset

Eine Erweiterung dieser Vorgehensweise ist auch im Artikel "SAP Query innerhalb des SAP Moduls PSM FM beziehungsweise Haushaltsmanagement" festgehalten.

Am Anwendungsbeispiel einer CO Einzelpostenliste mit Ergänzung der Stammdaten aus CO-Innenauftrag und PSM-FM Fond  ist dann in folgender Artikelserie beschrieben:
  1. "Query über COEP, AUFK und FMFINCODE für Einzelposten Istkosten Innnenauftrag mit Stammdaten aus CO und PSM-FM sowie Spalten für Ertrag und Aufwand - Erster Teil Infoset als Datengrundlage" (Definition eines Infoset mit entsprechenden Zusatzfeldern und Einbindung der Tabelle FMFINCODE als Zusatztabelle zu AUFK
  2. "Query Einzelpostenliste Innenauftrag mit Ausweis Ertrag und Aufwand Zweiter Teil Query zur Datenaufbereitung" (Auswertung der Tabelle COEP und einige Hintergrundinformationen zu den unterschiedlichen Währungen in CO und den Kostenarten)

Auswertung CO Stammdaten

Ansonsten lassen sich innerhalb des Moduls CO  die Stammdaten gut miteinander verknüpfen.

Hier bieten sich folgende Tabellen an:

Stammdaten der Innenaufträge:
AUFK

Stammdaten der verantwortlichen Kostenstelle:
CSKS (Kostenstellenstamm)
CSKT (Texte der Kostenstellen)

Stammdaten der Profit-Center:
CEPC (Profitcenterstammdaten)
CEPCT (Texte der Profitcenter)
 

Hinweis:

Eine kurze Einführung in das Thema SAP Query habe ich im Artikel
"Grundlagen Kurzeinführung und Handbuch SAP Query" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Montag, 17. Oktober 2011
21:36 Uhr

SAP PSM Recherchebericht

Report Writer Berichte sind grds. mit Ihren Bibliotheken sehr sinnvoll für die Auswertung von CO Belegen. Hierbei kann je nach Bibliothek sowohl Kostenstellen (Bibliothek 1VK), Innenaufträge (Bibliothek 6o1) oder auch Profit-Center (Bibliothek 8a2) ausgewertet werden. Zur Auswertung innerhalb des Moduls PSM werden jedoch eher Rechercheberichte verwendet.

Der Vorteil von Rechercheberichten ist die Nutzung von Hierarchien und eine flexible Darstellung der einzelnen Selektionsmerkmale. Auf diese Art kann bspw. zwischen Fonds und Finanzstellen aber auch zwischen Perioden und Finanzierungszwecken innerhalb des Berichtes hin und her geschaltet werden.

Grundsätzlicher Ablauf zur Anlage eines Rechercheberichtes:

Innerhalb des Customizing sind die Rechercheberichte unter

Public Sector Management->
Haushaltsmanagement Öffentliche Verwaltung->
Informationssystem->
Recherche-Berichte

zu finden.

Innerhalb der Formulare werden die einzelnen Merkmale und Kennzahlen eines Berichters angezeigt.

In den Bericht werden die Navigationsmerkmale und Vorschlagswerte hinterlegt.

Zur Neuanlage eines Berichtes ist es sinnvoll über die Transaktion FMEK einen neuen Bericht anzulegen. Von diesen aus kann über die Schaltfläche Formular zu diesen Bericht direkt ein passendes Formular erstellt werden. Hierdurch stimmen dann leichter Beschreibungund Bezeichnung miteinander überein.

Ausserdem wird damit auch die Berichtsart bspw. "IFMEISA Hierarchien der HHM-Kontierung" mit übernommen.

Innerhalb des Formulars können dann allgemeine Selektionskriterien ebenso wie feste Merkmale oder Formeln hinterlegt werden.

Ist das Formular fertig kann dieses gespeichert werden und per Zurück zum eigentlichen Bericht zurückgekehrt werden.

Über den Button anlegen kann nun der Bericht zum Formular erstellt werden.
Hier können dann die passenden Selektionskriterien festgelegt werden und ggf. Vorschlagswerte erstellt werden.
Ferner können ier auch Mussfelder hinterlegt werden.

Weitere Informationen und Dokumentationen sind unter dem Tag Rechercheberichte im Blog zu finden.

Als Beispiele sind hier folgende Artikel zu nennen: Daneben kann das Berichtstool Rechercheberichte aber auch in der Hauptbuchhaltung bspw. für die Bilanzanalyse genutzt werden.

Dieses ist im Artikel "Rechercheberichte im Modul FI (Bilanzanalyse)" beschrieben.

Weitere Beispiele oder auch Handbücher zu diesen Thema sind, wie geschrieben unter  Rechercheberichte im Blog zu finden.

Im Artikel "PSM Haushaltsmanagement Budgetverwaltungssystem BCS oder klassische Budgetierung" wird auf die Weiterentwicklung der klassischen Budgeteirung eingegangen.

Interessant in diesen Zusammenhang dürfte auch sein, dass Ende Dezember 2015 ein Buch in SAP Press erscheint, welches die Themen klassische Budgetierung und BCS ebenfalls behandelt. Privat habe ich dieses auch schon auf meinen Amazon Wunschzettel notiert ;-)

Öffentliches Haushalts- und Fördermittelmanagement mit SAP

Cover Öffentliches Haushalts- und Fördermittelmanagement mit SAP

ISBN: 978-3836237482

Meines Wissens nach gab es bisher noch kein Fachbuch zum Modul PSM (public sector management), so dass ich erstaunt bin, dass mittlerweile von SAP Press (Rheinwerk Verlag (ehemals Galileo Press)) für Dezember 2015 ein Buch zum Modul PSM angeboten wird. Hierbei soll das Buch das Customizing (und die Integration mit anderen SAP Modulen (besonders FI,CO,MM, SD und HCM) erläutern aber auch auf die einzelnen Funktionen zur Planung, Bewirtschaftung und den Jahresabschluss eingehen. Dabei werden auch die Prozesse in öffentlichen Verwaltungen, Verbänden und Universitäten dargestellt. Der Autor selbst ist als SAP Berater im öffentlichen Sektor tätig, so dass dieses Buch auch sehr praxisnah erscheint.

Neben der hier schon angesprochenen klassische Budgetierung und das moderne BCS (Budgetverwaltungssystem) werden auch Themen wie Berichtswesen, Haushalts- und Fördermittelmanagement aber auch Archivierung beschrieben.Eine ausführliche Buchbeschreibung wird dann auch auf der Seite "Öffentliches Haushalts- und Fördermittelmanagement mit SAP" zu finden sein.


Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Samstag, 12. Februar 2011
19:58 Uhr

Budgetprofil klassische Budgetierung

Ausgangslage:

Im Rahmen der klassichen Budgetierung ist geplant aus einen Vorjahr Budget auf das laufende Jahr umzubuchen. Hier gibt es die Fehlermeldung "Bitte wählen Sie ein Jahr zwischen 2009 und 2020" Meldungsnr. BP027

Lösung:

Die Budgetierungsregeln sind hier innerhalb eines Budgetprofils (welches bspw. Fonds zugeordnet werden) zugewiesen.

Innerhalb des Customizing (Transaktion SPRO) kann über

Public Sector Management->
Haushaltsmanagement Öffentliche Verwaltung ->
Klassische Budgetierung->
Budgetprofile->

durch Budgetprofil einstellen die einzelnen Budgetierungsregeln der jeweiligen Budgetprofile gepflegt werden.

Hier kann bspw. auch über Zeithorizont die Anzahl der Planjahre sowohl für die Vergangenheit als auch in der Zukunft gesetzt werden. Diese beziehen sich immer relativ zum laufenden Geschäftsjahr.

HINWEIS:
Die Daten werden per Customizingauftrag entsprechend transportiert und sind mandentenspezifisch.


Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Dienstag, 27. Januar 2009
14:45 Uhr

Reorganisation von Finanzstellenhierarchien

Beim Einsatz von Finanzstellen- und Finanzpositionenhierarchie innerhalb des Modul SAP PSM-FM Haushaltmangement in der Kombination mit der klassischen Budgetierung ist bei einer Reorganisation der Stammdatenhierarchie der Finanzstellen (bspw. Zusammenlegung von Abteilungen) darauf zu achten, dass hier Inkonsistenzen auf Budgetseite entstehen können. Daher wird diese Möglichkeit im Standard auch verhindert.

Um dennoch die Hierarchie ändern zu können muss in Folge der Änderung der Budgetstrukturplan die Budgetträger aufgehoben werden, die Hierarchie der Finanzstellen gepflegt werden, die Budgetträger gekennzeichnet und die Budget unter Klassische Budgetierung->Budget->Werkzeuge->Neuaufbau
neu aufgebaut werden.

Voraussetzung hierfür ist, dass im Customizing des Haushaltsmanagement die Meldung FICUSTOM150 bzw. FICUSTOM151 in der Nachrichtensteuerung deaktiviert ist.

Die Nachrichtensteuerung kann innerhalb des Customizing (Transaktion SPRO) unter
  • Public Sector Management
  • Haushaltsmanagement Öffentliche Verwaltung
  • Grundeinstellungen
  • Nachrichtensteuerung ändern
für einzelne User über den Benutzernamen deaktiviert werden. Dieses ist sowohl für das Umhängen/Löschen der Finanzposition (MsgNr 150) als auch für Finanzstellen (MsgNr 151) einstellbar.

Sofern in Schwerpunkt des Berichtswesen eher im Bereich CO erfolgt könnte auch statt mit der Hierarchie der Finanzstellen diese flach gehalten werden und künftig die Finanzstellen innerhalb einer Finanzstellengruppe zusammen gefasst werden.Diese können innerhalb der Stammdaten der Finanzstelle ebenso wie in der Finanzpoistion genutzt werden. Leider ist es nicht möglich innerhalb Rechercheberichte eine Auswertung über solche Stammdatengruppen zu ermöglichen, da hier weiterhin die Hierarchie als Merkmal angezeigt wird. Jedoch dürften solche Gruppen die Selektion von Finanzstellen oder FInanzpositionen erleichtern. Siehe hierzu auch: Workflow Kostenstelle (Module CO, PSM).

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 4. September 2008
16:48 Uhr

SAP PSM: Mittelbindung Finanzposition nicht vorhanden.

Ausgangslage:

Beim Anlegen einer Mittelbindung im PSM erscheint die Fehlermeldung "Finanzposition für den Buchungskreis nicht vorhanden", obgleich FMDERIVE eine Zuordnung Sachkonto zu Finanzposition liefert.

Lösung:

Werden im Bereich der Sachkonten Berechtigungsgruppen verwandt erfolgt eine Prüfung auf diese Berechtigungsgruppe nicht nur beim Buchen von Rechnungen sondern auch bei Mittelbindungen.

Die Transaktion FMZ1 (Mittelbindung anlegen) würde hier beim Anlegen einer Mittelbindung auf ein Sachkonto das Berechtigungsobjekt "F_SKA1_BES" auf die Aktivität 03 (Anzeigen) prüfen.

Eine Ergänzung der Rolle der Mittelbindung um das Berechtigungsobjekt F_SKA1_BES mit 03 sollte das Problem beheben.

Auf diese Weise ist es dann auch möglich eine differenzierte Berechtigungen auf bestimmte Sachkonten für die Mittelbindung zu vergeben.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Dienstag, 5. Februar 2008
10:16 Uhr

Workflow Kostenstelle und Innenaufträge (Module CO, PSM)

Ausgangslage:

Bei der Auswertung von Abteilungen wurde nicht nur das Intervall der Finanzstellen ausgewertet sondern auch die Finanzstellengruppe.


Grundsätzlich gibt es drei Möglichkeiten der Auswertung innerhalb einer Abteilung:

a) Intervall von Finanzstellen
Unproblematisch, da hier keine aussen vorgelassen wird.

b) Nutzung der Finanzstellenhierarchie
In der Stammdatenpflege wird in einer Hierarchievariante die übergeordnete Finanzstelle angegeben.
Diese Finanzstellenhierarchie kann dann bei Auswertungen genutzt werden, indem die übergeordnete Finanzstelle einer Abteilung bspw. 501 für die untergeordneten Finanzstellen
der Abteilung 501 (umfassen die Finanzstellen 5010000 bis 5010245), so dass hier die untergeordneten Finanzstellen genutzt werden können.
Hierbei ist in den einzelnen Finanzstellen die übergeordnete Finanzstelle eingepflegt, so dass hier bei sauberer Stammdatenpflege kein Problem entstehen dürfte.

c) Finanzstellengruppe
Analog zur Kostenstellengruppe sind hier die einzelnen Finanzstellen als zusätzliches Stammdatum gefplegt. Die Finanzstellengruppen sind hier zusätzlich zu den Stammdaten zu pflegen.

Lösung

Um die Zusammenhänge der Stammdaten zu beachten kann es sinnvoll sein sich einen Workflow (Ablaufplan) für die Stammdatenpflege bei Kontierungselementen anzulegen.

Beispiel Workflow Kostenstelle

1. Profitcentergruppe innerhalb der Standardhierarchie (Transaktion KCH5)
2. Profitcenter anlegen (Transaktion KE51)
3. Kostenstelle mit Verweis auf Profitcenter Landesmittel (Transaktion KS01) und Kostenstellenhierarchie
4. Finanzstelle anlegen (Transaktion FMSA)
Achtung Finanzstellenhierarchie beachten!!!
5. Finanzstellengruppe pflegen
6. Berechtigungen
Ggf. Rollen und Berechtigungskonzept anpassen


Beispiel Workflow Projekte
1. Profitcentergruppe innerhalb der Standardhierarchie (Transaktion KCH5)
2. Profitcenter anlegen (Transaktion KE51)
3. Innenauftrag mit Verweis auf Profitcenter Auftrag anlegen (Transaktion KO01)
- Auftragsart
- Profitcenter
- verantwortliche Kostenstelle
- Abrechnungsregeln
4. Fond anlegen: (Transaktion FM5I)
Budgetprofil: ??
Finanzierungszweck ??

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Tags: FI CO PSM

Permalink - SAP
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Freitag, 18. Januar 2008
10:05 Uhr

SAP BC: Personalkontenberechtigungen

Sollen Infouser innerhalb Fachabteilungen nur bestimmte Konten auswerten können, kann es sinnvoll sein hier Berechtigungsgruppen für bestimmte Konten zu verwenden.

Hier kann in Sachkonten unter Steuerungsdaten eine Berechtigungsgruppe zugewiesen werden. Dieses Feld ist frei definierbar.

Über die Berechtigungsobjekte F_SKA1_BES und F_BKPF_BES können Aktivitäten in Verbindung mit den Berechtigungsgruppen zugewiesen werden (bspw. Aktivität 03 Anzeige).

ACHTUNG:

Wird das Modul Public Sector Management (ehemals FM bzw. PSM) eingesetzt. Ist eine solche Berechtigungsgruppe auch bei den Finanzpositionen (Kontierungsobjekt analog der Sachkonten) einzutragen.

Die Berechtigungen werden in PSM über die Berechtigungsobjekte

F_FICA_FPG
und
F_FICA_TRG

zu pflegen. Alternativ könnte man über das Berechtigungsobjekte

F_FICB_FPS
und
F_FICA_FTR

auch einzelne Finanzpositionen innerhalb des Berechtigungsfeldes FM_FIPOS für eine Auswertung im Haushaltsmanagement einstellen.

Eine Verwendung von Berechtigungsgruppen bei Finanzpositionen würde jedoch eine einfachere Datenpflege ermöglichen.

Die Berechtigungsgruppen könnten auch für Finanzstellen und Fonds genutzt werden, jedoch ist hier oftmals eine direkte Zuweisung der betroffenen Fonds und Finanzstellen übersichtlicher und dokumentationstechnisch genauer.

Eine andere Alternative ist die Berechtigungssteuerung von Personalkostenbuchungen anhand der Belegarten (siehe Artikel Belegartberechtigung F_BKPF_BLA. Dieses ist auch ein wenig flexibler als die reine Steuerung über Sachkonten.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Donnerstag, 17. Januar 2008
12:02 Uhr

SAP PSM: FM Recherchebericht formatieren

Ausgangslage:
Innerhalb des Rechercheberichtes werden Fonds ausgewertet. Diese werden jedoch nur mit ihren Kurztext angezeigt.

Ziel ist es dieses Merkmal mit einen Langtext zu versehen.

Lösung:
Folgende Korrektur ist möglcih:

Merkmal markieren (bspw. Fonds)

Nun kann über
Einstellungen->
Merkmalsdarstellung->
Führungsspalte


der Aufbau der Führungsspalte festgelegt werden. Hier ist es dann möglich Merkmalstexte auszuwählen und die Darstellung festzulegen.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Montag, 26. November 2007
17:52 Uhr

FM Recherchebericht Fonds hierarchisch darstellen

Neben der Auswertung von Fondsgruppen soll auch aus einen Intervall von Fonds diese hierarchisch dargestellt werden. Für die Kontierungselemente Finanzstelle und Finanzpositionen ist die Festlegung einer Hierarchie möglich. Innerhalb der Fonds ist diese Funktionalität jedoch nicht gegeben.
Jedoch kann über FMDERIVE bzw. in R/3 4.6b ueber die Zuordnung zu CO Objekten einen Bezug zu einen Innenauftrag aufgebaut werden. Dieser Innenauftrag hat nun eine verantwortliche Kostenstelle.

Innerhalb eines Rechercheberichtes kann innerhalb der Navigation von Fonds auf Finanzstelle gewechselt werden. Hier kann nun innerhalb der Finanzstellenhierarchie ein Knoten per Doppelklick ausgewählt werden. Beispiel Bereich 2 Produktion. Dieses ist jetzt als Selektionsmerkmal festgelegt. Wird nun in der Navigation auf Fonds gewechselt werden all jene Fonds ausgewählt, die über die verantwortliche Kostenstelle der Innenaufträge in der Hierarchie der Finanzstellen zugewiesen sind.

Somit ist es möglich Fonds hierarchisch auszuwerten.

Alternativ könnte eine Auswertung über Fondsgruppen erfolgen.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Samstag, 24. November 2007
12:20 Uhr

Bibliothek für ReportWriter/ReportPainter innerhalb des Modul PSM/FM

Ausgangslage:
Es sollen Berichte innerhalb des Moduls PSM mit Hilfe des
ReportWriter/Reportpainter erstellt werden.

Hierzu müßte Bezug auf eine Bibliothek genommen werden, die Bezug auf
eine Tabelle hat. Für das PSM sind folgende Strukturen im System
vorhanden: FMRBCS, FMRFA.

Beide Strukturen werden jedoch nicht in einer Bibliothek genutzt.



Lösungsansatz:
Eine Recherche ergab jedoch, dass eine Bibliothek 4 FM diese zum
Reporting von Budgets innerhalb des Haushaltsmanagement nutzt.
Das Budgetreporting scheint jedoch nur im Rahmen des BCS vorhanden zu sein, siehe hierzu der Aritekel "PSM Haushaltsmanagement Budgetverwaltungssystem BCS oder klassische Budgetierung".

Erklärung/Hintergrund:

FM Rechercheberichte können innerhalb der ReportWriter Bibliothek 4FM
erstellt werden. Diese ist jedoch nur incl. ihrer Merkmale definiert,
wenn von der klassischen Budgetierung zu BCS migriert wird. Im Rahmen
der klassischen Budgetierung scheint das Berichtswesen noch über die
Rechercheberichte des Haushaltsmanagement erstellt werden.

So sind hier auch weiterhin für die Auswertung der Ist-Daten im
Haushaltsmanagement die Recherche-Berichte (Bericht und Formular)
innerhalb des Customizingpfades (Transaktion SPRO)

Public Sector Management->
Haushaltsmanagement Öffentliche Verwaltung->
Informationssystem->
Rechercheberichte

zu nutzen.

Einige Rechercheberichte werden unter den Tag Rechercheberichte vorgestellt. Eine etwas allgemeinere Einführung in das Thema ist im Artikel "Recherchebericht Budget + Ertrag ggü. Aufwand" oder auch der Artikel "Saldenliste für Fonds im Haushaltsmanagement Saldo gegen Ertrag und Saldo gegen Budget".

 

Hinweis:

Eine kurze Einführung in das Thema Report Painter und Report Writer habe ich im Artikel "Grundlagen Kurzeinführung und Handbuch Report Painter Report Writer" beschrieben und hoffe Ihnen hier eine Einführung ins Thema bieten zu können.




Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Mittwoch, 7. Februar 2007
19:39 Uhr

mySAP PSM: Keine Überziehungstoleranz bei Mittelbindung / Feldstatuspflege

Innerhalb der Mittelbindung (FMZ1) können innerhalb des Mittelbindungsbeleges reservierte Beträge festgelegt werden. Diese werden dann bspw. durch Kreditorenrechnungen (FB60) aufgebraucht.

Teilweise kann es nun aber sein, dass die Rechnungsbeträge die hinterlegte Mittelbindung überschreiten.

Hier war ist es möglich eine Toleranz bzw. ein Kennzeichen für die unbegrenzte Überschreitung des reservierten Betrages zu hinterlegen.

Dieses ist über das Dynpros 530 der Mittelbindung im oberen Bereich bei 'Steuerung' per Button 'Mehr' einstellbar.

Wird dieser Button betätigt, sind zusätzliche Flags, darunter auch
'Unbegrenzt überziehbar' und die %-Eingabe für die Toleranz zur Verfügung.

Ausgangslage: Keine Steuerungsfelder mehr vorhanden

Nach einen Releasewechsel kann es zu folgenden Phänomen kommen.

Unter PSM in mySAP ERP 2005 scheint im Beleg unter Steuerung dieser
Punkt nicht mehr vorhanden zu sein.

Eine Kreditorenrechnung kann jedoch nicht gebucht werden, wenn die
Mittelbindung unter den Rechnungsbetrag liegt.

Innerhalb des Dynpro 530 des Programm SAPLFMFR sind die Punkte

- Überziehungstoleranz (ELementname KBLD-UEBTO) Textfeld
- Unbegrenzt übrz.bar (Elementname KBLD-CONSUMEKZ) Checkbox

nicht mehr vorhanden.

Innerhalb der Struktur KBLD ist die Komponente CONSUMEKZ (Verbrauch darf
reservierten Betrag unbegrenzt überschreiten) noch vorhanden wird
innerhalb des Dynpro 0530 jedoch nicht mehr zum Pflegen angeboten.

Problemlösung:

So wie es aussieht wurden diese per
Feldstatuspflege (Transaktion FMU7)
innerhalb des Customizing ausgeblendet.

Es handelt sich um eine mandantenabhängige Einstellung:

SPRO.
PSM->HSM->HSM spez. Buchungen->
Mittelvormerkungen und Mittelumbuchungen->
Feldsteuerung Mittelvormerkung und Mittelumbuchung->
Feldauswahlleiste definieren.
(Transaktion FMu7).

Werden diese Felder wieder eingeblendet ist die Funktion wieder vorhanden.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Dienstag, 22. Februar 2005
10:21 Uhr

Kontierungsposition Finanzposition nicht änderbar

Problemstellung:

Wir setzen in SAP R/3 4.6b das Modul FM (Haushaltsmanagement) ein. Hierbei ist nun eine Finanzposition in der Hierarchie falsch eingepflegt (Fremdleistung unter Personalkosten).

Über die Transaktion FM3H (Hierarchiepflege) war es möglich diese Finanzposition von einen Knoten abzuschneiden, jedoch war es nicht möglich diese Position einen anderen Knoten zuzuordnen. Mittels FM3U hatte ich dann die Kontierung manuell ändern wollen über das Feld Übergeord. Position in der ich eine Position eintragen konnte. Per Speichern wurde die Meldung ausgegeben, dass die Änderungen gespeichert wurden, jedoch ist dieses Feld nicht geändert worden und es waren die vorherigen Daten wieder drin. Die anderen Felder (Beschreibung etc.) lassen sich merkwürdigerweise problemlos ändern.

Erklärung


"Sobald Sie die Finanzmittelrechnung aktiviert sowie auf Finanzpositionen gebucht oder geplant haben, sollten Sie auf keinen Fall mehr Änderungen an den Steuerungsparametern (Positionstyp, Finanzvorgang) durchführen."

Demnach läßt sich die Kontierungsposition nicht mehr ändern, wenn einmal diese bebucht wurde.


Überlegung

Über FM3H läßt sich eine Finanzposition löschen. Es wäre überlegenswert, ob ein Löschen und darauf gleich wieder Anlegen funktionieren würde. Hierbei sind insbesondere die Wirkungen auf Sachkonten zu berücksichtigen und sollte vorab in einem Testsystem angewandt werden.

Dieses funktioniert nur bei noch nicht angelegten identischen Sachkonten.

Hinweis: Aktuelle Buchempfehlungen besonders SAP Fachbücher sind unter Buchempfehlungen inklusive ausführlicher Rezenssionen und Bestellmöglichkeit zu finden.
Diesen und weitere Texte von Andreas Unkelbach finden Sie auf http://www.andreas-unkelbach.de


Hinauf




Werbung


© 2004 - 2017 Andreas Unkelbach
Andreas Unkelbach

Stichwortverzeichnis
(Tagcloud)


Aktuelle Infos (Abo)

Facebook Twitter Google+

»Schnelleinstieg ins SAP Controlling (CO)« und »Berichtswesen im SAP ® ERP Controlling«
Privates

Kaffeekasse 📖 Wunschliste