ABAP FAQ
ABAP Frequently Asked Question
Q: Will so many ABAP books, are there any good ABAP books available?
A: One good ABAP books worth buying is available from Amazon is :
ABAP
Objects: Introduction to Programming SAP Applications with CDROM
Q: I have some other ABAP question, where can I asked it?
A: Well, consider joining a ABAP forum.
Q: Is ABAP program client dependent or independent?
A: Independent.
Q: What is the diffference between modifications and enhancements?
A: Modification, we are modifying which is already exists, In enhancement we are adding additional functionality.
Q: What type of objects exist in the data dictionary?
A: Data in data dictionary is not the actual data like emp.name.name
or emp.address but rather a type data whose function
is to define the properties of the data, such as
type, length, and relationship.
Q: Explain the concept of asynchronous update?
A: When you change data of one table the sy-subrc is returned. And then
updation of other affected tables takes place.
So if system fails to update other tables
still sy-subrc returned is 0 (ie, Whwn first table gets updated).
Q:What components does a dynpro consists of?
A: Number of screen. Length(4)
Q: What is the difference between data elements and domain?
A: Data element
ABAP/4 Development Workbench (BC-DWB)
A data element describes the contents of a
field. For example, a data element contains the F1 help texts and the key
word texts (field texts) for displaying the
field on the screen.
Several table fields with identical contents
can refer to the same data element.
Domain
ABAP/4 Development Workbench (BC-DWB)
A domain describes the technical attributes
of a table field.
These technical attributes include the data
type and the field length.
Several fields with the same technical attributes
can refer to the same domain. In this case, each of these fields has
the technical attributes specified in this
domain.
Q:What are the main elements of a status?
A: 1. Usage data
2. SAP data
3. Host data
4. SAP system data
5. Database data.
Q: How many lists can exist in parallel in an interactive reporting?
A: In the interactive reports, we can create as many as 21 lists.
The first list is called 'Basic list' and
all the successive lists are called 'Secondary lists'.
Each list is again an interactive.
Q:What are the 3 main events in interactive reporting?
A: 1. Top-of-page during line selection.
2. At line-selection
3. At user-command
Q: What is IDOC and when, how to use it ?
A: IDOC is one of the EDI(Electronic data interface). It is used as a format modifier.
Q: Is there any standard SAP report which gives a count of the number of times a program is executed ?
A: Try transaction STAT
Q: When we create a customer the information is
updated in structure RF02D and the some tables like KNA1 are
updated. How can
we find the tables for master data transactions?
A: Go to ABAP Workbench -> Overview -> application hierarchy - SAP ->
follow the customizing based tree for your
application. Double click on a lowest hierarchy
level to get for the correct marked development class. Here you can
find all the tables, views, logical databases
etc. used for a system operation.
Q: How can we use CAD with SAP ?
A: Third party tools from Eigner + Partner provide interfaces to SAP.
Another third party software - Fastlook Plus from
Kamel Software enables you to view all of the Autocad formats.
Q: How can I access SAP through Internet?
A: SAP has its own Internet transaction Server (ITS) . Other products
include Haht, WebObjects, NetDynamics etc. Each
product has its' own architecture.
However to access the database, access paths
SAP GUI or RFC Channel have to be used.
Q: How can we transport the standard text?
A: Refer note 3355 in OSS for a complete explanation. The SAPscript
objects that should be transported must be written in a
transport request.
The entries are as follows:
R3TR FORM NAME (NAME = Name of the layout
set)
R3TR STYL NAME (NAME = Name of the style)
R3TR TEXT OBJECT,NAME,ID,L
(OBJECT = Text object, NAME = Text name, ID
= Text ID, L = Text language)
If you want to transport a number of texts,
you can use report RSTXTRAN to insert the individual text keys into a
correction.
The transport request must be entered and
released via the transport system.
Q: How to find what transactions a particular user was running for a given period in the past (Eg: from 1st of a month )
A: You may use the transaction - STAT.
Q: We want protect/lock a field so that only selected
people can change the value while others can only read. How to set
the authorizations?
A: Create an authorization object for change mode. Loop at screen in
the user exit and set input to 0. Check the user based
on sy-uname and the authorization. Decide
whether input should be 0 or 1.
Q: How to lock an user defined transaction for some time during which no user can access the same?
A: Use transaction SM01. Scroll through the transactions and check against
the transaction to be locked. And after the
maintenance is over, go back to SM01 and uncheck
the same to unlock.
BDC
Q: Our ABAP program is working properly in Foreground. Can I schedule it for background processing on the weekend?
A: SAP standard program RSBDCSUB helps you to schedule the job. Create
a variant for RSBDCSUB with the BDC
session name.
Q: How can we send a mail to the user intimating him that his report/BDC is completed in background?
A: You can use FUNCTION RS_SEND_MAIL_FOR_SPOOLLIST
If Unix is being used, you may send a report
to any internet mail with the following:
REPORT ZSNDMAIL .
DATA: COMND(200) type c.
DATA: RESULT(200) type c occurs 100 with header line.
PARAMETERS: FILE(60) type c lower case default '/sapdata/sd_outbound/testmail.dat'.
PARAMETERS: SUBJECT(60) type c lower case.
PARAMETERS: EMAIL(60) type c lower case.
INITIALIZATION.
TRANSLATE EMAIL TO LOWER CASE.
START-OF-SELECTION.
TRANSLATE EMAIL TO LOWER CASE.
CONCATENATE 'cat' FILE '| elm -s "' subject '"' email into comnd seperated
by space.
CALL 'SYSTEM' ID 'COMMAND' FIELD comnd 'TAB' FIELD UNIX_RESULTS-*SYS*.
Loop at Results.
write: /1 results.
endloop
end-of-selection.
SAPScript
Q: We get the total number of pages as expected
by using 'SAPSCRIPT-FORMPAGES' in a duplex layout. In our case
duplex case is always
'Terms & Conditions'. We do not want the number of pages as in duplex
printing. What is the best
possible solution?
A: On the Terms & Conditions page, Change the Page counter mode
to 'HOLD' to keep the page counter from incrementing
when you print the Term & Conditions.
Q: Can I Print a logo on an Invoice?
A: Save a Logo using Paintshop Pro or Corel Draw as Tiff file. Use RSTXLDMC
to convert the logo to standard text in
SapScript. When the program is executed, the path
and file name have to be correctly specified.
Process could be like the following:
Run RSTXLDMC
Enter file name C:\MAIL\COMPLOGO.TIF
Resolution for Tiff file
Absolute X-position
Absolute Y-position
Absolute positioning
Reserved height
Shift to right
UOM = CM
Text title
Line width for text = 132
Text name ZHEX-MACRO-COMPLOGO
Text ID ST
Text language = E
Postscript scaling
Width & Height according to PS scaling
Number of Tiff gray levels (2,4,9) 2
Then Create a new window 'COMP' with attributes;
Window COMP description Company Logo
Window type CONST
Left margin 7.00 CH window width 10.00 CH
Upper margin LN window height 8.00 LN
Finally in the text element , mention
/: INCLUDE 'ZHEX-MACRO-COMPLOGO' OBJECT TEXT ID ST LANGUAGE 'E'.
Please note that if object name is not indicated as 'ZHEX...', the
logo may not be printed!
You will not be able to see the logo in a test print. The same will
be printed in actual printout.
If you are using two logos in the same layout, the names of the logos
should be unique. Say 'ZHEX-MACRO-LOGO1' and
'ZHEX-MACRO-LOGO2'. Else all the information will be overwritten.
If the logo is not EXACTLY TIFF 6.0 , the same will not be printed.
See OSS notes 5995, 18045, 39031 for some inputs.
RFC
Q: We want to move a SAP table to an Access table
using TABLE_EXPORT_TO_MSACCESS_RFC
Importing parameters are
DBNAME
DEST
FLG_APPEND
FLG_POPUP
LANGU
The table has three columns:
TABNAM
MANDT
SDATA
We have no Exporting parameters.
How shall we set the parameters?
A: Install the PS utilities, which are part of SAPGUI install CD. You
may run report RIACCESS from SE38.
Go to SALE -> Communication -> Define RFC
Destination. Setup two RFC destinations PS_ACCESS_1
and PS_ACCESS_2 and will
have to get them to point to wdpsastr.exe and wdpsatab.exe respectively.
Then
execute RIACCESS and choose PS_ACCESS_1 to
generate access tables. Please note that Access only supports
tables with up 255 fields.
Q: We want an RFC do the following transactions
- MB1A, MB1C,>MB01 (goods receipt/issue).
A: Call the RFC INBOUND_IDOC_PROCESS with IDOC_CONTROL and IDOC_DATA.
The structure in the
Transports
A: use transaction SE71. Choose Utilities->Copy from Client. Layout
sets need not be transported between clients ,
Q: We need to keep track of the transports that
need to flow through to other systems (ie, DEV, TST, TRN, PRD etc).
A: SAPCRAFT enables you to control the CTS from DEV system. This keeps
track of all transports at all stages and
Tables
Q: We need to download an internal table to the
Presentation Server(local workstation). Whenever we run the program, the
A: SAP has a table TVARV for storing the variants.
Batch input / Direct input
A: Batch-inputs can not be used to fill the "delivery due list" screen
because it is not a dynpro. This is a standard SAP report.
Q: What are some sample Direct input data transfer
programs?
A: In MM for Material Master data - RMDATIND
SAP Frequently Asked Question
field sdata in the IDOC_DATA are e1mbxyh and
e1mbxyi.
Q: In a Dev instance, we want to transport a
modification to a layout set from one client to another. What is the best
way?
via transport requests DEVKxxxxxx.
Is there a way do this?
enables you to allocate Import, export and
Authorization functions to specific user.
Q: We specify the logical database. And we want
a field that is not present in any of the tables defaulted in logical
database. How can we
want to add this additional field from a different table?
A: . Presume you have a logical database
table 1
table 2
table 3
Define the required field as additional field say fld of table 1, table
2 or table 3
and then in the code section define.
Perform get_f1d(zxxxxxxx) using f1d.
Form zxxxxxxx could be like;
Form get_f1d using f.
Select * from where 'conditions'
f = table4 - f1d.
same file has to be saved as a separate file
in sequential order. Ex: 0001.txt, 0002.txt etc. Where can we store the
last file
number?
A record may be created in TVARV for all the programs that require
this kind of incremental records.
For Ex: the record could be 100Zmm10001 MM sequence rec where first
part consists of client code and the program being
run. Client code is required because TVARV does not has a field for
client code. The second part is the description indicating
the purpose what the record is created. This entire string may be posted
in the Name field (char - 30).
The Type field ( char- 1) may be populated with P or S (Parameter or
Selection)
Low field (char- 45) may be populated with '0001' when run first time
and increment it by one in your program for
downloading of the internal table.
Q: We are calling transaction VL01 in batch input
to create deliveries using a program for delivery due list. How ever we
are unable to create
deliveries for transport stock orders. Why?
A SAP report (check with "System -> Status")
may be called using SUBMIT sentence with the appropriate options .
It is preferred to call a report than create
a Batch-input program.
FI - for Accounting Documents - RFBIBL00
PP - for Independent requirements - RM06IN00
CA - for Classification data - RCCLBI03
SAP Material Management Frequently
Asked Question
SAP Sales and Distribution Frequently
Asked Question
SAP WorkFlow Frequently
Asked Question
SAP PP Frequently Asked Question
SAP HR Frequently Asked Question
Vote
for me in SAP List of Top Sites voted by SAP visitors