Content area
Full Text
This paper presents an application for generating a dynamic selection screen in ABAP and the need and advantages of this solution instead of the manual modification of the coding itself for adding one or more parameters in the whole logic of the program. Depending on data found in a customizing table, we would like to generate a program with a selection screen, containing select options based on the criteria specified in the customizing table. The presented solution can be adapted to any dynamically generated ABAP program, according to the desired selection screen elements, and may be used as a template even for other programs. The advantages of the proposed solution are also presented along with the disadvantages, underlining the particularities of the ABAP programming language.
Keywords: Dynamic Programming, Selection Screen, Customizing Table, ABAP, SAP
Introduction
The study of algorithms forms a cornerstone of computer science research and education. However, many developers may not be aware of common algorithmic techniques, which the programming language they are using may provide. That is why companies like Google, Apple or Facebook use dynamic programming algorithms questions in their interviews and select only the best.
In many areas of activity, dynamic programming is a method for solving a certain problem by breaking it into sets of subproblems [1]. Every time the same subproblem occurs, instead of searching again for a solution, one simply looks at the previously computed solution. By using this method, precious time can be saved at the expense of a modest storage increase.
The core idea of dynamic programming is to avoid repeated work by remembering partial results and this concept finds its application in a lot of real life situations. Dynamic programming algorithms are often used for optimization purposes. These analyze if a problem has two key attributes: optimal substructure and overlapping of problems. Dynamic programming is mainly used when solutions of same subproblems are needed again and again. Afterwards, one of the following two approaches are used: a topdown approach (memorization) or a bottomup approach (tabulation).
Since dynamic programming can be applied in so many different ways, the underlying concepts are quite general. The best way to really understand something is by making use of it, so in the next section we will check...