SAP S/4HANA ABAP Developer News

SAP S4HANA Magazin Zeitungsartikel Werbeagentur Marketing Vertrieb Werbung Werbekampagnen Reselling Sales Hub Consulting Management S4-Experts

The magazine „S4-Experts“ reports regularly on current SAP topics. Not only technical topics are dealt with, but also an insight into the SAP community is offered. For example, you can find out about current articles, webinars and SAP events. The aim is to communicate briefly. Further information is referenced. We refer to further pages to create added value. Links ensure better visibility of the content. Publishers and visitors benefit equally. You can find more articles in the other sections. Feel free to use the translator attached at the bottom of every website.

  • It’s not about setting the background green of your code editor or setting up all the code lines to green or about having green background on your apps, but this about how you write your programs which would be more greener from environment perspective. Background Global warming is a happening right now, even if we… Write Green Programs is a post from ABAP Help Blog. Related posts: Parallel Cursor – To speed up performance of Nested LOOP Technique to speed up the performance of the Nested LOOP… ABAP Internal Table Secondary Key Performance comparison Performance is the driving factor when […]
  • Ever wondered how to generate the ALV Grid on the list generated by WRITE statement. Lets see today how we can do that. Preface Many years ago I wrote an article (I used to refer them as Post, that time) on how to display the ALV on the selection screen. The idea on displaying the… Display ALV Grid on List Generated by WRITE is a post from ABAP Help Blog. Related posts: Display ALV report output in the SAME Selection Screen Shows the way to display the report output in the… Conversion Exit to format Amounts in ALV Conversion exit […]
  • Class based exception are more powerful compared to the “legacy” exceptions. But you don’t want to create wrapper around the Exceptions? Preface In the blog The Harlem Function Module Shuffle on (old (older SDN)) SCN, Paul Hardy showed a good way to wrap the FM calls to be able leverage them in chained method calls… Why NOT to have a wrapper around Exception (RAISE) ? is a post from ABAP Help Blog. Related posts: Class based Exceptions IV – CLEANUP In the series of Class based Exceptions, lets check out… Exception class to use Messages from T100 Exception class can […]
  • Since HANA uses a different underlying architecture, there would be some impact to the custom ABAP Code. Check it out on what you need to do for HDB Migration? What is HANA DB? It’s very small section to describe what is HANA DB. But at a high level, these are different changes in HDB compared… What you need for ABAP Custom Programs when you migrate to HANA? is a post from ABAP Help Blog. No related posts.
  • Lets make the ALV interactive by adding the Hotspot aka Hyperlink into the ALV generated by SALV IDA by using the DISPLAY_OPTIONS for column. Preface Hotspot or Hyperlink is a key functionality for any ALV, no matter which ALV type you use – SALV Model, SALV IDA or Classical ALV. You now already know how… SALV IDA – Add and Handle Hotspot (Hyperlink) is a post from ABAP Help Blog. Related posts: SALV IDA (Integrated Data Access) – Introduction With ABAP 740, we have a new way using Integrated… SALV IDA – New Calculated Fields Lets check out how we […]
  • SALV IDA framework also provides the flexibility to change Column settings. Lets check how to change to change the column settings in SALV IDA. Preface In the last article – , we added couple of new columns in the ALV. Since these calculated fields are not part of the DB structure obviously they don’t have… SALV IDA – Column Settings is a post from ABAP Help Blog. Related posts: SALV IDA (Integrated Data Access) – Introduction With ABAP 740, we have a new way using Integrated… SALV IDA – New Calculated Fields Lets check out how we can add the […]
  • Lets check out how we can add the additional fields on the ALV output and also populate the value for those added columns using Calculated fields. Introduction By the time, you must be thinking how can I add additional fields in the output which are not in the table. Without this, the usage would be… SALV IDA – New Calculated Fields is a post from ABAP Help Blog. Related posts: SALV IDA (Integrated Data Access) – Introduction With ABAP 740, we have a new way using Integrated… SALV IDA – Column Settings SALV IDA framework also provides the flexibility to […]
  • Lets check more SALV IDA on how to send the selection conditions so we can restrict the data access based on user inputs. Introduction In the article , we have seen how SALV IDA can be used. Also in the traces section, it was more visible that IDA provided much more performance improvement when working… SALV IDA – Selection Conditions is a post from ABAP Help Blog. Related posts: SALV IDA (Integrated Data Access) – Introduction With ABAP 740, we have a new way using Integrated… SALV IDA – Column Settings SALV IDA framework also provides the flexibility to change […]
  • With ABAP 740, we have a new way using Integrated Data Access to generate the ALV and this is very prominent when using SAP HANA. ToC Table of Content for all SALV IDA articles: Introduction The existing ALV is has more functionality on the application layer. That makes it very very slow. The full data… SALV IDA (Integrated Data Access) – Introduction is a post from ABAP Help Blog. Related posts: SALV IDA – Selection Conditions Lets check more SALV IDA on how to send the… SALV IDA – Column Settings SALV IDA framework also provides the flexibility to change […]
  • CLASS_CONSTRUCTOR would be called automatically whenever the class would be accessed – either by creation of an instance or accessing any component. But seems like it is changed with ABAP 740. Preface In article , we discussed how both constructors are called at runtime. Before continue reading further, I suggest you to visit the memory… ABAP 740 – Is CONSTANT not a Static Attribute anymore? is a post from ABAP Help Blog. Related posts: CLASS_CONSTRUCTOR and CONSTRUCTOR: Who comes before whom? Today we will see how the constructor and class-constructor triggers… ABAP Protected Section – Is it really Protected? Few […]
  • If you follow me on social media, you probably already know that I have written a book about ABAP in Eclipse. The full title is: ABAP in Eclipse – Install, Configure, Use, and Enhance Your ADT and it is pointed to all ADT users as it covers the topics from installation up to extension of Eclipse. If you have the book, let me know your feedback, as this is most important for an author to see where he did well and where he need to still learn.      Cheers 
  • Column ID is not really a special field in ALV. It is always filled automatically by ALV and your manual entries are overwritten and set to the same value as COL_POS (Column position). I’ve prepared a demo program (ZDEMO_AIN_CL46) to show you, how the COL_ID is changing on a base of COL_POS. On the selection screen you can find two radio-buttons.   Figure 120 ZDEMO_AIN_CL46 Selection screen   When you select the first option – “COL_ID filled”,  the FCAT will be created with manual COL_ID.  
  • I was trying to find an usage of this field in ALV, but I failed. Any of known behaviours of ALV didn’t shown anything on a base of this field.  
  • Hotspot fields are very widely used in ALV, such fields have the behaviour and style of hyperlinks, which means they are triggering the single-click event of ALV called HOTSPOT_CLICK. It is commonly used to show the details of the clicked object, or to move to a transaction in which the object can be modified. As you can imagine, setting column as a HOTSPOT is very easy, you need to pass only the ABAP_TRUE (‘X’) value to the field catalog, but this will only change the style of the field (content of the field is underlined) and it will fire the […]
  • Group key is not widely used but it has nice feature. Once you group the field catalog fields and you pass the group name into parameter IT_SPECIAL_GROUPS of method SET_TABLE_FOR_FIRST_DISPLAY, then in selection of fields to display in layout change window, you’ll be able to choose to see all hidden fields or the hidden fields from the group you’ve created. If you don’t pass the group name into IT_SPECIAL_GROUPS, then this setting of field catalog has no impact on display.   For my demo program ZDEMO_AIN_CL43, I’ve created a field catalog with REF_TABLE filled for all fields, so it is […]
  • You may suspect that setting up a domain name in the field catalog will make some effect on the display, for example in data type, length, lowercase sign,  but it seems that it has no effect in ALV grid. Maybe just for information and for Report-Report interface, where this field is use as one of the matching criteria for selection-screen parameters. As you can see on the next image, although I gave the DOMNAME value FLAG, it didn’t changed anything in the field catalog.   Figure 108 DOMNAME in Field catalog https://gist-it.appspot.com/https://github.com/fidley/ALVGridInNutshell/blob/master/src/fcat/zdemo_ain_cl42.prog.abap?footer=minimal
  • Before writing this part, I was never using Report-Report Interface, so probably it is not common scenario to do so, or it is not used with the systems I had possibility to use. But anyway I’ve made a deep dive into topic, to understand how we can use this interface and for which purpose.   Seems that, using this interface, you can call from ALV grid an BW Query, SAP Query, ABAP Report Program or Transaction. Probably depending on the installed version of your system, or addons, the list of the interfaces may be longer. Anyway I’ve focused here on […]
  • This field allows us to set (or change) the header text of the column. It can consist up to 55 characters in lowercase mode. When you use data dictionary reference ( REF_FIELD, REF_TABLE ) it is populated automatically from the data element of the referenced field. Figure 97 Texts of Data Element S_FROMAIRP  
  • The changes of this parameter are only visible in edit mode and makes sense only for character or string fields. If it is set to ABAP_TRUE (‘X’), then the ALV grid stores in internal table the value in lowercase, if the value of the parameter is empty, then it will always convert the entered value to uppercase.   Figure 96 Results of zdemo_ain_cl39 with lowercase turned on     https://gist-it.appspot.com/https://github.com/fidley/ALVGridInNutshell/blob/master/src/fcat/zdemo_ain_cl39.prog.abap?footer=minimal
  • As the description says, the meaning of that field is to set the internal length of the field in Bytes. During my whole career as ABAP Developer, I had never filled that field manually. Usually you’ll not bother yourself about it. But if you do, then take into consideration following information: Length is in Bytes, so remember that it doesn’t mean, that one character takes one Byte In display mode, you’ll not notice probably any change When you’ll setup this incorrectly, you may have problems when you allow grid to be editable, for example: When I’ve set the INTLEN to […]
  • One of the standard requests that comes with every SAP implementation is automatic download of exchange rates to your system. Today I will show you on an example of Central Bank Of Turkey, how to transform XML from bank site into internal table, which can be then used inside your code to populate values of  BAPI_EXCHANGERATE_CREATE FM. There are few ways to download the XML to your ABAP code, I prefer to create an RFC destination (lets call it here Z_DESTINATION_TO_TCMB), as on many servers you need to provide credentials for PROXY and it is safer to keep it saved inside […]
  • Following the example of downloading exchange rates from Central Bank Of Turkey using transformations, please find bellow the same way for National Bank of Poland. Again, lets create an RFC destination (lets call it here Z_DESTINATION_TO_NBP) tha will point to https://www.nbp.pl/kursy/xml/lasta.xml, where the last exchange rates are posted.
  • Yesterday I've announced that I'm working on automatic logon to SAP systems on Eclipse. Today the changes in the plugin ABAP Extensions for Eclipse are published and you can use the first version of the automatic logon on your installations.   ABAP Extensions plugin you can find in Eclipse Marketplace or by doing direct installation from this link http://abapblog.com/eclipse/plugin/ABAPFavorites/ or by using the install button which you can find on the right side of this page.   After installation of update will be able to set the preference if you want to do automatic logon at start of Eclipse and if you […]
  • As you can imagine, INTTYPE is just a presentation of DATATYPE in internal SAP format in most of cases. I wrote most of cases because it can also say if the field in internal table is a reference to other type, or for example a table. Just like DATATYPE, you don’t need to fill this field manually, when you’ll leave it empty, ALV grid will automatically setup a proper type according to referenced internal table field. But if you’ll have unstoppable need of filling it, then the behaviour of the column will be exactly the same like you would use […]
  • DATATYPE field has small influence on the way the column is displayed. You can omit this field and then ALV grid will automatically fill this field and additionally JUST, OUTPUTLEN, INTTYPE, INTLEN and DD_OUTLEN on a base of the type of the output table field.   But if you decide to fill it, then on a base of DATATYPE you’ll notice different justification or output length. But still all checks of the data entered in edit mode will be done on a base of the real data type of the linked internal table field. Possible data types form system NW […]
  • The main functionality of the ROLLNAME is to provide a data element that will be responsible for showing F1 help on the grid cell. If in data element the documentation is available, then it will be shown. If not, or if the ROLLNAME will be empty, you’ll receive the message “No documentation available” when you’ll press F1 on a grid cell. Figure 84 Result of F1 with empty ROLLNAME   In the demo program I’ve used data element S_CONN_ID to show you how does it work. Figure 85 ZDEMO_AIN_CL35 Selection Screen   On the first sight you can notice that […]
  • TOOLTIP, as in any other places in on your PC, is responsible to show short info about the column when you hover your mouse over the column header. It’s very useful when you have a lots of fields in you grid and you’re optimizing the width of the column by minimizing the description of the column itself. It is common behaviour for example for checkboxes or for icon columns. In this case the Tooltip is very helpful for explaining the user the meaning of the column. Figure 81 ZDEMO_AIN_CL34 Tooltip of an column     Additionally if you’ll not use […]
  •   SELTEXT is one of the fields that are linked to the texts of the grid columns. This particular one is responsible for displaying the name of the column in the change/display of layout popup. Figure 79 ZDEMO_AIN_CL33 Column description in the layout popup   In case the TOOLTIP field is empty, the value from SELTEXT will be also used as tooltip and will appear when you hover the mouse over the column in the grid.    Figure 80 ZDEMO_AIN_CL33 SELTEXT as a TOOLTIP   https://gist-it.appspot.com/https://github.com/fidley/ALVGridInNutshell/blob/master/src/fcat/zdemo_ain_cl33.prog.abap?footer=minimal  
  • Conversion Exit was already mentioned while describing the EDIT_MASK field, but here it is called in a bit different way. Before saying how, it is important to understand the conversion exits. They are no more and no less than a function modules that helps to represent the internal values into understandable or more readable values. An basic example is field MATNR which is 18 characters long in ECC and 40 in S/4 HANA, and if it contains only numbers (for example 123),  then the internal value is stored with leading zeros, for example 000000000000000123 in ECC system. As you can […]
  • Technical field allows you to do similar thing as NO_OUT, you can hide the field on the output, the difference is that, users are not able to unhide this field. As NO_OUT, in order that TECH field work, you need to set its value to ‘X’.   Figure 70 ZDEMO_AIN_CL30 Setting of Field as Technical   Such setting is very helpful when you have to store some additional values in the internal table that supposed to be displayed, but you do not want to display them. Such field can be used for example during the event handling or displaying totals […]
SAP Akademie bzgl. S/4HANA, Ariba und ERP
  • If you follow me on social media, you probably already know that I have written a book about ABAP in Eclipse. The full title is: ABAP in Eclipse – Install, Configure, Use, and Enhance Your ADT and it is pointed to all ADT users as it covers the topics from installation up to extension of Eclipse. If you have the book, let me know your feedback, as this is most important for an author to see where he did well and where he need to still learn.      Cheers 
  • Column ID is not really a special field in ALV. It is always filled automatically by ALV and your manual entries are overwritten and set to the same value as COL_POS (Column position). I’ve prepared a demo program (ZDEMO_AIN_CL46) to show you, how the COL_ID is changing on a base of COL_POS. On the selection screen you can find two radio-buttons.   Figure 120 ZDEMO_AIN_CL46 Selection screen   When you select the first option – “COL_ID filled”,  the FCAT will be created with manual COL_ID.  
  • I was trying to find an usage of this field in ALV, but I failed. Any of known behaviours of ALV didn’t shown anything on a base of this field.  
  • Hotspot fields are very widely used in ALV, such fields have the behaviour and style of hyperlinks, which means they are triggering the single-click event of ALV called HOTSPOT_CLICK. It is commonly used to show the details of the clicked object, or to move to a transaction in which the object can be modified. As you can imagine, setting column as a HOTSPOT is very easy, you need to pass only the ABAP_TRUE (‘X’) value to the field catalog, but this will only change the style of the field (content of the field is underlined) and it will fire the […]
  • Group key is not widely used but it has nice feature. Once you group the field catalog fields and you pass the group name into parameter IT_SPECIAL_GROUPS of method SET_TABLE_FOR_FIRST_DISPLAY, then in selection of fields to display in layout change window, you’ll be able to choose to see all hidden fields or the hidden fields from the group you’ve created. If you don’t pass the group name into IT_SPECIAL_GROUPS, then this setting of field catalog has no impact on display.   For my demo program ZDEMO_AIN_CL43, I’ve created a field catalog with REF_TABLE filled for all fields, so it is […]
  • You may suspect that setting up a domain name in the field catalog will make some effect on the display, for example in data type, length, lowercase sign,  but it seems that it has no effect in ALV grid. Maybe just for information and for Report-Report interface, where this field is use as one of the matching criteria for selection-screen parameters. As you can see on the next image, although I gave the DOMNAME value FLAG, it didn’t changed anything in the field catalog.   Figure 108 DOMNAME in Field catalog https://gist-it.appspot.com/https://github.com/fidley/ALVGridInNutshell/blob/master/src/fcat/zdemo_ain_cl42.prog.abap?footer=minimal
  • Before writing this part, I was never using Report-Report Interface, so probably it is not common scenario to do so, or it is not used with the systems I had possibility to use. But anyway I’ve made a deep dive into topic, to understand how we can use this interface and for which purpose.   Seems that, using this interface, you can call from ALV grid an BW Query, SAP Query, ABAP Report Program or Transaction. Probably depending on the installed version of your system, or addons, the list of the interfaces may be longer. Anyway I’ve focused here on […]
  • This field allows us to set (or change) the header text of the column. It can consist up to 55 characters in lowercase mode. When you use data dictionary reference ( REF_FIELD, REF_TABLE ) it is populated automatically from the data element of the referenced field. Figure 97 Texts of Data Element S_FROMAIRP  
  • The changes of this parameter are only visible in edit mode and makes sense only for character or string fields. If it is set to ABAP_TRUE (‘X’), then the ALV grid stores in internal table the value in lowercase, if the value of the parameter is empty, then it will always convert the entered value to uppercase.   Figure 96 Results of zdemo_ain_cl39 with lowercase turned on     https://gist-it.appspot.com/https://github.com/fidley/ALVGridInNutshell/blob/master/src/fcat/zdemo_ain_cl39.prog.abap?footer=minimal
  • As the description says, the meaning of that field is to set the internal length of the field in Bytes. During my whole career as ABAP Developer, I had never filled that field manually. Usually you’ll not bother yourself about it. But if you do, then take into consideration following information: Length is in Bytes, so remember that it doesn’t mean, that one character takes one Byte In display mode, you’ll not notice probably any change When you’ll setup this incorrectly, you may have problems when you allow grid to be editable, for example: When I’ve set the INTLEN to […]
  • One of the standard requests that comes with every SAP implementation is automatic download of exchange rates to your system. Today I will show you on an example of Central Bank Of Turkey, how to transform XML from bank site into internal table, which can be then used inside your code to populate values of  BAPI_EXCHANGERATE_CREATE FM. There are few ways to download the XML to your ABAP code, I prefer to create an RFC destination (lets call it here Z_DESTINATION_TO_TCMB), as on many servers you need to provide credentials for PROXY and it is safer to keep it saved inside […]
  • Following the example of downloading exchange rates from Central Bank Of Turkey using transformations, please find bellow the same way for National Bank of Poland. Again, lets create an RFC destination (lets call it here Z_DESTINATION_TO_NBP) tha will point to https://www.nbp.pl/kursy/xml/lasta.xml, where the last exchange rates are posted.
  • Yesterday I've announced that I'm working on automatic logon to SAP systems on Eclipse. Today the changes in the plugin ABAP Extensions for Eclipse are published and you can use the first version of the automatic logon on your installations.   ABAP Extensions plugin you can find in Eclipse Marketplace or by doing direct installation from this link http://abapblog.com/eclipse/plugin/ABAPFavorites/ or by using the install button which you can find on the right side of this page.   After installation of update will be able to set the preference if you want to do automatic logon at start of Eclipse and if you […]
  • As you can imagine, INTTYPE is just a presentation of DATATYPE in internal SAP format in most of cases. I wrote most of cases because it can also say if the field in internal table is a reference to other type, or for example a table. Just like DATATYPE, you don’t need to fill this field manually, when you’ll leave it empty, ALV grid will automatically setup a proper type according to referenced internal table field. But if you’ll have unstoppable need of filling it, then the behaviour of the column will be exactly the same like you would use […]
  • DATATYPE field has small influence on the way the column is displayed. You can omit this field and then ALV grid will automatically fill this field and additionally JUST, OUTPUTLEN, INTTYPE, INTLEN and DD_OUTLEN on a base of the type of the output table field.   But if you decide to fill it, then on a base of DATATYPE you’ll notice different justification or output length. But still all checks of the data entered in edit mode will be done on a base of the real data type of the linked internal table field. Possible data types form system NW […]
  • The main functionality of the ROLLNAME is to provide a data element that will be responsible for showing F1 help on the grid cell. If in data element the documentation is available, then it will be shown. If not, or if the ROLLNAME will be empty, you’ll receive the message “No documentation available” when you’ll press F1 on a grid cell. Figure 84 Result of F1 with empty ROLLNAME   In the demo program I’ve used data element S_CONN_ID to show you how does it work. Figure 85 ZDEMO_AIN_CL35 Selection Screen   On the first sight you can notice that […]
  • TOOLTIP, as in any other places in on your PC, is responsible to show short info about the column when you hover your mouse over the column header. It’s very useful when you have a lots of fields in you grid and you’re optimizing the width of the column by minimizing the description of the column itself. It is common behaviour for example for checkboxes or for icon columns. In this case the Tooltip is very helpful for explaining the user the meaning of the column. Figure 81 ZDEMO_AIN_CL34 Tooltip of an column     Additionally if you’ll not use […]
  •   SELTEXT is one of the fields that are linked to the texts of the grid columns. This particular one is responsible for displaying the name of the column in the change/display of layout popup. Figure 79 ZDEMO_AIN_CL33 Column description in the layout popup   In case the TOOLTIP field is empty, the value from SELTEXT will be also used as tooltip and will appear when you hover the mouse over the column in the grid.    Figure 80 ZDEMO_AIN_CL33 SELTEXT as a TOOLTIP   https://gist-it.appspot.com/https://github.com/fidley/ALVGridInNutshell/blob/master/src/fcat/zdemo_ain_cl33.prog.abap?footer=minimal  
  • Conversion Exit was already mentioned while describing the EDIT_MASK field, but here it is called in a bit different way. Before saying how, it is important to understand the conversion exits. They are no more and no less than a function modules that helps to represent the internal values into understandable or more readable values. An basic example is field MATNR which is 18 characters long in ECC and 40 in S/4 HANA, and if it contains only numbers (for example 123),  then the internal value is stored with leading zeros, for example 000000000000000123 in ECC system. As you can […]
  • Technical field allows you to do similar thing as NO_OUT, you can hide the field on the output, the difference is that, users are not able to unhide this field. As NO_OUT, in order that TECH field work, you need to set its value to ‘X’.   Figure 70 ZDEMO_AIN_CL30 Setting of Field as Technical   Such setting is very helpful when you have to store some additional values in the internal table that supposed to be displayed, but you do not want to display them. Such field can be used for example during the event handling or displaying totals […]
Ein Fehler ist aufgetreten – der Feed funktioniert zur Zeit nicht. Versuche es später noch einmal.
  • I was thinking the same i.e. that some “tips” are given again and again, a new blog saying the exact same thing, every few months, forever. At least there was some sort of warning at the end this time, however trivial. Just to be clear about this – directly changing …
  • And if you are alluding to the RAP generator then that is a wonderful tool, In ten years’ time most people will be able ti use it. Until hen it is still SM30 for most of us….
  • 20 odd year ago someone somewhere may have suggested that during the SM30 table maintenance process that maybe an SM30 variant transaction should be created, and you could choose the name of the transaction… But no-one ever made such a suggestion did they? Or did they?
  • And while I am on the subject, when you are entering a list of SELECT-OPTIONS you get an option to upload a CSV file of values, that could be ten billion lines long. I gave my users a SE16N equivalent for a very small set of Z tables, where they …
  • First off, I am glad that the table maintenance generator now has the SM30 view filling the screen rather than just a tiny bit on the left. That would have taken someone at SAP ten seconds to fix. I have been manually increasing the generated screen length for the last …
  • Thinking about the above, in the “why use interfaces” section: Flexibility: Interfaces allow you to define a set of methods that a class must implement, but they don’t dictate how those methods are implemented. This means you can use different implementations for the same Interface, which gives you more flexibility …
  • First off, it is always good to see blogs on the SCN promoting OO code. It has been 23 years since ABAP became OO enabled in release 4.6. You would think that in that 23 year period people would have tried OO out and discovered why making the switch from …
  • The send immediately is a good improvement. As to sending loads of stuff to production no-one understands that happens all the time.Support stacks are the obvious example, but many companies have third party add-ons l(e.g. SAST REVTRAC, there are millions) which get updates every so often, and in go all …
  • This could be described as “ON-CHAIN-INPUT / ON-CHAIN-REQEUST” – the next generation. All jokes aside the difference is that in DYNPRO world the business logic was tightly coupled to the UI technolgy, but now the there is a clear seperation. The idea is that the “view” is “dumb” and has …
  • I love discussions like this. I am always trying to make my programs more SOLID. it makes a welcome change from trying to convince people to use classes and methods and unit tests and things like that, or even FORM routines as opposed to just a big huge blob of …
  • I apologize – I really should have been clearer as to what this series of blogs is about. ABAP2XLSX is an open-source project which can be found on the GitHub repository mentioned below. abap2xlsx/abap2xlsx: Generate your professional Excel spreadsheet from ABAP (github.com) The problem is that even after 10 years …
  • I have to admit I just copied the code from a “wrapper” class i wrote about ten years ago. The problem has most likely been fixed by now (I just compared the code in the old class vs the current one and it is very different). I will have a …
  • OK, I would really love for you to expand on why ABAP2XLSX is hard to maintain, given it is an open-source project on GitHub. If I want a new version I just do a pull request, if there is a bug I submit an issue and it is fixed in …
  • To answer the second question first the other night I woke up and said “Oh Dear!” (It was actually somewhat stronger than that, shocking my wife and the fluffy animals). I had realised in my dream I had forgotten to take the Hungarian Notation out. I have to use it …
  • I would 100% agree. The demo programs are easy to understand, everything is easy to understand. Yet for ten years every month someone new posts a blog on the SCN saying they have invented a new way to download from ABAP to Excel and if I mention ABAP2XLSX they say …
  • Just as an aside one of our super-users was given a “no-cod” tool whereby he could query any table inside SAP he felt like. He knew the business well, but had no idea at all there were things like indexes, so he just wrote whatever query seemed OK and before …
  • Monthly ABAP to EXCEL Blog – February 2023 For over ten years now every month on the SAP Community Site someone publishes a blog about how to upload/download data from EXCEL to ABAP. So, I am going to start doing this as well – only I will always be talking …
  • Dont Go Changing Data Dear CL_SALV_TABLE Fans, Welcome to February 8th, 2023, which is the fifteenth International Editable SALV Day. See below for a link to a blog I wrote to celebrate this day exactly one year ago https://blogs.sap.com/2022/02/08/international-editable-salv-day-2022-year-14/ This day marks the 15th anniversary of James Hawthorne going cap …
  • I bought that. I am not going to start reading it until I finish the book on the basics.
  • Most ABAP programmers are terrified of JavaScript or indeed any other programming language than ABAP. They are also scared of being run over by a huge ship. Can an SAP Press book on JavaScript help address this fear? PART THREE! JavaScript Book To recap I have already written two blogs …
  • Dear Readers, recent updates in WordPress seem to have weaken the readability of the blog posts here. Please note, a copy of those posts is available at https://people.sap.com/kunath.uwe#content:blogposts. You might want to reach out to these ones. Regards, Uwe
  • I recently had the chance to have a look into SAP’s ABAP Test Double Framework. Previously, the main tool for mock object creation was mockA, which did a great job in my previous projects. Code readability The Test Double Framework’s fake object creation is quite straight forward. Creating such an instance is handy and even […]
  • Letztes Jahr habe ich über den Developer Open Space 2014 gebloggt. Auch dieses Jahr werde ich wieder teilnehmen. Das Besondere am Konzept Open Space ist der freie Tagungscharakter. Bis kurz vor Beginn existiert keine festgelegte Agenda. Die Teilnehmer bestimmen die Themen des jeweiligen Tages gemeinsam. Die konkrete Programmiersprache ist dabei weniger entscheidend. Der Grund für […]
  • The current release of mockA is available at Github. It contains an error fix that I would like to outline in today´s blog post.   The bug MockA allows you to mock classes as described in one of my previous blog posts. Technically, mockA tries to create a subclass of the class which is subject […]
  • Vom 17. bis 19. Oktober fand in Leipzig der alljährliche Developer Open Space statt, ein Art Anti-Konferenz in der es keine festen Strukturen, dafür aber genug Freiraum für die Teilnehmer gibt, sich zu Themen auszutauschen, die sie wirklich interessieren. Neben allerlei Häppchen und Getränken war auch genug Zeit für genügend leckere Workshops und von den […]
  • Introduction This blog post is strongly connected to the presentation that has been given by Damir Majer and Martin Steinberg during SAP Inside Track 2014 in Munich. The presentation focuses on solving a code kata using Test-Driven Development (TDD). The purpose is to show how TDD can lead to better tests coverage, thus more robust […]
  • What has been missing so far In one of my last blog posts, I showed you how mock objects can be easily created. I also showed you how mock object’s method calls can be counted and how verifications can be implemented, to ensure that a mocked object’s method has been called. Up to now, it […]
  • With mockA it is quite easy to mock interfaces for unit tests. But it is also capable of creating mock objects that are not based only on interfaces, but specific classes. This blog post shows how it works and what needs to be considered. Basics Creating such an instance is quite the same as the […]
  • Are Comments overrated? Comments are a wonderful tool to document what you intended with certain program logic. You can place it directly where that logic resides: In the source code. As comments are non-functional, they are not getting compiled and hence, not executed. However, I’ve got the feeling that sometimes we should really think about […]
  • What help.sap.com doesn’t tell us I thought, SAP is pretty clear in what they tell us about the _SCOPE-parameter that can be passed to every enqueue-function modul. The parameter can have 3 values, which means, according to help.sap.com: Meaning of the _SCOPE Values Value Description _SCOPE = 1 The lock belongs only to the dialog […]
  • If you aren’t already, it’s time to start hosting career mapping sessions with your employees. In today’s message, we’ll discuss why.Subscribe to my Video UpdatesRequest a Free ConsultationThis is a bit of an older video I made, but the message of it still rings true today. If you’re in a leadership position within your company, there are a few things you need to know about using career mapping in your business. Before we get into what these things are, let’s first go over what career mapping is.Like a performance review, career mapping is designed to help you keep tabs […]
  • It’s 2020, and your data faces more threats than ever before. Here’s what you need to know about prioritizing cybersecurity in your business. Subscribe to my Video UpdatesRequest a Free ConsultationOur firm does a lot of work in the executive search space related to CISOs, or chief information security officers, for large corporations across all industries.It’s estimated that cyber attacks cost corporations in the U.S. an estimated $1.5 trillion in 2018 and 2019, so it’s no wonder why the average board of directors considers cyber attacks the No. 1 or No. 2 threat facing their organization today.A lot of the […]
  • There are eight tips you need to follow if you want to improve your workplace productivity in 2020. Subscribe to my Video UpdatesRequest a Free ConsultationDo you feel like you have too much on your plate, or there just aren’t enough hours in the day? Here are eight tips that will boost your workplace productivity:1. Prioritize a top 10 list each day. Rank each item that needs to be done and start checking them off of your list. This will create a sense of accomplishment; it’s OK if you don’t get everything done.2. Block your time. Many people have learned […]
  • Earlier this year a list of top SAP-related certifications was compiled by CIO Magazine. Here’s what my list would’ve contained.Subscribe to my Video UpdatesRequest a Free ConsultationToday I want to discuss an article written earlier this year that I recently read in CIO Magazine. It’s called, “The 10 IT Skills Paying the Highest Premiums Today,” by Sarah White.Now, there were things in this article that I agreed with, things that I disagreed with, and things I was surprised to see left out entirely.Do bear in mind that the data informing the article was collected by European company Foot Partners, […]
  • Five creative ways to hire the best talent for your business. Subscribe to my Video UpdatesRequest a Free ConsultationToday I want to discuss creative ways to land the toughest, finest talent. We all want them, but they’re a little more difficult to entice with an offer. I’m sharing five tips today that can help you nab the most challenging, talented people.1. Ask great questions. Ask excellent questions early during the interview process. For example, what do they love about their current opportunities, and where do they want to be in three to five years? Then build their answers into your […]
  • Many hiring authorities tend to think that hiring should slow or stop around the holidays. That’s simply not true, and I have a few reasons why. Subscribe to my Video UpdatesRequest a Free ConsultationToday I’d like to talk about common mistakes that businesses make with regards to hiring during the holiday season.As a recruiting firm, we’ve noticed that hiring managers, HR leadership, and other company leaders out in the marketplace tend to think that hiring needs to slow down or stop altogether due to the holidays.That’s just not true. Some of our best months at our recruiting firm have […]
  • If you aren’t already, it’s time to start hosting career mapping sessions with your employees. In today’s message, we’ll discuss why.Subscribe to my Video UpdatesRequest a Free ConsultationIf you’re in a leadership position within your company, then there are a few things you need to know about using career mapping in your business. Before we get into what these things are, let’s first go over what career mapping is.Like a performance review, career mapping is designed to help you keep tabs on your employees. However, while a performance review is more about your perspective on how an employee is […]
  • Are we going through an economic slowdown, and how do slowdowns affect the hiring process? Find out today.Subscribe to my Video UpdatesRequest a Free ConsultationEveryone in the market today is talking about slowdowns, early indicators, and whether or not a recession is imminent. Today I want to discuss these topics and talk about how market conditions might affect you in the coming few months.Though early market indicators suggest we might be in the midst of a slowdown, we’re definitely not in a recession.How are slowdowns and recessions different?A recession is defined as two consecutive quarters of negative growth in […]
  • The Houston Astros are not only my favorite baseball team, but they’re also great teachers of business. Here’s what I mean.Subscribe to my Video UpdatesRequest a Free ConsultationI’m a big Astros fan, but their recent World Series title isn’t the only thing they’ve given me to smile about. They’ve also taught me a lot about business, and I think there are three things that all hiring authorities can learn from the Houston Astros:1. Rebuilding. The Astros literally went from worst to first in less than five years. How did they do it? They recognized the need for a rebuild […]
  • Michael Jordan taught us how to dream. The Chicago Bulls taught us how to handle the hiring process. Subscribe to my Video UpdatesRequest a Free ConsultationBack in 1983, the Chicago Bulls took Michael Jordan in the first round of the NBA draft, and as you probably know, that pick transformed their organization forevermore.With Jordan at the helm, the Bulls amassed six out of ten championships throughout the ‘90s, and to this day Michael Jordan is widely considered the greatest player to have ever set foot on a basketball court.How does the story of the Chicago Bulls and Michael Jordan […]
  • Welcome back to part two of our series! Today we’ll focus on the importance of employee engagement and how it can impact your company as a whole.Subscribe to my Video UpdatesRequest a Free ConsultationLast time in part one of this series, we discussed strategies for boosting employee retention. Today in part two, we’ll focus on another important aspect of being an employer: employee engagement.Since 2010, numerous studies have come out that have really enlightened us as to what constitutes employee engagement, how it impacts productivity, and how it impacts employee retention. These studies have suggested that up to 80% […]
  • Today’s focus is on employee retention and a few actions you can take to keep your “A-players” around to promote the good health of your company. Subscribe to my Video UpdatesRequest a Free ConsultationToday I’m bringing you part one in my two-part series that will aim to help you with retention and employee engagement. They go hand in hand and are equally important in your workplace environment, but they’re also distinct from each other, so I’ve decided to focus on retention for part one.Retention is the ability to hold onto the “A-players” in your organization that you value greatly […]
  • Your employer brand doesn’t impact the ways that consumers view your company, but it can have a huge impact on the kind of people you recruit. Here’s how.Subscribe to my Video UpdatesRequest a Free Consultation Today I’m going to talk about your employer brand in the marketplace and what that means for your hiring. It doesn’t matter what kind of company you have—you have multiple “brands” out there.One thing that we’re all familiar with is the consumer brand. Because of your product or services, you have a brand with them, which is great.However, today I’m talking about your employer […]
  • A lot of job offers are getting turned down in our current market, but there are a few things you need to remember to make sure the same thing doesn’t happen to your company. Subscribe to my Video UpdatesRequest a Free ConsultationWe’re in a candidate-driven market right now, and as a result, more and more job offers are getting turned down. What are some of the trends in this market?Stiff competition between employers trying to hire the same people Companies are incentivizing their current employees with strong offers to keep them where they’re atSome companies have long, drawn-out recruiting cycles […]
  •  For today’s message, we’re going to share the top 11 most in-demand jobs of 2019. Subscribe to my Video UpdatesRequest a Free ConsultationToday, we’d like to shed some light on the top 11 most in-demand jobs of our marketplace in 2019. This list comes straight from an article recently published by Fox Business News. You can find a more in-depth analysis of this list by checking out the original article here, but, for now, let’s dive right into the top 11 jobs:1. Data scientist. It’s predicted that more than 4,000 new jobs will be added for this position in the […]
  •  You could be unintentionally disappointing your applicants, thanks to a bad interview process. Here’s how you can fix it.Subscribe to my Video UpdatesRequest a Free ConsultationThrough working with our 70+ clients, we’ve seen the good, the bad, and everything in between when it comes to job application processes. More importantly, we’ve seen how they affect applicants. A lot of companies have an interview process that takes too long and fails to give adequate feedback to applicants. When an applicant finally gets their first phone interview after a week of waiting, another week will go by without them hearing anything. Then […]
  • Here are the recent purchases made by SAP in order to enhance the customer experience.Subscribe to my Video UpdatesRequest a Free ConsultationToday we’ll be recapping SAP’s recent acquisitions and how these new capabilities affect their offerings as a company. Oftentimes, they acquire competitors and products that will help them do something different from their core offerings.Qualtrics allows organizations to focus on four key areas to improve the user’s experience: customer, product, employee, and brand data.Contextor introduces AI and robotic process automation capabilities. Think of when you interact with a bot on a website.Coresystems is involved with mobile and cloud-based […]
  • The holiday season is finally here. We wanted to make sure and reach out to wish you the best this year.Subscribe to my Video UpdatesRequest a Free ConsultationToday I want to send out our best wishes to everyone for the 2018 holiday season. We hope you have a very safe, healthy, and prosperous holiday season and a happy new year. Since we are a search firm first, I would be remiss if I didn’t say that the time to think about your 2019 hiring needs is now, even if you don’t plan on making moves until February or March. […]
  • Job candidates aren’t the only ones who should do their research before an interview. Today, let’s talk about the pre-interview preparations hiring authorities should be engaging in, as well. Subscribe to my Video UpdatesRequest a Free ConsultationToday I’d like to highlight a crucial but often overlooked step in the interview process. In a candidate-driven market like the one we’re in right now, omitting this step will come back to haunt you when it comes time to make an offer.   What is this critical step? Interview preparation.Any good candidate knows that preparing for an interview is essential, so why aren’t […]
  • How do you properly discuss salary requirements and expectations? Today we will take a look. Subscribe to my Video UpdatesRequest a Free ConsultationToday I want to talk about compensation and how to properly discuss your expectations or requirements when you're the job seeker in an interview. Let's jump right in.First, realize that it's illegal in some states for potential employers to ask how much you currently make. Instead, they may begin the conversation by asking “What would you like to make?” As the interviewee, you really need to know how to answer this before the interview even begins. If […]
%d Bloggern gefällt das: