What is ITS?
What are the merits of ITS?- ITS is a Internet
Transaction Server. ITS forms an interface between HTTP
server and R/3 system, which converts screen provided
data by the R/3 system into HTML documents and
vice-versa. Merits of ITS: A complete web transaction
can be developed and tested in R/3 system. All
transaction components, including those used by the ITS
outside the R/3 system at runtime, can be stored in the
R/3 system. The advantage of automatic language
processing in the R/3 system can be utilized to
language-dependent HTML documents at runtime.
What is DynPro?
DynPro is a Dynamic Programming which is a combination
of screen and the associated flow logic Screen is also
called as DynPro.
What are screen painter and menu painter?
Screen painter: Screen painter is a tool to design and
maintain screen and its elements. It allows user to
create GUI screens for the transactions. Attributes,
layout, filed attributes and flow logic are the elements
of Screen painter. Menu painter: Menu painter is a tool
to design the interface components. Status, menu bars,
menu lists, F-key settings, functions and titles are the
components of Menu painters. Screen painter and menu
painter both are the graphical interface of an ABAP/4
applications.
What are the components of SAP scripts?
SAP scripts is a word processing tool of SAP which has
the following components: Standard text. It is like a
standard normal documents. Layout sets. - Layout set
consists of the following components: Windows and pages,
Paragraph formats, Character formats. Creating forms in
the R/3 system. Every layout set consists of Header,
paragraph, and character string. ABAP/4 program.
What is ALV programming in ABAP? When is this grid used
in ABAP?
ALV is Application List viewer. Sap provides a set of
ALV (ABAP LIST VIEWER) function modules which can be put
into use to embellish the output of a report. This set
of ALV functions is used to enhance the readability and
functionality of any report output. Cases arise in sap
when the output of a report contains columns extending
more than 255 characters in length. In such cases, this
set of ALV functions can help choose selected columns
and arrange the different columns from a report output
and also save different variants for report display.
This is a very efficient tool for dynamically sorting
and arranging the columns from a report output. The
report output can contain up to 90 columns in the
display with the wide array of display options.
What are the events in ABAP/4 language?
Initialization, At selection-screen, Start-of-selection,
end-of-selection, top-of-page, end-of-page, At
line-selection, At user-command, At PF, Get, At New, At
LAST, AT END, AT FIRST.
What is CTS and what do you know about it?
The Change and Transport System (CTS) is a tool that
helps you to organize development projects in the ABAP
Workbench and in Customizing, and then transport the
changes between the SAP Systems and clients in your
system landscape. This documentation provides you with
an overview of how to manage changes with the CTS and
essential information on setting up your system and
client landscape and deciding on a transport strategy.
Read and follow this documentation when planning your
development project.
What are logical databases? What are the advantages/ dis-advantages
of logical databases?
To read data from a database tables we use logical
database. A logical database provides read-only access
to a group of related tables to an ABAP/4 program.
Advantages: i)check functions which check that user
input is complete, correct,and plausible. ii)Meaningful
data selection. iii)central authorization checks for
database accesses. iv)good read access performance while
retaining the hierarchical data view determined by the
application logic. dis advantages: i)If you donot
specify a logical database in the program attributes,the
GET events never occur. ii)There is no ENDGET command,so
the code block associated with an event ends with the
next event statement (such as another GET or an
END-OF-SELECTION).
What is a batch input session?
BATCH INPUT SESSION is an intermediate step between
internal table and database table. Data along with the
action is stored in session ie data for screen fields,
to which screen it is passed, program name behind it,
and how next screen is processed.
How to upload data using CATT ?
These are the steps to be followed to Upload data
through CATT: Creation of the CATT test case & recording
the sample data input. Download of the source file
template. Modification of the source file. Upload of the
data from the source file.
What is Smart Forms?
Smart Forms allows you to create forms using a graphical
design tool with robust functionality, color, and more.
Additionally, all new forms developed at SAP will be
created with the new Smart Form solution.
How can I make a differentiation between dependent and
independent data?
Client dependent or independent transfer requirements
include client specific or cross client objects in the
change requests. Workbench objects like SAPscripts are
client specific, some entries in customizing are client
independent. If you display the object list for one
change request, and then for each object the object
attributes, you will find the flag client specific. If
one object in the task list has this flag on, then that
transport will be client dependent.
What is the difference between macro and subroutine?
Macros can only be used in the program the are defined
in and only after the definition are expanded at
compilation / generation. Subroutines (FORM) can be
called from both the program the are defined in and
other programs . A MACRO is more or less an abbreviation
for some lines of code that are used more than once or
twice. A FORM is a local subroutine (which can be called
external). A FUNCTION is (more or less) a subroutine
that is called external. Since debugging a MACRO is not
really possible, prevent the use of them (I’ve never
used them, but seen them in action). If the subroutine
is used only local (called internal) use a FORM. If the
subroutine is called external (used by more than one
program) use a FUNCTION.
What is the differences between structure and table in
data dictionary in ABAP?
Structure and table both are 2/2 matrices but there are
many differences between table and structure.
1. Table can store the data physically but a structure
dose not store.
2. Table can have primary key but a structure dose not
have.
3. Table can have the technical attribute but a
structure dose not have.
structure doesn't contain technical attributes.
structure doesn't contain primary key.
structure doesn't stores underline database level.
What is the difference between collect and sum?
SUM.
When processing an internal table in a block starting
with LOOP and concluded by ENDLOOP , SUM calculates the
control totals of all fields of type I , F and P (see
also ABAP/4 number types ) and places them in the LOOP
output area (header line of the internal table or an
explicitly specified work area).
When you use SUM in a LOOP with an explicitly specified
output area, this output area must be compatible with
the line type of the internal table.When using LOOP to
process a sorted extract (see SORT ), the control total
of f at the end of the group appears in the field SUM(f)
- - if f is type I , F or P .
COLLECT.
COLLECT is used to create unique or compressed datsets.
The key fields are the default key fields of the
internal table itab .
If you use only COLLECT to fill an internal table,
COLLECT makes sure that the internal table does not
contain two entries with the same default key fields.
If, besides its default key fields, the internal table
contains number fields,the contents of these number
fields are added together if the internal table already
contains an entry with the same key fields.
If the default key of an internal table processed with
COLLECT is blank, all the values are added up in the
first table line.
If you specify wa INTO , the entry to be processed is
taken from the explicitly specified work area wa . If
not, it comes from the header line of the internal table
itab .
After COLLECT , the system field SY-TABIX contains the
index of the - existing or new - table entry with
default key fields which match those of the entry to be
processed.
COLLECT can create unique or compressed datasets and
should be used precisely for this purpose. If uniqueness
or compression are unimportant, or two values with
identical default key field values could not possibly
occur in your particular task, you should use APPEND
instead. However, for a unique or compressed dataset
which is also efficient, COLLECT is the statement to
use.
If you process a table with COLLECT , you should also
use COLLECT to fill it. Only by doing this can you
guarantee that the internal table will actually be
unique or compressed, as described above and COLLECT
will run very efficiently.
If you use COLLECT with an explicitly specified work
area, it must be compatible with the line type of the
internal table.
How we format the data before before write
statement in
report ?
We can format the reports output by using the loop
events like:
1.at first
2.at new
3.at last
etc check docu
What is the difference between Table and Template?
table is a dynamic and template is a static
When do we use End-of-selection?
End-of-selection event are mostly used when we are
writing HR-ABAP code. In the HR-ABAP code, data is
retrived in the Start-of-selection event and Printing on
the list and all will be done in End-of-selection
event.
In events start-of-selection is default event. When we
have to use this event explicitly? Why?
The default event in the ABAP is Start-of-selection.We
have to call explicitely this event when you are writing
other than ths event , that is when you write ATÂ
SELECTION-SCREEN EVENTS OR INITIALIZATION EVENT etc,you
have to explicitely mention the Start-of-selection event
while you are writing the logic.
Before these events called ,all the code you have
written come into this default Start-of-selection screen
event.
What is the differences between ABAP and OOABAP. In
which situation we use OOABAP?
OOABAP is used to develop BSP/PCUI applications and also
anthing involved object oriented like BADIs,
SmartForms..etc.where as ABAP is used to develop
traditional programs in R/3.
What is table buffer? Which type of tables used this
buffer?
buffer is nothing but a memory area. table is buffered
means that table information is available on application
server. when you call data from database table it will
come from application server.
transperent and pooled tables are buffered. cluster
tables can not buffered.
What is the use of pretty printer ?
Exactly where can we link the functional module to abap
coding.
Pretty Printer is used to format the ABAP Code we write
in ABAP Editor ,like KEY WORDS in Capitals and remaining
are in small letters which is also depend on system
settings.
We can call the function module in the ABAP Code .Press
the Pattern button on Appl. tool bar then u will get box
where u write the function module NAME which u want to
call in the code by selecting the radio button CALL
FUNCTION. In this way we link function module to ABAP
Code.
What is the difference between SAP memory and ABAP
memory?
Answer1:
data sending between main sessions using get parameter
and set parameter is sap memory
data sending between internal sessions using import or
export parameters is abap memory
Answer2:
sap memory is a global memory whereas abap memory is
local memory.
For example, we have four programs in abap memory and
assigned some varibles to a particular program in abap
memory then those varibles can't be used by anyother
program in abap memory i.e., the variables are only for
that program and also local to that memory,whereas sap
memory can access all the abap memory or else it can
perform any kind of modifications.
Answer3:
SAP memory is available to the user during the entire
terminal session.
ABAP memory is available to the user during life timeÂ
of external session
What is the difference between Type and Like?
Answer1:
TYPE, you assign datatype directly to the data object
while declaring.
LIKE,you assign the datatype of another object to the
declaring data object. The datatype is referenced
indirectly.
Answer2:
Type is a keyword used to refer to a data type whereas
Like is a keyword used to copy the existing properties
of already existing data object.
Answer3:
type refers the existing data type
like refers the existing data object
What is Tcode SE16. For what is it used. Explain
briefly?
Answer1:
SE16 is a T-code for object browser.
Generally used to search the fields of SAP Tables . and
respective data.
Answer2:
se16 is a data browse and it is used to view the
contents of the table and we cannot change or append new
fields to the existing structure of the table as we
cannot view the structure level display using the se16
What are different ABAP/4 editors? What are the
differences?
The 2 editors are se38 and se80 both have the abap
editor in place. In se38 you can go create programs and
view online reports and basically do all thedevelopmet
of objects in this editor. In se80 ( object navigator)
there are additional features such as creating
packages,module pool , function group ,classes, programs
( where you can create ur programs) and BSP applications
.
What is difference between dialog program and a report?
Report is a excecutable program
Dialog is a module pool program.It has to be executed
via a transaction only.
Dialog programming is used for customization ofscreens
How do you connect to the remote server if you are
working from the office for the client in remote place.
WAS web application server or ITS are generally used for
this purpose. If you are sitting at your office with a
server which is in the system and the other server is at
the clients place you can generate IDOC, intermidiate
documents which carry the data you want to transfer or
the documents you want to transfer, these IDOC are
interpretted by the system at the recieving end with the
message class with which it is bound with. If you want
to logon a system which is very distant..then remote
login can be used this depends on the internet speed.
Explain about roll area , Dispatcher, ABAP-Processor.
Answer1:
Roll area is nothing but memory allocated by work
process. It holds the information needed by R/3 about
programs execution such as value of the variables.
Dispatcher :All the requests that come from presentation
server will be directed first to dispatcher. Further
dispatcher sends this requests to work process on
FIFO(First In and First Out) basis.
Answer2:
Dispatcher recieves the request from client and assigns
the request to one of the work process.
Roll area: Each workprocess works in a particular memory
that memory is known as Role Area, which consists of
User context and session data.
ABAP- Processor :is an interpretor which can execute
logic
Which one is not an exit comand ? (Exit, cencle, stop,
back)
STOP.
Effect :The statement STOP is only to be used in
executable programs
EXIT.
Effect :If the EXIT statement is executed outside of a
loop, it will immediately terminate the current
processing block.
BACK.
Effect : This statement positions the list cursor on the
first position of the first line in a logical unit.
So "Cancle" is not an exit command
What is Field symbol ?
Answer1:
You can use field symbols to make the program more
dynamic. In this example the name of a table control is
substituted by a field symbol. Thus you cal call the
form with any internal table, using the name of the
table control as a parameter.
Example
form insert_row
using p_tc_name.
field-symbols <tc> type cxtab_control. "Table control
assign (p_tc_name) to <tc>.
* insert 100 lines in table control
<tc>-lines = 100.
Answer2:
fieldsymbol has the same concept as pointer in c,
fieldsymbol don't point to a data type like char, num
instead of that it points to the memory block. the
syntax for fieldsymbol is
FIELD-SYMBOL <N>.
EG. FOR FIELD SYMBOL.
DATA: DAT LIKE SY-DATUM,
TIM LIKE SY-UZEIT,
CHAR(3) TYPE C VALUE 'ADF'.
FIELD-SYMBOL : <FS>.
MOVE DAT TO <FS>.
WRITE:/ <FS>.
MOVE TIM TO <FS>.
WRITE:/ <FS>.
MOVE CHAR TO <FS>.
WRITE:/ <FS>.
The output will be
Today's date
current time
What is lock object ?
LockObjects used to synchornize access of several users
using same data.
Why BAPI need then BDC ?
BAPI"S provide the standard interface to other
applications apart from SAP and within differnt vesions
of SAP too. Also it is OOD bases so dosen"t depends on
screen flow. BDC gets failed if we make changes for
screen changes through IMG customization
What are the advantages and disadvantages of using
views in ABAP programming ?
advantages: view is used to retrieve the data very fastly
from the database tables
*memory wastage is reduced
*faster than joins to retrieve the data from database
tables
disadvantages:
view is not a container,it will not hold the data
*view memory is not permanent memory
How data is stored in cluster table?
A cluster table conatins data from mulitple DDIC tables.
It stores data as a name value pair ( varkey, vardata)
Have you used performance tuning? What major steps will
you use for these?
First of all tunning can be done
In three ways: disk i/o ,sql tunning , memory tunning,
Before tunning u have to get the status of your database
using
Oracle utility called statpack , tkprof, then you should
go for tunning
How to create client independent tables?
client independent tables:
the table in which the first field is not mandt is the
client independent tables
*mandt is the field with mandt as the data element
*automatically client which we login is populated to
mandt
What type of user exits have you written?
there are four types
1.function exit
2.menu ixit
3.screen exit.
4.field exit.
these are the user exits
How can you debug a script form?
SE71 -> give the form name -> utilities -> activate
debugger
How do we debug sapscript?
First we need to put Break point in Print program where
ever you want to stop the execution.
After in SE71 give your form name and go to
Utilities-->Active De-bugger.
Then go to your transcation like VF03(for Invoice or
Credit memo) etc to see the print preview or print the
form execute it.
When you execute it the the form Debugging will get
activated and you can see your Form execution step by
step.
What are the different types of data dictionary objects?
Answer1
Data Dictionary Objects
* Tables
* Views
* Domain
* Data Element
* Type Groups
* Search Helps/Matchcode Objects
* Lock objects
* Structures
* Table Types
Answer2
the dictionary objects are:
domain
dataelements
tables
views
structures
typegroups
search helps
lock objects etc which are data base related objects in
sap
What is the step by step process to create a table in
data dictionary?
Answer1
steps to create database tables
1.go to se11
2.give name the database table
3.give short description for the table
4.Give delivery class name as A and data browser / table
view maint as Display/maintenence allowed
5.select fields tab
6.give field name data type(user defined element
type/built-in-type),short text
7.select technical settings tab ,give data class as
appl0 and size category as 0
8.save it
9.go utillities menu click table contents select create
and enter the field values then select display in table
contents and u can view the table values with field
lables
Answer2
bottom to top approach:
_________________________
step 1:
creating a domain:
*se11,select the object type as domain ,name it ,create,description,enter
the datatype and length(size),save ,activate
step2:
creating a dataelement;
se11,select the object type as :date element,name it ,create,desc,assign
it with a domain what we created now,save,activate it.
step3:
creating a table;
se11,select the object type as table,name it, create,
enter the field name and assign it with the data element
instead of assigning a datatype to it,
like this create req fields:
on behalf of this:
table maintainence:
assign the type of the table ie.,A C G L S
NEXT
maintaince:
allowed,not allowed ,allowed with restricions
______________________________________________
fields of a table:(as descripted above)
___________________________________________
techical settings:
A0
OR
A1
AND
BUFFERED OR NON-BUFFERED
Can a transparent table exist in data dictionary but not
in the data base physically?
Answer1
NO. TRANSPARENT TABLE DO EXIST WITH THE SAME STRUCTURE
BOTH IN THE DICTIONARY AS WELL AS IN THE
DATABASE,EXACTLY WITH THE SAME DATA AND FIELDS.
No,
at the point you will activate your table a same
transparent table is going to be create in database
Answer2
Yes, a transparent table(definition) can exist in the
data dictionary and not in the database. In this case,
it is not activated
What are the domains and data elements?
domains:
___________
domains are the dictionary objects that are assigned
with constants and data types
data elements:
______________
data elements are dictionary objects that are assigned
with the domains.
uses:'
* data elements are used to create relation between
tables.
* data elements are used to transfer the data from one
R/3 to another R/3.
* to create search helps.
What is a collect statement? How is it different from
append?
APPEND :
IT IS USED TO GET THE RECORD FROM THE INTERNAL TABLE
HEADER TO THE BODY AREA
IT ALLOWS DUPLICATION
COLLECT:
IT IS USED TO A GET A RECORD FROM HEADER TO THE BODY
AREA BUT IT WILL NOT ALLOW ANY DUPLICATION EXCEPT IF
THERE IS ANY NUMERIC FIELS IT ADDS THAT FIELDS DATA BUT
NOT AS A NEW RECORD
On ABAP: Did you set up a workflow? Are you familiar
with all steps for setting up a workflow?
Yes.
Execute the Txn SWDD(Creating a new Workflow).
In the header of the Workflow, define the Business
Object and Event you refer to for triggering the Wf.
Create the Steps required for your workflow(Activity).
Inside the Activity, Create the task and assign the
Business Object and the related method for that business
object.
Activate the Workflow.
In the ‘select’ statement what is “group by”?
Group by clause is used to fetch the data from the table
by the specified field
ex.select count (*) from emptable group by deptno where
deptno = 1.
It is used to find the number of employees present in
the specified department no.
How can I copy a standard table to make my own z_table?
WE CAN CREATE A STRUCTURE LIKE THE SAME STRUCTURE AS
DATABASE TABLE AND WE CAN USE
SELECT* FROM DATABASE TABLE INTO TABLE ITAB
OR
INSERT INTO ITAB VALUES DATABASE TABLE
From Excel to ABAP - Is batch mode possible ?
DATA w_file TYPE string.
* Convert the file path into string
w_file = p_input.
* Internal Table should have same field sequence as EXL
File.
CLEAR t_upload.
REFRESH t_upload.
* Call function to upload the data into internal table
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = w_file
filetype = 'ASC'
has_field_separator = 'X'
TABLES
data_tab = t_upload
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17.
IF sy-subrc NE 0.
* MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
* WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ELSE.
* Delete the first row of heading from the uploaded
table
DELETE t_upload INDEX 1.
ENDIF. " IF sy-subrc EQ 0.