Neue Themen als SAP Entwickler

Getting started ... Alles für einen gelungenen Start.
156 Beiträge • Vorherige Seite 10 von 11 (current) Nächste
156 Beiträge Vorherige Seite 10 von 11 (current) Nächste

Re: Neue Themen als SAP Entwickler

Beitrag von tar (Specialist / 110 / 22 / 31 ) »
DeathAndPain hat geschrieben:
10.10.2024 13:40
Auch im medizinischen Bereich könnte ich ein Beispiel erläutern, bei dem 3 Hautärzte nacheinander übelst versagt haben und ich als Laie mir dann sehr erfolgreich selber geholfen habe - mit Mitteln aus dem Baumarkt!
...
An die Bremsen meines Autos gehe ich nicht selber ran. Das ist ein sicherheitsrelevanter Bereich; da gehe ich kein Risiko ein.
🤣

Folgende Benutzer bedankten sich beim Autor tar für den Beitrag (Insgesamt 2):
ralf.wenzelblack_adept


gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Neue Themen als SAP Entwickler

Beitrag von tar (Specialist / 110 / 22 / 31 ) »
DeathAndPain hat geschrieben:
11.10.2024 10:54
in dem Fall, in dem Du genau weißt, dass Du nur eine Instanz brauchst, eine statische Klasse keine Nachteile hat, aber übersichtlicher zu handhaben ist.
Werden in einem laufenden Report einmal gesetzte Attribute einer statischen Klasse nicht beibehalten - also auch, wenn man zum SELECTION SCREEN zurückgeht und das Ganze erneut ausführt? Genau das wird mittels Instanziierung verhindert und ganz nebenbei wird mittels etwaigem FREE auch der Speicher freigeräumt.

Aber klar: es kommt immer auf den Anwendungsfall an, wann man was nutzt.

Statische Klassen nutze ich bspw. fast ausschließlich für reine Hilfsmethoden (d.h. mit Eingangs- und Ausgangsparametern und ohne Speicherung von Klassen-Attributen) und für übergreifende Typisierungen (bspw. als abstrakte Klasse als Ersatz für den TOP-Include). Instanziierungsklassen für komplexere/verschachtelte Logiken. Singletons bei Sammelgang/Massenverarbeitungen, wobei in Get_Instance() die statisch hinterlegten Schlüssel geprüft werden und eben ggf. eine neue Instanz wird.

Auf globale Variablen verzichte ich dabei soweit möglich, d.h. Parameter/Select-Options übergebe ich bspw. direkt in den Constructor der Instanz meiner Selektionsklasse. Nicht zuletzt deshalb, weil Kopfzeilen hinfällig werden und die Parameter sprechender benamt werden können (bspw. statt "SO_RECHE" eben "FILTER_RECHNUNGSEMPFAENGER" oder dergl.).
DeathAndPain hat geschrieben:
11.10.2024 10:54
meines Wissens kann man sich privat kostenlos einen SAP-Server zu spielen aufsetzen.
Vor einigen Jahren habe ich das mal für Mini-SAP getan. Einfach und insb. für Einsteiger ist das mMn jedoch nicht: https://go.support.sap.com/minisap/#/minisap

Welche Variante darfs sein? Lizenz? Dauer? Kosten? Hardware-ID? Datenschutz?! Linux! 🤯

Re: Neue Themen als SAP Entwickler

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
black_adept hat geschrieben:
09.10.2024 14:36
Das stimmt so nicht. Es gibt diverse andere Gründe FM zu schreiben
- RFC-FuBa
Werden die nicht durch ODATA-Services abgelöst?

Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Neue Themen als SAP Entwickler

Beitrag von DeathAndPain (Top Expert / 1966 / 261 / 415 ) »
ralf.wenzel hat geschrieben:
15.10.2024 16:03
Sowas hatte ich neulich auch, mit mehreren Listboxen im Selektionsbild. Und schon schreibe ich nur eine Klasse für die Listbox und mache drei Instanzen draus.
Ich denke, das ist das, was black_adept mit "mit Kanonen auf Spatzen schießen" gemeint hat. Eine Listbox zu füllen erfordert einen einzigen Funktionsbausteinaufruf (an dem auch Du in Deiner Klasse nicht vorbeikommen wirst, es sei denn, die SAP hat mittlerweile eine klassenbasierte Alternative dafür eingeführt, ohne dass ich das mitbekommen hätte). Listboxen in Selektionsbildern enthalten meist eine statische Liste von Werten; die gebe ich dem Funktionsbaustein direkt als dickes VALUE-Konstrukt mit.

Das Ganze ist herrlich übersichtlich und gut zu warten. Stattdessen Klassenaufrufe zu verwenden, zwingt den Leser erst mal dazu, sich da reinzudenken, was Du da eigentlich machst. Am Ende ist das Ganze insofern aufgeblähter und schwerer zu lesen und zu warten ohne Mehrwert.

Re: Neue Themen als SAP Entwickler

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
Siehste? Und ich finde das als Objekt deutlich übersichtlicher.

Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Neue Themen als SAP Entwickler

Beitrag von DeathAndPain (Top Expert / 1966 / 261 / 415 ) »
Weil Du es selber geschrieben hast. Wenn ein anderer solch Klasse schreiben würde und dabei einen anderen Stil verwenden würde, als Du es gewohnt bist, dann müsstest Du Dich auch erst mal da reindenken, was er da gemacht hat.

Wenn Du hingegen in einem fremden Code Folgendes liest:

Code: Alles auswählen.

CALL FUNCTION 'VRM_SET_VALUES' EXPORTING id     = 'P_LST'
                                         values = VALUE ty_it_listbox( ( key = 'A' text = 'Punkt 1' )
                                                                       ( key = 'B' text = 'Punkt 2' )
                                                                       ( key = 'C' text = 'Punkt 3' ) )
                               EXCEPTIONS id_illegal_name = 1.
dann weißt Du sofort und ganz genau, was da Sache ist. Da musst Du nicht nachdenken und keinen Links zu Definitionen oder Implementierungen folgen. (Ich unterstelle dabei, dass dieser FB Dir geläufig ist.) Mehr ist es ja nicht, was man tun muss, um eine Listbox zu füllen.

Sowas nochmal in eine separate Klasse zu kapseln und davon dann Instanzen zu bilden ist einfach nur Wasserkopf ohne jeden Gewinn an Übersichtlichkeit oder was auch immer. Insbesondere wenn Du an andere denkst, die Deinen Stil nicht notwendigerweise teilen.
tar hat geschrieben:Vor einigen Jahren habe ich das mal für Mini-SAP getan. Einfach und insb. für Einsteiger ist das mMn jedoch nicht: https://go.support.sap.com/minisap/#/minisap

Welche Variante darfs sein?
Man muss natürlich schon wissen, was es mit den diversen Abkürzungen auf sich hat. Dann aber finde ich Deine Frage recht leicht zu beantworten: A4H, wenn man sich ein S/4 HANA-System aufsetzen möchte und NPL, wenn es ein herkömmliches R/3-System werden soll. In letzterem Fall würde ich immer auf Sybase setzen, weil das die kostenlos mitgelieferte Datenbank der SAP ist (bietet sich für ein kostenminimales Spielzeugsystem an).

Aber Dein Link verweist ja ohnehin nur auf Lizenzschlüssel. Die richtige Seite für die Auswahl ist meiner Meinung nach diese hier. Dort sticht einem sofort SAP NetWeaver AS ABAP Developer Edition 7.52 SP04 als passender Download ins Auge.
tar hat geschrieben:Werden in einem laufenden Report einmal gesetzte Attribute einer statischen Klasse nicht beibehalten - also auch, wenn man zum SELECTION SCREEN zurückgeht und das Ganze erneut ausführt?
Wenn Du in den SELECTION-SCREEN zurückgehst, ist immer alles weg, als ob Du die Transaktion neu gestartet hättest. Tatsächlich lädt er dann sogar die neueste Codeversion nach. (Bedeutet im Klartext: Wenn Du Deine Ergebnisliste auf dem Schirm hast und am Code was korrigierst und dann mit F3 ins Selektionsbild zurückkehrst, lädt er Deine Korrektur, so dass Du direkt wieder testen kannst, ohne die Transaktion zu verlassen.)

Abgesehen von Unit Tests, die nur mit Instanzen funktionieren, gibt es keinen Grund für Klassen, bei denen man genau weiß, dass man nur eine Instanz braucht. Und in der Praxis setzt kaum ein Schwein Unit Tests ein. Wer dies vorhat und zu diesem Zweck eine instanziierte Klasse wählt, möge das gerne tun, das ist ein legitimer Grund. Ich sehe aber immer Eininstanzklassen, bei denen Unit Tests das letzte sind, worum sich ihre Urheber scheren würden.
Ralf hat geschrieben:Werden die nicht durch ODATA-Services abgelöst?
"Abgelöst" ist ein dehnbarer Begriff. Sicherlich sind ODATA-Services neuer und können gerade für Zugriffe aus externen Systemen eine gute Wahl sein. Wenn ich allerdings weiß, dass Quell- und Zielsystem SAP-Systeme sind, dann finde ich es viel einfacher und damit auch eleganter, einen RFC-Funktionsbaustein zu bauen und aufzurufen, als aufwendig einen ODATA-Service zu bauen, der letztlich auch nichts anderes leistet.

Re: Neue Themen als SAP Entwickler

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
Da haben wir grundsätzlich unterschiedliche Denkschulen. Ich denke nicht, dass eine besser ist oder schlechter. Aus dem "Atari vs. Commodore"-Alter sind wir sicherlich raus 😉


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Neue Themen als SAP Entwickler

Beitrag von black_adept (Top Expert / 4119 / 130 / 955 ) »
DeathAndPain hat geschrieben:
20.10.2024 18:33
tar hat geschrieben:Werden in einem laufenden Report einmal gesetzte Attribute einer statischen Klasse nicht beibehalten - also auch, wenn man zum SELECTION SCREEN zurückgeht und das Ganze erneut ausführt?
Wenn Du in den SELECTION-SCREEN zurückgehst, ist immer alles weg, als ob Du die Transaktion neu gestartet hättest. Tatsächlich lädt er dann sogar die neueste Codeversion nach. (Bedeutet im Klartext: Wenn Du Deine Ergebnisliste auf dem Schirm hast und am Code was korrigierst und dann mit F3 ins Selektionsbild zurückkehrst, lädt er Deine Korrektur, so dass Du direkt wieder testen kannst, ohne die Transaktion zu verlassen.)
Das stimmt nur bedingt. ABAP verhält sich hier unterschiedlich, je nachdem ob ein Report über SE38/SE80 gestartet wurde oder über einen Transaktionscode, der auf den Report verweist. Das Verhalten mit dem Nachladen des Codes ist auf jeden Fall bei Aufruf nicht über Transaktionscode korrekt. Allerdings sieht das nicht so aus, weil SAP beim Rücksprung auf das Selektionsbild zwar den gesamten Report neu lädt aber es irgendwo eine Schleife gibt, die dir die Belegung des Selektionsbild bevor du F8 gedrückt hast zurücklädt ( was der Grund ist, warum man ab START-OF-SELECTION die globalen Felder des Selscreens modifizieren kann, aber beim Rücksprung auf den Selscreen diese auf die Werte zurückgesetzt werden, die sie hatten als du F8 gedrückt hast ).
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Neue Themen als SAP Entwickler

Beitrag von tar (Specialist / 110 / 22 / 31 ) »
DeathAndPain hat geschrieben:
20.10.2024 18:33
Die richtige Seite für die Auswahl ist meiner Meinung nach diese hier. Dort sticht einem sofort SAP NetWeaver AS ABAP Developer Edition 7.52 SP04 als passender Download ins Auge.
Ich hab heute mal den ganzen Tag versucht, diese Version unter OpenSUSE zu installieren und mich dabei von einem nervigen Problem zum nächsten gehangelt, um zufällig im sechsten(!) Google-Suchergebnis über Stackoverflow in einem winzigen(!) Link im dortigen dritten(!) Kommentar schlussendlich bei diesem Beitrag zu landen (man beachte den Scrollbalken!), der besagt, dass das mit aktuellen Linux-Distributionen und insb. dem von SAP selbst empfohlenen OpenSUSE überhaupt nicht mehr geht, ohne erst händisch selbst den 32 kByte großen SAP-Installer anzupassen, was natürlich jeder Anfänger mal eben ganz flink nebenbei zu erledigen weiß 🤣

Der Wust an Problemen:

1. automatische IP-Zuweisung via DHCP in VM VLAN unter VMWare
Lösung: Host-Netzwerkkarte (geht meines Wissen nur bei Intel) und in VMWare den Virtual Network Editor entsprechend einstellen
- Intels Adapter Configuration Utility starten
- unter Adaptereinstellungen "Paketpriorität und VLAN" aktivieren
- unter Gruppenbildung / VLANs die entsprechenden VLANs eintragen und aktivieren
- es werden je VLAN entsprechende Adapter erzeugt
- in VMWare den Virtual Network Editor öffnen und dort einen VMWare Adapter zum Intel Adapter des VM VLANs bridgen
- den gebridgten Adapter letztlich im VMWare Client nutzen
- Switch (tagged/untagged Ports) und Router (inkl. Netzwerken, BOOTP, Firewall, etc.) sollten natürlich auch entsprechend der VLANs eingestellt sein

Das hake ich mal noch unter Sonderproblem ab, weil nicht jeder mit VLANs hantiert.

2. Black Screen beim frischesten aller frischen Erststarts unter dem aktuellsten OpenSUSE 15.6
- Lösung: KDE Plasma statt dem von SAP empfohlenem GNOME nutzen (d.h. die Installation nochmal von vorn beginnen)

3. Shared Folders verschwunden und manuell mounten ging auch nicht
- Lösung: kurz deaktivieren und wieder aktivieren ("Schon mit aus- und wieder einschalten versucht?" 🤪)

4. Diverse fehlende Pakete werden mitten in der SAP-Installation angemeckert
- Lösung: nach und nach installieren bis keines mehr fehlt, sich merken (betraf hier "tcsh", "libnsl1", "uuidd" und "unrar") und dann alles nochmal von vorn, weil eine fehlgeschlagene SAP-Installation nicht mal eben so einfach zu reparieren ist

5. Ausgelaufene Lizenz
- Lösung: diese neu herunterladen und in den entpackten Installationsordner "server\TAR\x86_64" schieben
- unklar, ob das ausreicht und er sie bei der Installation automatisch erkennt und nutzt, weil die Installation selbst ja noch nicht fertig durchgelaufen ist

6. DNS-Unklarheiten
- Lösung: man soll wohl entgegen der SAP-Vorgabe nach dem hosts-Eintrag nochmal zusätzlich den eigenen Hostnamen angeben, bspw. "10.0.7.50 vhcalnplci vhcalnplci.dummy.nodomain vhcalnplci"
- aber auch hier unklar, ob das wirklich so sein muss (es wird leider gar nicht erklärt, was man damit genau umzusetzen wünscht)

Der Installer selbst ist eine absolute Katastrophe. Während in der Anleitung ständig eine manuelle Prüfmöglichkeit via Shell angegeben wird, ist man bei SAP außerstande, diese Prüfungen an den Beginn des Installers zu knallen. Stattdessen freut man sich, nach 5 Minuten eine (meist kryptische) Fehlermeldung zu sehen. Wohl dem, der da VM-Snapshots nutzen kann. Zu Hülf...

Nun ist es kurz vor 2 Uhr nachts. Ich werd's nach dem Aufstehen nochmal mit OpenSUSE 15.1 versuchen. Falls ihr nichts mehr von mir hört, bin ich in der Klapse gelandet.

Re: Neue Themen als SAP Entwickler

Beitrag von rob_abc (Specialist / 118 / 32 / 48 ) »
Habe ich mich vor Jahren auch schon mal dran probiert und bin gescheitert. Ist aber gar nicht notwendig, sich das leben so kompliziert zu machen. SAP bietet (wieder?) die onprem-Lösung als docker image an.
https://hub.docker.com/r/sapse/abap-clo ... oper-trial
Dauert 30 Minuten zum einrichten.

Re: Neue Themen als SAP Entwickler

Beitrag von tar (Specialist / 110 / 22 / 31 ) »
Cloud? Nein, danke. Ich kämpf weiter.

Folgende Benutzer bedankten sich beim Autor tar für den Beitrag:
DeathAndPain


Re: Neue Themen als SAP Entwickler

Beitrag von tar (Specialist / 110 / 22 / 31 ) »
Finally:
sapinst1.png
Anmeldung via SAP-Gui aus einer anderen VM mit dem Nutzer "SAP*" und dort nochmalig (wieso auch immer) die Lizenz zu erneuern und einzutragen, hat geklappt.

Jetzt hab ich noch eine halbe Stunde gebraucht, um festzustellen, dass Nutzer generell mandantenspezifisch angelegt werden. D.h. mich erst gewundert, wieso der Nutzer DEVELOPER fehlt (im Mandant 000), daher gedacht, ich muss einen eigenen erstellen (der dann im Mandant 001 nicht vorhanden war), um mich letztlich zu fragen, wo ich den Entwicklungsschlüssel herbekomme.

Dann einfach mit Nutzer DEVELOPER im Mandant 001 eingeloggt und fertig. 😆

Also: es funktioniert nun alles. Hurra!
Zuletzt geändert von tar am 27.10.2024 11:52, insgesamt 3-mal geändert.

Re: Neue Themen als SAP Entwickler

Beitrag von ralf.wenzel (Top Expert / 3946 / 201 / 281 ) »
Es gibt doch Docker Container oder fertige VMs für Alles und Jedes — hat noch keiner sowas aufgesetzt, das einem den ganzen Installationsmist abnimmt und ein fertiges System hinstellt, wo man einen Devveloper-User und den Developer Key einträgt und fertig?

Es gab mal eine One-Click-Lösung von der SAP, für die man einen Amazon-Server bezahlen musste. Hab ich irgendwann nicht mehr genutzt. Aber war eben auch nicht lokal.


Ralf
Bild
Ralf Wenzel Heuristika SAP-Development
25 Jahre SAP-Entwickler • 20 Jahre Freiberufler
PublikationenUngarische NotationXing

Re: Neue Themen als SAP Entwickler

Beitrag von rob_abc (Specialist / 118 / 32 / 48 ) »
Hm. Habe ich doch oben verlinkt? Was passt euch an dem Docker-Image nicht? Es läuft lokal, ich kann mich mit SAP GUI und Eclipse verbinden und habe meinen ganz normalen ABAP Stack. Inklusive allem anderem vom "Mini-SAP".

Unter Debian sind es 2 Kommandos im Terminal, fertig.

Code: Alles auswählen.

docker pull sapse/abap-cloud-developer-trial:ABAPTRIAL_2022_SP01
docker run --stop-timeout 3600 -i --name a4h -h vhcala4hci -p 3200:3200 -p 3300:3300 -p 8443:8443 -p 30213:30213 -p 50000:50000 -p 50001:50001 sapse/abap-cloud-developer-trial:ABAPTRIAL_2022_SP01 -skip-limits-check

Folgende Benutzer bedankten sich beim Autor rob_abc für den Beitrag:
tar


Re: Neue Themen als SAP Entwickler

Beitrag von tar (Specialist / 110 / 22 / 31 ) »
rob_abc hat geschrieben:
27.10.2024 16:16
Unter Debian sind es 2 Kommandos im Terminal, fertig.

Code: Alles auswählen.

docker pull sapse/abap-cloud-developer-trial:ABAPTRIAL_2022_SP01
docker run --stop-timeout 3600 -i --name a4h -h vhcala4hci -p 3200:3200 -p 3300:3300 -p 8443:8443 -p 30213:30213 -p 50000:50000 -p 50001:50001 sapse/abap-cloud-developer-trial:ABAPTRIAL_2022_SP01 -skip-limits-check
Frisches Debian als VM aufgesetzt:
sapinst2.png
🤔

Vergleichbare Themen

0
Antw.
2411
Views
OO-Themen die in anderen Threads OT sind
von black_adept » 23.08.2018 09:01 • Verfasst in ABAP Objects®
10
Antw.
16034
Views
Suche Videotutorials zu folgenden Themen
von Up4Anything » 02.03.2011 14:01 • Verfasst in Tutorials & Cookbooks
2
Antw.
3552
Views
Aktuelle Themen / Forschungstrends im SAP Bereich
von OnkelSAP » 28.03.2011 12:35 • Verfasst in SAP - Allgemeines
18
Antw.
7371
Views
Entwickler vs Berater
von BecomingAnAbapGuru » 05.07.2021 09:21 • Verfasst in Tips + Tricks & FAQs
4
Antw.
10000
Views
SAP-Entwickler Gehalt ?
von Frank59 » 17.12.2006 15:41 • Verfasst in SAP - Allgemeines

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.