Sie sind auf Seite 1von 68

1.what is the use of slis type pool in abap reports.

A) SLIS is a TYPE-POOL used for working with ALV. SLIS contains definations for types,
structures and tables which we use in ALV.
The syntax for the SLIS is:

TYPE-POOLS:SLIS.

DATA SECLARATION:
T_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
W_FIELDCAT TYPE SLIS_FIELDCAT_ALV.

IT USES PARAMETERS LIKE

W_FIELDCAT-COL_POS, W_FIELDCAT-SELTEXT_M, W_FIELDCAT-TABNAME


AND SO ON

2.what is the difference between headerline and workarea.

A)

Answers:

Internal table with header line contains header and body.


any record which is to inserted into the internal table
body passes to header line first then it is appended or we
can say pushed to body of internal table. The header and
body has the same name.
Suppose we have a internal table having fields NAME, AGE.
and our internal table name is ITAB.

itab-name = 'Rakesh'.
itab-age = '26'.

Append itab to itab. (" appends headerline ITAB to Body IT")


or we can use :- append itab. (both the above code works
same).

whereas in workarea it also works similarly as a header


line.
only difference is that its a headerline which is declared
explicitly and it is not attached with an internal table .

to append the work area containining a singel record into


internal table without header line :-

wa-name = 'Rakesh'.
wa-age = '26'.
Append Wa to ITAB.
3.Difference between user exit and customer exit.

A) Customer Exits : In standard programs we can find function modules. with in that
fm's we can find includes. There we have access to writing our own code. No need of
Access key. Through package we can find Enhasement and we can impliment our code in
SMOD and CMOD tcode's.

User Exits : In standard programs we have Subroutines wich will b started with User-exit.
based on formal parameters of subroutine we will impliment our code.For implimentation
we must require Access key.

4.Difference between invoice and performance invoice.

A) Proforma invoice nothing but the invoice is recived before sending material for advance
payment.

invoice is nothing but the invoice send with


material.payemnt for this materail will give after
suitablity.

5.Difference between select * and select up to 1 rows.

A) select * from means, it completely retrieves all the data from database table. it is not
good for programming.

select up to 1 row means, it retrieves all the related values for that query.From that result
first row is selected.

select single * in any case is faster than select up to 1 row


you can try it using runtime analysis but you should use clasue
bypassing buffer
if you dont use that it will not show you proper result so
select single * is faster than select upto 1 row

Select single always hits the database. you can not load records into internal table.
select upto 1 row loads all the records those matching selections criteria & pics 1st from
those.

SELECT SINGLE * is prefered when there are all PRIMARY KEYS in WHERE clause, as
Select single * from table
it fetches single record from the database, based on the condition you specified in the
where clause.The 'SELECT SINGLE' statement selects the first row in the database that it
finds that fulfils the 'WHERE' clause If this results in multiple records then only the first
one will be returned and therefore may not be unique.

UP TO 1 ROWS is the special case of UP TO n ROWS can be used with any WHERE
condition and gives you the first record which is found.

6)What type of reports we generate in SAP ABAP.

A). classic and interactive reports are developed by using events like initialization, at
selection screen,start of selection, top of page etc.

alv reports are created by using functions and classes.


for functions: Alv_list_grid_display, etc .
for classes:CL_GUI_ALV_GRID, etc are using

LDB,logical database reports, using Get, Get late events. these are for HR ABAP only.Not
Abapers.

Abap query, it is one of reporting tool.no need of coding use transactions,SQ02,SQ03 and
SQ01

7)In module pool how to set drop down list.

A) Use function module 'VRM_SET_VALUES'.

Goto the particular screen layout in which you want drop down list for a field , double
click on that field you will see a drop down field , set it as list box , and save it. You will be
able to see the drop down list box in your selection screen.

8)Difference between get and getlate.

A) These get and getlate events comes under the LDB .<br>Get and Getlate events are
used to retrive the data from the<br>logical database tables. This is comes under the sap
Abap-Hr.<br>So this is not sap abap concept. This is totally belongs to<br>the Abap-
Hr.<br><br>Get node.<br><br>Read the first record from the database for
corresponding <br>node(table).<br><br>Get node Late.<br><br>Read the first record
from the database for corresponding <br>node(table) after processing all child nodes.
9). IN selection screen i have three fields matno,plant and matgroup,if is provide

Plant input value,how can i get matno and matgroup based on plant dynamically.

A) using f4if_int_table_value_request function module we can get the matno & material
group.use this function module in the event at selection screen on value request

10).Difference between at line selection and at line selection on fileld.

A). 1)at line selection: it is used to capture all the field values
2)at line selection on filed: it is used to capture only particular field value.

11)Difference between Rfc and Normal function module.

A). Function Module : In a function module passing data is by call by reference in


particular the tables parameter has to by call by reference by passing memory.
RFC: In a RFC passing data is by value the reason is its going to access other system while
doing the above by reference wouldn't work as we r into another system whose memory id
will not match,this is the basic cause for creation of RFC

The difference is RFC can be used in distributed enviornment like between two different
SAPs. In distributed enviornment function module cant be work out,Because it dosent
identify the other SAP system apart from is own.Thants why its called refote function
call(RFC)

12).What are fieldsymbols and fieldgroups?Have you used component 'componet idx of
structure " clause with in fieldgroups?

A)

Field symbols:- Field groups :-

FIELD GROUPS are used to hold/handle large amount of data when the internal table are
not useful we use EXTRACT statement, HEADER structure in them see the example
REPORT demo_extract.

Field symbol is dynamically allocated at runtime and field group is pointer to field symbol.

Field symbols are placeholders or symbolic names for other fields. They do not physically
reserve space for a field, but point to its contents. A field symbol cam point to any data
object. The data object to which a field symbol points is assigned to it after it has been
declared in the program.

13).What are the steps of ale configuration in real time scenarios?

A). 1.creating "rfc" destination t.c:sm59


2.creating customer distribution model t.c:bd64
3.creating partner profile t.c:bd82

14)What happens if i use control break statements with Select .....endselect

A). when we place control breaks statements with in select & end-select then i will
generate an complie time error and says us to use it in loop......endloop

15).Difference between Value Table and Check Table.

A). Value table - It's a field in a domain it helps in domain level data validation.

Check table - unlike value table it helps in feild level data validation.

CHECK TABLE:The table that contain all valid set of values is called check table.
ex: MARA Table or EMPLOYEE information Table.
VALUE TABLE:When ever we create a foreign key relationship with another table the
system will look a value table field which is there at domain level.The system proposes
that table as an check table for the foreign key..
Regards,
Kiran Kumar

16).What are Alv reports?How they are different from normal reports?

A). ALV(ABAP LIST VIEWER) displays the output list in a grid format and also have some
operations like select all,deselect all, ascending,descending... and it also have one concept
called blocked alv where we can display the data from two tables in a single grid.

Reports are for displaying data and to display data in header and item wise we use
hierarchical alv so using alv is the best way than using reports.

ALV is the advanced concept of reports.

17).What is button to change variant in ALV?

A). By using the Function Module Reuse_alv_variant_default_get


we change the variant
18.)How to suppress blank spaces in sap scripts.

A) &SYMBOL(Z)& Suppress leading zeros


&SYMBOL(C)& Compress blank spaces - Consecutice spaces are
compressed into a single space. Leading spacesare
suppressed.

19.)What are the advantages and disadvantages of LSMW Over Bdc.

A). BDC is developer friendly method That means we can write our own code easily. after
writing code we can run at a time for uploading incase of LSMW we have to run for 14
times. If there is any critical scenario then we can easily write our own logic in BDC.IF
there is any Customer fields for standard transactions then we can upload through BDC.

20.)What is foreign key relationship.

A). A relationship which can be defined between tables and must be explicitly defined at
field level. Foreign keys are used to ensure the consistency of data. Data entered should
be checked against existing data to ensure that there are now contradiction. While defining
foreign key relationship cardinality has to be specified. Cardinality mentions how many
dependent records or how referenced records are possible.

21.)How to debug background jobs.

A). In SM37: Select the job, type JDBG in the OK-code and press enter. This can be used
for both completed jobs and jobs to be processed (just make sure you have enough time
to debug before the job actually starts). Breakpoints set in the job flow works. This
method has been successfully used in R/3
4.6C.

22.)How to display footer in every ALV report.

A.) In my opinion, You can display the footer, by using the event - end of page event.

By using top of page event, u can give the heading or comment

23.)How we can print both sides in Smartforms.

A.) IN Smart forms : click on page settings; general


attributes; and check the Radio Button Named: " Leave
Counter unchanged".

24.)How to run bdc program in background?

A.) 1.If your using call transaction method the on the syntax
for call transaction as shown below put "N" as the option
which stands for no screens.

CALL TRANSACTION 'MM01' USING BDCDATA MODE A/E/N UPDATE A/S


MESSAGE INTO MESSTAB.

Mode A/E/N stands for A - All screens


E - Error screens
N - No screens
Update A/S stands for A - Asynchronous
S - Synchronous

2.If you use session method go to SM36 to schedule a


backgroun job.

25.)Difference between client dependent and client independent table.

A.) if the table have yhe field mandt then it is the client dependent if the table have no
field named mandt then it is cleint independent

26.)What is the use of 'TABLE MAINTAINENCE ALLOWED' and its tcode.

A.) The main purpose of the table maintenance generator is to


Create/Change/Delete the table entries with out writing any
code. When ever we create table maintenance generator it
will generate a standard program.

Another important thing is when ever u change ur table


structure(Include/delete fields) don't forget to delete and
recreate the table maintenance. Because the structure of the
table was changed. If u try access Table maintenance
generator(SM30) after changing the structure then it will
through u a dump.

27.)How I can transfer sap script from one client to another.

A.) we can transfer the script from one client to another.goto se71 copy button is there
click that button.give the name of the form name.then in the target form name give ur
own form name and specify the client number also.

execute tcode se71.utilities---->copy from the client


Scripts are client depedent..using IMPORT parameter u can transfer the script from one
client to another.Eg : The script is in 200 client, If u want to test the script in 220 client,
from 200 client u have to import to 220 clent using IMPORT parameter.

Scripts are client dependent.Using IMPORT parameter.You can transfer the script from one
client to another.
Eg : The script is in 200 client, If you want to test the script in 220 client, from 200 client
u have to import to 220 client using IMPORT parameter.

To transfer Sap script from 1 client to another:

Use TCODE SCC1.


Enter the Transport request number
enter the client number from which you want to transfer.
If there are sub task check the relevant box.
click transport immediately.

To copy a sapscript to create a new sapscript of similar type.


goto>TCODE-SE71>enter sapscript name>click in the dropdown list copy client>enter the
target sapscript name.

if the sapscript is locked in any transport then copy the trasport into target client using
SCC1 transaction.

28.)What are function module types.

A.) 1.Normal FM
2.Remote enabled FM
3.Update FM

29.)How many buttons we can create on application tool bar.

A.) We can create Max Eight Pushbuttons on Application ToolBar.

We can create 35 buttons on application tool bar

30.)In vat implementation what is abapers role.


A.) study about the SAP functional module with fuctional consultant and what are the
reports required? go consult with management recording for produce the reports.

31.)How to create bdc for sales order.

A.)
1. Analyze the data from the local file or flat file.
2. Analyze the transaction.
3. Declaring the internal table (BDCDATA)
program: name of the module pool program name
dynpro: screen number.
dynbegin: it indicates for the new screen.
fname: name of the fields in the screen
fval : the values are assigned with the fields.
4.Transferring the data from the local file to internal table
5. Populating the internal table.

32.)What are smartforms.

A.) 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.

33.)Can we create a table with fields not referring to dataelements.

A.) Yes we can define a table without data element or even domain. This can be done with
the predefined data type available. But if a table is created without this(i.e data element)
then we cannot establish foriegnkey relation with the other table because for both check
table and foreign key table there should be data element in common. Due to this reason it
is strongly recommended not to create any of the fields without a dataelement, because if
there is any change to be made to that particular field(i.e length) which would really affect
the data already present in table if the change is not done perfectly, there may be chances
of missing the same in other table for the same field. So strongly recommended to use
data element which is easy to change and activate so that the effect would be made
globally....

34.)What is the difference between modify and update.

A.) MODIFY - is used for modifying the existing data on the basis of primary key and if
there is no data in table then UPDATE command will add new record into table.

UPDATE - is used for only modifying the existing data on the basis of primary key

35.)What are the main events used in ALV reports.


A.) Top_of_page
End_of_page
Top_of_list
End_of_list

36.) Which table stores online messages.

A.)T100

37.) What is the difference between user exit and badi.

A.) USER EXITS are FORMS and are called by SAP standard programs using PERFORM.

CUSTOMER EXITS are FUNCTIONS so they are called using CALL FUNCTION (or more
exactly CALL CUSTOMER FUNCTION).

Inside the form (user exit) you can read and change almost
any global data from host program.
Inside a function (customer exit) you can only acces your
import/export/changing/tables parameters.

User exits are more flexible because you have more


information to use in your code but on the other hand , it
is very easy to manipulate erroneously global data and lead
the standard program to a dump or even to make database
inconsistent.
Customer exits are more restrictive but you are sure any
change you can make to any parameters will never lead to
inconsistency

User-exit doesn’t have any classification.


In customer-exit we have function-module exit , screen exit
, menu exit.

User exits are Basically designed For SD module.


Costomer exits Are available for MM,SD,FI,HR…..Basically
designed for all modules.

diff b/w user exit and badi

In user exits we go by general method for enhancements


while BADIs we use objects (oops concepts)
methods for enhancement
UserExits r used for adding additional functionality to the
existing SAP standard transactions.Using UserExits we can
add additional functionality standard SAP functionality
without making any changes to the original code.BADI is a
standardized interface for ABAP sources that enables
partners and customers to enhance SAP-delivered programs in
their namespace.

38.)Can we have more than one selection screen.how.

A.) We have created the more than one selection screen by using
the call screen statement .
This is the syntax for the more than one selection screen.

call screen (sno) including program (program) (screen no)

39.)What are the joins used for internal table.

A.) An assembly manifest is a text file containing metadata about .NET assemblies. It
describes the relationship and dependencies of the components in the assembly,
versioning information, scope information and the security permissions required by the
assembly.
Whereas Metadata describes characteristics of another data.

40.)What is cardinality.How it works.

A.) The cardinality (n:m) describes the foreign key


relationship with regard to the number of possible
dependent records (records of the foreign key table) or
referenced records (records of the check
table).
The left side (n) of the cardinality is defined as follows:
n=1: There is exactly one record assigned to the check
table for each record of the
foreign key table.
n=C: The foreign key table may contain records which do
not correspond to any record of
the check table because the foreign key field is empty.
This can occur for example if the
field of the foreign key table is optional, in which case
it does not have to be filled.
The right side (m) of the cardinality is defined as follows:
m=1: There is exactly one dependent record for each
record of the check table.
m=C: There is at most one dependent record for each
record of the check table.
m=N: There is at least one dependent record for each
record of the check table.
m=CN: There may be any number of dependent records for
each record of the check
table.

41.)What class is used to display alv grid control.

A.) Use the Class CL_GUI_ALV_GRID To display the ALV grid control and call Method
SET_TABLE_FOR_FIRST_DISPLAY.

42.)DIFF Between Open sql and Native Sql.

A.) OpenSql is Database independent,while Native Sql is Database specific.

Open SQL statements are program independent of the operating system. Native SQL are
Platform dependant.

Open SQL allows developers to control SQL statements directly. Open SQL encapsulates
the semantics for statement execution, parameter binding and results fetching provided by
each database vendor in a vendor- independent interface. The operations performed with
Open SQL translate directly to the primitive operations provided by each database, yet the
API is consistent across all vendors.

To avoid incompatibilities between different database tables and also to make ABAP/4
programs independent of the database system in use, SAP has created a set of separate
SQL statements called Open SQL. Open SQL contains a subset of standard SQL statements
as well as some enhancements which are specific to SAP.

Open SQL contains the following keywords:

* SELECT - Reads data from database tables.


* INSERT - Adds lines to database tables.
* UPDATE - Changes the contents of lines of database tables.
* MODIFY - Inserts lines into database tables or changes the contents of existing lines.
* DELETE - Delete lines from database tables.
* OPEN CURSOR, FETCH, CLOSE CURSOR - Reads lines of database tables using the
cursor.
All Open SQL statements fill the following two system fields with return codes:

* SY-SUBRC
After every Open SQL statement, the system field SY-SUBRC contains 0 if the operation
was successful, a value other than 0 if not.
* SY-DBCNT
After an OPEN SQL statement, the system field SY-DBCNT contains the number of
database lines processed.

Open SQL allows you to access all database tables known to the SAP system, regardless of
the database manufacturer. Sometimes, however, we may want to use database-specific
SQL statements called Native SQL in the ABAP/4 program.

A database interface translates SAP's Open SQL statements into SQL commands specific to
the database in use. Native SQL statements access the database directly.
Native SQL

Native SQL allows you to use database-specific SQL statements in an ABAP program. This
means that you can use database tables that are not administered by the ABAP Dictionary,
and therefore integrate data that is not part of the R/3 System.

ABAP Native SQL allows you to include database-specific SQL statements in an ABAP
program. Most ABAP programs containing database-specific SQL statements do not run
with different databases. If different databases are involved, use Open SQL. To execute
ABAP Native SQL in an ABAP program, use the statement EXEC. Open SQL (Subset of
standard SQL statements), allows you to access all database tables available in the R/3
System, regardless of the manufacturer. To avoid conflicts between database tables and to
keep ABAP programs independent from the database system used, SAP has generated its
own set of SQL statements known as Open SQL.

If you create a table by using database tools, without ABAP Dictionary, you are not able to
use Open SQL to reach this table. You just can use Native SQL to do that.

Native SQL statements bypass the R/3 database interface. There is no table logging, and
no synchronization with the database buffer on the application server. For this reason, you
should, wherever possible, use Open SQL to change database tables declared in the ABAP
Dictionary. In particular, tables declared in the ABAP Dictionary that contain log columns
with types LCHR and LRAW should only be addressed using Open SQL, since the columns
contain extra, database-specific length information for the column. Native SQL does not
take this information into account, and may therefore produce incorrect results.
Furthermore, Native SQL does not support automatic client handling. Instead, you must
treat client fields like any other.

To ensure that transactions in the R/3 System are consistent, you should not use any
transaction control statements (COMMIT, ROLLBACK WORK), or any statements that set
transaction parameters (isolation level?) using Native SQL.

Using Native SQL, you can

* Transfer values from ABAP fields to the database


* Read data from the database and process it in ABAP programs.

Native SQL works without the administrative data about database tables stored in the
ABAP Dictionary. Consequently, it cannot perform all of the consistency check used in
Open SQL. This places a larger degree responsibility on application developers to work
with ABAP fields of the correct type. You should always ensure that the ABAP data type
and the type of database column are identical.
Native SQL Advantages and Disadvantages - EXEC SQL statement

Advantages

* Tables are not declared in ABAP Dictionary can be accessed. (e.g. Tables belonging to
sys or system user of Oracle, etc.)
* To use some of the special features supported by the database-specific SQL. (e.g.
Passing hints to Oracle optimizer.)

Disadvanteges

* No syntax check is performed whatever is written between EXEC and ENDEXEC.


* ABAP program containing database-specific SQL statements will not run under different
database systems.
* There is no automatic clien handling for client dependent tables.
* Care has to be taken during migration to higher versions.

43.)What is typical structure of abap program.

A.) Structure of ABAP/4 program is ,


1. Declaration
2. Dialog Module
3. Event Block
4. Procedure

Ans:Declarative elements
operational,
control,
Events

44.)What is the final entry in BDC table.


A.) The final entry in bdc table is the value in the internal table .since bdcdata is the
system-inbuilt bdc table the last field in the table is fvalthe value for fval is nothing but the
value in the internal table.so, the final entry is the value of the internal table.

45.)How to upload open purchase order through bdc.

A.)

By using some of functionModules like


in both AS,PS we have to create internal table
1)UP-LOAD
2)DOWN-LOAD these are used if the data is in Presentation
Server
3)READ-DATASET
4)TRANSFER these are used if the data is in Application
Server
(Or)
By using Manualprogramming
like BDCDATA structure
there we have fields like program,dynpro,dynbegin,fname,fval

46.)Difference between L.S.M.W AND C.A.T.T.

A.) The major difference between the LSMW and cATT

LSMW: is uesd to migration of data from non-sap system to


the sap system or sap system to sap system.here what happend
means the data is migrated from the one system to another
system. so this is a migration tool
whereas in CATT is used to computer aided testing tool is
used to test the abap object

so this is a testing tool (catt)


this is a migration tool (lsmw)

47.)Role of buffer in sap.

A.) Buffering means the data stored at runtime temporarly in application server parllel to
database server.

in real time we use condition buffering option in this perment data stored in buffer.

48.)Difference between collect and sum.


A.)
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.
COLLECT: if an entry with the same key already exit then COLLECT statement does not
append a new line but adds the contents of numeric fields to contents of numeric fields of
current line entry.
SUM: if you use SUM inside AT-ENDAT block. the system calculates totals for the numeric
fields of all lines in the current line group and writes them to corresponding fields.

49.)What are different abap/4 editors.

A.) The 2 editors are se38 and se80 both have the abap editor in place.In se38 u 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 u can create ur
programs) and BSP applications .

50.)Who take care of data while passing to application to application server.

A.) Database interpreter.

51.)What are table controls in bdc.

A.) Table control are use update the date directly into the
fileds by using two ways.

We can handle the table control by using the CTU params or


creating the line Index.

If this is wrong please correct me...

Please check code

REPORT Y730_BDC5 .
*HANDLING TABLE CONTROL IN BDC
DATA : BEGIN OF IT_DUMMY OCCURS 0,
DUMMY(100) TYPE C,
END OF IT_DUMMY.
DATA : BEGIN OF IT_XK01 OCCURS 0,
LIFNR(10) TYPE C,
BUKRS(4) TYPE C,
EKORG(4) TYPE C,
KTOKK(4) TYPE C,
NAME1(30) TYPE C,
SORTL(10) TYPE C,
LAND1(3) TYPE C,
SPRAS(2) TYPE C,
AKONT(6) TYPE C,
FDGRV(2) TYPE C,
WAERS(3) TYPE C,
END OF IT_XK01,
BEGIN OF IT_BANK OCCURS 0,
BANKS(3) TYPE C,
BANKL(10) TYPE C,
BANKN(10) TYPE C,
KOINH(30) TYPE C,
LIFNR(10) TYPE C,
END OF IT_BANK.
DATA : IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
IT_BDCMSGCOLL LIKE BDCMSGCOLL OCCURS 0 WITH HEADER
LINE.

CALL FUNCTION 'WS_UPLOAD'


EXPORTING
FILENAME = 'C:VENDOR.TXT'
FILETYPE = 'ASC'
TABLES
DATA_TAB = IT_DUMMY.

LOOP AT IT_DUMMY.
IF IT_DUMMY-DUMMY+0(2) = '11'.
IT_XK01-LIFNR = IT_DUMMY-DUMMY+2(10).
IT_XK01-BUKRS = IT_DUMMY-DUMMY+12(4).
IT_XK01-EKORG = IT_DUMMY-DUMMY+16(4).
IT_XK01-KTOKK = IT_DUMMY-DUMMY+20(4).
IT_XK01-NAME1 = IT_DUMMY-DUMMY+24(30).
IT_XK01-SORTL = IT_DUMMY-DUMMY+54(10).
IT_XK01-LAND1 = IT_DUMMY-DUMMY+64(3).
IT_XK01-SPRAS = IT_DUMMY-DUMMY+67(2).
IT_XK01-AKONT = IT_DUMMY-DUMMY+69(6).
IT_XK01-FDGRV = IT_DUMMY-DUMMY+75(2).
IT_XK01-WAERS = IT_DUMMY-DUMMY+77(3).
APPEND IT_XK01.
ELSE.
IT_BANK-BANKS = IT_DUMMY-DUMMY+2(3).
IT_BANK-BANKL = IT_DUMMY-DUMMY+5(10).
IT_BANK-BANKN = IT_DUMMY-DUMMY+15(10).
IT_BANK-KOINH = IT_DUMMY-DUMMY+25(30).
IT_BANK-LIFNR = IT_DUMMY-DUMMY+55(10).
APPEND IT_BANK.
ENDIF.
ENDLOOP.
LOOP AT IT_XK01.
REFRESH IT_BDCDATA.
perform bdc_dynpro using 'SAPMF02K' '0100'.
perform bdc_field using 'BDC_CURSOR'
'RF02K-REF_LIFNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'RF02K-LIFNR'
IT_XK01-LIFNR.
perform bdc_field using 'RF02K-BUKRS'
IT_XK01-BUKRS.
perform bdc_field using 'RF02K-EKORG'
IT_XK01-EKORG.
perform bdc_field using 'RF02K-KTOKK'
IT_XK01-KTOKK.
perform bdc_dynpro using 'SAPMF02K' '0110'.
perform bdc_field using 'BDC_CURSOR'
'LFA1-TELX1'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFA1-NAME1'
IT_XK01-NAME1.
perform bdc_field using 'LFA1-SORTL'
IT_XK01-SORTL.
perform bdc_field using 'LFA1-LAND1'
IT_XK01-LAND1.
perform bdc_field using 'LFA1-SPRAS'
IT_XK01-SPRAS.
perform bdc_dynpro using 'SAPMF02K' '0120'.
perform bdc_field using 'BDC_CURSOR'
'LFA1-KUNNR'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0130'.
perform bdc_field using 'BDC_CURSOR'
'LFBK-KOINH(02)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
DATA : FNAM(20) TYPE C,
IDX TYPE C.
MOVE 1 TO IDX.
LOOP AT IT_BANK WHERE LIFNR = IT_XK01-LIFNR.
CONCATENATE 'LFBK-BANKS(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKS.
CONCATENATE 'LFBK-BANKL(' IDX ')' INTO FNAM.
perform bdc_field using FNAM
IT_BANK-BANKL.

CONCATENATE 'LFBK-BANKN(' IDX ')' INTO FNAM.


perform bdc_field using FNAM
IT_BANK-BANKN.

CONCATENATE 'LFBK-KOINH(' IDX ')' INTO FNAM.


perform bdc_field using FNAM
IT_BANK-KOINH.
IDX = IDX + 1.
ENDLOOP.

perform bdc_dynpro using 'SAPMF02K' '0130'.


perform bdc_field using 'BDC_CURSOR'
'LFBK-BANKS(01)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_dynpro using 'SAPMF02K' '0210'.
perform bdc_field using 'BDC_CURSOR'
'LFB1-FDGRV'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFB1-AKONT'
IT_XK01-AKONT.
perform bdc_field using 'LFB1-FDGRV'
IT_XK01-FDGRV.
perform bdc_dynpro using 'SAPMF02K' '0215'.
perform bdc_field using 'BDC_CURSOR'
'LFB1-ZTERM'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0220'.
perform bdc_field using 'BDC_CURSOR'
'LFB5-MAHNA'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_dynpro using 'SAPMF02K' '0310'.
perform bdc_field using 'BDC_CURSOR'
'LFM1-WAERS'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'LFM1-WAERS'
IT_XK01-WAERS.
perform bdc_dynpro using 'SAPMF02K' '0320'.
perform bdc_field using 'BDC_CURSOR'
'WYT3-PARVW(01)'.
perform bdc_field using 'BDC_OKCODE'
'=ENTR'.
perform bdc_dynpro using 'SAPLSPO1' '0300'.
perform bdc_field using 'BDC_OKCODE'
'=YES'.
CALL TRANSACTION 'XK01' USING IT_BDCDATA
MODE 'A'
UPDATE 'S'
MESSAGES INTO IT_BDCMSGCOLL.
ENDLOOP.

FORM BDC_DYNPRO USING PROG SCR.


CLEAR IT_BDCDATA.
IT_BDCDATA-PROGRAM = PROG.
IT_BDCDATA-DYNPRO = SCR.
IT_BDCDATA-DYNBEGIN = 'X'.
APPEND IT_BDCDATA.
ENDFORM.

FORM BDC_FIELD USING FNAM FVAL.


CLEAR IT_BDCDATA.
IT_BDCDATA-FNAM = FNAM.
IT_BDCDATA-FVAL = FVAL.
APPEND IT_BDCDATA.
ENDFORM.

52.)Start-of-selection is the default event ,when we have to use it explicitly.

A.) 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.

53.)Events in abap reports.

A.) 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.

54.)What is Start-of-selection?Diff between end-of-page and end-of-selection.


A.) Start-of-Selection-This event gets triggered when the user clicks on execute button on
Selection screen. All the Data retrieval and data processing logic will be written in this
event.

End-of-page- This event is used to print page footers for a report

End-of-selection- Any processing required before exiting the report is done in End-of-
Selection.

55.)What are client dependent objects in sap abap.

A.) .the tables which contains application data is client dependent.


2.the tables which contains mandt
fields are client dependent.
3.sap script is client dependt

56.)Sap modifications and enhancements are stored in which table.

A.) MODSAP-SAP Enhancements


MODACT-Modifications
MODATTR-Attributes of Extension Project

57.)What is bapi ?advantages.

A.) After you have carried out the review of the BAPI concept
and it has been accepted, you can start defining the BAPI
itself.

In this step, you will decide on the names, parameters, and


characteristics of the BAPI and determine the structures in
the ABAP Dictionary, which the BAPI

you have planned and defined these required details can you
start to implement the BAPI and create the required
programming objects.

The table below illustrates where the planned information is


written and how it fits together.

Information in the BOR, Function Builder and ABAP Dictionary

Standardized BAPIs

Use
Some BAPIs and methods provide basic functions and can be
used for most SAP business object types. Such BAPIs are
known as "standardized" BAPIs.

Features

With object methods and especially with BAPIs, you can


differentiate between instance methods and class methods.
Instance methods refer to precisely one instance (one
specific occurrence) of an SAP Business Object type, for
example, to one explicitly specified customer order. Whereas
class methods are instance-independent.

BAPIs for Reading Data

The following BAPIs provide you with read-only access to


data in the associated business object type:
GetList()
With the BAPI GetList() you can select a range of object key
values, for example, company codes and material numbers. The
BAPIs GetList() is a class method.

Programming GetList() BAPIs

Use

With the BAPI GetList() you can select a range of object key
values, for example, company codes and material numbers. The
key values returned by this BAPI can be passed on to another
BAPI for further processing, for example, the BAPI GetDetail().
The BAPIs GetList() is a class method (instance-independent).

Features

Provide all the relevant fields in the interface of the


GetList() BAPI. How complex and extensive you structure the
interface, depends on the requirements the BAPI is to fulfill.

57.)Is it possible a table exist in data dictionary but not in physical database.

A.) 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.
Normally Transparent tables are having 1 to 1 relationship in data dictionary and data
base. That mean if a table exists in data dictionary same table will also exist in Database
however there is one situation where this condition can be violated and which is -when you
create a table and only saved not activated ,in this case table is there in data dictionary
but not in Database .

58.)What is alternate to batch input session.

A.)CALL TRANSACTION.

59.)Elementary and collective search help.

A.) Elementary search help is a search help that is invoked when an user presses F4 for a
field.

Collective search help is collection of Elementary search helps.

60.)Have you created a maintainence dialog or table maintainence.

A.) Yes.Table maintenance is a modulepool program,which consist PBO PAI module.It


helps to control the master table.

2 ways
1) through SM30
2) from SE11 then go to table maintenance generator

table maintenance can be done using one way table maintenance generator as well as two
way table maintenance generator.In first way you can only enter the data, but in two way
you can enter the data as well as can view too.

61.)How we can make changes in standard script in sales order header data.

A.) By using the perform statement

syntax: perform (form name) in program (program name)


using &in var&
changing 7out var&
endperform.

62.)Why transaction variant needed.


A.) You can run a transaction with preset data. This is useful for particular user groups
who would have to manually enter data each time the transaction is run. You can establish
several different variants per transaction, based on usage.

we need transaction varient for the pre-define input fields. it can be created from se93.

transaction variants are used to fill the default values into the selection screen.whenever
execute the report these default values are automatically displyed.

Transaction Variant are used to change the layout of the standard transaction without
changing it using Object Key.

We can hide/make a mandatory field etc.

63.)Explain roll area,dispatcher,abap-processor.

A.) Dispatcher recieves the request from client and assigns the request to one of the work
process.<br><br>Roll area: Each workprocess works in a particular memory that memory
is known as Role Area, which consists of User context and session data.<br><br>ABAP-
Processor <br>

64.)What is landscape in your project.

A.) land Scape relates to SAP client for movement of objects from Delvelopment to
Production.
For example DGL-10 -> ASI-10 -> PSI-10.

65.)Difference between subroutine and macro.

A.) 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.

66.)Difference between collect and append.

A.) If an entry with the same key already exists, the COLLECT statement does not append
a new line, but adds the contents of the numeric fields in the work area to the contents of
the numeric fields in the existing entry.

If an entry with the same key already exists, the COLLECT statement does not append a
new line, but adds the contents of the numeric fields in the work area to the contents of
the numeric fields in the existing entry.
it does not allow duplication.
Append statement is used to append a single row at the end of existing row or rows.
Duplication can be possible.

67.)How to debug a popup window.

A.) By using Break points we can debug the script.

We need to create a shortcut from the SAPGUI by giving System command as /h.
and drag this shortcut in the POPUP window it will go into dugging mode

68.)What is cts.

A.) he 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.

69.) How to upload data using CATT?

A.) 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.

70.)What is search help ?


A.)

Search help means, it displays a list of all possible values for screen field when u press F4
key .

Search helps are 2 types, Collective and Elementary search helps.


Elementary search helps describe a search path. The elementary search help must define
where the data of the hit list should be read from (selection method), how the exchange of
values between the screen template and selection
method is implemented (interface of the search help) and how the online input help should
be defined (online behavior of the search help).

Collective search helps combine several elementary search helps. A collective search help
thus can offer several alternative search paths.

71.)What is the difference between occurs 0 and occurs 1?

A.) occurs1: is used to the system allocate the 2 memory


locations are cratead.

occurs2: is used to the system allocate the 3 memory


locations are crated.

72.)Difference between dataelement and domain?

A.) DOMAINS : FORMAL DEFINITION OF THE DATA TYPES.THEY SET ATTRIBUTES SUCH
AS DATA TYPE,LENGTH,RANGE. DATA ELEMENT : A FIELD IN R/3
SYSTEM IS A DATA ELEMENT.

Domain: defines the technical proparties of a datbase table fields.


dataelement: data element is used for defining proparties for database table field

73.)How can i get output on the same page.

A.) If u r talking abt SAP SCRIPTS, you can do it easily by


using<br><br>Protect<br><br>Endprotect.<br>

74.)What is process of project flow in sap?What is the role of abaper?

A.) Project flow contains 5 Phases. These 5 Phases are called


ASAP methodology.
Phase 1: Project Preparation
Phase 2: Business Blueprint
Phase 3: Realization
Phase 4: Final Preparation
Phase 5: Go Live and Support

75.)Difference between at first and at new?

A.) At First - Get triggered for the first loop iteration. Can be used for printing report
headers.

At new - This event gets triggered when a new value is assigned to the field loop. This
event is normally used for Group headers.
Example:

Item no Name
At First 101 chris
101 Mathew
At new 102 Rachel
102 Natasha
At new 103 Chait

76.)What is ITS?What are the merits of its.

A.) 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.

77.)What is transport request ?why it is needed for us?

A.) Using transport request number user send an object from development to testing as
well as testing to production servers. abapers only creating the transport request number
but they can't release.only the image of an object should
be transported not fully.every object has only onetransport request number but different
users.

78.)How to create indexes on table.

A.)

Answers:

Go to transaction SE11, open your database table. Choose the menu,


Goto->Indexes to create index. Give your index name and choose the
fields of the table. Be careful, an additional index may vanish with the
next upgrade or hotpackage.

79.)Why do we use end-of-selection.

A.) 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.

But in Normal ABAP, mostly we wont use this event.

when u r using End-of-selection means, suppose if we have a stop command in start-of-


selection, whenever the control reaches the stop command, it will automatically triggers
the end-of-selection, in case of exit command the control will come out of the program.(
not particulary in HR ABAP, some times in normal ABAP also v use)

HR-ABAP: if we are using any LDB i the program and if we have fired the GET statement
resoective to that LDB, then END-OF-SELECTION works as end of the data iteration (same
as ENDLOOP works in Loop At statements).

Generally: All the processing logic is written in the START-OF-SELECTION event and END-
OF-SELECTION is used to code the display of data to the user (Write statements or the
ALV).

80.)What does exec sql statement do in abap?disadvantages.

A.) Exec SQL statement is used to execute native sql . After exec sql, one can use native
sql in program.

81.)How to convert sd data into abap.

A.) By using ALE technique

82.)What idoc types are used in ale to send material,customer,bom,vendor data.

A.) Material Master Data : MATMAS03


Customer Master Data : DEBMAS03
Vendor Master Data : CREMAS02
Bill Of Material Data: BOMMAT01

82.)Difference between scripts and smartforms.


A.) SCRIPTS SMARTFORMS CLIENT DEPENDENT CLIENT INDEPENDENT

MULTIPLE PAGE FORMATES MULTIPLE PAGE ORMATES


ARE NOT POSSIBLE ARE POSSIBLE

MAIN WINDOW COMPULSARY WITHOUT MAINWINDOW


IT CAN

LABELS ARE USED LABELS CANNOT

NOT GENERATED ONCE SESSION CREATED


FUNCTION MODULE

82.)What is performance tuning.

A.) Performance tuning is to improve the program performance using some features.
using nested selects,
for all entries,
using view,
ST05 is Tcode for performance tuning.

83.)Difference between search help and match code.

A.)
in 4.6b name is call it as matchcode.

in higher versions it is serarchhelps

search help:

adding f4 functionality is search help(adding help for any topic)

match code:

adding search help for the input field is called as mathcode object

84.)Why bapi needed than bdc.

A.) 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 and there
are fw more reasons please mail if u need further details

there are 2 advantages using bapi than bdc.


1.there are some transactions which are called enjoy transactions for these transactions
we can't record with
shdb .bcz these transactions contains many gui controls.then we will go with bapi.
2.bdc is used to move non sap data to sap data within organization.
where bapi is used to move nonsap data to external systems like java.net.etc

85.)What is tablecontrol.

A.) Table control is for maintaining Huge data in Matrix


format. Normally we Use tc while maitaining item data. It
is using for data maitanence. For Example one person have
personal data, contact details, phone num etc. if we think
that these will maitain as header data. bank details of
that person we can maitain as item data.One person can have
multiple bank accounts. in sap that bank details will
maintain in table control.

BANKno BANKname BANKacctno BAnkaddress


1 Axis 1035210 Hyderabad
2 SBI 1544125 Hyderabad
3 ... ....... .........
4 .... ...... ......

86.)Screen wise navigation for creating sales order quotation through

Va21.

A.) We need to set job processing as By using


Set the session as foreground Job scheduling.
and keep the Session as TRUE or 'x'.

87.)Different types of data dictionary objects.

A.) tables, structures, views, domains, data elements, lock objects, Match code objects.

88.)What is se16.

A.) SE16 is a T-code for object browser.

generally used to search the fields of SAP Tables . and respective data.

89.)What is command in subscript?

A.)

90.)Simillarity between internal table and structure.

A.) Internal tables: are tempareroy tables for the database


tables are using created at the runtime of the system. It
will allocate the memory of the system . but where as in the
sturctures are created in within in the progrm. it dont
allocate the space in the memory . But in internal tables
are created the runtime of the system.

The default internal table size is 8KB.


Internal table is a temporary storage area that exits at
runtime of the program .
Structure also exists at runtime of the program.

Structute does not have allocate memory in the system.


where as Internal table allocate memory in the system.

91.)In select statement?what is group by?

A.) 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.

92.)What is landscape in your company.

Landscape is like a server system or like a layout of the


servers or some may even call it the architecture of the
servers viz. SAP is divided into three different lanscape
DEV, QAS and PROD.
- DEV would have multiple clients for ex: 190- Sandbox,
100- Golden, 180- Unit Test.
- QAS may again have mutiple clients for ex: 300-
Integration Test, 700 to 710 Training.
- PROD may have something like a 200 Production.

93.)IF you have tablecontrol ,how to code in pbo and pai.

A.) Loop at control <tabctrl>module <mod-name>endloop.

PROCESS BEFORE OUTPUT. MODULE STATUS_0200.loop at gt_item with control my_table


cursor my_table-current_line.module copy_data.endloop.PROCESS AFTER INPUT.MODULE
USER_COMMAND_0200.loop at gt_item.endloop.

PROCESS BEFORE OUTPUT. LOOP AT gt_item WITH CONTROL my_table CURSOR


my_table-current_line. MODULE copy_data.<br> ENDLOOP.PROCESS AFTER INPUT.
MODULE user_command_0200. LOOP AT gt_item. ENDLOOP.---------------------------------
Here my_table is table control name and gt_item is the internal table name.
94.)Tcode for analysing performance.

A.)SE30 AND ST05.

95.)IF i am in 15 th sec list ,how to navigate to 5th secondary list.

A.) use list index system variable.


re-initialize it to 5.

We have to make use of SY-LSIND.


ie,
AT LINE-SELECTION.
IF SY-LSIND = 15.
SY-LSIND = 5.
ENDIF.

96.)How i can make differentiation between dependent and independent data.

A.) 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

97.)How to create standard text ?how do you transfer it.

A.) By using [so10] tcode we can create standard text. for transporting we use RSTXTRAN

98.)Significance of at line-selection.

A.) line selection event is used for the to display the secondary list on the basic list.this is
work on the basic list and the secondary list.suppose if u click on the basic list the detail
information is opened into the secondary list.
by using the key words like double click or function key F2.

99.)What are indexes.

A.) Indexes are described as a copy of a database table reduced to specific fields. This data
exists in sorted form. This sorting form ease fast access to the field of the tables. In order
that other fields are also read, a pointer to the associated record of the actual table are
included in the index. Yhe indexes are activated along with the table and are created
automatically with it in the database.

100.)How many windows you can maintain in page.


A.)In scripts we have to maintain 99 main windows and smart forms we have to maintain

only one main window in one page

101.)How can write commit and rollback in user exit.

A.) Coomit and Roll back in the User exit should not be used. Because while executing
userexit its not allways sure that all needed values for database updations are present or
not.hence we should not use COMMIT or ROLLBACK, of work.
Also userexit is expected to add new functionality to existing functionality, its not
supposed to make any changes in the existing functionality.

Suppose if you take Userexit SAVE_DOCUMENT_PREPARE.Systems


goes through the user exit more than once and COMMIT or ROLLBACK may cause
inconsistencies.

102.)How you get output from idoc.

A.) Data in IDoc is stored in segments the output from IDoc is obtained by reading the
data stored in its repective segments.

in idoc by using the out put status of the idocs in transaction code is we19.

103.)What is indexing ?diff between primary and secondary index.

A.) Index is used to retrive the fast access the data from the
database by using the indexes. This is the efficient
mechanizam to retrive the data differnt databases.

indexes are two types of given below.

1.primary index.
2. secondary index.

1.primary index.: is used to access the only one record from


the database. That means that should be unique. It is also
called one to one relation ship.
2.secondary index: is used to access the data only more than
one record data base. This is called the secondary index.
The secondary index is used to relation ship is the
one-to-many relationships.

104.)What type of user exits you have written.


A.)

105.)What is use of OK_CODE IN bdc.

A.) BDC_OKC0DE will store all the ok codes in the BDC program,
when you pass the Fields to a scrren after filling the
fields we need to click any button to move other screens,
so here the Button will be have a OK_CODE internally to
know this we do the recording of the Program, after that we
will store this OK code in the BDC_OKCODE field to trigger
the next operation.

106.)Which is not an exit command(EXIT,CANCEL,STOP,BACK).

A.) 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. <br><br>BACK. <br>Effect : This statement positions the
list cursor on the first position of the first line in a logical unit.<br><br>So "Cancle" is not
an exit command<br>

107.)What is the process of dialog program for first to last.

A.) step1:- using screen painter we can design screens as per our application.
step 2:- design logic for our requerment for this program type is Modulpool i.e design flow
logic it provides communactio bt screen painter and modul pool program.

108.)Explain steps of smartforms.

A.) i)Creating Forms Using Smart Forms


1)Creation of pages
2)creation of windows
3)creation of page windows
ii)Retrieving the data from the database and place it in the pagewindow Script Editor
iii)creating the Driver program for the form by using the pen-Form,Start-form,write-
form,clse-form FM's iv)Attaching thr Driver program to an Form by using NACE.
Ex:Create Purchase Order Smartform

109.)Difference between commit and rollback.

A.) suppose u have one table which is in database. The table


contains some records. U want to modify one record of table.
after modification, u don't want that new values for
the record. just u use rollback command. previous values are
placed in database.
Example:
Case 1: Roll Back
sno name palce
1 abc hyderabad
2 xyz bangalore.

This is the table and it contains some records.


Suppose if u want change the 2nd record, means palce
is changed to chennai.

After modification:
sno name palce
1 abc hyderabad
2 xyz Chennai.

Suppose if u want old values, means u don't want new


values. At that time u use roll back command

After useing rollback:


sno name palce
1 abc hyderabad
2 xyz bangalore.
after using roll back, the records are comes like
above(original records)

Case 2: Commit
sno name palce
1 abc hyderabad
2 xyz bangalore.

This is the table and it contains some records.


Suppose if u want change the 2nd record, means palce
is changed to chennai.

After modification:
sno name palce
1 abc hyderabad
2 xyz Chennai.

After useing commit:


sno name palce
1 abc hyderabad
2 xyz Chennai.
after using commit, the table is finilased.u can't get
old values by uisng roll back.
Once if u use commit,u can't get old values for using of
rollback. Before commit, u can get old values for rollback.

110.)How data stored in cluster table.

A.) A cluster table conatins data from mulitple DDIC tables.

It stores data as a name value pair ( varkey, vardata)

111.)How do you upload potrait and landscape in sapscript.

A.) In Attributes option,we have the option to select potrait or landscape.You can choose
either of them to upload in scripts.

112.)What transactions do you use for data analysis.

A.)SE16

113.)How can i copy standard table to make my own ztable.

A.) No., You cant copy the standard table. Because of this we use structures.

Yes, you can copy through SE11, there is simple menu utility to copy standard table.

114.)What are ranges and number ranges.

A.) Main function of ranges to pass data to the actual selection tables without displaying
the selection screen.

Min, Max values provided in selection screens.

It is often necessary to directly access individual records in a data structure. This is done
using unique keys. Number ranges are used to assign numbers to individual database
records for a commercial object, to complete the key. Such numbers are e.g. order
numbers or material master numbers.

115.)What are joins and types of joins.

A.) There are four types of Joins:

1) Self Join
2) Inner Join
3) Outer Join
4) Equi Join

116.)How you can create rfc table.

A.) rfc creation is similar to creation of normal function models except that u need to
specify that it is 'REMOTE ENABLED' in the attributes tab of function module(se37)

RFC function is used in distributed enviornment only, throgh RFC, ALE can transfer IDOC
between two SAP systems.RFC maintainance communication between two SAP systems

117.)Diff between value table and view table.

A.) value table is nothing but primary key table

view table is foregn key table

CHECK TABLE:
The table that contain all valid set of values is called check table.
ex: MARA Table or EMPLOYEE information Table.

VALUE TABLE:
When ever we create a foreign key relationship with another table the system will look a
value table field which is there at domain level.The system proposes that table as an check
table for the foreign key..

118.)Diff between screen and menu painter.

A.) 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.

119.)What is an ABAP/4 QUERY.

A.) ABAP/4 Query is a powerful tool to generate simple reports without any coding.
ABAP/4 Query can generate the following 3 simple reports: Basic List: It is the simple
reports. Statistics: Reports with statistical functions like Average, Percentages. Ranked
Lists: For analytical reports. - For creating a ABAP/4 Query, programmer has to create
user group and a functional group. Functional group can be created using with or without
logical database table. Finally, assign user group to functional group. Finally, create a
query on the functional group generated.

120.)What are various print modes available in sap scripts.

A.) Default
S Simplex (single sided)
D Duplex (duble sided)
T Tumble Duplex (duble sided)

121.)Why function group is required for function modules but not for subroutines.

A.) )Need of function modules is to avoid the lengthy and


faster accessing data,how means,suppose for example: i want
the previous month first day and last day based on Today
date(means day Sunday or Monday or etc)Actually today date
is 19Apr2008,Saturday. I want previous month first day and
last day, ie first day is 1Mar 2008 it is Sunday or Monday
or Tuesday etc and like last date 31Mar 2008 is Monday or
Tuesday etc. Generally you need to write lengthy coding , so
to avoid lengthy coding just u use date function module in
coding and pass the parameters, it will give the out put to
u(just few lines of coding)

2)Function groups means, some related function modules are


grouped in to one function group.
For Example: For date lot of different date function modules
are available in SAP R/3, so these function modules are
grouped in to one Function group.

3)Subroutines are used in only with in the program.


Frequently used part of program is keep in to subroutines.
Globally not available. But where as Function modules are
available in central library of R/3 and global access.

122.)How do you validate the selection criteria of report and do you

Display initial values of selection screen.

A.) The selection criteria is validated in the processing block of the AT SELECTION SCREEN
event for the input values on the screen and respective messages can be sent.

To display initial values in the selection screen:


1) Use INITIALIZATION EVENT

2) Use DEFAULT VALUE option of PARAMETERS Statement


3) Use SPA/GPA Parameters (PIDs).

Validate: - by using match code objects.

Display :- Parameters <name> default 'xxx'.

Select-options <name> for spfli-carrid.

Initial values in a selection screen:

INITIALIZATION.

DNO-LOW = 10.

DNO-HIGH = 30

SIGN I.

OPTION NB.

APPEND DNO.

123.)What are different tables in sap.

A.) Ans :- 4 types of tables i)Transparent tables - Exists with the same structure both in
dictionary as well as in database exactly with the same data and fields. Both Opensql and
Nativesql can be used. ii)Pool tables & iii)Cluster tables - These are logical tables that are
arranged as records of transparent tables. one cannot use native sql on these tables (only
open sql).They are not managable directly using database system tools. iv)Internal tables
-.

124.)Diff between internal table,fieldgroup and extract dataset.

A.) > A field group does not reserve storage space for the fields, but contains pointers to
existing fields.> Internal take up memory. Depending on how much memory your system
has . > Once you have declared the possible record types as field groups and defined their
structure, you can fill the extract dataset using the following statements: EXTRACT. When
the first EXTRACT statement occurs in a program, the system creates the extract dataset
and adds the first extract record to it. In each subsequent EXTRACT statement, the new
extract record is added to the dataset EXTRACT HEADER. When you extract the data, the
record is filled with the current values of the corresponding fields. As soon as the system
has processed the first EXTRACT statement for a field group , the structure of the
corresponding extract record in the extract dataset is fixed. You can no longer insert new
fields into the field groups and HEADER. If you try to modify one of the field groups
afterwards and use it in another EXTRACT statement, a runtime error occurs. By
processing EXTRACT statements several times using different field groups, you fill the
extract dataset with records of different length and structure. Since you can modify field
groups dynamically up to their first usage in an EXTRACT statement, extract datasets
provide the advantage that you need not determine the structure at the beginning of the
program.

125.)What is the effective way of using internal table record .diff types of internal tables.

A.) Internal tbles are of mainly


1. Standard:- Sy-tabix will increment. Time taken to find a record'd depends to the
position of the record.
2. Sorted:- Sy-tabix will increment. Time taken to find a record'd depends on the log
value. Either Append or INSERT will throw a dump.
3. Hased:- Sy-tabix / index will remain zero. Time taken to find a record'd based on the
in-built hash alogorithm and it should be same for 1st and last record.

126.)In production what is the user exit.

A) user exits are nothing but:


1. screen exit
2. function exit and
3. menu exit

the above 3 exits are normally called as User exits but in ABAP terminology User exits are
not that. User Exits are Subroutines given by SAP which are in INCLUDE programs are in
Main program of a transaction driver program. For Ex : Open Program SAPMV45A then you
can find some include programs under USER EXITS comments. go to that include
programs then you can find the User exits which are start with name standard FORM
USER_EXIT_XXXXXX...ENDFORM.

127.)Diff between pooled and transparent table.


A.) 1) Many to One Relationship.
2) Table in the Dictionary has the different name, different number of fields, and the fields
have the different name as in the R3 Table definition.
3) It can hold only pooled tables.

Transparent Table ?
1) One to One relationship.
2) Table in the Dictionary has the same name, same number of fields, and the fields have
the same name as in the R3 Table definition.
3) It can hold Application data.

128.)Which system variable will current value during execution.

A.)BDC_OKCODE

129.)What is the inside concept of select-options

A.) Select-options specify are displayed on the selection screen for the user to enter
values.

Different Properties of Select-options:

1) Visible Length

2) Matchcode Object

3) Memory ID

4) Lowercase

5) Obligatory

6) No Display

7) Modify ID

130.)How to declare select options as parameter

A.) SELECT-OPTIONS: specify are displayed on the selection screen for the user to enter
values.

Parameters: dname like dept-dname.


Select-options: dname for dept-dname.

131.)What is the actual procedure of session method in bdc.


A.) ) Open the session
2)identify the transaction to which we want to transfer the data
3)create a internal table with the fields.
4)append the data to an internal table.
5)populate the internal table data
6)close the session.

1.Create an Internal table with all required Fields of Transaction code to upload
2.Open Session
3.Transferdata from Flat file to BDCDATA Structure Internal table.
4.Upload data into corresponding Transaction code By calling BDC_INSERT function
module
5.Close the Session.

132.)How to read long texts in sap scripts.

A.)FM READ_TEXT

133.)What is rfc.

A.) What is get cursor field.

a.) GET CURSOR statement transfers the name of the screen element on which the cursor
is positioned during a user action into the variable <f>.

GET CURSOR FIELD <f> [OFFSET <off>] [LINE <lin>] [VALUE <val>] LENGTH <len>].

134.)How can i acces 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.

Yes you can access the SAP throgh internet but for that SAPGUI software should be loaded
to the internet browser, than only we can access SAP. The problem is we need to
download SAPGUI each time if we are using different machines at different locations. So to
avoid this complexity SAP has introduced SAP Enetrprise Portal(E.P.) which is machine
independent.so we can get it with any internet browser software.

135.)What are events used in interactive reporting.


A.) There are three events of Interactive Reports:
I. At PF(nn)
II. At line-selection
III. At user-command

136.)How to create index on views.

A.) There are three events of Interactive Reports:


I. At PF(nn)
II. At line-selection
III. At user-command

137.)HOW TO improve performance of programming.

A.) i used performance tuning


se30
is the transaction code

Precautions to be taken while u write the program :(SE30 : For performance check)
Note: If we want to check the performance of your program goto SE30 Transaction Code
and select the program radio button and give ur program name and press execute button
and see ur program result and click back that will take u to se30 Transaction code and
press the analyze button and see ur program performance there
if it is green it is good if it is red ur program have poor performance.Try below rules to
improve ur program performance.
1. Avoid using SELECT...ENDSELECT... construct and use SELECT ... INTO TABLE.
2. Use WHERE clause in your SELECT statement to restrict the volume of data retrieved.
3. Design your Query to Use as much index fields as possible from left to right in your
WHERE statement
4. Use FOR ALL ENTRIES in your SELECT statement to retrieve the matching records at
one shot.
5. Avoid using nested SELECT statement, SELECT within LOOPs.
6. Avoid using INTO CORRESPONDING FIELDS OF TABLE. Instead use INTO TABLE.
7. Avoid using SELECT * and Select only the required fields from the table.
8. Avoid nested loops when working with large internal tables.

138.)What is troubleshooting.

A.) A.) It is defined as fixing a problem. It means that How the error was occurred and
how the error has to solve .then that process is called troubleshooting.

139.)What are technical specs.


A.) Technical Spec is prepare from Functional spec.

First declare the needed tables.


And then declare the table fields.
Psuedo logic is mentioned.
sample screens are created according to the reqiurement.

140.)How can i transfer ztable data to production system.

A.) You can transport the Z-table but you cannot transport the values to the other system.
You can update the values in a Z-table either by using a report / BDC .

141.)Difference between dialog program and report.

A.) using reports

we can dispaly the data

insert and modify the data

* its executable program

where as in dialog programming

we can create our own screens and transactions

we can't execute directly this

Using Report: we can dispaly, insert and modify the data.Its executable program.
Dialog Programming: we can create our own screens and transactions.we can't execute
directly this.

142.)What are text elements in sap script.

A.) Any text that needs to be written on the output document should be placed within a
text element. This includes constant text as well as variable data like internal table data
coming from the ABAP program.

It is advisable to group logically related data within one text element.

The fields of various tables defined in the ABAP program will be included under these text
elements. These fields are carriers of data. Every field should be included in a pair of &
characters. (e.g. &aufk-aufnr&)
143.)What are the problem in processing batch input sessions.

A.) PROBLEMS:- i) If the user forgets to opt for keep session then the session will be
automatically removed from the session queue(log remains). However if session is
processed we may delete it manually. ii)if session processing fails data will not be
transferred to SAP database table.

144.)What is control table.

A.) Control table is used to link the values of the size category and data class defined in
the Dictionary level to the underline date base table.

145.)What is the use of pretty printer?Exactly where can we link the function module

To abap code.

A.) Pretty Printer : is used to Aligned the code Properly. Means it converts the key words
into cap& other words in small letters.

U can set the property of pretty printer by settings-> pretty Printer .

It is having other options also in it.

pretty printeris used to the align the abap coding as well as to organize the code in the
abap editor.by using the control commands or function key (shift+f1).

146.)What are the advantage of structures?How can use them in abap programming.

A.) Using a structure, user can add fields to the existing SAP database tables. Using
.INCLUDE and .APPEND statements structures can be added to the database tables.
Creating structures with in a structure is also possible. User can add maximum 9
structures to a database table.

A structure is created in a program mainly for the purpose of reusability.i.e. if you want to
create 2 internal tables of same type , then instead of creating 2 internal tables separately
we can define a structure and create any number of internal tables of this structure type.

147.)Difference between se01,se09,se10.


A.) SE01 - Correction & Transport Organizer

SE09 - Workbench Organizer

SE10 - Customizing Organizer

148.)Difference between insert and append.

A.) append :- By using this we can add a record at the end of the table only

Insert :- By using can we can add a record in between the records of table where ever it is
neccesary

149.)What is meant by stacked list.

A.) A stacked list is nothing but secondary list and is


displayed on a full-size screen unless you have specified its coordinates using the window
command.

150.)On which event we can validate the input fields in module pool programming.

A.)PAI

151.)Diff between workarea and header line.

A.) Workarea: Workarea as the same structure as table...and


contains only one record(last) record...no internal table
declaration: begin of wa,

headerline: in this v have internal table with headerline


means that internal table will have workarea..and data is
pulled from that internal table body.

152.)IN which table print programs of smartforms available.

A.) Another way to see the print program name is go to SE71 give script name

Press F7 or F6 and select FORM > Check>Texts>click on include Res and press enter you
will get print program list which attach this script.

153.)What is tablebuffer ?what type of programs will use this table buffer.

A.) The table buffer is located between the application and the database. Its goal is to
cache portions of a database table in the application server to reduce database load and
network communication.
154.)How to transfer legacy data into base tables by scheduling a time frame using bdc.

A.) You can use Session method for this and define parameter KEEP ,HOLD,DATE for
transfer.

155.)Difference between sap and abap memory.

A.) we can pass data b/w sessions or b/w progs by using

Sap memory.SET PARAMETER OR GET PARAMETER are the statements that r used to read
or write the data from memory.

Abap memory we can only pass the data b/w programs.here we use EXPORT OR IMPORT
statements to read or write data from the memory.

156.)What is lock object.

A.) lock object is used to prevent the several users to access the same
data record at the same time.

157.)What is the standard program to check the consistency of partner profiles.

A.) RSECHK07

158.)Diff between type and like.

A.) 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.

159.) 1.Enquiry - Customer enquires about the Products services


that were sold by a company - VA11

2.Quotation - Company Gives a Quotation for the products and


Services to a Customer

3.Sales Order - Customer gives a Purchase order to the


company against which a Sales order will be raised to
Customer in SAP.

4.Delivery(Picking, Packing, Post Goods Issue and Shipment)


->Company sends the material after picking it from Goodown
and Packing it in a Handling Unit(box) and Issues the goods

5.Billing - Also company bills to the customer for those


deliveries and in FI against this billing Accounting doc is
created.

MM Flow:
1.Purchase Requisition-> Staff in an organization places
Purchase requisition for want of some goods/products - ME51

2.Request for Quotation(RFQ)-> The Purchase dept in the


organization calls/requests for the quotation for the
products against which PR(Purchase Request) was raised. - ME41

3.Vendor Evaluation->After receiving the RFQ's, after


comparison a Vendor is finalized based on the terms and
conditions.

4.Purchase Order(PO)-> Purchase order was issued to that


vendor asking him to supply the goods/products -ME21N

5.Goods Receipt Note(GRN)->Vendor supplies the material/


Products to the organization -MB01

6.Goods Issue (GI) -> People receives their respective items


for which they have placed the Requisitions

7.Invoice Verification-> Along with the Material Vendor


submits a Invoice for which the Company Pays the amount - .MIRO

8.Data to FI -> data will be posted to FI(Finance) as per


the vendor invoices

160.)What are precautions to be taken while working with control break statements.

A.) when you are using control break commands.internal table must be sorted with key
field.and control-break commands must be used in between the LOOP and ENDLOOP only.

161.)Advantages and Disadvantages of bdc.

A.) Transaction Method:


1) It is faster than session method.
2) While executing, it starts from starting.

Session Method:
1) It is slower than transaction method.
2) While executing, it does not start from starting.
162.)Where do you code hide statement.

A.)With in loop after write

163.)What is alv programming in abap?How to use grid in alv programming.

A.) 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.

164.)When top of page event is triggerred.

A.) it will trigger with first write statement in start-of-selection, also triggers whenever a
new page is occurs, if at all there is no write statement in start-of-selection, this event will
not trigger at all.

165.)What are step loops?how to perform page up and page down in step loops.

A.) Screen Tables are two types:

table control
step loops.

table controls: table control is used to pass the data into


the table at the runtime of the system. By using the loop at
statement in both PAI and PBO events. It is treated like a
loop in the both of the statements.You can scroll the both
vertically and horizentally.

Step loops: IT is also called the screen table. But the


major difference between the step loop is used to repeat the
block of the fields of the screen . These fields are repeat
each and every time of the screen. But you can scroll
vertically but not horizentally.

166.)How can u write programmitically value help to a field with search help

And match codes.


A.) 1) HELP_OBJECT_SHOW_FOR_FIELD
2) HELP_OBJECT_SHOW

167.)Diff between open_form and close_form.

A.) OPEN_FORM ? This module opens layout set printing. This function must be called up
before we can work with other layout set function like WRITE_FORM.

WRITE_FORM ? Output text element in form window. The specified element of the layout
set window entered is output. The element must be defined in the layout set.

CLOSE_FORM ? End layout set printing. Form printing started with OPEN_FORM is
completed. Possible closing operations on the form last opened are carried out. Form
printing must be completed by this function module. If this is not carried out, nothing is
printed or displayed on the screen.

168.)How to define selection screen.

A.) Parameters, Select-options & Selection-Screen

169.)IF there are 10 pages in sap script ,how to start from 10th page.

A.) In the ABAPEditor when we call FM 'start-form'


in that we have parameter start-page = 'page10'

170.)What are the events in abap/4 language.

A.) itialization, 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.

171.)How do you see the authorization checks.

A.) In the interactive reporting, the first event you enter is "initialisation" that is used for
the authorization checks , mainly the administrator is responsible for that purposes and he
only has the authority for that.

172.)An abap program needs a batch input session.we need to submit the program

And batch input session in background.

A.) Go to SM36 and create background job by giving job name, job class and job steps

(JOB SCHEDULING)
173.) Initialization,selection-screen,selection-screen on field,start of selection,topof-
page,at-line selection,top-of-page during line selection,a user
command,end-of-page. end-of-selection.These r the events triggered in report. load on
programm is the event triggered first internally,when u execute the program. after that
remaining
above events are triggered one by one.

174.)Events in module pool programming.

A.) There are two events in Dialog Programming i.e. screen:

1. PBO (Process Before Output) ? Before the screen is displayed, the PBO event is
processed.
2. PAI (Process After Input) ? When the user interacts with the screen, the PAI event is
processed.
3. POH (Process On Help) - are triggered when the user requests field help (F1). You can
program the appropriate coding in the corresponding event blocks. At the end of
processing, the system carries on processing the current screen.
4. POV (Process On Value) - are triggered when the user requests possible values help
(F4). You can program the appropriate coding in the corresponding event blocks. At the
end of processing, the system carries on processing the current screen.

175.)What is a ticket.

A.) Ticket is an issue/error in the soloution/development


raised by the client in written form, which is sent to you or concerned person through
Electronic mail.

175.)What is the functionality of dataclass.

A.) Data class tells how the table is automatically going to be assigned to the correct area
of table space or Data base space of the database when it is created.Each data class
corresponds to a physical area in which all the tables assigned to this data class are
stored.Following are the data classes:

APPL0 (master data): Data which is seldomly changed. An


example of master data is the data contained in an address
file, such as the name, address and telephone number.

APPL1 (transaction data): Data that is frequently changed.


An example of transaction data is the goods in a warehouse,
which change after each purchase order.

APPL2 (organizational data): Customizing data that is


defined when the system is installed and seldomly changed.
An example is the table with country codes.
176.)Functional spec given by whom.

A.) Functional people will create the functional spec according to client requirement. Then
they will pass the functional spec to Technical people.Technical people will create the Tech.
spec and forward to developer.Developer will dev the object.

177.)What is field symbol.

A.) You can use field symbols to make the program more dynamic. In this exanmple the
name of a table control is substituted<br>by a field symbol. Thus you cal call the form
with any internal table, using the name of the tabl?control as a parameter.
<br><br>Example<br><br>form insert_row<br> using p_tc_name. <br><br>field-
symbols <tc> type cxtab_control. "Table control<br><br>assign (p_tc_name) to
<tc>.<br><br><br>* insert 100 lines in table control<br><br><tc>-lines =
100.<br><br>

Field Symbol is very much conceptually similar with Pointers in c language.

178.)How are the contents of tech spec.

A.) u need to write the Pseudocode in the TS, how can you implement the technical
solution for the requirement into its corr. content or paragraph.

generally any TS consists of the foll: as its content:

(this is an example for a report)

1. DETAIL DESIGN SPECIFICATIONS OVERVIEW


a. BUSINESS FUNCTIONALITY
b .MAJOR FEATURES
USER PROCEDURES
CHECK LISTS
ASSUMPTIONS:
CONSTRAINTS:
SECURITY CONSIDERATIONS
OBJECTS:
LTS SECURITY REQUIREMENTS:
RESTART/RECOVERY STRATEGY
PERFORMANCE CONSIDERATIONS
PROGRAM & DATA FLOW INTERACTION
PICTORIAL VIEW
INPUT DATA
COMMENTS
2. DETAILED PROGRAM DESIGN SPECIFICATIONS
PROGRAM DESCRIPTION
EXECUTION METHOD
PROGRAM TYPE
COMMON SUBROUTINES
EXCEPTIONS TO PROGRAMMING STANDARDS
LIST OF OBJECTS IMPACTED
INPUTS / OUTPUTS
ERROR MESSAGES AND CLASSES
BDC SESSIONS
STRUCTURES
DETAILED LOGIC
3. DETAILED REPORT DESIGN SPECIFICATIONS
(REPORT PROGRAM NAME)
REPORT DESCRIPTION
REPORT INVOCATION METHOD
REPORT APPLICATION
REPORT TYPE
REPORT CLASSIFICATION
REPORT MEDIUM
REPORT FREQUENCY
REPORT REQUEST METHOD
REPORT TIMING
REPORT ORIGINATOR
REPORT RECIPIENTS
REPORT PROCESSING ENVIRONMENT
REPORT LAYOUT
REPORT LAYOUT DESCRIPTION
REPORT SORT INFORMATION
REPORT CONTROL BREAKS
REPORT PAGE BREAKS
REPORT SUMMARY STATISTICS
REPORT MESSAGES
REPORT NUMBER OF PAGES / LINES / COPIES
REPORT PRINTING INFORMATION

179.)What is reject statement.

A.) 1. REJECT.
2. REJECT dbtab.

Variant 1
REJECT.
Effect
Stops processing the current database table line and resumes
with the next line of the table on the same hierarchy level.
Unlike the CHECK statement, you can also use REJECT within a
subroutine or loop for table selection.

Variant 2
REJECT dbtab.

Effect
Similar to variation 1. In this case, however, dbtab is a
table from the database hierarchy on a level no deeper than
the current database table. Processing continues by reading
the next record of the table dbtab .

Example
Logical database F1S
Hierarchy: SPFLI -> SFLIGHT -> SBOOK

TABLES: SFLIGHT,
SBOOK.

GET SFLIGHT.
...
GET SBOOK.
...
REJECT 'SFLIGHT'.
...

REJECT cancels processing of the event 'GET SBOOK' and


resumes with the processing of the event 'GET SFLIGHT' .

Note
The name of the subroutine containing the "PUT dbtab"
statement must begin with PUT_dbtab .

180.)What are logical databases.Advantages and disadvantages.

A.) 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.
DisAdvantages: i)If you do not 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 .

181.)Partner profiles are stored in which table.

A.) partner profiles are stored in VBPA table


EDPP1
EDP12
EDP13
EDP21

182.)What is the significance of hide keyword.

A.) HIDE:the hide command is one of the fundamental statements


for interactive reporting you use the hide
technique when creating a basic list it defines the
information that can be passed to subsequent detail
list

183.)Difference between occurs 0 ,occurs 10 and occurs 100.

A.) 1. occurs 0:
(It means it will create the default rows for the
internal table depend on the requirement)

2. Occurs 10.
(It means it will create the 11 rows for the internal table)

3.Occurs 100.
(It means it will create the 101 rows for the internal table)

But where as in defauty the system is create the 8KB size of


the memory space for the internal table.

184.)Which table contains all user exit data.

A.)TFDIR

185.)What do you code in start-of-selection and end-of-selection?why?

A.) START-OF-SELECTION

SELECT * FROM DEPTT INTO CORRESPONDING FIELDS OF ITAB


WHERE DEPTNO IN DEPTNO.

APPEND ITAB.

ENDSELECT.

LOOP AT ITAB.

WRITE : / 10 ITAB-DEPTNO.

HIDE : ITAB-DEPTNO.

ENDLOOP.

END-OF-SELECTION

186.)What is luw?

A.)

187.)What is user specific parameter.

A.) e values in SPA/GPA parameters are user-specific. ABAP programs can access the
parameters using the SET PARAMETER and GET PARAMETER statements.

188.)What is alternate to batch input session .

A.)CALL TRANSACTION AND CALL DIALOG.

189.) LDB means Logical DataBase.it is one of reporting tool. no need of programming
knowledge. mainly LDB is used for HR-ABAP.and also used for cluster
and pooled tables.SE36 is transaction code.

190.)Diff between free and refresh.

A.) Free - You can use FREE to initialize an internal table and release its memory space
without first using the REFRESH or CLEAR statement. Like REFRESH, FREE works on the
table body, not on the table work area. After a FREE statement, you can address the
internal table again. It still occupies the amount of memory required for its header
(currently 256 bytes). When you refill the table, the system has to allocate new memory
space to the lines.

Refresh - This always applies to the body of the table. As with the CLEAR statement, the
memory used by the table before you initialized it remains allocated. To release the
memory space, use the statement

191.)What is a help view.

A.) Help view is used to display the list of possible values for a particular help.

Helps are of two types.


Elementary Search help.
Collective Search Help.

192.)What are version management functions.

A.) version management is the tool is used to compare the objects with version of the
current objects. by using the version management user can compare the previous object
with the version of the current object.who has been modified and who did it.

193.)Is session method synchronous or asynchronous?

A.) Synchronous.

194.)In sap scripts how will you link form with event driven.

A.)

195.)What is the use of table maintainence allowed.

A.) Mark the Table maintenance allowed flag if users with the corresponding authorization
may change the data in the table using the Data Browser (Transaction SE16). If the data
in the table should only be maintained with programs or with the table view maintenance
transaction (Transaction SM30), you should not set the flag.

196.)What are types of L.U.W.

A.) 1) DB LUW - A database LUW is the mechanism used by the database to ensure that
its data is always consistent. A database LUW is an inseparable sequence of database
operations that ends with a database commit. The database LUW is either fully executed
by the database system or not at all. Once a database LUW has been successfully
executed, the database will be in a consistent state. If an error occurs within a database
LUW, all of the database changes since the beginning of the database LUW are reversed.
This leaves the database in the state it had before the transaction started.

2) SAP LUW - A logical unit consisting of dialog steps, whose changes are written to the
database in a single database LUW is called an SAP LUW. Unlike a database LUW, an SAP
LUW can span several dialog steps, and be executed using a series of different work
processes.
197.)What are page windows.how many windows you can maintain in a page window.

A.) Page Window: In this window, we define the margins for left, width, upper and height
for the layout of Header, Logo, Main, & Footer.

198.)Function modules used in F4 HELP.

A.) 1) F4IF_FIELD_VALUE_REQUEST
2) F4IF_INT_TABLE_VALUE_REQUEST

199.)What is read line in abap.

A .)

Answers:

READ LINE and READ CURRENT LINE ? These statements are used to
read data from the lines of existing list levels. These statements are
closely connected to the HIDE technique.

200.)Can we have more than one main window in sap script?

A.) No, there cannot be more than 1 main window in SAP Script because in WRITE_FORM,
it asks for the parameter Window that will create the problem.

WRITE_FORM?

Exporting
Element
Window

201.)Sap and abap memory.

A.)

Answers:

ABAP Memory is a memory area in the internal session (roll area) of an


ABAP program. Data within this area is retained within a sequence of
program calls, allowing you to pass data between programs that call
one another. It is also possible to pass data between sessions using
SAP Memory.

SAP Memory is a memory area to which all sessions within a SAPgui


have access. You can use SAP memory either to pass data from one
program to another within a session (as with ABAP memory) or to pass
data from one session to another.

202.)DIFF between at selection screen and at selection screen output.

A. AT SELECTION-SCREEN event is triggered in the PAI of the selection screen once the
ABAP runtime environment has passed all of the input data from the selection screen to
the ABAP program.

AT SELECTION-SCREEN OUTPUT - This event block allows you to modify the selection
screen directly before it is displayed.

203.)TABLES AND STRUCTURES.

A.) Tables:
1) Data is permanently stored in tables in the database.

2) Database tables are generated from them.

Structure:
1) It contains data temporarily during program run-time.

2) No Database tables are generated from it.

204.)System variables in abap.

A.) System variables have been predefined by SAP. We can use these variables in
formulas or, for example, to pass on certain pieces of information to a function module.
How the function called by the function module behaves depends on the type of
information passed on.

205.)What is interactive reporting.

A.) An Interactive report is a dynamic drill down report that produces the list on users
choice.

Difference: -

a) The list produced by classical report doesn't allow user to interact with the system
where as the list produced by interactive report allows the user to interact with the
system.

B) Once a classical report, executed user looses control where as Interactive, user has
control.

C) In classical report, drilling is not possible where as in interactive, drilling is possible


206.)What are date and time field values stored in sap.

A.) DD.MM.YYYY. HH:MM:SS

207.)What happens table is activated in sap.

A.) When the table is activated, a physical table definition is created in the database for
the table definition stored in the ABAP dictionary. The table definition is translated from
the ABAP dictionary of the particular database.

It is available for any insertion, modification and updation of records by any user.

208.)What is an abap instance.

A.) When you call a function module, an instance of its function group plus its data, is
loaded into the memory area of the internal session. An ABAP program can load several
instances by calling function modules from different function groups.

209.)What is SAP R/3.

A.) SAP R/3 refers to Systems Application and Product for data processing Real-time
having a 3 tier architecture i.e. Presentation layer, Application layer and Database layer.

210.)Function group and Function module.

A.) Function Groups act as containers for Function Modules that logically belong together.

Function Groups
1) These cannot be defined in a Function Module.
2) It cannot be called.
3) They are containers for Function Module.

Function Modules
1) These must be defined in a Function Group.
2) It can be called from any program.
3) They are not containers for Function Group.

211.)What are standard layoutsets in sap scripts.

A.) There are four standard layouts in the SAP Script:

1) Header
2) Logo
3) Main Window
4) Footer
212.)Difference between float and packed datatype.

A.) No, we cannot print decimals in type N because decimal places are not permitted with
N

data type.

Float Data Type: It cannot be declared in Parameters.

Packed Number: It can be declared in Parameters. For e.g.

PARAMETERS : A(4) TYPE P DECIMALS 2,

B(4) TYPE P DECIMALS 2.

DATA : C(4) TYPE P DECIMALS 2.

C = A + B.

WRITE : / ?THE SUM IS? , C.

213.)System fields in abap.

A.)The ABAP system fields are active in all ABAP programs. They are filled by the runtime
environment, and you can query their values in a program to find out particular states of
the system. Although they are variables, you should not assign your own values to them,
since this may overwrite information that is important for the normal running of the
program. However, there are some isolated cases in which you may need to overwrite a
system variable. For example, by assigning a new value to the field SY-LSIND, you can
control navigation within details lists.

214.)Difference between get and get late.

A.) GET - After the logical database has read an entry from the node table Tag.

GET LATE - After all of the nodes of the logical database have been processed that are
below <table> in the database hierarchy.

215.)Function module and their parameters in sap script.

A.) There are three different functions used in SAP Script:

1) OPEN_FORM
2) WRITE_FORM
3) CLOSE_FORM

Parameters in Each Function:


1) OPEN_FORM?

Exporting
Form
Language
2) WRITE_FORM?

Exporting
Element
Window

3) CLOSE_FORM

216.)Diff between SY-TABIX AND SY-INDEX.

A.) SY-TABIX - Current line of an internal table. SY-TABIX is set by the statements below,
but only for index tables. The field is either not set or is set to 0 for hashed tables.

* APPEND sets SY-TABIX to the index of the last line of the table, that is, it contains the
overall number of entries in the table.

* COLLECT sets SY-TABIX to the index of the existing or inserted line in the table. If the
table has the type HASHED TABLE, SY-TABIX is set to 0.

* LOOP AT sets SY-TABIX to the index of the current line at the beginning of each loop
lass. At the end of the loop, SY-TABIX is reset to the value that it had before entering the
loop. It is set to 0 if the table has the type HASHED TABLE.

* READ TABLE sets SY-TABIX to the index of the table line read. If you use a binary
search, and the system does not find a line, SY-TABIX contains the total number of lines,
or one more than the total number of lines. SY-INDEX is undefined if a linear search fails
to return an entry.

* SEARCH <itab> FOR sets SY-TABIX to the index of the table line in which the search
string is found.

SY_INDEX - In a DO or WHILE loop, SY-INDEX contains the number of loop passes


including the current pass.

220.)What are the commands used for interactive reports.

A.) Top-of-Page during line-selection

221.)What are the system fields you worked with.


A.) 1) SY-DBSYS - Central Database

2) SY-HOST - Server

3) SY-OPSYS - Operating System

4) SY-SAPRL - SAP Release

5) SY-SYSID - System Name

6) SY-LANGU - User Logon Language

7) SY-MANDT - Client

8) SY-UNAME - Logon User Name

9) SY-DATLO - Local Date

10) SY-DATUM - Server Date

11) SY-TIMLO - Local Time

12) SY-UZEIT - Server Time

13) SY-DYNNR - Screen Number

14) SY-REPID - Current ABAP program

15) SY-TCODE - Transaction Code

16) SY-ULINE - Horizontal Line

17) SY-VLINE - Vertical Line

18) SY-INDEX - Number of current loop Pass

19) SY-TABIX - Current line of internal table

20) SY-DBCNT - Number of table entries processed

21) SY-SUBRC - Return Code

22) SY-UCOMM - Function Code

23) SY-LINCT - Page Length of list


24) SY-LINNO - Current Line

25) SY-PAGNO - Current Page Number

26) SY-LSIND - Index of List

27) SY-MSGID - Message Class

28) SY-MSGNO - Message Number

29) SY-MSGTY - Message Type

30) SY-SPONO - Spool number during printing

221.)Diff between primary and unique key.

A.) Primary Key ? It can accepts 0 value and cannot be NULL.

Unique Key ? It can be NULL.

222.)If you are using logical databases ?how u can modify the selection screen

Elements.

A.) Select-options : dname for deptt-dname

222.)How do you display data in detail list.

A.) By using two statements:

1) Top-of-page during line-selection


2) At line-selection

223.)Windows in sap script.

A.) ?MAIN - Main Window


The main window is a continous window which can extend over several pages. If the text
in the main window fills up a page, a new page is created.
Only one main window can be defined in the SAPscript whereas up to 100 instances of
main window can be created in a page.
?VAR - Variable Window
This window can have the variable contents displayed on them. The contents of the
window cannot exceed the window size. The content can be formatted for each page.
?CONST - Constant Window
The constant window can have a fixed content and is formatted only once.

224.)What are extracts.

A.) Extracts are dynamic sequential datasets in which different lines can have different
structures. We can access the individual records in an extract dataset using a LOOP.

225.)How do you find a file exists in presentation server.

A.) eps_get_directory_listing for directory

225.)System fields used in interactive reporting.

A.)interactive System Fields: SY-LSIND, SY-CPAGE, SY-LILLI, SY-LISEL, SY-LISTI,

SY-LSTAT, SY-STACO, SY-STARO


Lists: SY-COLNO, SY-LINCT, SY-LINNO, SY-LINSZ, SY-PAGNO,
SY-TVAR0?..SY-TVAR9, SY-WTITL

226.)Logo in sap script.

A.)

RSTXLDMC OR

Steps for making and inserting Logo in SAP Script:

First Procedure:
1) Draw the picture
2) Save it
3) /nSE78
4) Write name & Choose Color
5) Click on Import
6) Browse picture
7) Enter

Second Procedure
1) /nSE71
2) Insert
3) Graphics
4) Click on stored on document server
5) Execute
6) Choose name of BMAP

227.)Call screen and leave screen.

A.) Call Screen: Calling a single screen is a special case of embedding a screen sequence.
If you want to prevent the called screen from covering the current screen completely, you
can use the CALL SCREEN statement with the STARTING AT and ENDING AT

CALL SCREEN 1000.


CALL SCREEN 1000 STARTING AT 10 10 ENDING AT 20 20.
LEAVE SCREEN statement ends the current screen and calls the subsequent screen.
LEAVE SCREEN.
LEAVE TO SCREEN 2000.

228.)IF internal table is empty in for entries ,what happens.

A.) No, records will be displayed.

229.)IF i forget some command in sap script ,suppress zero display,how to find.

A.) Suppressing of entire screens is possible with this command. This command allows us
to perform screen processing ?in the background?. Suppressing screens is useful when we
are branching to list-mode from a transaction dialog step.

230.)How will you move to next screen in interactive reporting.

A.) 1) Top-of-Page during line-selection


2) At line-selection

Das könnte Ihnen auch gefallen