ricefw interview questions

Upload: ravi

Post on 26-Feb-2018

227 views

Category:

Documents


1 download

TRANSCRIPT

  • 7/25/2019 RICEFW Interview Questions

    1/24

    BDC1. What is full form of BDC Session?

    Batch Data Communication Session.2. What are the steps in a BDC session?

    The frst step in a BDC session is to identiy the screens o the transaction that the

    program will process. Next step is to write a program to build the BDC table thatwill be used to submit the data to SA. The fnal step is to submit the BDC table tothe system in the batch mode or as a single transaction by the CA!! T"ANSACT#$Ncommand.3. How do you find the information on the current screen?

    The inormation on the current screen can be ound by S%ST&' (STAT)S command rom any menu.4. How do you sae data in BDC ta!les?

    The data in BDC tables is sa*ed by using the feld name +BDC,$-C$D& and feld*alue o +/00.". What is the last entry in all BDC ta!les?

    #n all BDC tables the last entry is to sa*e the data by using the feld name

    BDC,$-C$D& and a feld *alue o +/00.#. What is a multiple line field?

    A multiple line feld is a special 1ind o feld which allows the user to enter multiplelines o data into it.$. How do you populate data into a multiple line field?

    To populate data into a multiple line feld2 an index is added to the feld name toindicate which line is to be populated by the BDC session 3!ine index4.%. Write the BDC ta!le structure.

    BDC table structure5#&!D T%& D&SC"#T#$Nrogram C6A" 374 rogram name o transaction.Dynro C6A" 384 Screen number o transaction.

    DynBegin C6A" 304 #ndicator or new screen.5nam C6A" 39:4 Name o database feld rom screen.5*al C6A" 37;4

  • 7/25/2019 RICEFW Interview Questions

    2/24

    &nhancements and BAD#s

    0. @hat are the dierent ways in which you can ma1e changes to SA standardsotware

    Customiing&nhancements to the SA Standard

    'odifcations to the SA Standard

    Customer De*elopment

    . @hat is customiingCustomiing is the setting o system parameters *ia SAEs own interace.

    9. @hy do you need enhancements

    The standard applications do not oer some o the unctionality you need. The "/9enhancement concept allows you

    to add your own unctionality to SAEs standard business applications.

    8. @hat are the dierent types o enhancements

    &nhancements using customer exits

    CustomersE potential reFuirements which are not included in the standard sotwareare incorporated in the standard

    as empty modifcation EshellsE. Customers can then fll these with their own coding.&nhancements can relate to

    programs2 menus and screens. )pward compatibility is assured. #n other words2 SAguarantees that the Gump rom the

    standard sotware to the exit and the interace which call the exit will remain *alidin uture releases.

    &nhancements to ABA/8 Dictionary elements

    These are ABA/8 Dictionary enhancements 3creation o table appends42 textenhancements 3customerHspecifc 1ey

    words and documentation or data elements4 and feld exits 3creation o additionalcoding or data elements4.

    :. @hat is customer de*elopment

  • 7/25/2019 RICEFW Interview Questions

    3/24

    Creating customerHspecifc obGects within the customer name range.

    I. @hat is SSC"

    SSC" 3SA Sotware Change "egistration4 is a procedure2 or registering all manual

    changes to SA source coding and

    SA Dictionary obGects.

    J. @hat is the dierence between modifcations and enhancements

    'odifcations mean ma1ing changes to the SA standard unctionality.

    &nhancements mean adding some unctionality to SA standard unctionality.

    7. @hat are the disad*antages o modifcation

    'odiying standard code can lead to errors

    'odifcations mean more wor1 during sotware upgrades

    K. @hat are the ad*antages o enhancements

    Do not aect standard SA source code

    Do not aect sotware upgrades

    0;. @hen do you opt or modifcation

    Customer exits are not a*ailable or all programs and screens within the "/9standard applications. %ou can only

    use exits i they already exist within the SA "/9 System. $therwise you ha*e to optor modifcations.

    00. @hat are the *arious types o customer exits

    'enu exits

    Screen exits

    5unction module exits

    -eyword exits

    0. @hat is a menu exit

    Adding items to the pullHdown menus in standard "/9 applications.

  • 7/25/2019 RICEFW Interview Questions

    4/24

    09. @hat is a screen exit

    Adding felds to the screens within "/9 applications. SA creates screen exits byplacing special sub screen areaswithin a standard "/9 screen and calling a customer sub screen rom within thestandard dynproEs Low logic.

    08. @hat is a unction module exitAdding unctionality to "/9 applications. 5unction module exits play a role in bothmenu and screen exits.

    0:. @hat is a 1eyword exitAdd documentation to the data elements o 1ey words defned in the ABA/8Dictionary. The system displays thisdocumentation whene*er a user presses 50 to get online help or a screen feld.

    0I. 6ow does SA organie its exitsSA organies its exits in pac1ages that are called SA enhancements. &ach SA

    enhancement can contain manyindi*idual exits.

    0J. @hat is an addHon proGectTo ta1e ad*antage o the exits a*ailable within standard "/9 applications2 you needto create an addHon proGect.

    This proGect lets you organie the enhancement pac1ages and exits you want touse. The addHon proGect also allowsyou to hang addHon unctionality onto the exit hoo1s contained with SAenhancements.

    M0 @hat is the reason or using &N6ANC&'&NTSAns Normal programs dont gi*e us all the unctionalities we may need2 so to fxthis we can use the "/9 enhancements that will permit us to insert our particularunctionality to any normal SA program.

    M @hat is the meaning o customer de*elopmentA Customer de*elopment generates obGects particular to the customers in theirname range.

    M9 @hat wea1nesses do we fnd when using '$D#5#CAT#$NA9 $ne o the wea1nesses is that we could ha*e errors when standard code ismodifed. This automatically leads to a higher amount o wor1 when sotwareupgrades are made.

    M8 @hy should we choose to ma1e '$D#5#CAT#$NSA8 Customer exits dont exist in e*ery screen and program rom "/92 and becausethey can be used Gust i they are already existing in SA "/92 sometimes we mustchoose to ma1e modifcations.

    M: @hat is the meaning o a SC"&&N &O#T

  • 7/25/2019 RICEFW Interview Questions

    5/24

    A: Screen exits means to add felds to "/9 screens2 SA generates screen exits bydeploying particular subscreen areas in a normal "/9 screen and then in*o1ingcustomer subscreens rom the normal Low logic o dynpro.

    MI @hat is the way in which exit organiing is made by SAAI $rganiing exit pac1ages o SA is also ound under the name o SA

    enhancements and e*ery SA enhancement can ha*e se*eral particular exits.

    MJ @hat is the meaning o )S&" &O#TS2 how are they written and which measuresdo we ha*e to ta1e or pre*entionAJ #n the deault standards o SA we can fnd the user defned unctionalities2 wecan fnd a Sap program in which a customer personal program may be in*o1ed.)nli1e customer exits. user exits can permit the de*elopers to enter and change theparts o the program and also the obGects. @hen upgrade is made 2 e*ery user exithas to be *erifed or conormation to the standard system. The user exits can use#NC!)D&S2 case in which Customiing ma1es the management. @e ha*e to searchor those customer enhancements rom a specifc de*elopment class.

    M7 Can we classiy the &N6ANC&'&NTS by typeA7 %es they can be classifed ina4 enhancements that use customer exits andb4enhancements o the elements in the ABA/8 Dictionary.

    a4 The standard sotware doesnt incorporate all the reFuirements o thecustomer2 but they can be contained as empty +shells that can be changed by thecustomers by inserting their personal codes. The enhancements can reer to menus2screens or programs2 the compatibility being assured. This means that in SAguarantees that the compatibility will be maintained e*en when passing romstandard sotware to exit and the interace in*o1ing the exit 3they will be 1ept oruture *ersions too4.

    b4 These are enhancements li1e table appends or text enhancements or feldexits 3supplementary coding or data elements4.

    MK @hat is the meaning o SSC"AK The SA Sotware Change "egistration or SSC" is the operational that ma1espossible the registration o e*ery manual change o the SA source coding andobGects o SA Dictionary.

    M0; @hat are the strong eatures o &nhancementsA0; They dont ha*e an impact on the standard source code o SA2 they dontha*e an impact on sotware upgrades.

    M00 @hich are the main types o C)ST$'&" &O#TSA00 The main types o customer exits are the screen exits2 the menu exits2 theunction module exits and the 1eyword exits.

    M0 @hat is the meaning o 5)NCT#$N '$D)!& &O#TA0 The unction module exit is meting supplementary unctionality in "/9programs ha*ing a big role in the menu exits and the screen exits.

    http://www.saptechies.org/abap/http://www.saptechies.org/abap/
  • 7/25/2019 RICEFW Interview Questions

    6/24

    M09 @hat is the meaning o an addHon proGectA09 5or using in the best way the exits we fnd in the standard "/9 programs weha*e to ma1e an addHon proGect2 that ma1es possible organiing the enhancementpac1s and the exits we desire to use. An addHon proGect ma1es possible to met addHon unctionality on the texts rom the SA enhancements.

    M08 @hat is the meaning o a 1eyword exitA08 @ith a 1eyword exit we can gi*e to the data elements o the 1eywords rom theABA/8 dictionary some documentation. This documentation will be shown by thesystem e*ery time users hit the 50 1ey or obtaining help online regarding a screenfeld.

    M0: @hat is the meaning o a '&N) &O#TA0: 'enu exits mean when we add item on the pullHdown menus.

    M0I 6ow can we separate &N6ANC&'&NTS rom '$D#5#CAT#$NSA0I @hen we create modifcations on the unctionality o the SA standard we

    say modifcations. @hen we put supplementary unctionality on the standardunctionality o SA we say enhancements.

    M0J @hat is the meaning o C)ST$'#P#NQA0J @hen we confgure the system parameters through the SA interace we meancustomiing.

    A07 6ow can we classiy the methods in which we generate modifcations in thestandard sotware o SAA07 @e can ma1e enhancements to the standard o SA2 modifcations to thestandard o SA2 customiing and customer de*elopment.

    Question 1:What is the diference between User Exit and FunctionExit?

    User Exit Customer Exit

    )ser exit is implemented in the ormo a Subroutine i.e. &"5$"' xxx.&xample #NC!)D& '

  • 7/25/2019 RICEFW Interview Questions

    7/24

    ha*e better control2 but more ris1 oma1ing the system unstable.

    tables parameter o the 5unction'odule. So you ha*e limited accessto data.

    )ser exit is considered a modifcationand not an enhancement.

    A customer exit is considered anenhancement.

    %ou need Access -ey or )ser &xit. %ou do not need access 1ey.Changes are lost in case o anupgrade.

    Changes are upgrade compatible.

    )ser exit is the earliest orm ochange option oered by SA.

    Customer exits came later and theyo*ercome the shortcomings o )ser&xit.

    No such thing is reFuired here. To acti*ate a unction exit2 you needto create a proGect in S'$D andacti*ate the proGect.

    What is the diference between RFC and BA!?

    BA! RFC

    Rust as Qoogle oers#mage/Chart/'ap A#s $" 5aceboo1oers A#s or Comment/!i1e2 SAoers A#s in the orm o BA#s. BA#is a library o unction modulesreleased by SA to the public so that

    they can interace with SA.

    "5C is nothing but a remote enabledunction module. So i there is a5unction 'odule in SA system 0 onser*er O 2 it can be called rom a SAsystem residing on ser*er %.

    There is a Business $bGect Associatedwith a BA#. So a BA# has an#nterace2 -ey 5ield2 Attributes2'ethods2 and &*ents.

    No Business $bGect is associated witha "5C.

    $utside world 3RA

  • 7/25/2019 RICEFW Interview Questions

    8/24

    5unction module. 'odule when acti*ated.

    'ain @indow is must. %ou can create a S'A"T5$"' withouta 'ain @indow.

    SASC"#T can be con*erted toS'A"T5$"'S. )se rogram

    S5,'#Q"AT&.

    S'A"T5$"'S cannot be con*erted toSC"#T.

    $nly one age ormat is possible 'ultiple page ormats are possible.

    Such thing is not possible in SC"#T. %ou can create multiple copies o aS'A"T5$"' using the Copies@indow.

    "$T&CT &ND"$T&CT commandis used or age protection.

    The rotect Chec1box can be tic1edor age rotection.

    The way S'A"T5$"' is de*eloped and the way in which SC"#T isde*eloped is entirely dierent. Not listing down those here. That would be

    too much.

    Question ':What is the diference between Ca(( $ransaction %ethodand the #ession method ?

    #ession %ethod Ca(( $ransaction

    Session method id generally usedwhen the data *olume is huge.

    Call transaction method is when thedata *olume is low

    Session method is slow as

    compared to Call transaction.

    Call Transaction method is relati*ely

    aster than Session method.SA Database is updated when youprocess the sessions. %ou need toprocess the sessions separately *iaS'9:.

    SA Database is updated during theexecution o the batch inputprogram.

    &rrors are automatically handledduring the processing o the batchinput session.

    &rrors should be handled in thebatch input program.

    Question ):What is the diference between BDC and BA!?

    BA! BDC

    BA# is aster than BDC. BDC is relati*ely slower than BA#.BA# directly updates database. BDC goes through all the screens as

    a normal user would do and hence itis slower.

    No such processing options are Bac1ground and 5oreground

  • 7/25/2019 RICEFW Interview Questions

    9/24

    a*ailable in BA#. processing options are a*ailable orBDC.

    BA# would generally used or smalldata uploads.

    BDCs would be preerred or large*olumes o data upload sincebac1ground processing option is

    a*ailable.5or processing errors2 the "eturnarameters or BA# should beused.This parameter returnsexception messages or successmessages to the calling program.

    &rrors can be processed in S'9: orsession method and in the batchinput program or Call Transactionmethod.

    Question *: What is the diference between macro and subroutine?

    %acro #ubroutine

    'acro can be called only in theprogram it is defned.

    Subroutine can be called rom otherprograms also.

    'acro can ha*e maximum Kparameters.

    Can ha*e any number o parameters.

    'acro can be called only ater itsdefnition.

    This is not true or Subroutine.

    A macro is defned insideD&5#N& .&NDH$5HD&5#N#T#$N.

    Subroutine is defned inside5$"' ....&ND5$"'.

    'acro is used when same thing is tobe done in a program a number otimes.

    Subroutine is used ormodulariation.

    Question +:What is the diference between #A memor, and ABAmemor,?

    #A %emor, ABA %emor,

    @hen you are using the S&T/Q&Tarameter #D command2 you areusing the SA 'emory.

    @hen you are using the &O$"T#'$"T Statements2 you are usingthe ABA 'emory.

    SA 'emory is )ser Specifc.@hat does this meanThe datastored in SA memory can beaccesses *ia any session rom a

    ABA 'emory is )ser and TransactionSpecifc.@hat does this meanThedata stored in ABA memory can beaccessed only in one session. # you

  • 7/25/2019 RICEFW Interview Questions

    10/24

    terminal. are creating another session2 youcannot use ABA memory.

    !m-ortant

    Question .:What is the diference between A$ #E/EC$!&0#CREE0and A$ #E/EC$!&0#CREE0 &U$U$?AT S&!&CT#$NHSC"&&N is the A# o the selection screen whereasAT S&!&CT#$NHSC"&&N $)T)T is the B$ o the selection screen.

    Question 2:What is the diference between #3!0DE4 and #3$AB!4?Remember it this way TABIX = Table.So when you are looping o*er an internal table2 you use S%HTAB#O.@hen you use D$ &NDD$ / @6#!& or looping2 there is no table in*ol*ed.So you use S%H#ND&O.

    5or "&AD statement2 S%H#ND&O is used.

    Question 15:What is the diference between 6!EW and a $AB/E?Atable physically stores data.A *iew does not store any data on its own. #t can contain data rom multipletables and it Gust accesses/reads data rom those tables.

    Question 11:What is the diference between Customi7in8 andWor9bench reuest?A wor1bench reFuest is client independent whereas aCustomiing reFuest is client dependent.Changes to de*elopment obGects such as "eports2 5unction 'odules2 DataDictionary obGects etc. all under @or1bench reFuests.

    Question 1;:What is the diference between A## B3 6A/UE andA## B3 REFERE0CE?These concepts are generally used or 5unctionmodules or Subroutines etc. and their meaning can be ta1en literally.

    Say we are passing a *ariable l*,*arCA!! 5)NCT#$N ED&'$,5'E &O$"T#NQ

  • 7/25/2019 RICEFW Interview Questions

    11/24

    Master data is data that doesnt change often and is always needed in the same way by business.Ex: One time activities like creating Company Codes, Materials, Vendors, Customers etc.

    Transaction data keeps on changing and deals with day to day activities carried out in business.Transactions done by or with Customers, Vendors, and Materials etc. generate Transactionata. !o data related to !ales, "urchases, eliveries, #nvoices etc. represent transaction data

    !ome important transactions here for Master ata$Material$ MM%& MM%' MM%(

    Vendor$ )*%& , )*%' , )*%(Customer$ )d%& , )%' , )%(

    !ome #mportant transactions for Transaction data$"urchase Order$ M+'&n , M+''n , M+'(n!ales Order$ V%& , V%' , V%(-oods eceipt$ M#-O#nvoices$ M#O

    !m-ortantQuestion 1':What wi(( ,ou use #E/EC$ #!0

  • 7/25/2019 RICEFW Interview Questions

    12/24

    !m-ortantQuestion 1*:Can ,ou describe the e>ents in ABA?

    /&AD&FR&

  • 7/25/2019 RICEFW Interview Questions

    13/24

    client 0;; to client :;;. 6owe*er2 or S'A"T5$"'S2 Changes will be madeboth or client 0;; and client :;;.

    Question ;5:There are 0;;;s o #D$Cs in your system and say you no

    longer need some o them 6ow will you get rid o those #D$Cs

    $ne way is to archi*e the #D$Cs using transaction #ARA.But what the inter*iewer was expecting was +6ow do you change #DocStatusThere are dierent ways o doing this

    A4 )se 5' !D&C#$A$U#WR!$E$&DA$ABA#E

    B4 )S& 5's &D#,D$C)'&NT,$&N,5$","$C&SS and &D#,D$C)'&NT,C!$S&,"$C&SS

    Question ;1:@hat is the dierence between C6A#N &NDC6A#N and5#&!D commands in 'odule ool

    # you want to *alidate a single feld in 'odule ool2 you use the 5#&!DCommand.$n error2 this single fled is 1ept open or input.

    # you howe*er want to *alidate multiple felds2 you can use the C6A#N

    &NDC6A#N command. %ou speciy multiple felds between C6A#N and&NDC6A#N.$n error2 all felds between C6A#N &NDC6A#N are 1ept open or input.

    Question ;;:What are the t,-es o Function %odu(es? What is anUDA$E unction modu(e?There are three types o 5unction'odules 0orma( RFC UDA$E=

    The aim o the )pdate unction module is either to C$''#T all changes todatabase at once or to "$!!BAC- all the changes. By defnition2 an update

  • 7/25/2019 RICEFW Interview Questions

    14/24

    unction module is used to bundle all the updates in your system in one !)@3logical unit o wor14.

    This 5' is called whene*er C$''#T @$"- statement is encountered in thecalling program and the way you call it isCALL FUNCTION XXX IN UPDATE

    TASK.

    6a*e a loo1 at 5' &D#,D$C)'&NT,C!$S&,"$C&SS,)D and do a whereused.This 5' is used as )pdate 5' in case you ma1e changes to #Doccontents/status *ia your program.

    Question ;":6ow is the table sorted when you do not speciy feld nameand Ascending or Descending $n what criteria will the table be sorted Dointernal table ha*e 1eys

    %es2 internal table ha*e 1eys.The deault 1ey is made up o the nonHnumeric felds o the table line in theorder in which they occur.

    Question ;':Ex-(ain what is a orei8n 9e, re(ationshi-?&xplain thiswith the help o an example.!ets discuss about tables &--$ 3$ header4 and &-$ 3$ line item4.Can you ha*e an entry in table &-$ without ha*ing an entry in table &--$#n other words can you ha*e $ line items without the $ header

    6ow does this happen The answer is oreign 1ey relationship.#o orei8n 9e,s come into -icture when ,ou deGne re(ationshi-between two tab(es=

  • 7/25/2019 RICEFW Interview Questions

    15/24

    5oreign 1eys are defned at feld le*el.Chec1 the oreign 1ey relation or feld &B&!N o table &-$.The chec1 table is &--$. This Gust means that whene*er an entry is made in&-$2 it is chec1ed whether the entered *alue or &B&!N already exists in&--$. # not2 entry cannot be made to &-$ table.Question ;) : What is the diference between a >a(ue tab(e and achec9 tab(e?Chec1 table is maintained when you defne oreign 1eyrelationships.5or Chec1 table2 read Fuestion abo*e.

    .

  • 7/25/2019 RICEFW Interview Questions

    16/24

    Question ;*: 6ow do ,ou Gnd BA!?Approach!%ou can go to Transaction BA# and then search or your desired obGect.Say you want to fnd a BA# or creating users in the system2 in such caseyou can search or the +)ser and fnd the rele*ant BA#s.

    Approach"!

    Another way is to fnd a Business $bGect. Say you want to fnd a BA# orcreating 'aterial in SA and you 1now the B$ or 'aterial is B)S0;;0;;I.

    %ou can go to Transaction S@$0 and enter the B$ B)S0;;0;;I in the B$".Then ha*e a loo1 at the methods or this B$.

  • 7/25/2019 RICEFW Interview Questions

    17/24

    !m-ortantQuestion ;+:ow do ,ou Gnd BAD!?Approach!

    Qo to C(assC/E4!$A0D/ER in S&8 HHHY ut a brea1point inmethod

  • 7/25/2019 RICEFW Interview Questions

    18/24

    %ou will fnd the BAD# in the changing -arameter exitname

    Approach "!Qo to Tcode S&78 &nhancements BAD#s Defnitions.5ind the pac1age or the Tcode or which you are fnding the BAD#.

    &nter it as shown and hit execute

  • 7/25/2019 RICEFW Interview Questions

    19/24

    SA $$S ABA #NT&"

  • 7/25/2019 RICEFW Interview Questions

    20/24

    terms are used in ABA $bGects. The end o this section contains a list o urtherreading2 with a selection o titles about obGect orientation.@hat is the Dierence between Class and $bGect A Class is actually a blueprint or a template to create an $bGect. @hereas an $bGectis a an actual instance o a Class. 5or example &mployee ia a class2 while Rohn is areal employee which is an $bGect o &mployee Class.

    6ow polymorphism can be implemented Some examples to implement polymorphism'ethod $*erriding'ethod $*erloading$perator $*erloading

    @hat is #nheritance #n $$s terminology2 inheritance is a way to orm new classes using classes thatha*e already been defned. #nheritance is intended to help reuse existing code withlittle or no modifcation. The new classes2 1nown as deri*ed classes2 inheritattributes and beha*ior o the preHexisting classes2 which are reerred to as base

    classes.

    @hat is 'ethod $*erriding 'ethod o*erriding allows a subclass to o*erride a specifc implementation o amethod that is already pro*ided by one o its super classes.A subclass can gi*e its own defnition o methods but need to ha*e the samesignature as the method in its super class. This means that when o*erriding amethod the subclassEs method has to ha*e the same name and parameter list asthe super classEs o*erridden method.

    @hat is 'ethod $*erloading 'ethod o*erloading is in a class ha*e many methods ha*ing same name butdierent parameter called o*erloading or static polymorphism

    @hat is Aggregation Aggregation is a special orm o association. Aggregation is the composition o anobGect out o a set o parts. 5or example2 a car is an aggregation o engine2 tyres2bra1es2 etc.Aggregation represents a Z6asZ relationship li1e a car has a engine.

    @hat is obGect oriented programming language $bGect oriented programming language allows concepts such as abstraction2modularity2 encapsulation2 polymorphism and inheritance. Simula is the frst obGectoriented language. $bGects are said to be the most important part o obGect orientedlanguage. Concept re*ol*es around ma1ing simulation programs around an obGect.

    @hat are the core ABA oops concepts #nheritance #nheritance is the ability o an obGect to inherit the properties andmethods o another obGect. This characteristic leads to the creation o amilies oobGects 3Gust li1e amilies exist or humans4 with parent obGects and child obGects.olymorphism olymorphism is about an obGects ability to pro*ide context whenmethods or operators are called on the obGect.

  • 7/25/2019 RICEFW Interview Questions

    21/24

    Defnition olymorphism#n obGectHoriented programming2 polymorphism 3rom the Qree1 meaning Zha*ingmultiple ormsZ4 is the characteristic o being able to assign a dierent meaning to aparticular symbol or ZoperatorZ in dierent contexts. The simple example is twoclasses that inherit rom a common parent and implement the same *irtual method. Defnition &ncapsulation

    &ncapsulation &ncapsulation is the ability that an obGect has to contain and restrictthe access to its members. &ncapsulation is a 1ey concept o obGect programmingthat ensures the autonomy and integrity o the obGects.Abstraction Another $$S concept related to encapsulation that is less widely usedbut gaining ground is abstraction. Defnition Abstraction

    Through the process o abstraction2 a programmer hides all but the rele*ant dataabout an obGect in order to reduce complexity and increase eUciency. #n the sameway that abstraction sometimes wor1s in art2 the obGect that remains is arepresentation o the original2 with unwanted detail omitted. The resulting obGectitsel can be reerred to as an abstraction2 meaning a named entity made up oselected attributes and beha*ior specifc to a particular usage o the originating

    entity.

    @hat is )'! )'! 3)nifed 'odeling !anguage4 is a standardied modeling language. #t is usedor the specifcation2 construction2 *isualiation and documentation o models orsotware systems and enables uniorm communication between *arious users.)'! does not describe the steps in the obGectHoriented de*elopment process.SA uses )'! as the companyHwide standard or obGectHoriented modeling.)'! describes a number o dierent diagram types in order to represent dierent*iews o a system.

    @hat are the types o $bGects and Classes #n general there are two types o $bGects #nstance $bGect and Static $bGect and assuch there are two types o Classes #nstance class and Static Class. Specifcallywhen it comes to *isibility2 ri*ate class2 rotected class and ublic classes are thetypes o classes one can ha*e.

    @hat are the types o classes which can be created @e can create our types o classes under fnal and only modeled category3optional4with the pri*ate2 protected2 public and abstract instantiation.)sual Abap Class.&xception Class3@ith/@ithout messages4.ersistent Class.

    Test Class3ABA )nit4.

    @hat are the types o classes which can be created @e can create our types o classes under fnal and only modeled category3optional4with the pri*ate2 protected2 public and abstract instantiation.)sual Abap Class.&xception Class3@ith/@ithout messages4.ersistent Class.

    Test Class3ABA )nit4.

  • 7/25/2019 RICEFW Interview Questions

    22/24

    @hat is a reerence *ariable $bGects can only be created and addressed using reerence *ariables. "eerence*ariables allow you to create and address obGects. "eerence *ariables can bedefned in classes2 allowing you to access obGects rom within a class. @hat is a reerence *ariable

    $bGects can only be created and addressed using reerence *ariables. "eerence*ariables allow you to create and address obGects. "eerence *ariables can bedefned in classes2 allowing you to access obGects rom within a class.

    @hat is the dierence between Abstract method and a 5inal method Abstract methodAbstract instance methods are used to speciy particular interaces or subclasses2without ha*ing to immediately pro*ide implementation or them. Abstract methodsneed to be redefned and thereby implemented in the subclass 3here you also needto include the corresponding redefnition statement in the D&5#N#T#$N part o thesubclass4. Classes with at least one abstract method are themsel*es abstract. Staticmethods and constructors cannot be abstract 3they cannot be redefned4.

    Abstract 3instance4 methods are defned in the class2 but not implementedThey must be redefned in subclasses.

    @hat is a super class 6ow can it be implemented A super class is a generaliation o its subclasses. The subclass in turn is aspecialiation o its super classes.

    @hat is a Narrowing Cast 6ow can you implement it The assignment o a subclass instance to a reerence *ariable o the type Zreerenceto superclassZ is described as a narrowing cast2 because you are switching rom amore detailed *iew to a one with less detail.

    @hat is a @idening Cast The widening cast is2 as with inheritance2 the opposite o the narrowing cast 6ere itis used to retrie*e a class reerence rom an interace reerence.

    @hat is a singleton # it is to be impossible to instantiate a class more than once 3or example2 becauseit ser*es as a data administrator or data container42 you can use the singletonconcept. The class is defned with the addition C"&AT& "#

  • 7/25/2019 RICEFW Interview Questions

    23/24

    attributes and so on4 cannot be redefned. Changes to method parameters3signature changes4 are not possible.

    @hat are static components @hat is a component selector #n inheritance2 static components are ZsharedZ A class shares its nonHpri*ate staticattributes with all its subclasses. Y and HY are the component selectors used to

    reer.

    @hat are component instance A component instance is a running component that can be run in parallel with otherinstances o the same component.

    6ow is &ncapsulation implemented in $$s &ncapsulation means that the implementation o an obGect is hidden rom othercomponents in the system2 so that they cannot ma1e assumptions about theinternal status o the obGect and thereore dependencies on specifcimplementations do not arise.

    @hat are BAD#s @hat are BAD# flters BAD# H Business Add #ns are enhancements to the standard *ersion o the code oSA.5ilter BadiH Business AddH#ns may be implemented on the basis o a flter *alue. # anenhancement or countryHspecifc *ersions is pro*ided or in the standard *ersion2 itis li1ely that dierent partners will want to implement this enhancement. Theindi*idual countries can create and acti*ate their own implementation.

    @hat are the types o &xception classes a. Qlobalb. !ocal &xceptions Class.

    @here can a protected method be accessed rotected components $nly *isible within the class and its sub classes.

    @hat is a signature o a method 'ethods ha*e a parameter interace 3called signature 4 that enables them torecei*e *alues when they are called and pass *alues bac1 to the calling program.#n ABA $bGects2 methods can ha*e #'$"T#NQ2 &O$"T#NQ2 C6ANQ#NQ2 and"&T)"N#NQ parameters as well as exception parameters.C!ASS D&5#N#T#$N. ... '&T6$DS = #'$"T#NQ T%& &O$"T#NQ T%& C6ANQ#NQ

    T%& "&T)"N#NQ

  • 7/25/2019 RICEFW Interview Questions

    24/24

    To go to an address beore perorming the operation a dereerence *ariable is apointer to the *ariable2 not the *ariable itsel. A pointer can be reHassigned anynumber o times while a reerence cannot be reassigned ater initialiation. 5ieldsymbols are similar to dereerence pointers. Thus2 you can only access the contento the data obGect to which the feld symbol points. 3That is2 feld symbols use *aluesemantics4. # you want to access the content o the data obGect2 you need to

    dereerence the data reerence frst.

    Can a class be defned without a constructor %es2 class can be created without any constructor. Deault constructor will becreated when we defne a class without constructor.