Andreas Unkelbach
Werbung


Montag, 17. Juli 2017
21:38 Uhr

Ups, ich spreche ja englisch - Rückblick auf das Symposium Gießen local-global

Die Agenda 2030 als Thema eines internationalen Symposiums in Gießen - da stellt man sich, gerade auch als Mitglied im Vorbereitungsteam, durchaus häufiger die Frage: “Ist mein Englisch gut genug dafür? Das hat doch schon früher niemand verstanden.” Ende Juni zeigte sich dann aber, dass diese Sorge - ebenso wie alle etwaigen anderen - absolut unbegründet war. Unter dem Titel Gießen local-global (siehe Artikel "Gießen local-global 2017 - Symposium zum Reformationsjubiläum 22. bis 25. Juni 2017") behandelten wir an mehreren Tagen gemeinsam mit Expert*innen aus Afrika, Asien und Lateinamerika Themen der Agenda 2030.

Themenfelder des Symposium

Der Schwerpunkt des Symposiums lag auf den Bereichen Jugendbeschäftigung (youth employment), Gemeinwesenarbeit (community work) und Migration. Einer anfänglichen Gesprächsrunde wurden Arbeitsgruppen mit Gästen aus El Salvador, Indien, Mexiko, Uganda, Großbritannien und Deutschland zur Seite gestellt. Die Teilnehmer*innen waren in der Lage Erfahrungen aus ihren Ländern einzubringen und neue Blickwinkel aufzuzeigen. Bei einer öffentlichen Abschlussveranstaltung zeigte sich schließlich der Erfolg des intensiven Austausches und der gegenseitigen Anregungen für eine weltweite Partnerschaft und globale Gerechtigkeit.

Was ist die Agenda 2030?

Im September 2015 haben die Mitgliedsstaaten der Vereinten Nationen (UN) einen gemeinsamen Maßnahmenkatalog für nachhaltige Entwicklung (Sustainable Development Goals) beschlossen. Dieser wurde als Agenda 2030 bekannt und enthält 17 miteinander verknüpfte Ziele die Soziales, Umwelt und Wirtschaft als drei Dimensionen der Nachhaltigkeit berücksichtigen.

Die fünf Kernbotschaften Mensch, Planet, Wohlstand, Frieden und Partnerschaft werden als handlungsleitende Prinzipien vorangestellt. Im Englischen spricht man von den "5 Ps": People, Planet, Prosperity, Peace, Partnership.

Als Kirche sehen wir in Gießen täglich die starke Verknüpfung unserer drei gewählten Themenfelder: Bei der Arbeit der Jugendwerkstatt, in der hessischen Erstaufnahmeeinrichtung (HEAE), aber auch während der vielfältigen Gemeindearbeit in unseren Kirchengemeinden. Uns beschäftigen Wohnraumfragen ebenso wie die Qualifikation von benachteiligten Jugendlichen und die Integration von jungen Migrant*innen in Arbeitsmarkt und Gesellschaft.

Während der Veranstaltung stellten wir unseren internationalen Gästen das Bewerbertraining der Jugendwerkstatt in Gießen vor und profitierten im Gegenzug vom Erfahrungsschatz aus ihren eigenen Ländern. Rolvin D'Mello von der Don Bosco Development Society, Indien (DBDS) und Ocen Godwin von der Community Empowerment for Rural Development, Uganda (CEFORD) erzählten von internationalen Maßnahmen im Bereich der Jugendbeschäftigung. Eines der Projekte beruht beispielsweise auf skillbasiertem Training und ermöglicht Jugendlichen nach einer ersten Grundausbildung eine Spezialisierung anhand ihrer Fähigkeiten und Interessen. Auch die Ziele berücksichtigen dabei die Möglichkeiten der Teilnehmer*innen und können zum Beispiel zu einer Selbständigkeit in der Videoproduktion oder der Entwicklung von Apps führen.

Internationale Projekte zu Youth Employment
(Bild: Matthias Hartmann)

In der Arbeitsgruppe zum Thema Integration berichtete Jean Asipkwe (Direktorin CEFORD) davon, dass im Rahmen ihrer Initiative einzelne Flüchtlinge zu Multiplikatoren ausgebildet werden, um in der Folge anderen Flüchtlingen die Integration zu erleichtern.
Beim Thema Migration und Integration überraschte es zudem wenig, dass sich Diskussionen über Benachteiligungen der örtlichen Bevölkerung international antreffen lassen. Uganda begegnet diesem Problem unter anderem damit, 30% der Gelder für Flüchtlingshilfe in die lokale Bevölkerung zu investieren .

Integration und Migration
(Bild: Matthias Hartmann)

Weiters stellten wir fest, dass Nachbarschaftsprogramme und Begegnungsräume, die das gemeinsame Lernen aus Erfahrungen ermöglichen, auch international ein Erfolgskonzept darstellen. Wie wir selbst erleben konnten, eröffnet der Austausch mit anderen Menschen, sei es vor Ort oder auch über Länder und Kontinente hinweg, neue Blickwinkel auf das eigene Potential und kann Wege aufzeigen, mit denen sich Aufgaben meistern lassen.

In den Tagen des Symposiums hat sich besonders in den Arbeitsgruppen gezeigt, dass es nicht darum geht Wissen zu vermitteln sondern Wissen zu teilen. Gerade die gegenseitige Beratung auf Augenhöhe führte zur Erkenntnis, dass wir mit vielen der Herausforderungen, auf die wir in unserer täglichen Arbeit stoßen, nicht alleine da stehen, sondern sie in ähnlicher Form weltweit vorhanden sind. Durch die Kommunikation untereinander wurde uns bewusst, dass unsere unterschiedlichen Aufgabenbereiche miteinander zusammenhängen und auch hier Kommunikation gemeinschaftliches Handeln ermöglicht.

Besuch der Jugendwerkstatt
(Bild: Fr. Rolvin D'Mello)

Für mich nehme ich aus dieser Veranstaltung zahlreiche Denkansätze, ein neues Bewusstsein für Zusammenhänge, sowie die Erkenntnis mit: Sprache muss keine Barriere sein (und ja, man versteht mich auch auf Englisch).

Ich freue mich, dass in unserem Dekanat eine solche Veranstaltung möglich ist und bin voller Hoffnung, dass viel der vorhandenen Energie und Erfahrung in lokales Handeln umgesetzt wird. Ich möchte Sie dazu einladen, auch Ihre lokalen, kleine Schritte in einem größeren Zusammenhang zu betrachten und sie zu mehr als nur einem kleinen Schritt werden zu lassen.

Ganz besonders wünsche ich mir, dass die Erkenntnisse aus diesem Symposium und die der Agenda 2030 zugrunde liegenden Prinzipien - Mensch, Planet, Wohlstand, Frieden und Partnerschaft - Eingang in den gegenseitigen Austausch zwischen unseren bestehenden Initiativen, in unser künftiges Arbeiten und Engagement finden werden, denn für uns beginnt der Planet in Gießen.



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. Juni 2017
14:25 Uhr

Buchveröffentlichung »Berichtswesen im SAP®-Controlling«

Ein Thema, dass mir sowohl im Blog als auch im beruflichen Alltag am Herzen liegt, ist das Thema Berichtswesen mit SAP.  So hat sich schon kurze Zeit nach der Buchveröffentlichung »Schnelleinstieg ins SAP® Controlling (CO)« gezeigt, dass neben technischer Möglichkeiten auch immer die Konzeption von Berichten und die Beziehung zwischen Sender und Empfänger eines Berichtes relevant sind.

So ist dann relativ zeitnah die Idee zum neuen Buch entstanden, dass die Möglichkeiten zum Aufbau eines internen Berichtswesen im SAP Modul Controlling beschreibt. Dabei werden sowohl vorhandene Berichte vorgestellt als auch einige praktische Kniffe zum Berichtswesen beschrieben und auch die Entwicklung eigener Berichte sei es mit Report Painter, Rechercheberichte oder auch SAP Query vorgestellt.

In guter Tradition hat mich ein Kollege schon auf das Titelbild angesprochen, dass nun nach Erbsen ein realistisches Tortendiagramm darstellt.
 
Berichtswesen im SAP®-Controlling
Cover Berichtswesen im SAP Controlling
Verlag: Espresso Tutorials GmbH
1. Auflage (01. Juni 2017)

Paperback ISBN: 9783960127406

Für 19,95 € direkt bestellen

Oder als SAP Bibliothek-Flatrate *



Dieses Diagramm sieht allerdings nicht nur nett anzusehen aus sondern zeigt auch einen weiteren Punkt der im Buch behandelt wird. Eine wichtige Frage ist auch wie diese Berichte den einzelnen Usern zur Verfügung gestellt werden und wo sowohl ein Informationssystem in Form eines Management-Cockpits für die einzelnen Verantwortungsbereiche zur Verfügung stellen, um an einer zentralen Stelle alle Informationen sammeln und direkt auswerten zu können. Diese Informationen sind nicht nur für die Unternehmensleitung und das Management, sondern auch für andere Verantwortliche im Unternehmen relevant.

Mein erster Blick ins Buch hat mich tatsächlich begeistert, was unschwer am Bild zu sehen ist.
Mein erster Blick ins Buch

Persönlich bin ich sehr zufrieden das Ergebnis in Händen zu halten und bin tatsächlich außerordentlich begeistert vom Ergebnis. Mein Buch richtet sich an erfahrenere Beschäftigte im Bereich Controlling, die im SAP-Modul CO ein Berichtswesen aufbauen oder erweitern wollen. Daneben können einzelne Beispiele nicht nur für Key-User, sondern auch für fortgeschrittene Sachbearbeiter im Controlling nützlich sein, um für regelmäßig genutzte Berichte kleinere Kniffe zur Arbeitserleichterung zu liefern. Die einzelnen Berichtsanforderungen sind im Buch so allgemein gehalten, dass es damit möglich sein sollte, die vorgestellten Methoden auf eigene Berichtsanforderungen zu übertragen bzw. als Grundlage zur Entwicklung eines eigenen Berichtswesens zu verwenden.

Ich würde mich sehr über ein entsprechendes Feedback freuen sei es hier im Blog, auf Amazon oder auch per Mail.

Sollte ich ein wenig Neugierde auf dieses Buch entfaltet haben, verweise ich gerne auf meine Seite Veröffentlichungen wo meine bisherigen Veröffentlichung aufgelistet sind sowie auf die Seite "Internes Berichtswesen im SAP ERP Modul Controlling (CO)" auf der eine ausführliche Rezension zum Buch »Berichtswesen im SAP®-Controlling« zu finden 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


Montag, 5. Juni 2017
14:14 Uhr

Gießen local-global 2017 - Symposium zum Reformationsjubiläum 22. bis 25. Juni 2017

Vom 22. bis 25. Juni findet eine Veranstaltung zum Reformationsjubiläum in der Evangelischen Kirche in Hessen und Nassau in Gießen statt, auf die ich gerne hinweisen möchte, da diese Themen nicht nur im Hochschulumfeld relevant sind.

Hierzu sind Entwicklungsexperten aus Afrika, Asien und Lateinamerika nach Gießen eingeladen die gemeinsam die Themenfelder Jugendbeschäftigung, Migration und Gemeinwesenarbeit in Gießen und weltweit besprechen wollen. Orientierungspunkte sind die Entwicklungsziele der „Agenda 2030“ der Vereinten Nationen.

Am Donnerstag, den 22. Juni von 18 bis 21 Uhr im Gießener Rathaus und am Samstag, den 24. Juni ab 19:30 in der Werkstattkirche Gießen, Ederstraße 13 wird diese Diskussion öffentlich geführt.


Einladungsflyer Symposium
Foto:Schepp Plakat:J. Müller -

Weitere Informationen sind auf der Seite des evangelischen Dekanat Gießen im Artikel "Entwicklungstagung in Gießen zum Luther-Jubiläum Die Welt gerechter machen" sowie in folgenden verlinkten Flyer zu finden.

Flyer_Symposium_2017_Giessen-local-global.pdf
 

Neu auf Partnerschaft und Gerechtigkeit weltweit schauen

Interessieren Sie sich für Entwicklungspolitik? Für Partnerschaftsarbeit? Oder engagieren Sie sich in der Flüchtlingshilfe, für die Jugendwerkstatt oder für das Gemeinwesen? Welche neuen Möglichkeiten haben wir, die globalisierte Welt mitzugestalten und weltweite Beziehungen aufzubauen?

Diese Frage wird das Evangelische Dekanat Gießen auf dem Internationalen Symposium „Gießen lokalglobal: Neue Perspektiven weltweiter Partnerschaft und Gerechtigkeit. Reformatorische Herausforderungen 2017“ diskutieren und neue Möglichkeiten der Zusammenarbeit praktisch erleben.

Martin Luther fand vor 500 Jahren aus seiner Angst heraus eine neue Sichtweise auf Gott und auf eine Gerechtigkeit für den einzelnen Menschen. Heute ängstigt uns weniger die Furcht vor einem strafenden Gott, als viel mehr die Unsicherheit in der globalisierten
Welt.

Bei den Vereinten Nationen wird ein Perspektivwechsel in der Entwicklungspolitik diskutiert. Mit einer gegenseitigen Beratung auf Augenhöhe sollen die globalen Herausforderungen neu angegangen werden.

Wir bringen internationale Gäste zu den Themen Gemeinwesenarbeit, Jugendbeschäftigung und Migration zusammen. Wir tauschen mit ihnen Erfahrungen aus und wollen Denkanstöße in unsere Kirche und in unsere Stadt geben.

Dabei sind Fachleute aus der Praxis aus Lateinamerika, Afrika, unserer Partnerdiözese Amritsar Indien, und auch aus unserer Region.

Ich würde mich freuen, wenn auch Sie Interesse an dieser Veranstaltung haben und gebe auch gerne weitere Informationen weiter. Gerne können Sie beiliegenden Flyer auch vor Ort an Interessierte verteilen.



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


Montag, 15. Mai 2017
21:30 Uhr

Grundlagen in Excel Verweisfunktionen SVERWEIS WVERWEIS und VERWEIS

Vor einiger Zeit bat mich ein Kollege darum die unterschiedlichen Verweisfunktionen in Excel einmal kurz darzustellen. Auch wenn ich in letzter Zeit mehr mit Diagrammen und Pivot-Tabellen arbeite (siehe zum Beispiel im Artikel "Datentrends für Drittmittelstatistik mit Sparklines ab Excel 2010 darstellen durch Liniendiagramme in Zellen") mag ich doch als kleine Grundlage für Excel die von mir gerne verwendeten Verweisfunktionen anhand eines kurzen Beispiels vorstellen.

Hierbei habe ich die drei Verweisfunktionen (SVERWEIS, WVERWEIS und VERWEIS) anhand eines kurzen Beispiels in Excel dargestellt.

Beispiel SVERWEIS

Die Funktion SVERWEIS sucht zeilenweise eine Matrix nach einen vorgegebenen Kriterium ab und liefert den Spaltenindex beim positiven Fund zurück.

Hierbei kann das Suchkriterium in eine Zelle stehen auf die entsprechend Bezug genommen wird.

Nehmen wir einmal eine konkrete Tabelle als Beispiel in der Kostenartengruppen als Spalten und Kostenstellen als Zeilen hinterlegt sind.

Die Tabelle sieht nun wie folgt aus:

Matrix SVERWEIS in Spalten Kostenartengruppen und in Zeilen Kostenstellen
In gelb ist hier die Matrix (in unseren Fall die Datentabelle hervorgehoben) über die einzelnen Spalten der Tabelle ist der Spaltenindex hervorgehoben (die erste Spalte ist 1, die zweite Spalte 2 und so weiter). Bei der Verwendung von SVERWEIS kommt der ersten Spalte eine besondere Bedeutung zu, diese ist gleichzeitig das Suchkriterium über das per SVERWEIS eine Kontrolle erfolgt. Hier muss also das Suchkriterium stets am Anfang der Spalte stehen. Die Ausgabe erfolgt anhand des Spaltenindex welcher in Pfeilrichtung dargestellt ist. Konkret möchten wir nun also für die Kostenstelle 102 den aktuellen Saldo erhalten. Dazu verwenden wir nun die SVERWEIS Funktion wie in folgender Abbildung zu sehen.

Formel SVERWEIS

Die Formel SVERWEIS ist wie folgt aufgebaut:

=SVERWEIS(Suchkriterium;Matrix;Spaltenindex;FALSCH)

Als erstes Argument wird das Suchkriterium übergeben (in unseren Beispiel die Kostenstelle 102, danach folgt die Matrix welche durchsucht wird (unsere Datentabelle nach Kostenstellen und Kostenarten), der Spaltenindex um anzugeben welche Spalte ausgegeben wird und als Abschlussparameter FALSCH damit nur genaue Übereinstimmungen ausgegeben werden sollen.

Im Ergebnis haben wir hier also tatsächlich den Saldo in Höhe von 78,00 für die Kostenstelle 102.

Beispiel WVERWEIS

Was ist aber wenn unser Suchkriterium nicht am Anfang der Zeile sondern in der Spalte steht? Hier kann die Formel WVERWEIS verwendet werden in der die Matrix anhand des Zeilenindex ausgegeben wird. Als konkretes Beispiel haben wir wieder eine Tabelle mit Kostenstellen als Zeilen und den Saldo des entsprechenden Geschäftsjahres als Spalten.

Beispiel Matrix WVERWEIS Jahr als Spalte und Kostenstelle als Zeile
Hier soll nun für die ein ausgewähltes Geschäftsjahr die einzelnen Werte der Kostenstellen ausgegeben werden. Das Ziel ist es zum Beispiel die einzelnen Salden für das Jahr 2015 auszugeben. Anhand des Geschäftsjahres ist auch schon ersichtlich, wann ich diese Dokumentation erstellt hatte ;-).

Die Formel ist dabei wie folgt aufgebaut:
Formel WVERWEIS
Hier ist nun das Suchkriterium das Geschäftsjahr und jede Kostenstelle hat einen eigenen Index zur Ausgabe der im Geschäftsjahr relevanten Salden.

Technisch betrachtet lautet die Formel wie folgt:

=WVERWEIS(Suchkriterium;Matrix;Zeilenindex;FALSCH)

Das Suchkriterium ist das in Zelle B22 angegebene Geschäftsjahr, die Matrix die Datentabelle und als Zeilenindex wird die Position (Zeile) der relevanten Kostenstelle angegeben. Selbstverständlich sollen im Controlling auch nur exakte Werte angegeben werden, daher ist abschliessend auch der Parameter FALSCH mit übergeben.

Beispiel VERWEIS

Was ist aber, wenn wir eine im Berichtswesen gar nicht so unübliche Tabelle mit einer Vielzahl von Spalten haben? Ist es hier tatsächlich erforderlich die einzelnen Zeilen oder Spalten abzuzählen nur um die relevanten Ergebnisse zu definieren?

Wie nicht anders zu erwarten ist die Antwort auf die Frage eindeutig NEIN. Hier kann die Funktion VERWEIS genutzt werden durch die die durchsuchenden Werte und die Ergebnisse tatsächlcih voneinander getrennt sind. Zur Verdeutlichung auch wieder ein kurzes Beispiel.

VERWEIS mit Suchvektor und Ergebnisvektor
Bei der Verweisfunktion sollen die einzelnen Kostenstellen nach den Suchkriterium durchsucht werden (diese werden als Suchvektor bezeichnet) und innerhalb der Budgetwerte die auf gleicher Position befindlichen Budgetwerte ausgegeben werden. Dabei können die Kostenstellen und die Budgetwerte an vollständigen unabhängigen Positioinen der Tabelle stehen (die Kostenstellen könnten sogar senkrecht und die Budgetwerte waagrecht hinterlegt sein) wichtig ist nur, dass der Suchvektor und Ergebnisvektor identisch viele Anzahl an Zellen in einer Richtung umfasst.

Die sehr übersichtliche Formel ist dann in folgender Abbildung abgebildet:
Formel Verweis mit Suchvektor und Ergebnisvektor

Die Formel lautet dabei technisch wie folgt:

=VERWEIS(Suchkriterium;Suchvektor;Ergebnisvektor)

Dabei ist das Suchkriterium in der Zelle A 40 die Kostenstelle 102 und als Suchvektor wird nun geschaut an welche Position diese Kostenstelle im Suchvektor auftaucht (es ist der dritte Wert) und im Ergebnis wird auch diese Position im Ergebnisvektor ausgegeben.

Damit ist diese Funktion schon eine der flexibleren Funktionen (sofern man sich nicht mit INDEX auseinander setzen mag) und ermöglicht so ein schnelles Ergebnis.

Fazit

Natürlich können diese Verweisfunktionen auch etwas komplizierter ausfallen. Im Artikel "Prüfung inwieweit ein Wert, bspw. eine Kostenstelle, innerhalb eines Intrevalls (Gruppe) liegt in Excel" hatte ich die Verweisfunktion genutzt ob ein Wert innerhalb eines vorgegebenen Intervall liegt. Im Artikel "SVERWEIS ohne NV und dynamische Größen für Datenbereiche" bin ich auf das Thema eingegangen welche Vorkehrung getroffen werden kann, wenn ein Wert nicht gefunden wird.

Hinweis INDEX / VERGLEICH als Alternative

Wer sich nicht aus Nostalgiegründen an die Verweisfunktionen klammert kann aber auch die Funktionen INDEX / VERGLEICH nutzen die auch im Ergebnis bei Artur von excel-koenig.de im Artikel "5 Excel Formeln, die du kennen solltest" Anfang 2017 zusammengestellt worden sind.

Hier kann ich unter anderen auf einen Artikel von Martin Weiß (tabellenexperte.de) zum Thema "Ein echtes Dream-Team: INDEX und VERGLEICH" hinweisen.
 

Praxisbeispiele Verweisfunktionen


Persönlich bin ich wieder auf die Entwurfsversion dieses Beitrag aufmerksam geworden nachdem ich die Zusammenstellung mehrere Artikel zu Verweisfunktionen von Gerhard Pundt von clevercalcul (siehe Beitrag "29 empfehlenswerte Artikel zu SVERWEIS / VLOOKUP" im Feedreader als ToRead gefunden hatte :-). Wobei ich gerade bemerke, dass er auch im Artikel "3 Verweisfunktionen von Excel, die du kennen solltest" praktische Anwendungsbeispiele für diese Funktionen findet.

Wie schon im Kommentar erwähnt empfinde ich die VERWEIS Funktion tatsächlich als flexibel, jedoch muss ich zugeben, dass der Vorteil, dass anhand der Formelnamens direkt klar ist, woran sich die Formel orientiert ebenfalls charmant. Insbesondere wenn die Formel auch noch mit Spalte() als Index genutzt wird.

 

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


<< Frühere Einträge
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