Webinar_RAP Teil 1

Webinar – ABAP® RESTful Application Programming Model (RAP)

Vielen Dank für Ihre Teilnahme an unserem Webinar!

Wie angekündigt, werden wir uns auch im nächsten Webinar mit RAP beschäftigen. Dann etwas mehr im Detail. – Anmeldelink befindet sich ganz unten in diesem Blog.

Unterlagen/Links zum Webinar „ABAP RESTful Application Programming Model (RAP)“

Blogs/Links

FAQ

Es gab einige Fragen im Verlauf des Webinars:

  • Frage: Ist das ABAP RESTful Programming Model, zu dem es ja auch Literatur von SAP Press gibt, das selbe wie RAP?
    • Antwort: Ja genau RAP = RESTful Applicatino Programming Model
  • Frage: Wie kann ich verhindern, dass bei Projections auf einen Root-View, die Compositionen verlorenen gehen?
    • Antwort: Bei der Projection muss man die Composition umbiegen auf die Projection des „Kindes“
  • Frage: OData V4 geht auf onPrem mit 2020 SPS01.
    • Antwort: Jop!
  • Frage: Die neuen, nicht mehr DDIC basierten, View-Entities kann man leider nicht mit den SE16* Transaktionen auswerten. Wisst ihr da einen Workaround? Ist gerade für Troubleshooting auf Nicht-Entwicklungssystemen und Mandanten immer ganz praktisch, da man dort oft keinen ADT Zugriff hat. Zudem ist es für Nicht-Entwickler auch nützlich im die Views, bzw. die Daten zu validieren.
  • Frage: Welche Eclipse Version habt Ihr im Einsatz?
    • Antwort: Eclipse 2020-12 mit ABAP 3.16 -> immer the Latest and greatest! – Ergänzung Föß: Ich aktualisiere Eclipse immer alle 3 Monate, sobald eine neue Version rauskommt. ADT Update checke und update ich ggf. täglich.
  • Frage: Was ist der unterschied von define root view und definde root view entity?
    • Antwort: ROOT VIEW ist noch DDIC basiert (DDIC View)
  • Frage: Gibt es hier ein Thema Locking auf den DB-Tabellen?
    • Antwort: Locking geht natürlich auch: Sperrobjekte, Optimistisches Locking im eTag (das kommt beim nächsten Mal ganz sicher), Draft
  • Frage: Domi hat das managed Szenario oder?
    • Antwort: Domi verwendet das Managed Szenario, aber dem EML ist es egal was drunter läuft – ob managed oder un-managed
  • Frage: Starkes Webinar. Vielen Dank für den Vortrag. Macht das ganze viel sympatischer wenn es live (coding) durchgeführt wird!
    • Antwort: Danke dir!
  • Frage: Danke. Wollte nur wissen, ob man die neueste Version nutzen kann, nicht das es Probleme gibt.
    • Antwort: Immer die neueste von ADT und Eclipse – man sollte aber 1 bis 2 Wochen warten mit dem Eclipse update, bis auch die SAP 100%ig nachgezogen hat 🙂
  • Frage: Eine Verständnisfrage, in den Beispielen der SAP sieht man immer die Implementierung auf Basis „selbst“ erstellter Tabellen. Aber wie funktioniert das ganze Model, wenn ich auf APIs (OneOrder, BP usw) zugreifen muss. Ich will ja nicht unbedingt Daten lesen und schreiben mit direktem Tabellen Zugriff.
    • Antwort: Dieses Thema versuchen wir beim nächsten oder übernächsten Webinar aufzugreifen.

CDS View Entities / CDS Root View Entities

Wir haben im Webinar immer mit CDS ROOT VIEW ENTITIES gearbeitet. CDS View Entites sind ab aber erst ABAP 7.55 verfügbar und es handelt sich dabei um eine verbesserte / erweiterte Möglichkeit der CDS DDIC-based Views. CDS View Entities sind sozusagen der Nachfolger der CDS DDIC-based Views.

Unterschiede:

  • Keine zusätzlicher DB View notwendig (@AbapCatalog.sqlViewName … ) – daher aber auch kein SE16 …
  • Schnellere Aktivierung
  • Vereinfachte Syntax
  • Verbesserter / strikterer Syntaxcheck um potentielle Fehler bereits bei der Aktivierung zu erkennen

Teilnehmer

  • Deutschland 50%
  • Österreich 41%
  • Rest 9 % (Schweiz, Russland, Rumänien, Indien, Frankreich)

Twitter

Unsere nächtes Webinar

Cadaxo SQL Cockpit Report Generation

Cadaxo SQL Cockpit Report Generation

One important (and cool) feature of SQL Cockpit is an ability to auto-generate ABAP reports directly from the SQL query entered in the cockpit.

We illustrate below, one example of how this may be utilised

As you can see from the code snippet and screenshot below, suppose we want to generate a report output that executes a relatively complex select query :

If you want to generate SAP report that executes this query, it would be a tedious and repetitive work to create a report manually in ABAP. Report generation feature of SQL Cockpit makes this work much simpler and quicker as illustrated below (We have implemented customer requirements with many more fields and complex select query that pulls data from upto 10 database tables!).

After executing the SQL query, just click on the highlighted „Template“ icon and „Select Template“ textbox appears

Choose an ‚advanced‘ option in the screenshot above.

We are taken to the Report Template Wizard

Click on the Continue button

Enter the report name, description, and other optional information. Note that „Tabular Selection Blocks“ checkbox to generate multiple tabs on the selection screen is selected. Continue to the next window

As shown below, we get a list of selection screen field options, (also auto-generated from the WHERE condition of the SQL query 🙂 )

As shown above, we have three options…

  1. create a selection screen field with an auto-populated value from the SQL where condition
  2. create a selection screen field without an auto-populated value from the SQL where condition
  3. Select query of a generated report will contain hard-coded value from the SQL where condition

Click on Continue button again after making your selections from one of these options

Finally, a generate report option is presented along with a list of specified report parameters in the previous step as seen below

Click on the Generate Report button

Select package as applicable and we are done.

Presto!

A generated report can be viewed / executed in SE38 like any other custom report.

Note the selection screen as seen below (with different selection screen tabs for fields from different tables)

Here is a screenshot from the select query (that was also auto-generated, of course 🙂 )

As highlighted in the screenshot, one of the where condition was created with a hard-coded values from the select query („Wien“) as per the selection in the report generation template!

Conclusion: we can auto-generate complex SAP reports using SQL Cockpit in less than 15 minutes! We can even customize special features based on individual client requirements.

This saves a lot of a lot of repetitive work for programmers and power users 😉

Webinar – ABAP® 7.55 Releaseabhängige Änderungen

Vielen Dank für Ihre Teilnahme an unserem Webinar!

Unterlagen/Links zum Webinar „ABAP 7.55 Releaseabhängige Änderungen

Links

Blogs/Links

Unsere nächtes Webinar

Domain Text Feature in SQL Cockpit

I don’t see the domain description in the result SQL statement screen? What should I do?
The solution is very easy in our SQL Cockpit, there is an user setting with which the user can see not only the fixed value, but the description of the value itself. There is no need to manual check the description, in case it exists it is displayed in the result screen.

Example
The “Business partner category“ domain contains the following values entries in the Value Range tab. In a simple standard SQL statement selection the description it is not displayed as a part of the selection query, so the user should manually check the value.

Executing a simple select statement with multiple parameters (Partner, Type) from “Business Partner: General Data I“ table.

Second column values comes from the first data element domain. The name of the new field is a generated value. It can be used also with the Column Header: “Fieldtext“ and “Show alias in header“ functionality from the user Personal Settings, which allows the user to customize the result list header name.

Personal Settings
On the SQL Cockpit main screen the Personal Settings button is highlighted.

If the user wants to use the Domain Text functionality must tick the “Add Domain Text” checkbox. It is saved permanently (after the system log off as well), in case of it is not needed anymore should be unchecked after the use.

Links
https://help.sap.com/doc/abapdocu_751_index_htm/7.51/en-us/abenddic_domains.htm
https://help.sap.com/doc/abapdocu_751_index_htm/7.51/en-us/abenddic_domains_sema.htm

Status & Farben in CDS basierten Fiori Elements Anwendungen

Status & Farben in CDS basierten Fiori® Elements Anwendungen

In Fiori Elements Anwendungen können Statusicons/Statusfarben durch Annotations gesetzt werden. Natürlich auch im CDS View. Dadurch können positive, negative oder neutrale Informationen besonders hervorgehoben werden. Im nachfolgenden Beispiel wird eine textuelle Statusinformation sowohl durch die entsprechende Farbe als auch das passende Symbol hervorgehoben.

 

Umsetzung mit CDS View Annotations

Die Statusinformation muss in einem eigenen CDS Feld vorhanden sein und kann folgende Werte enthalten:

  • 0 Grau
  • 1 Rot
  • 2 Gelb/Orange
  • 3 Grün

Beispielsweise könnte ein Feld StatusColor im CDS View (meist der Interface View) wie folgt gesetzt werden:

Hier wird einfach anhand des Statustextes im Feld _status.Description ein neues Feld StatusColor mit dem entsprechenden Wert gesetzt.

Im Consumption View bzw. In der Metadata Extension ist die Verwendung dann denkbar einfach und durch die UI.lineItem Annotation criticality definierbar:

Durch die zusätzliche Annotation criticalityRepresentation: #WITHOUT_ICON kann die Ausgabe des Icons unterdrückt werden:

Das Ergebnis sieht dann wie folgt aus:

Eine ähnliche Vorgehensweis ist bei vielen anderen Fiori Elements Annotations möglich und z.B. gut über die Codecompletion auffindbar. Beispielsweise bei den Facets oder Feldgruppen.

Ich habe die Farben z.B. in einer Anwendung zur Darstellung von Datenbank Differenzen eingesetzt. Dadurch konnten kritische Abweichungen besonders gekennzeichnet werden.

SQL Cockpit_Releaseinfos

Cadaxo SQL Cockpit 3.7 – Releaseinfos

Die SQL Cockpit Version 3.7 ist fertig und bietet wieder ein paar Korrekturen/Verbesserungen und einige interessante neue Features. Nachfolgend ein Überblick über die wichtigsten Neuerungen.

Tabs Layout

Bisher konnten mehrere Listen in folgenden drei Layouts dargestellt werden: Vertikal, Horizontal oder Matrix. Mit diesem Release haben wir die neue Layout-Variante Tabs ergänzt. Dadurch wird immer nur eine Ergebnisliste dargestellt und nutzt somit den gesamten Ergebnisbereich. Im Header-Bereich der Listen kann zwischen den Ergebnislisten hin- und hergeschalten werden.

Domain Text

Die Beschreibungstexte von Domänen-Festwerten können nun in die Liste automatisch mit aufgenommen werden. Für Spalte mit einer Domäne wird eine zweite Spalte mit gleicher Überschrift erzeugt in welcher der Beschreibungstext des Festwerts enthalten ist. Dieses Feature ist vorerst nur verfügbar, wenn der strikte ABAP SQL Modus verwendet wird. (strikter Modus: Select Felder mit Beistrich getrennt, … )

Listenvergleich

Im Bereich des Listenvergleichs haben wir eine zweite Darstellungsform des Ergebnisses eines Vergleich aufgenommen. Bisher wurden die Spalten der beiden Listen nebeneinander dargestellt. Durch die neue Darstellung werden die Spalten nun untereinander dargestellt.

Darstellung nebeneinander Darstellung untereinander

CSV Export

Beim CSV Export von Ergebnislisten erscheint nun vor dem Export ein Popup in dem folgende Einstellungen vorgenommen werden:

Report Template Erweitert – Gruppierung von Selektionsparametern

Im Wizard zur Generierung eines Reports mit dem erweiterten Template, kann die neue Funktion Tabellen-Auswahlblöcke markiert werden. Im generierten Report werden dann die Selektionsfelder nach ihrer Tabellenzugehörigkeit in eigene Selektionsblöcke gruppiert.

 

Ausblick 4.0

Nach dem Release ist vor dem Release. Im nächsten SQL Cockpit Release werden wir nun die länger geplanten tiefgreifendern Erweiterungen vornehmen um alle ABAP SQL Select Operationen (CTE, … ) eines S/4 HANA Systems zu unterstützen! 

Wir rechnen damit, dass das SQL Cockpit 4.0 im 3. Quartal 2022 erscheinen wird. 

 

SAP Community Call

SAP® Community Call – Was muss ein ABAP® Entwickler wissen um in S/4 bestehen zu können

Am 15. Dezember 2020 haben wir in einem von der SAP organisierten Community Call über ABAP und was ein Entwickler unbedingt wissen sollte um in S/4 bestehen zu können gesprochen. Natürlich gäbe es viel mehr Themen und mancher Teilnehmer sieht den einen oder anderen Punkt vielleicht anders. Jedenfalls haben wir im Call über die aus unserer Sicht wichtigsten Punkte gesprochen:

  • ABAP Syntax: ABAP Objects, Expressions
  • Code Pushdown: SQL Expressions, CTEs, CDS Views, AMDP
  • IDEs: ADT, BAS, Visual Studio Code
  • Tools in ABAP: Statische Codechecks, Analysetools in ABAP
  • Programmiermodelle: BOPF, RAP, OData, Fiori Elements, Gateway
  • Erweiterbarkeit: OnPrem, In-App, Side-by-Side
  • ABAP Steampunk
  • ABAP Open Source: dotabap.org, abapgit
  • Clean Code: Clean ABAP, Refactoring, Unit Tests

Der Community Call wurde aufgezeichnet und steht via https://www.youtube.com/watch?v=MdHwS_C7mHE&feature=youtu.be zur Verfügung.

PDF Slides mit Links: SAP Community Call S4ABAP Link

Webinar – SAP Fiori® Elements

Vielen Dank für Ihre Teilnahme an unserem Webinar!

 

Mit den SAP Fiori Elements hat uns SAP ein ziemlich cooles Werkzeug in die Hand gegeben, welches die Erstellung von Fiori Anwendungen extrem beschleunigt und vereinfacht. Als ABAP Entwickler kann man sich auf das Wesentliche konzentrieren, während sich das SAP Fiori Elements Framework darum kümmert, dass ein schönes, einheitliches Fiori Userinterface generiert werden.

In diesem Webinar haben wir einen Überblick über die SAP Fiori Elements vermittelt. Angereichert um ein paar live Demos.

Diesmal hat uns erneut Sören Schlegel von der Consilio unterstützt. Vielen Dank dafür!

Da wir wesentlich mehr Demos vorbereitet hätten, werden wir das nächste Webinar auch zum Thema „SAP Fiori Elements“ machen. Diesmal aber – No Slides, Just Code! Weitere Details weiter unten in diesem Blog bzw. direkter Link zur Anmeldung hier: SAP Fiori Elements Part 2 – Just Code.

Slides & Video

Links

Übersicht

SAP Blogs

Videos

Developer Tutorials

Buchtipp

Nicht vergessen, als DSAG Mitglied bekommt man bei SAP Press einen Preisnachlass. https://www.rheinwerk-verlag.de/dsag

Sonstige Links

Unser nächstes Webinar

Heuer findet noch ein weiteres Webinar statt. Da wir viel umfangreichere Live Demos vorbereitet hätten, wollen wir einen 2. Teil zum Thema SAP Fiori Elements machen. Diesmal jedoch NO SLIDES und gleich mal zur Sicherheit für 90 Minuten eingeplant. 60 Minuten Talk, 30 Minuten Q&A.

Webinar – SAP®/ABAP® und Microsoft

Vielen Dank für Ihre Teilnahme an unserem Webinar!

Ein Datenaustausch zwischen MS und SAP muss nicht immer ein CSV Up- oder Download sein. Dass hier mehr möglich ist, haben wir in diesem Webinar gezeigt.

Diesmal hat uns Sören Schlegel von der Consilio unterstützt. Vielen Dank dafür!

Unterlagen/Links zum Webinar „SAP/ABAP und Microsoft

Links

Unser nächtes Webinar

Das nächste Webinar findet nach der Sommerpause statt. Das Thema wird noch rechtzeitig bekannt gegeben, aber mit Sicherheit wird es wieder sehr interessant!

Webinar – Online gegen Corona im SAP® Umfeld

Vielen Dank für Ihre Teilnahme am Webinar!

Ich möchte mich nochmals ausdrücklich bei allen Co-Hosts und bei Svea Becker bedanken!

Damir Majer @majcon
Christian Drumm @ceedee666
Enno Wulff @ennowulff
Sören Schlegel @SoSchlegel87
Domi Bigl @DomiBiglSAP
Johann Fößleitner @foessleitnerj
Svea Becker @sveabecker3112

 

Unterlagen/Links zum Webinar „Online gegen Corona im SAP Umfeld

 

Links aus den Folien

Nachfolgend alle Links aus den Folien

 

Ressourcen der SAP und HPI

developers.sap.com
answers.sap.com
blogs.sap.com
developers.sap.com/tutorial-navigator.html
community.sap.com/programs
community.sap.com/resources/community-calls
events.sap.com/teched/en/sessions.aspx
open.sap.com
open.hpi.de

 

Community Blogs

abapblog.com (by Łukasz Pęgiel)
tricktresor.de (by Enno Wulff)
zevolving.com (by Naimesh Patel)
sapyard.com
codezentrale.de

 

Community Newsletter

abapweekly.info  – (ABAP Newsletter by Damir Majer)

 

Community Events

wiki.scn.sap.com/wiki/display/events (SAP Inside Tracks, ABAP Events, Stammtische)
opensit.net (Recent SAP Inside Tracks)
blogs.sap.com/2020/02/21/announcing-sap-inside-track-online-in-may-2020 (SAP Online Track in May 2020)
wiki.scn.sap.com/wiki/display/events/ABAP+CodeRetreat (ABAP CodeRetreat)
wiki.scn.sap.com/wiki/display/events/SAP+Inside+Track – (Inside Tracks, Stammtische, ABAP Events)

 

Streaming & Videos

youtube.com/playlist?list=PLzLY5gikd9hCE52Xlz9e9tYGQj_U2ThYx  – (Max’s Adventure in SAP Cloud Platform by Max Streifeneder)
youtube.com/playlist?list=PL068D7CC6E905E638 – (SAP Code Talk by Ian Thain)
youtube.com/c/christiandrumm – (Christian Drumm FH Achen)
youtu.be/mxybNzCjN98 – (ABAP Freak Show by Thomas Jung)
youtube.com/playlist?list=PL6RpkC85SLQAIntm7MkNk78ysDm3Ua8t0 – (Hands – on SAP dev with qmacro by DJ Adams)
youtube.com/playlist?list=PLmhd8krmIyyhUkFBuGYG0k4lXYWG63RK_ – (Code at home with qmacro by DJ Adams)
youtube.com/channel/UCRhV_0Jlwgz_v3jmAuhHYZg – (SAP Hana Academy)
blogs.sap.com/tag/sapcommunityreportlive – (SAP Community Report Live by Craig Cmehil)

 

Podcasts

open.sap.com/static/education-newscast/ (Education NewsCast)
anchor.fm/sap-community-podcast (Coffee Corner Radio)
se-radio.net/ (SERadio)
innoq.com/de/podcast/ (INNOQ Podcast)

 

Sonstiges

dsag.de/veranstaltungen/liste (DSAG Veranstaltungen)
rheinwerk-verlag.de/sap/ (SAP PRESS)
rheinwerk-verlag.de/dsag/ (SAP PRESS – DSAG Discount!)
de.espresso-tutorials.com/ (Espresso Tutorials)
dotabap.org/ (ABAP Open Source Projects)

 

Unsere nächstes Webinar