|
Written by Anon.
|
|
Thursday, 28 June 2007 |
(1) REUSE_ALV_LIST_DISPLAY
Display an ALV list as per parameters defined in the function call
(2) REUSE_ALV_GRID_DISPLAY
Display an ALV grid as per parameters defined in the function call
(3) REUSE_ALV_COMMENTARY_WRITE
List header information is output according to its type. The output information is put in an internal table. Output attributes are assigned to each line via the TYP field.This module outputs formatted simple header information at TOP-OF-PAGE.
(4) REUSE_ALV_HIERSEQ_LIST_DISPLAY
This module outputs two internal tables as a formated hierarchical-sequential list.
(5) REUSE_ALV_VARIANT_F4
Display variant selection dialog box.
(6) REUSE_ALV_VARIANT_EXISTENCE
Checks whether a display variant exists. |
|
|
Written by Rich
|
|
Wednesday, 27 June 2007 |
Within SAP, tables are queried and data extracted using the OPEN SQL version of the SELECT statement. A single bad example of this statement in a program can make it unusable due to the amount of time it takes for the SELECT statement to return the results. This article outlines some of the ways that a Select statement can bring a program to it's knees, and how to speed things up. Note that a lot of programmers fall into the development data trap. Ie the select statement is reasonable on the DEV and QA systems but turns into a sloth on production. The reason ?? The amount of data stored in the different systems. Write your selects correctly the first time round so that you do not have to revisit them at a later date. |
|
Read more...
|
|
|
Written by Kevin
|
|
Tuesday, 19 June 2007 |
|
There is an issue in 6.40 where an error 'Lower limit of interval is greater than upper limit' when trying to use the dynamic date calculation within variants. SAP has provided an OSS note number 990695 to resolve this issue. |
|
Read more...
|
|
|
Written by Dany Charbonneau
|
|
Monday, 04 June 2007 |
You can easily define dynamic fields in an ABAP sort using ( ) : data : l_fieldname type dd03l-fieldname value 'CARRID'. SORT sflight by (l_fieldname) DESCENDING. BUT you CANNOT define the order (ascending or descending) dynamically: SORT sflight by (l_fieldname) (l_order). <<==-- This is impossible in ABAP. Now, with the new tree control*, when you want to give fully customizable tree, ou need to dynamically set the order in the sort command. The first method is by using a CREATE SUBROUTINE POOL with your sort. Each time you will run the program, this subroutine will be recompiled. This is VERY slow and we should avoid using this command whenever it's possible. The second method is a simple trick that have no major impact on performance. You duplicate each fields you want to sort, 1 copy for ascending and 1 for descending. You move the fieldname only in 1 of those fields depending on what order you want. |
|
Read more...
|
|
|
Written by Dany Charbonneau
|
|
Monday, 04 June 2007 |
There are 2 different ways to define a default variant. Method 1 - By assigning a variant directly on the transaction code. This is the easiest way but if the program was called from another program or directly from SE38, the default variant will be ignored. Method 2 - By assigning a variant in the code, here is a short example of this: |
|
Read more...
|
|
|
Written by Dany Charbonneau
|
|
Monday, 04 June 2007 |
You can now create (de)activable breakpoints in your programs. You can release these breakpoints in production and a customer will have the opportunity to activate and debug your code more easily. The following is an activable break-point : BREAK-POINT ID dany. The checkpoint group is defined by double clicking on the checkpoint group in the editor OR directly via transaction SAAB. |
|
Read more...
|
|
|
Written by P. Renjith Kumar
|
|
Wednesday, 30 May 2007 |
|
You can use the AS SYMBOL option of the WRITE statement to show symbols in the list. This require the statement INCLUDE <SYMBOL>. You can also write icons in the list using AS ICON in the write statement. Also this requires an additional statement INCLUDE <ICON>. INCLUDE <LIST> contains include statements for <SYMBOL>, <ICON>, <LINES>, & <COLOR>. |
|
Last Updated ( Wednesday, 30 May 2007 )
|
|
Read more...
|
|
|
Written by P. Renjith Kumar
|
|
Wednesday, 30 May 2007 |
|
When we use At new for a field, it will trigger whenever there is any change in al lthe fields from the left to that of the particular field. But when we use On change of it triggers only when there is any change in the particular field. |
|
Last Updated ( Wednesday, 30 May 2007 )
|
|
Read more...
|
|
|
Written by Rich
|
|
Thursday, 24 May 2007 |
ABAP contains the concept of internal tables. These can be thought of as an array or a multi-dimensional structure. Internal tables can be defined as various types of tables:- Standard
- Sorted
- Hashed
- Index
- Any
These all have their various uses from just storing data extracted from a database to being used as lookup tables. In general, tables are defined like so: |
|
Read more...
|
|
|
Written by Rich
|
|
Thursday, 24 May 2007 |
What Are Lock Objects ? In the majority of computer programs, data is input into the program, some processing is carried out on that data and the results are output from the program. This causes no problems whatsoever in a single user system, or where the output is going to the screen or a printed report. However, in the case of writing data files on a multi-user system this can be fraught with danger in as much that the data in the file can be corrupted by containing the wrong results. How can this happen ?? Let me introduce Ann and Bill. Ann is a data entry clerk working in a company entering sales orders onto a computer system such as SAP. Bill is an account payments clerk, entering account payments into the financial side of the system. Coincidentally they happen to be updating the account of a very regular customer. Part of the update process on the entry of a sales order is to update the amount of money owed by the customer. From Bill's side of things, entering a Payment downdates the amount of money owed. So, Ann starts entering her sales order. The computer system updates the account balance by reading the account balance, adding the new sales order value to it and then writing the account balance back to the record. In between Anns program reading the account balance and updating it with the new figure, Bills program comes along and reads the account balance, downdates it with the payment and then writes it back to the record. This is what happens: |
|
Read more...
|
|
|
Written by Dany Charbonneau
|
|
Monday, 21 May 2007 |
You can now define a local type dynamically. This is only supported in 6.40. Here's how it goes: Code: |
|
Read more...
|
|
|
Written by Dany Charbonneau
|
|
Monday, 21 May 2007 |
There are 2 different ways to define a default variant. Method 1 - By assigning a variant directly on the transaction code. This is the easiest way but if the program was called from another program or directly from SE38, the default variant will be ignored. Method 2 - By assigning a variant in the code, here is a short example of this: |
|
Read more...
|
|
|
Written by P. Renjith Kumar
|
|
Thursday, 17 May 2007 |
This give some of the system fields that are associated during interactive reporting : |
|
Last Updated ( Thursday, 17 May 2007 )
|
|
Read more...
|
|
|
Written by Anon.
|
|
Sunday, 13 May 2007 |
|
ABAP/4 (Advanced Business Application Programming 4GL) language is an "event-driven", "top-down", well-structured and powerful programming language. The ABAP/4 processor controls the execution of an event. Because the ABAP/4 language incorporates many "event" keywords and these keywords need not be in any specific order in the code, it is wise to implement in-house ABAP/4 coding standards. SAP-recommended customer-specific ABAP/4 development guidelines can be found in the SAP-documentation. This page contains some general guidelines for efficient ABAP/4 Program Development that should be considered to improve the systems performance on the following areas:- Physical I/O - data must be read from and written into I/O devices. This can be a potential bottle neck. A well configured system always runs 'I/O-bound' - the performance of the I/O dictates the overall performance. Memory consumption of the database resources eg. buffers, etc. CPU consumption on the database and application servers Network communication - not critical for little data volumes, becomes a bottle neck when large volumes are transferred. Policies and procedures can also be put into place so that every SAP-customer development object is thoroughly reviewed (quality – program correctness as well as code-efficiency) prior to promoting the object to the SAP-production system. Information on the SAP R/3 ABAP/4 Development Workbench programming tools and its features can be found on the SAP Public Web-Server. |
|
Read more...
|
|
|
Written by Anon.
|
|
Friday, 11 May 2007 |
|
Considering a table ztime with a field ztime of type tims and has 2 records. To get the sum of the times of these records plz see the following code : |
|
Read more...
|
|