Immer wieder im kommt es vor das man einen langen Timestamp, vom Format YYYYMMDDhhmmssmmmuuun, in einen kurzen Timestamp, Format YYYYMMDDhhmmss, umwandeln muss. Dank der CONVERT Funktion ist das kein Hexenwerk.
Dieses kleine Beispiel soll zeigen wie man die Anzahl der Dezimalstellen eines Wertes dynamisch zur Laufzeit verändern kann. Alles was man dazu benötigt ist ein Datenobjekt vom Typ p und den SAP Funktionsbaustein ROUND. REPORT ZCHANGE_DECIMAL_PLACES. DATA: obj_data TYPE REF TO data. DATA: lv_value TYPE p DECIMALS 4 VALUE ‚100.8576‘. DATA: lv_decimals TYPE i VALUE…
Der Datenaustausch in SAP via RFC ist recht einfach und komfortabel möglich. Neben fehlenden Berechtigungen in den jeweiligen Zielsystemen ist kann auch eine nicht vorhandene RFC Verbindung zu Problemen im Programmfluss führen. Der SAP Funktionsbaustein CAT_CHECK_RFC_DESTINATION ermöglicht das prüfen einer RFC Verbindung auf deren Verfügbarkeit. method check_rfc_destination. data: lv_rfc_subrc type sy-subrc. * Check rfc destination…
Der Funktionsbaustein RRW3_GET_QUERY_VIEW_DATA erlaubt es auf recht einfache Weise die Daten einer BI Query zu lesen und diese in eigenen Programmen zu nutzen. Auf Tricktresor finden Sie hierzu ein sehr gutes und einfach zu verstehendes Beispiel: Daten aus Query lesen Nun kann es allerdings vorkommen, dass die Daten einer Query nicht mit dem eigenen SAP…
Range Elemente werden in ABAP Programmen immer wieder an diversen Stellen benötigt. Sei es für SELECT Anweisungen, Loops oder sonstige SQL Statements. Dabei ist es nicht immer möglich das RANGE Objekt bereits während der Entwicklung zu deklarieren. In meinem kleinem Beispiel möchte ich zeigen, wie man zur Laufzeit ein RANGE Objekt mit der richtigen Typisierung…
Objektreferenzen in ABAP zu kopieren ist selbst für einen ABAP OO Anfänger keine große Sache. Referenz1 = Referenz2 und schon hat man aus einem Objekt zwei gemacht. Dem geschulten Auge wird allerdings sofort auffallen, dass hier eigentlich nicht wirklich etwas kopiert wurde. Referenz2 besitzt nun lediglich einen Zeiger, welcher auf die gleiche Speicheradresse wie Referenz1…
In diesem kleinen Beispiel möchte ich zeigen wie man InfoObjekt Stammdaten in einem ABAP Programm recht einfach Aktivieren kann. Einfach die SAP Standardklasse cl_rsdmd_activate_master_data mit der gewünschten InfoObjekt ID Instanzieren. Die Activate Methode startet den Changerun und aktiviert alle Stammdaten in der Objektversion M des jeweiligen InfoObjektes. * Activate master data DATA: obj_rsd_activator TYPE REF TO cl_rsdmd_activate_master_data. CREATE OBJECT…
Hat man die ACE im Einsatz, dann stehen in allen (zumindest in den meisten) Transaktionen einem User nur jene Business Partner zur Verfügung, für die er laut ACE berechtigt ist. Liest man nun innerhalb eines Programmes die Business Partner direkt von der Datenbank, dann muss man sich als Entwickler um die ACE Prüfung selbst kümmern.…