• No results found

Interview Questions(All Interview)

N/A
N/A
Protected

Academic year: 2021

Share "Interview Questions(All Interview)"

Copied!
221
0
0

Loading.... (view fulltext now)

Full text

(1)

1.what are the tools you are using for performance tuning in a object? A.)Code Inspector ,Runtime Analysis.

2.) what is the usage of Enhancement category in tables?

A.) When a table is created you need to set enhancement catagory. The reason for encancement catagory is to say what type of fields you can have in your table. For the SAP tables when you want to make enhancements( adding your own fields- append structure)what type of field you can add it depends on how they set the enhancement catogary. 1> Can be enhanced deep: You can have any type of fields and if it is a standard table you can add any type of field whether it may be a character type, reference type or even a table type ( deep means structure within structure)

fields. 2>Can be enhanced (character-type or numeric): Now you can add only flat data type fields not a reference type or deep structures ( a table type within a table). 3>Can be enhanced (character-type) : In a table for which this technical attribute is set you can have only character type fields and in standard tables you can enhance it by adding only character type fields not even integer or float or packed.(C, N, D and T are the character type fields and your table should contain these type of fields.). 4>Cannot be enhanced: This table cannot be enhanced means you cannot add further fields into this table. 3.)Different ways of finding badi and bapi?

A.)

find the extract for finding BADIs from one of the SDN posts Finding BADIsBusiness add-ins are enhancements to the standard version of the system. Business Add-In is a new SAP enhancement technique based on ABAP Objects.They can be inserted into the SAP system based on specific user requirements.Each Business Add-In has:• at least one Business Add-In definition• a Business Add-In interface• a Business Add-In class that implements the interface In order to enhance a program, a Business Add-In must first be definedSubsequently two classes are automatically generated:• An interface with ‘IF_EX_’ inserted between the first and second characters of the BADI name.• An

adapter class with ‘CL_EX_’ inserted between the first and second characters of the BADI name. The Application developer creates an interface for this Add-In. There are multiple ways of searching for BADI. • Finding BADI Using

CL_EXITHANDLER=>GET_INSTANCE• Finding BADI Using SQL Trace (TCODE-ST05).• Finding BADI Using Repository Information System (TCODE- SE84). 1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System->Status. Double click on the program name. Once inside the program search for ‘CL_EXITHANDLER=>GET_INSTANCE’.Make sure the radio button “In main program” is checked. A list of all the programs with call to the BADI’s will be listed.The export parameter ‘EXIT_NAME’ for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it. The changing parameter ‘INSTANCE’ will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name. 2. Start transaction ST05 (Performance Analysis).Set flag field "Buffer trace"Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view

(2)

V_EXT_IMP and V_EXT_ACT)Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session.Push the button "Deactivate Trace".Push the button "Display Trace".The popup screen "Set Restrictions for Displaying Trace" appears.Now, filter the trace on Objects:• V_EXT_IMP•

V_EXT_ACT Push button "Multiple selections" button behind field ObjectsFill:

V_EXT_IMP and V_EXT_ACT All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.So the BADI name of IF_EX_CUSTOMER_ADD_DATA is

CUSTOMER_ADD_DATA 3. Go to “Maintain Transaction” (TCODE- SE93).Enter the Transaction VD02 for which you want to find BADI.Click on the Display push buttons.Get the Package Name. (Package VS in this case) Go to TCode: SE84->Enhancements->Business Add-inns->DefinitionEnter the Package Name and Execute.

for BAPI

First go to transaction BAPI,in alphabetical tab. There is lists all of the BAPIs, you can then look thru them by business object.

4.)How to sort the table without sorting it? A.)Declare it as

IT TYPE SORTED TABLE OF KNA1. 5.)

Based on certain condition how can we show different columns in output of ALV?? For Ex if Condition A is met we need to show 1 5 and 7 column , If condition B is met we need to show 1 2 and 4 and if condition C is met we need to show 1 3 and 6.

A.)built three diffrent filedcatlogs for three diff conditions and display output.

if cond x.

perform buildcat1. perform alv display1.

elseif cond y perform buildcat2. perform alv display2. elseif cond z.

perform buildcat3. perform alv display3. endif.

(3)

If BDC is developed in Development system with no data , where do we do the recording? A.)

7.)

Why do we use CALL FUNCTION ..IN BACKGROUND TASK and CALL FUNCTION ...STARTING NEW TASK? What is the difference?

A.)How do u know which internal table should be created for specific requirement?

A.)Most of the time we go for standard internal table. However, where main operation is key access, Hashed internal table is most appropriate. Hashed internal tables are useful if you want to construct and use an internal table which resembles a database table or for processing large amount of table. If you are not sure about it, then go for standard internal table.

8.)What is X parameter in BAPI?

A.) to make a changes in BAPI Parameter we will be using staemt 'X". 9.) while implementing badi what are the tables u find??

A.)

10.)In which case will u use badi and userexit? A.)

in more elaborative way...i can say that

user exit has a single implementation , badi has multiple implimentations , the more added advantage of badi compared to exit is , we can deactivate particular

implementation in the production server, if the particular implimentation need not be executed.but for such opportunity lacks.

11.) IF I SAVE A TRANSACTIONAL DATA TABLE IN APPL0 INSTEAD OF APPL1 DURING TECHNICAL SETTINGS OF A NEW TABLE WHTHER IT WILL CREATE ANY PROBLEM OR IT WILL WORK SMOOTHLY???

A.) Yes, APPL0 is the technical settings for Master Table which changes seldom whereas APPL1 is for Transaction Table which changes frequently. We should save the data of the database table on its appropriate disk space otherwise will create disk space problem, fatal disk problem etc.

Saving the transaction table in appl0(master table) would give an error when the code inspection will be performed over it. Because The Code Inspector tool uses the data class as a categorization of the table with respect to it's data content. Since this influences some of the tools' check results, you should correctly maintain whether a table contains master data (data class APPL0), transactional data (APPL1), or configuration data (APPL2).

(4)

12.)How to move even records from one internal table to another? A.) TABLES:ZKNA11,ZKNA12.

DATA:it TYPE TABLE OF zkna11, it1 TYPE TABLE OF zkna12. data:wa like LINE OF it, wa1 like LINE OF it1. data: LN type I VALUE 2. data: LN1 type I .

data: LO type I VALUE 1.

SELECT * FROM ZKNA11 INTO TABLE IT UP TO 4 ROWS.

LOOP AT IT INTO WA. IF SY-TABIX = LO. wa1-kunnr1 = wa-kunnr. wa1-NAME11 = wa-name1. wa1-LAND11 = wa-LAND1. APPEND WA1 TO IT1. LO = LO + 2. ENDIF. IF SY-TABIX = LN. wa1-kunnr2 = wa-kunnr. wa1-NAME12 = wa-name1. wa1-LAND12 = wa-LAND1. LN1 = LN - 1.

MODIFY IT1 FROM WA1 INDEX LN1 TRANSPORTING KUNNR2 NAME12 LAND12. LN = LN + 2.

ENDIF. ENDLOOP.

13.) How can we create Search Help, without using table field? for example I have two fields in one table and I required one more field in search help how?

A.) create first a view of the two table in SE11 transaction. Then create the search help based on that view. 14.)Diff b/w interactive and drill down reports?

Interactive report means ,suppose in 1st list u have to show some header details and show item details in futher list.But drill down list means if u click on the field specified,it will take u to the corresponding transactions like MM01,XK01 etc by calling the

(5)

transactions and set parameter.In both cases we use

'REUSE_ALV_GRID_DISPLAY'(I_CALLBACK_USER_COMMAND).IN normal interactive report,we use the events like at line-selection,at user-command. 15.) What is the use of update Function Module ? Where it is used and purpose ?

A.) Update Function Modules are used for SAP Logical Unit of Work. This function modules are triggered when an Explicit or Implicit COMMIT WORK is encountered. 16.) Can we use instance attributes inside a static attributes? say yes or no ?

A.) no we can't use because static attributes are created when a class is declared and we can use before instance created to that class but the instance attributes are get initialized and activated only after the class is instantiated.

17.)What is AT SELECTION-SCREEN EVENT?

A.)AT-SELECTION EVENT Triggers When a user enters the parameter on selection screen depending on the selection which user made the following screen or following changes would appear on the screen.

18.) what is the difference Lsmw and Bdc?

A.) LSMW is generally for normal SAP applications, while BDC is mainly for any customized application. LSMW provides various methods for the migration of data, namely, those of direct input, Batch input recording and IDOC. BDC however, simply makes use of recording. There are two ways of implementing BDC, the call transaction method and the session method. In LSMW, mapping is taken care of with the help of SAP, whereas in BDC one has to provide explicit mapping directions. Coding is not very flexible in LSMW, whereas in BDC, coding is very flexible and applications can be easily customized. This is mainly because LSMW is devised specially for functional consultants who do not perform coding, while BDC is mainly made use of by technical consultants, who do perform coding.

19.) WHICH LANGUAGE IS USED TO WRITE ABAP CODING PART? A.)COBOL Language

20.) which commands are allowed if you are working with an internal

table of type sorted?

A.)APPEND KEYWORD is not allowed.Remaining allowed.

21.) Factory calendar contain company specific dates such as alternate working Saturdays, Plant shutdown etc.

You can create your company factory calendar via transaction code 'SCAL'. Assignment of the factory calendar

(6)

by plant is done in transaction code 'SM30 - V_T001W'.

An example of a SAP application that uses the factory calendar is the SAP MRP modules.

Assuming that you have a specified an alternate working Saturday, MRP will postponed the planned orders to the next working day if it happened to falls on a non-working Saturday.

Function module related to Factory calculator are 1.FACTORYDATE_CONVERT_TO_DATE 2.DATE_CONVERT_TO_FACTORYDATE

22.) In the process of creating a delivery tere is a firld date which needs to be saved, there is an userexit available but that exit does not have that date field in it, how would you overcome this. You have the delivery no that got created instead

A.) We have TO "Append Structure" OF The Custom Date Field To the Reruired Table And Enhance that Table.

B.) try to find that date field in structure (Local & global) after putting break point at that user exit.

once you find the structure you can fetch data using field symbol.

field-symbol type (type of that date field). var(30) type c.

var = (Program/include name)date-field. if sy-subrc = 0.

assign field symbol to var.

23.)There is a delivery that is being created through the ABAP code and in the middle it says delivery created but someone is modifying , how would you rectify this issue

A.)

We can restrict other users from editing our programs/FMs with the help of "editor lock" Concept.

The editor lock prevents other users from making changes to the program. This includes attributes, documentation and text elements, as well as the functions "Rename" and "Delete".

(7)

24.)How u can add custom search help in ur program? a.)

Another is by calling the function module 'F41F_INT_TABLE_VALUE_REQUEST' ,U CAN ADD search help to a field.

25.) How Group 10 sets of records per group of Internal Table in ABAP.

Good Afternoon All,

I have one internal table which have 400 records ,i need to group these records in set of 10 records .

for example: ID value 2 100 1 95 3 90 4 85 6 80 7 75 8 70 10 65 9 60 ---Total : 720---1st group ---11 59 13 58 12 55 14 54 15 52 18 51 16 50 17 49 19 40 20 39 ---Total : 507 ---2nd Group ---... ... ...

(8)

A.) CLEAR:lv_lines,lv_n,lv_mod,lwa_final,lv_p,lv_ch,lv_a,lv_b.. SORT lit_final BY vtweg vkorg vkbur pltyp matnr.

DESCRIBE TABLE lit_final LINES lv_lines.

lv_p = lv_lines / 10. lv_ch = lv_p.

SPLIT lv_ch AT '.' INTO lv_a lv_b.

IF lv_b NE '00'. lv_n = lv_a + 1. ELSE.

lv_n = lv_a. ENDIF.

lv_mod = lv_lines MOD 10.

lit_finaltp[] = lit_final[].

DO lv_n TIMES. lit_final[] = lit_finaltp[].

REFRESH : lit_finalt[],lit_finaltp[]. CLEAR : lwa_finaltt.

LOOP AT lit_final INTO lwa_final. IF sy-tabix LE 10.

APPEND lwa_final TO lit_finalt.

MOVE-CORRESPONDING lwa_final TO lwa_finaltt. CLEAR lwa_final.

ELSE.

APPEND lwa_final TO lit_finaltp. CLEAR lwa_final.

ENDIF. ENDLOOP.

(9)

lit_final[] = lit_finalt[]. ENDDO.

26.)How to trigger outbound Idoc in Sap? A.)

Case 1: A customer wants a order acknowledgment for his order, another wants a invoice in EDI formats. In this case you will enable IDoc output through output determination in VA01 and VF01 transactions, you will assign ORDERS, INVOIC message types. The triggering function module would be

EDI_PROCESSING

Case 2: A business wants to distribute its material data from its main ERP system where all materials are maintained to non SAP warehouse management systems, price cataloging systems, all of which require some part of material master. For this you will enable ALE, create distribution model with the other systems as receivers, generate partner profiles and activate change pointers, which will trigger MATMAS idoc type whenever important fields on material master are

changed via MM* trxns. Here internally you are using

MASTER_IDOC_DISTRIBUTE or externally BD10 transaction.

Case 3: You are getting EDI messages from your business partners like payment advices, orders etc. You would need to create IDocs and post the documents to respective

transactions like VA01 etc. You are getting the EDI message in a file and map it to ORDERS idoc file on OS. Now you can use EDI_INCOMING data, and if all other configurations like partner profile, inbound process code, message and idoc types are setup, you will be able to post the payment advice or create a sales order

Case 4: You have to post a transaction internally within the

system, then you will use IDOC_INBOUND_ASYNCHRONOUS or SYNCHRONOUS.

(10)

Case 5: You want to directly trigger SAP from an external system, posting an inbound IDoc, you would need to call

IDOC_INBOUND_ASYNCHRONOUS via tRFC connection and ALE by using WE02 OR WE05 TCODE we can see the IDOC is reached to destination or not..and also we can see the where the IDOC is currently 27.)How u can call both session and Call transaction methods in ur program? A.)BDCRECX1

28.) Suppose in the BDC call transaction we updated one record into the database. In the message log it is showing

successful, but it was not updated into the data base? How can we handle?

A.)Use Commit Work

IN CALL TRANSACTION,BY DECLARING THE 'RETURN' PARAMETERS WE GET STATUS OF THE RECORDS.WEATHER THEY ARE UPDATED OR NOT. 29.)Difference b/w Session and Call transaction Method?

A.) Session Method :

It supports small amount of data as well as large amount of data transfer.

It supports both foreground and Background process. Data will be updated in the database only after

processing the session and data processing is asynchronous and data updation is synchronous.

It supports multiple transaction at one time. Call Transaction:

It supports only for small amount of data transfer. It won't support background process.

Data will be updated automatically and data processing is synchronous and data updation will be synchronous and also asynchronous.

It support single transaction at one time. Processing is faster.

30.)How to find userexits of SD module? A.) Goto vmod.

All of the userexits in SD are contained in the development class VMOD.

Go to object navigator(SE80) and select package from the list and enter VMOD in it. Press enter and you will find all includes which contain userexits in SD for different

(11)

functions like PRICING, ORDER PROCESSING etc. Select the userexit according to the requirement and read the comment inserted in it and start coding.

31.)Diff b/w DATA AND TYPES? A.) using the statement -Types we can declare own data types

TYPES dtype [TYPE type|LIKE dobj] ... where as using DATA statement

we can declare own variables or instance attributes of classes DATA var [{TYPE type}|{LIKE dobj}] ...

32.) How can we display multiple alv's without using containers? A.)BLOCKED ALVS

33.) User ‘A’ put the Exclusive Lock for one table and User ‘B’ want to put the Shared Lock for the same table. Is it Possible?

A.) No it's not possible. Because Once Exclusive Lock is activated for one table it's not allowed another lock like Shared or Exclusive lock.

While in case of Shared Lock it is possible. 34.)Can we store data in cluster table?

A.)No, table cluster should be used exclusively for storing internal control information.

34.) What is the Comparison between Class and Function Module in Data Point of View?

A.)

35.)In pooled and Cluster table,which table u can convert into transparent table? A.) pooled tables , You can easily convert pooled tables to transparent table with the transparent flag of the technical settings. You can use this option to access a pooled table from outside the R/3 System.

36.) Among pooled and Cluster tables, in which table data used to store in Row Format?

a.) pooled table is stored entries with out row separator . and coming to the cluster the entries are stored with row separator

37.)How to upload data from excel to internal table?

A.)no i think these fm doesn't work with excel files. the above fm are used to upload the txt files means note pad filessivas

(12)

in order to upload the xl file usually we use the fm

alsm_text_convert_to_xls_format : to download internal table data to xl file sap_convert_xls_to_internal_table : to upload the xl file data to internal table .

37.) how to genernate 21 sencondary index A.) SUBMIT REPORT from 20 th

interactive report . .

38.) I have 100 records in a table, how to read every 7Th record each in that...

A.)

39.) I have 2 inputs in Module pool prgm, if i click on the input i need to get drop down list..How to get it..

A.)DOMAIN(FIXED VALUES)

ATTRIBUTES(DROPDOWN,LISTBOX) VRM_SET_VALUES

40.) I have 250 records in an internal table, tell me how to randomly delete the each 5th record...i,e 5,10,15,20 like this.

A.) Do.

T = sy-index * 5.

Read table itab index T. If sy-subrc = 0.

Delete itab index T. Else

EXIT. ENDDO.

41.)How to display dynamic logos in smartforms? A.)

1.Register/import logos in SAP - TAC SE78

2.Create Z* table to map logos and pages to which they have to be displayed 3.Create a variable in Smartform which will be populated in the beginning of each page and which will find the correct logo for the page based on the Z* table

4.Display the logo using standard Smartform image object using the variable you found in step 3.

42.) In Interactive report, how to go back to 3rd list directly, from 9th list?

(13)

A.)Use WHEN SY-LSIND = ‘9’. SY-LSIND = ‘3’.

43.) What is the effect on Customer Exits and User Exits maintained

in a system on Up-gradation .

A.) Customer Exits are enhancements hence protected against up-gradation however, User Exits are considered as modifications to ABAP program and are not protected against the gradation and hence are overwritten during up-gradation.

44.) did u done enhancement framework?how u implemented? A.)

45.) how to modify a a paritcular field value of BDC table ? suppose im filling company code in of of the screens.Now i want to use the same BDC table with just compant code different. A.)

46.) I have multi use BAdi,i implemented 5 time for that BAdi.so want to give sequence for that like

First implementation 4 second 3 ..

..

So how it is possible?

A.) very wrost question... sequence of the Implementation is not possible. it will trigger based on the scenario, no ascending and decending order.

47.)How to debug a background Job?

A.) Use SM37 to get list of jobs, put the cursor on the job, type JDBG in the command line ( no '/' ), and press ENTER

You are in debug mode now. Step through SAP program (press F7 couple of times) until you get to code you need.

48.) i have a requirement that design window in layout of smartforms but when we print smartforms window should not be printed?

(14)

A.) Go to Smartforms-> select the perticular window and choose the conditions option, there place the condition like 1 = 2 ... then the perticular window will not be printed. 49.) what is the role of CUID in Business Objects Import Wizard? A.) the update option checks the CUID. If the CUID doesn't match, it will NEVER overwrite objects. Perhaps in your case, it seems to me that the CUIDs are different but the names are same. In such a case, Import Wizard will not import objects unless the rename option is checked. Alternatively, you can delete that object from the

destination system and perform the import again, this will be better going forward.

50.) Why do we use Process On Value Request(POV) event instead of data element,search help in module pool.

A.)

51.)What is the use of field symbols in ABAP?

A.) By the use of field symbol u can modify the internal table, work area, user command etc without using modify keyword. U can also modify internal table of standard program by field symbols.

field-symbol <fs> type any.

52.) Hi, My question is " How to display 3rd highest salary record from the internal table. The internal table has 2 fields named emno(Employee number) and salary.". Send answer to my mail [email protected]. Thanking you

A.)

53.) What is inheritance and multi-level inheritance? Explain with example ?

A.)

Inheritance is nothing but acquiring the properties of one class(base class) to another class(child class).

Multi-level Inheritance is nothing but one parent class that have more than one child class. For Ex, P1 is parent Class and C1 and C2 are the Child classes, now C1 can acquire the properties of Parent class P1 and C2 can acquire the

properties of both Child calss C1 and Parent Class P1.

SAP ABAP SUPPORTS MULTI-LEVEL INHERITANCE... SAP ABAP NOT SUPPORTS MULTIPLE INHERITANCE, ACHIEVES THROUGH INTERFACES CONCEPT...

(15)

54.) What is upcasting and downcasting?

A.)When the level of hierarchies are considered, it is the super class at higher level & sub class at lower level. Hence the assignment of subclass to a superclass is up casting & super to a subclass is down casting.

55.)Diff b/w enhancement and Modification?

A.) enhancement is adding additional functionality to standard sap program without modifying the original object.

modification means changing standard code as per user requirement.

56.)Userexit and Badi? A.) User Exit:

1)it is procedural approach.

2)Program are written in between form endform. 2)it Need access key .

BADI:

1) it is object oriented approach.

2) Reusable because of oops concept .

3) first definition (se18) then implementation (se19)

57.) how to Implement a BADI in which it restricts the access when purchase order is created against contract using definition ME_PURCHDOC_POSTED. please tell me the answers if any one knows. thanks in advance. :ravikiran

58.) will a break-point statement trigger in background job? say yes or no. then whats is the reason?

A.) break-point will not trigger in the background job because it is a dialogue instance statement.

59.) what precautions or prerequisites do you follow to update a record into database table and how

A.) Hi Check this out...

1) Lock data to be edited(creating a lock object from dictionary and call the FM Enqueue_lock).

2) Read the data

3) Process data and write it to database 4) Release the locks(Use FM Dequeue_lock)

(16)

61.)What is version Management?How to maintain it in sap scripts? A.) Version is used to differentiate the current active version and previous active version. if our current active version is wrong we can retrieve the previous version.

path to version management : Utilities > versions ->version management.

you can compare current verison and previous active version also.

for Script released versions ...

goto Tcode SE03 ---> select SEARCH FOR OBJECTS IN REQUESTS/TASKS

In object selection, we can see selections like PROG,FUGR, CLASS etc.. in the blank space give FORM and press enter, enable the check box and give the form name and execute. it displays all the released requests and tasks .

61.) What will happen if we run call Transaction in BDC for large volume of data?

A.) this will take more time than session method takes

62.)Where will store all custom programs in SD Module? A.)TRDIR

63.)

How many domains will create for one data element?

A.)Only one domain for one dataelement.One domain can be used For many datalements.

64.) How to give programe name as input in BDC report of abap ? A.)

65.) For particular transaction you want to upload the data using any of bdc method...if the transaction contains any of pop

window functionaliy and having radio button in the

window..Any one of the radio button must be selected then only the next data can be inserted how will you handle this scenario in your program

(17)

A.) while recording through transaction SHDB. check 'Not a batch input session', then you will get the popups in recording. just continue the recording. .

66.)What is assistance class?

A.) It is the global class in which we write our required logic from oopsabap & Web dypro abap point of view.

67.) check sy-subrc = 0 and if sy-subrc =0 difference explain A.)

68.) i have two purchase orders in smartform.i need to print them in two different pages.how to do that.

69.)

i have 2 fields on selection screen of a Report along with a check box.My requirement is initially that first field sud be mandatory but when we click on the check box the first field which was mandatory sud now be optional and the second field now sud be mandatory.Please provide the

solution asap. thank u. REPORT ztest2. TABLES t001w.

SELECTION-SCREEN BEGIN OF BLOCK b1.

SELECT-OPTIONS s_werks FOR t001w-werks OBLIGATORY. SELECT-OPTIONS s_land FOR t001w-land1.

SELECTION-SCREEN BEGIN OF BLOCK b2.

PARAMETERS chk AS CHECKBOX USER-COMMAND click. SELECTION-SCREEN END OF BLOCK b2.

SELECTION-SCREEN END OF BLOCK b1. AT SELECTION-SCREEN.

* This event is then triggered when a user selects an option from CHECKBOX

IF chk = ''.

LOOP AT SCREEN.

IF screen-name = 'S_WERKS-LOW'. screen-required = '1'.

MODIFY SCREEN. " INDEX sy-tabix. ELSEIF screen-name = 'S_LAND-LOW'. screen-required = ''.

MODIFY SCREEN. " INDEX sy-tabix. ENDIF.

ENDLOOP. ELSEIF chk = 'X'.

(18)

LOOP AT SCREEN.

IF screen-name = 'S_WERKS-LOW'. screen-required = ''.

MODIFY SCREEN. " INDEX sy-tabix. ELSEIF screen-name = 'S_LAND-LOW'. screen-required = '1'.

MODIFY SCREEN. " INDEX sy-tabix. ENDIF.

ENDLOOP. ENDIF.

AT SELECTION-SCREEN OUTPUT.

* This event is also trigged to re-draw ABAP report screen so can be

* used to hide or display fields

IF chk = ''.

LOOP AT SCREEN.

IF screen-name = 'S_WERKS-LOW'. screen-required = '1'.

MODIFY SCREEN. " INDEX sy-tabix. ELSEIF screen-name = 'S_LAND-LOW'. screen-required = ''.

MODIFY SCREEN. " INDEX sy-tabix. ENDIF. ENDLOOP. ELSEIF chk = 'X'. LOOP AT SCREEN. IF screen-name = 'S_WERKS-LOW'. screen-required = ''.

MODIFY SCREEN. " INDEX sy-tabix. ELSEIF screen-name = 'S_LAND-LOW'. screen-required = '1'.

MODIFY SCREEN. " INDEX sy-tabix. ENDIF.

ENDLOOP. ENDIF.

70.)How to create Database table using program? A.) Report ypriyatest.

TABLES: bdcdata. DATA:t_bdcdata LIKE STANDARD TABLE OF bdcdata. PARAMETERS :

(19)

p_table(15) TYPE c. DATA: MSG LIKE BDCMSGCOLL, T_MSG LIKE TABLE OF MSG, MESSAGE(72) TYPE C. PERFORM PROCESS. *&---*

*& Form fill_screendata

*&---form fill_screendata using value(p_0015)

value(p_0016). BDCDATA-PROGRAM = P_0015.

BDCDATA-DYNPRO = P_0016. BDCDATA-DYNBEGIN = 'X'. APPEND BDCDATA TO T_BDCDATA. CLEAR BDCDATA.

endform. " fill_screendata

*&---*

*& Form FILL_FIELD_DATA

*&---form FILL_FIELD_DATA using value(p_0020)

value(p_0021). BDCDATA-FNAM = P_0020.

BDCDATA-FVAL = P_0021.

APPEND BDCDATA TO T_BDCDATA. CLEAR BDCDATA.

endform. " FILL_FIELD_DATA

*&---*

*& Form PROCESS

*&---form PROCESS . **first screen PERFORM fill_screendata USING 'SAPMSRD0' '0102'. PERFORM FILL_FIELD_DATA USING 'RSRD1-TBMA' 'X'. PERFORM FILL_FIELD_DATA

USING 'RSRD1-TBMA_VAL' p_table. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=ADD'. **second screen

PERFORM fill_screendata USING 'SAPLSD41' '2200'. PERFORM FILL_FIELD_DATA

USING 'DD02D-DDTEXT' 'Bdc Table'. PERFORM FILL_FIELD_DATA

USING 'DD02D-CONTFLAG' 'A'. PERFORM FILL_FIELD_DATA

USING 'DD02D-MAINFLAG' 'X'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=CHANGE_MAINTFLAG'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '/00'. PERFORM FILL_FIELD_DATA

(20)

**second screen filling table fields PERFORM fill_screendata

USING 'SAPLSD41' '2200'. PERFORM FILL_FIELD_DATA

USING 'DD03P-FIELDNAME(01)' 'mandt'. PERFORM FILL_FIELD_DATA

USING 'DD03P-FIELDNAME(02)' 'name'. PERFORM FILL_FIELD_DATA

USING 'DD03P-FIELDNAME(03)' 'empid'. PERFORM FILL_FIELD_DATA

USING 'DD03D-ROLLNAME(01)' 'mandt'. PERFORM FILL_FIELD_DATA

USING 'DD03D-ROLLNAME(02)' 'char20'. PERFORM FILL_FIELD_DATA

USING 'DD03D-ROLLNAME(03)' 'numc4'. PERFORM FILL_FIELD_DATA

USING 'DD03P-KEYFLAG(01)' 'X'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '/00'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=WB_SAVE'. **saving the table****

PERFORM fill_screendata USING 'SAPLSTRD' '0100'. PERFORM FILL_FIELD_DATA

USING 'KO007-L_DEVCLASS' '$TMP'. PERFORM FILL_FIELD_DATA

USING 'KO007-L_AUTHOR' 'SAPDEV02'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=TEMP'. **filling technical settings. PERFORM fill_screendata

USING 'SAPLSD41' '2200'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=SE13'. PERFORM fill_screendata

USING 'SAPMSEDS' '0050'. PERFORM FILL_FIELD_DATA

USING 'BDC_CURSOR' 'DD09V-TABART'. PERFORM FILL_FIELD_DATA

USING 'DD09V-TABART' 'APPL0'. PERFORM FILL_FIELD_DATA

USING 'DD09V-TABKAT' '0'. PERFORM FILL_FIELD_DATA

USING 'ALLOWSTATE-NOT_ALLOWED' 'X'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=SICH'. PERFORM fill_screendata

USING 'SAPMSEDS' '0050'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=BACK'. PERFORM fill_screendata

USING 'SAPLSD41' '2200'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=WB_SAVE'. PERFORM fill_screendata

USING 'SAPLSD41' '2200'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=WB_CHECK'. PERFORM fill_screendata

(21)

PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=WB_ACTIVATE'. PERFORM FILL_SCREENDATA

USING 'SAPLSEWORKINGAREA' '0205'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=WEIT'. PERFORM fill_screendata

USING 'SAPLSD41' '2200'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=BACK'. PERFORM fill_screendata

USING 'SAPMSRD0' '0102'. PERFORM FILL_FIELD_DATA

USING 'BDC_OKCODE' '=BACK'.

CALL TRANSACTION 'SE11' USING T_BDCDATA MODE 'A' MESSAGES INTO T_MSG. LOOP AT T_MSG INTO MSG.

CALL FUNCTION 'FORMAT_MESSAGE' EXPORTING ID = MSG-MSGID LANG = 'EN' NO = MSG-MSGNR V1 = MSG-MSGV1 V2 = MSG-MSGV2 V3 = MSG-MSGV3 V4 = MSG-MSGV4 IMPORTING MSG = MESSAGE EXCEPTIONS NOT_FOUND = 1 OTHERS = 2 . IF sy-subrc <> 0.

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. ENDIF. IF sy-subrc EQ 0. WRITE / MESSAGE. ENDIF. ENDLOOP. endform. " PROCESS

71.)CALL SCREEN AND SET SCREEN?

A.) when call-screen is given the control is transferred to the screen number that has been specified along with call-screen and once the execution of the called call-screen is completed the control returns to the statement just below the call-screen statement.

set-screen changes the current screen number to the number with the screen number specified with set-screen but the control is transferred only when the leave screen statement is encountered here the it is different from call-screen as the control doesnt get transferred back to the calling screen.

(22)

A.)

PARAMETERS: table(20), rows TYPE i DEFAULT 100.

* Declare the variable for holding your internal table DATA: itab TYPE REF TO data.

* Three field symbols requried 1. for acessing table data..second work area and third individual fields.

FIELD-SYMBOLS: <fs_table> TYPE ANY TABLE, <fs_wa> TYPE ANY,

<field> TYPE ANY. TRY.

* Create internal table

CREATE DATA itab TYPE STANDARD TABLE OF (table).

* Let our Field Symbol point to it so we can acess its data afterwords. ASSIGN itab->* TO <fs_table>.

* put data into internal table

SELECT * FROM (table) UP TO rows ROWS INTO TABLE <fs_table>.

* Loop over internal tabel with the help of field symbol pointing to its data LOOP AT <fs_table> ASSIGNING <fs_wa>.

DO.

ASSIGN COMPONENT sy-index OF STRUCTURE <fs_wa> TO <field>. IF sy-subrc EQ 0. WRITE: <field>. ELSE. EXIT. ENDIF. ENDDO. ULINE. ENDLOOP. CATCH cx_sy_create_data_error. WRITE 'Wrong Database!'.

ENDTRY.

73.)What is Bapi?

A.) BAPI (Business Application Programming Interface) is a set of interfaces to object-oriented programming methods that enable a programmer to integrate third-party software into the proprietary R/3 product from SAP. For specific business tasks such as uploading transactional data, BAPIs are

implemented and stored in the R/3 system as remote function call (RFC) modules.

(23)

A BAPI is a point of entry to the R/3 System- that is, a point at which the R/3 System provides access to business data and processes.

Each object in a BOR can have many methods, one or more of which can be implemented as BAPIs.

BAPIs can have various functions: • Create an object

• Retrieving the attributes of an object • Changing the attributes of an object

A BAPI is an interface that can be used for various applications:

-Internet Application Components, which make individual R/3 functions available on the Internet or an intranet for

users with no R/3 experience.

• R/3 Components compositions, which allows communication between the business objects of different R/3components (applications).

• Visual Basic/JAVA/C++ - external clients (for ex- alternative GUIs) that can access business data and processes directly.

74.) how to Implemented a BAPI to upload Payroll summary information into SAP R/3 system?

A.) There are several ways to upload the payroll master data to the info type 0015 for the employeee master data

you can call any one of the fallowing pls

BAPI_HRMASTER_SAVE_REPL_MULT* or Business Object BAPI_GET_PAYROLL_RESULT_LIST

BAPI_EXTPAYROLL_INSERT_LEGACY or

HRCM_PAYROLL_RESULTS_GET FM for the Payroll HR info type 0015

75.)What is Protect and EndProtect in Sap scripts? A.)To avoid Page Breaks.

76.)What are the components of Message? A.)I-Information

E-Error S-Status A-Abend X-Exit

77.) what is the impact of issuing of worning message inside the event of start of selection?

(24)

A.) Now a warning MESSAGE in AT SELECTION-SCREEN works like a normal warning message, but the same warning MESSAGE in START-OF-SELECTION is somehow converted to an error message, causing ejection from the transaction.

78.)Diff b/w break point and Watchpoint?

A.) BREAK-POINT.... it stops the processing of the program at a certain Executable Statement... It can be static (i.e.,

writing BREAK-POINT command in code) It can be dynamically set during Debgging...

WATCH-POINT... is used on a particular variable/ data object, so that we will specify certain condition

( like wa_t001-bukrs = 1000 ) to halt the processing... If the processing founds that the condition reached... then the BREAK-POINT triggers...

78.)What is Pick statement in ABAP?

A.) Ans: The pick statement is used to it will capture the user action.

ex: if sy-ucomm = 'x'.

This statement is used to capture the user action.

79.)What are Repository & Non Repository Objects in sap? A.)Tables are repository,Images,files on presentation are non repository.

80.) what will happen if will write the code of PAI module in PBO module.will it execute successfully or it will show error?if so what will be the error.

a.)

81.)Set Screen and Call screen?

A.) when u r calling a screen dynamically,we have to use the call screen keyword.so the control will return to the statement where it was called for.

but when we are calling a screen statically we are using set screen keyword.and here for back to the statement from where the screen was called, we have to use the leave to screen keyword.

82.)How to Find duplicates records from Table? A.)

83.)

(25)

what is type group?how to create it and what is the use of it? 3 what is table maintenace generator? How to create it?

84.)Why u are writing a driver program when u can write the same code in smartforms itself?

A.) Moreover, To run the Smartform from Report, we write the dricer program, so that we can pass input from Report.

Also to declare some constants or variables, we need driver progra.

85.)BAPI AND RFC?

A.) In Bapi, You create business objects and those are then registered

in your BOR (Business Object Repository) which can be accessed outside the

SAP system by using some other applications (Non-SAP) such as VB or JAVA

In this case you only specify the business object and its method from external system, in BAPI there is no direct system call. while RFC are direct

system call

86.) how much exact time will take binary search option using along with read statement?

A.) if we use the linear search fo search a record the response time is directly prapotional to the no of records.

if we use binary search the response time is logarithamically prapotional to the no of records. 87.)User Exits and Customer Exits?

A.) USER-EXITS: THIS ARE SUB ROUTINES WHERE WE HVE TO OUR CUSTOM CODE .

TECHNICALLY THIS ARE CALLED AS "MODIFICATIONS" . WE NEED ACCESS KEY FOR USER EXITS.

THESE ARE AVAILABLE ONLY IN SD MODULE .

CUSTOMER-EXITS : THIS ARE INCLUDE PROGRAMS WHICH ARE AVAILABLE IN FUNCTION MODULE .

TECHNICALLY THIS ARE CALLED AS "ENHANCEMENTS" . WE DNT NEED ANY ACCESS KEY FOR CUSSTOMER EXITS. THESE ARE AVAILABLE ONLY IN ALL MODULE

(26)

A.) when we want to get the details based on a field in select statement we should use always primary key fields to

improve the performence. but in any case needed to get detais based on non primary key fields then we go for secondary index . ie based on which non primary key fields we need to fetch the data using select st for those fields we create secondary index in sell.

89.) How to attach a search help? how can you validate the entries in TMG? A.)

90.) 1.In Change pointers ,

Using BD61 I activate globally and I enable the MATMAS message type

When I Ran the "RBDMIDOC" SYSTEM GIVES information messagge 253 MASTER IDOCS CREATED.

MY Question IS :1.what is 253

2.PlZ explain internal PROCESS ,HOW ITS GENERATE 253 MASTER IDOcs?

A.) 253 - is number of master idocs created..it means system found changes in 253 material masters. Master Idocs are Idocs without receiver and sender details in it....they are only created in memory and not in database..based on configuration of distribution model / Partner Profile the receiver details are put into idocs and as many communication idocs are creates based on number of recipients.

Communication idocs are stored into the database 90.) 1.If there is one receiver,then

To send 10 materials at a time through BD10 tcode, How many Master Idoc create?

2.If there is one receiver,then

To send 1 material at a time through BD10 tcode, how many Master Idoc generated?

A.)

91.)How to write in Selection Screens? A.)Selection-Screen:Comment ….

92.)How to transport table entries from one client to another? Or

How to attach table entries to a request Number?

A.) http://www.saptechnical.com/Tips/Basis/Transport/TableEntries.htm

93.) As an ABAP developer, how can we check after we release our object as to where has it reached(i.e. testing client box

(27)

,production client box etc)? In case it is not possible please let me know the same.

A.) before release the object it will be avileble under modifible objects in se09 tcode. once we release it will not be avileble in modifible and avileble under released objects. basis consultents will move to these test server for testing after development is over,

basis consultents will move these to prodction server for golive after after several tests is is over in testing

server and client approvel is finished.

94.) In the performance standards we have SE30 for Run time analysis where it will show the system count,abap count,data base count if it is more than means then what we will do let us take my abap count will be some 30% and data base will be 60% and system count 50% now what i want to do

A.) 1) if Abap count is high we need to take care with loop.. endloop, Read, sort , basically we need to take care with fetching of data from internal table statement.

2) if the Data base count is high, we need to take care with fetching of data from database.. like Select statement. 3) am not sure about this count, i hope it seems to be at basis level settings..

95.) In Interactive Report ,can I have more than 20 interactive Lists? Is it Possible ,If Yes How can i do it?

A.) Submit is the Keyword to call one report from the other .

After reaching the 20th list ,you can call anouther executable prg by using the Submit Keyword ,likewise you can go beyond 20th list .

96.) Can I create a Transaction code for a custom Table ? If Yes How can I ? A.)

97.) to find an enhancement we will go to smod and check with the given package. but how can we know that a particular funx

exit is used for particular enhancement( for eg: mm06e005 for mm22n screen exit.) will it be given by SD people or we have to find it?

A.) genarally based on reading the description of tha exits . or else we need to put the break point for each exit and check for all . that means at which break point of exit that transaction is triggure is correct.

(28)

97.) What is the diffrence between Abstract Class and an Interface in OOABAP.

A.) the main difference between interface and abstract class is interface wont be having implementations where as the emthods in abstrct can be created with and without implementations.

98.) WHAT IS THE DIFFERENCE BETWEEN CHECK TABLE AND VALUE TABLE?

A.) value table is the table specified in the definition of a domain and is checked against all the fields that points the domain.

check table is that table if you define a foreign key that points this domain then the value table is considered to be a check table for that foreign key.

a table which is defined at field level called chek table. but a table which is defined at domain level called value table. so all the taables fields refering to this domin will be validated to this table/

99.)What is a table control? A.)

100.) what is the prerequisite for control-break statements A.)

101.) what is difference between method and function module? A.) method is nothing but a function defined inside or outside of a class where as class is a collection of objects

where every object is different from the other one...

Function modules allow you to encapsulate and reuse global functions in the R/3 System. They

are stored in a central library.

102.) what is the difference between [select single xxx from ...] and [select * from ... up to one row]?

A.) select single xxx from...] means we are choosinf=g

aparticular field which we want to show on the particular page at teh run time.

And the [select * from ....up to row] means to select all the fields placed in that particular row. And remember one thing that a row may be one but number of coloumns can lie inside it.

103.)What are diff message types available in Message types? A.) General Message types / IDoc types / BAPI

(29)

Customer DEBMAS / DEBMAS03

Accounting Message types / IDoc types / BAPI G/L account GLMAST / GLMAST01

Cost center COSMAS / COSMAS01 Cost element COELEM / COELEM01 Cost center group COGRP1 / COGRP01 Cost element group COGRP1 / COGRP01 Activity type COAMAS / COAMAS01 Activity group COGRP1 / COGRP01 Activity price COACTV / COACTV01 Profit center PRCMAS / PRCMAS01 Profit center group COGRP1 / COGRP01

Profit center account group COGRP1 / COGRP01 Logistics Message types / IDoc types / BAPI

Article master ARTMAS / ARTMAS02 / RetailMaterial.Clone Additional MMADDI / MMADDI01 /

RetailMaterial.SaveAdditionalReplicas Product catalog PRDCAT / PRDCAT01 Product catalog item PRDPOS / PRDPOS01 Price list PRICAT / PRICAT01

Assortment ASSORTMENT / ASSORTMENT01 / Assortment.SaveReplica

Material master MATMAS / MATMAS03 - (See Template) Service master SRVMAS / SRVMAS01

(30)

Class CLSMAS / CLSMAS03

Classification CLFMAS / CLFMAS01 Document DOCMAS / DOCMAS04

Purchasing info record INFREC / INFREC01 Conditions COND_A / COND_A01

Order book SRCLST / SRCLST01 Change master ECMMAS / ECMMAS01 Bill of material BOMMAT / BOMMAT01 Document BOM BOMDOC / BOMDOC01

Work breakdown structure Project / PROJECT01 Human Resources Message types / IDoc types / BAPI PA object type person HRMD_A / HRMD_A03

PD object types HRMD_A / HRMD_A03 Basis Message types / IDoc types / BAPI

User master record USERCLONE / USERCLONE01 / User.Clone

104.) why are we using events in reports than control break

statements? A.)

105.) How to print continuous pages in smartform?my requirement is

i need to print 3 pages for each customer i.e 2 pages for purchase order forms and 3rd page is terms and condition page.Likewise how can i print 100 customer pages at once continuously?

A.) Let us say P1,P2,P3 are the 3 pages then First Page is P1

(31)

In P2 Next page should be P3.

And finally P3 Next page should be P1.

106.) 1. If I send 5 entries of table from one system to another system, if the only 4 entries there in the target system what I have to do? 2. If I send the customer master IDOC from one SAP system to another system, if one field is missing in target table what is the steps? 3. If I want to access the 4th row 3rd column in the hashed table how to do it? 4. Whether there is any other statement than MODIFY statement to modify the content of internal table?

A.)

107.) what is the difference between interface and global diffinations in smartforms? A.) Form Interface is the interface between your driver program

and Smartform. You are passing the necesssary value of tables or fields from your Driver program to Smartform in runtime.

Global Definition is used the variables which can be used in Smartform only. Where you do processing and using the output.

Simple example is Global and Local Varialbles which can be used in a simple report.

108.) Is Multiple Inheritance possible in ABAP ? If Yes How ,If no How ?

A.) no,multiple inheritance is not possible in abap.because suppose we inherit two classes in your class.Suppose we have two classes A and B and both having method m with same signature and different implementation.Now we inherit these two classes in your Class C.Now when you create object of class c and try to access the m method then there is

cofusion for which method to be called either of class A or class B.i.e. there is a conflict in method selection.This problem can be overcome with conceopt of interfaces. 109.)BAPI & RFC?

A.) BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects. You create business objects and those are then registered in your BOR (Business Object Repository) which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA.

In this case you only specify the business object and its method from external system in BAPI there is no direct system call. while RFC are direct system call Some BAPIs provide basic functions and can be used for most SAP business object types. These BAPIs should be implemented the same for all business object types. Standardized

(32)

BAPIs are easier to use and prevent users having to deal with a number of different BAPIs. Whenever possible, a standardized BAPI must be used in preference to an individual BAPI. It is not possible to connect SAP to Non-SAP systems to retrieve data using RFC alone. RFC can acces the SAP from outside only through BAPI and same is for vice versa access.

RFC is the protocol used by SAP for remote communication, that is, for communications between remote (independent) systems. RFC is used for communications between two independent SAP systems, or for communications between an SAP system and a non-SAP system, such as an external application. It can also be used for communications between modules on the same system. Using the RFC interfaces you can extend the functionality of R/3 applications from an external program.

rfc is standalone doen not comunicate with another rfc. but bapi comunicate with another bapi because bapi is a part of business object.

110.)

if bdc session method is to be executed at some particular time without using sessions? how?

A.)Using RSBDCSUB

111.) if data is inserted only using bdc open and bdc insert and not

bdc close session funx module wat will happend? will data b inserted?

A.)Data is inserted into session but session cannot be processed. 112.) Insert Table in a Table - NO

Structure in a Structure - YES Structure in a table - YES

Table in a structure - YES (AAFAB)

113.) difference between batch input and direct input and call transaction ?

A.) batch input method or batch data comunication both are the same. it worls on the principle of simulating user input to the transaction screen via abap program. it can handle errors explicitly . features also include logging and synchronous processing.generally data is given in a flat file in which i undergoes through a screen and screen validation finally inserts in a database. eg: session method and bdc call transaction method

but direct input is asynchrounous.data is directly uploaded in a database by doing some field validations. errors cant be handled. it inserts data using some inbuilt

(33)

function modules. eg: LSMW

114.)User exit,customer exit,Badi?

A.) User exit,Customer exit and BADI are the enhancement techniques which are used to write your custom code with out modifying the standard application. User Exit is subroutine where we write custom code.We need SAP Access key to write user exit. It will available for only SD module.

Customer Exit is Z include program where we write custom code.We don't need SAP Access key.

Customer exit and user exit can implement only in a single project. BADI can be implemented in multiple project.

115.) what is meant by enhancement category? A.)

116.) what are the steps in oops alv reports?

A.) 1) create a module pool and link it to the report like screen 100.

2) Place custom controller on the screen and name it.declare reference variable and create the instance for container class.In PBO module

3) Declare reference variable and create instance for ALV Grid and custom container object in PBO module.

4) since alv grid instance is ready now we can call methods i.e to display,layout etc.

116.) how to navigate to report from report? note: no transaction code created to report.

A.) We can use SUBMIT key word with different options.SUBMIT generally bypasses the selection screen if the called report has any.

syntax for calling a report from another report:

SUBMIT <report-name> [VIA SELECTION-SCREEN] [USING SELECTION-SET <var>]

[WITH <sel> <criterion>]

[WITH FREE SELECTIONS <freesel>] [WITH SELECTION-TABLE <rspar>].

117.) why to create a custom BAPI if the BAPI already exists? y to find BAPI again? frankly even i dint undstnd tne question properly. if any one come across this q please do anser me.

(34)

118.)Is Structure holds any data?

A.) structure is data dictionary obj which contain commenly reuseble fields from multiple db tables or a db table.

structures does'nt store any data . in any mandatory case if we want we can store single record in structure.

generally we get this situation while we using structure in reports .

if any body doubts about this try it once

119.)How to get spool numbers in smartforms? A.)SP01

120.) I have one sender and three Receiver..so how many idocs generate in outbound(sender)?

A.)One master and three communication idocs.

121.) How to add more than one message to one idoc? Tell me Process

A.) WE82 is the transaction code to assign message type to Idoc. we can assign more than one message type to a single IDOC 1.message type1 - IDOC - version

2.message type2 - IDOC - version 122.)

What is update task

A.) The IN UPDATE TASK statement allows you to call a function module but it will not be executed until an update task is initiated by the 'COMMIT WORK' statement. This means that the program logic after calling the FM will immediately

continue with the next line of ABAP code and the FM will sit and wait for the commit work. This also allows you to execute several sections of code asynchronously by calling the ABAP function module with the IN UPDATE TASK statement then performing the commit work command. See example below! Execute FM in update task with separate unit of work

CALL FUNCTION 'Z_FMODULE' IN UPDATE TASK EXPORTING

P_UNAME = sy-uname.

commit work. "Commits all work to database and also starts all FM's running in update task

"loop at it_ekko. "program continues with next line of ABAP without waiting for update and FM to finish

(35)

"...

"endloop.

123.) In ALV, i have to display list in which some records has to display. starting of each record it should display checkox. and we have to display push button delete. when user select chekc box and press delete button, that entry should delete. please tell me how to do it?

A.) hi mr zubera try it in the way create userdefined type

types : begin of mara check type c

matnr type mara-matnr...take neceassery fields. create itab ,wa.

In manual field catalog declaration: wa_fcat-Checkbox = 'X'.

now display using grid display or list display

using set pfstatus create one custom button on list screen. and use below in that

if sy-ucomm = 'deleate' "fct code of deleate button deleate it_fcat where checkbox = 'x'.

now all the checked records will be deleated.

now display the it_fcat using loopat which will display only unchecked records

124.) i have created bdc prg and executed. i got output in system. same bdc prg again executed in other system but i dint get the o/p. both system r in n/w connection.

wats the prob.plz help me to get o/p.

A.) Events triggered through the BAPI Or RFC call or work flow to trigger the program

125.) how to find the report is classical or intractive report in debugging mode

A.) In the debugging mode if you cursor goes into At line - selection event or you can use sy-ucomm variable to check the what user action has been made for eg double click on the list generates a function code called Pick. If these objects are present then it is an interactive report with the events else a simple classical report.

(36)

126.) how can we use the text randomly or circularly in smartforms.... means... suppose i have 'abap' horizantally... but i want it in vertically... how can... plz any body tell me this....

A.)

127.) How manny master idocs 10 recievers of same data? A.)1 Master and 10 Communication Idocs.

128.)How u can handle multiple records in Table control?

A.) in table control field names depends on the no of details for each record.

Ex:if bank has details like city bankkey bank account etc... each field in table control can assigned to index..

i.e knbk-banks(01) bank country key knbk-bankl(o1) bank key.

if the fields in second row it will increment to (02). logic:

it_knb1 is the table for list of customers bank details. data:v_index type n.

data:v_fnam like bdcdata-fnam loop at it_banks into wa_banks.

increment by 1 each time for all records. v_ndex = sy-tabix.

concatenate knbk-banks ('v_index') into v_fnam. wa_bdcdata-fnam = v_fnam.

wa_bdcdata-fval = wa_banks-banks. append wa_bdcdata to it_bdcdata.

127.) how will you go for row level locking of a z table A.) 1)Create a lock object, suppose EZLOCK in SE11 for the table ZLOCK (having fields..field1, field2, field3).

2)Activate it, system will automatically generates two function modules for locking and unlocking.

3) How to use them in program ? Here you go..

loop at itab into wa_tab.

* For Locking the table ZLOCK

CALL FUNCTION 'ENQUEUE_EZLOCK' EXPORTING

mode_ZLOCK = 'E' mandt = sy-mandt field1 = wa_zlock-field1 field2 = wa_zlock-field2

(37)

field3 = wa_zlock-field3 EXCEPTIONS

foreign_lock = 1 system_failure = 2 OTHERS = 3.

* For Unlocking the table ZLOCK

CALL FUNCTION 'DEQUEUE_EZLOCK' EXPORTING mode_ZLOCK = 'E' mandt = sy-mandt field1 = wa_zlock-field1 field2 = wa_zlock-field2 field3 = wa_zlock-field3 endloop.

128.)Inner and Outer Join?

A.) he inner join joins the columns of every selected line on the left- hand side with the columns of all lines on the right-hand side that jointly fulfil the join_cond

condition. A line in the resulting set is created for every such line on the right-hand side. The content of the column on the left-hand side may be duplicated in this case. If none of the lines on the right-hand side fulfils the join_cond condition, no line is created in the resulting set.

Resulting set for outer join

The outer join basically creates the same resulting set as the inner join, with the difference that at least one line is created in the resulting set for every selected line on the left-hand side, even if no line on the right-hand side fulfils the join_cond condition. The columns on the right-hand side that do not fulfil the join_cond condition are filled with null values.

129.) How to add a column to a table control while using alphanumerical layout editor ?

A.)

130.) Can we create a field without data element ? If yes what is the difference?

(38)

A.) Yes we can create. While creating fields in tables, we

should associate some PREDEFINED TYPE to them. We can create tables with direct data types associated to the fields or by

associating the Dictionary data types.

Creation of tables with direct data types has the following drawbacks.

1. Data is global for all clients.

2. Data in current R/3 can't be communicated with another R/3.

3. Table to Table relation is not possible. 4. Search Helps can't be created.

131.) How do we use BDC in real production scenarios ? Is BDC used on regular periodic intervals to upload data into SAP ? (say you recieve the data daily from non-sap system, like mainframes and you update the data in SAP) OR

Is BDC used on adhoc basis ?

A.) One of the ways as if I know is, You create BAPI of BDC. Call this bapi created from your codes in real production scenario. Ofcourse, in this way you can conclude that BDC is used on regular periodic intervals to upload data into sap.

132.) In Open SQL statements such as Insert update delete which one is FASTlLY retrieve the results and which one is Efficient?

A.) update is the statement which will retrieve faastly. and efficent as well B.) hai mr venkata satish it's vary simple

create one pg . and use these open sql statements for operations on a custom ztable.

st05 is the tcode to identify that which opensql st taking how much time for excution i.e called performence tunig. now u will get the answre.

133.) Output type is not selecte automatically with billing type ...Pls solve this issue

A.)Nace tcode

134.) What do you like best about working for, in this company? a.)

(39)

A.) Only transparent tables and pooled tables can be buffered. Cluster tables cannot be buffered.

The following two points speak against table buffering:-1: The data read by the application must always be

up-to-date. Delays caused by the synchronization mechanism cannot be accepted.

2: The table data is frequently modified. In this case the cost of synchronization could be greater than the gain in performance resulting from buffering. Roughly speaking, it does not make sense to buffer a table if more than one percent of the accesses to the table are modifying accesses. Buffering is primarily to speed up data retrieval. If a

table is buffered on application server, then database hits will be reduced thereby speeding the ease of access. There are 3 types of buffering:

-1. single record buffering : only one table record will be buffered when it is read from database

2. Full table buffering: If one record is read from a table, then all records of table will be buffered.

3. Generic buffering: - The table records matching generic key are buffered. The generic key is the one that we define while setting the buffering settings for table.

Tables buffered:

A)Cluster tables should not be buffered.

B.)Master tables and transactional tables should not be buffered.

C.)Tables frequently modified and frequently read should not be buffered. D.)TCURR(Very small amount of data tables should be buffered).

136.) How to debug a smartform using SMARTFORM_TRACE....and how to see its results? A.) Using the Smart Form trace, you can trace how a Smart Form

was processed during printing. You can then see, for example, the sequence in which the nodes were run or the point at which processing terminated due to an error. 137.) what is the output of given code?

data : f1 type i,

(40)

write : / f1, f2. do 2 times. perform addfld. enddo. write : / f1, f2. form addfld.

data : f1 type i, f2 type i.

add 1 to f1. add 1 to f2. write : / f1 , f2. endform. A.)00 11 11 00

138.) Suppose in an ALV report in grid we have to disply matnr, ernam,ebeln,ebelp etc.But when we bring the cursor on that specified field it will show "material number" for matnr, "purchase Document Number" for ebeln etc. how do you acheive this?

A.) To achieve this functionality in fieldcatalog section

activate the field " REPTEXT_DDIC" i.e. REPTEXT_DDIC = 'X'.

139.) why we use 4 msg variable in BDCMSGCOLL stucture in BDC? why

not more or less than 4?

A.) Because structure has only 4 fields to fill the messages, they are just 4 because there are the same number of system variables that are filled with message data

SY-MSGV1...SY-MSGV4, even if we had more fields those would be filled with our messages, the system will not know the

existence of thos variables.

140.)How to block selection screen? A.) loop at screen.

screen-input = 1 screen-active = 0 or screen-invisible = 0. endloop.

141.)Template in smartform?

A.) Template contains a fixed number of rows and columns, where output is fixed. Table can have variable number of rows and

(41)

142.) what is EDI ,ALE , Debugging, Smart Forms ,IDOC'S & BDOC'S A.) EDI (electronic data interchange) is used to communicate SAP to NON-SAP systems.The NON-NON-SAP systems cannot understand the NON-SAP code .For this problem we use Middleware tools like TIBCO ,SAPXI.

ALE(Application Link Enabling) is a Network.it used to communicate two or more servers which are geographically existed.

Debugging : Detailed error analysis source code level.it is executed the program in line by line .

Smartforms : Smartforms is a TOOL .which is used to generate Business Legal Processing Documents .The Tcode of Smartforms is SMARTFORMS.it is advanced version of Scripts.

IDOC's(Intermediate Document) : it is a collection of segments .segment is a collection of fields.IDOC is used to transfer the data between two

servers.Tcode for IDOC is WE30.

143.) 1) How to maintain lists in dialog programming? 2)How to send greeting with different languages to different regions in smartforms?

3)Can we transfer 100 screen data to pass 200 screen?

4)In reports 1st list o/p can be consider as i/p of 2nd list how it maintains?

5) In lsmw data length 20 chars only but there is 24 chars field how can u manage?

6)What is the diff b/w OK_CODE n SY_UCOMM? A.) 1)by using table control

2)by using tcode se63

3)yes we can transfer 100 screen data to pass 200screen. 4)by using at line-selection

6)1. It is not possible to clear the content of sy-ucomm since it is a system variable but we can clear the content of

ok_code.

2. The length of sy-ucomm is fixed but the length of ok_code is not fixed. we can take any length

1. by using table control

2. i dunno but i l go for se63 as above said.

3.yes by selecting push button or function key or double click or menu button.take the the cursor position values as the input and provide code for next scree.

4. hide, get cursor, read line these are some of the methods used to maintain the line data that is output selected data.

5. even i dunno that it accept 20 chars only

6.ok_code is user defined and sy_ucomm is system defined.lenth of ok_code is not fixed but sy_come is fixed. we can clear ok_code data as it varies but sy_ucomm is system defined so cant be deleted.

(42)

144.)Folder in smartforms?

A.) there are two uses by using folder nodes.

1.page protection: as said earlier it is used as a protect endprotect in scripts 2. logical grouping. if you want to put a condition on group some text elements then you can write the code in folder and apply condition writing at once.

145.) In table control how to maintain 10 records in first page, other 10 records in ohter page?

A.)

146.) what is the differenc between table control and table control wizard? A.)

147.) how to change col colors in alv reporting? A.) 1.slis_specialcol_alv.

2.lvc_s_scol & Emphasize

148.) How to maintain subtotals n grand totals in smart forms?

A.) subtotal:

for dis initially find which field having price values,

Then go to table inside we are having Headder,Mainarea,footer then go for main area,select the field right click

select->Flow logic-> program lines here u have to specifyI/p & O/p parameters.

Grand total:

for this go to table-> right click ->select Text then write the grand total is &v_total&. 149.) how to track records from data dictionary? A.)

150.) after creating lock object if does n't access record by second user what should we do?

A.)

151.) In Scripts How to maintain value like 1234- instead of -1234?

A.) usually By default the values will print 1234-to make the sign 1234-to print at left side.... use &WA-TDULPOS(<)&

(43)

If u want it at right side... use &WA-TDULPOS(>)&

152.) Q : I want to see material details in secondary list based on material No. from basic list. I will double click on any

row, any field of basic list (not on field containing material no.) & the secondary list will display material details according to material No. on that row. Is it possible? If so how?

A.) using sy-lisel will give you the entire row you have

selected,but you should know the correct offsets ,otherwise you will be ending in wrong selections , better to give a hot spot on the material no and on selecting that you can display the details in the secondary lists.

B.) using sy-lisel.

using hide technique

using get cursor also but it allows only perticular field clicking

153.) n smart forms page no will be displayed as 2 of 15, 9 of 15 but while printing 10 of 15 it does not print correctly tell me how to handle this scenario.

A.) Hi Vikram !! That is because of the space which is not sufficient. For that you can you Condense to display correctly. Eg: use &symbol(C)& which will solve the issue. B.)For this create a window name is "PAGENO",Right click on it create text- from there u Have to specify

"&page&/&smartforms-formpage(C)&

Then it will declare in the form 1/10, 2/10...like this.

154.) In SAP Script,How to display a single field(like matnr)at the right end of the form.? a.)

155.) 1 . how do u design technical documentation in abap ? 2 . what u currently devloped in sap abap ?

A.)

156.) what is diff between idocs,bdc,rfc and bapi. give real time answer

A.)

IDOC

BAPI

References

Related documents