SAPABAPI n t e r v i e wQu es t i o nsPa r t1 SAP ABAP interview questions: Important Question 1: What is the diference between User Eit and !unction !unction Eit" User Eit User exit is implemented in the form of a Subroutine i.e. PERFORM xxx. Example: INCU!E M"F#$F%% PERFORM userexit&sa'e&do(ument&prepare.
• • • •
In (ase of a PERFORM- ,ou ha'e a((ess to almost all the data. So ,ou ha'e better (ontrol- but more ris of main/ the s,stem unstable. User exit is (onsidered a modi0(ation and not an enhan(ement. +ou +ou need $((ess 1e, 1e, for User Exit. Chan/es are lost in (ase of an up/rade. User exit is the earliest form of (han/e option o2ered b, S$P. No su(h thin/ is re3uired here.
#ustomer Eit $ (ustomer exit (an be implemented as: Fun(tion exit S(reen Exit Menu Exit Field Exit Example: C$ Customer fun(tion )xxx* INCU!E xxx. +ou +ou modif, this in(lude. in(lude. +ou +ou ha'e a((ess onl, to the the importin/- exportin/- (han/in/ and tables parameter of the Fun(tion Module. So ,ou ha'e limited a((ess to data. $ (ustomer exit is (onsidered an enhan(ement. +ou do not need a((ess e,. e,. Chan/es are up/rade (ompatible. Customer exits (ame later and the, o'er(ome the short(omin/s of User Exit. 4o a(ti'ate a fun(tion exit- ,ou need to (reate a pro5e(t in SMO! and a(ti'ate the pro5e(t.
What is the diference between $!# and BAPI" BAPI $!# 6ust as 7oo/le o2ers o2ers RFC is nothin/ but a remote enabled Ima/e8Chart8Map $PIs OR Fa(eboo fun(tion module. So if there is a o2ers $PIs for Comment8ie- S$P Fun(tion Module in S$P s,stem on o2ers $PIs in the form of 9$PIs. 9$PI ser'er ; - it (an be (alled from a S$P is a librar, of fun(tion modules s,stem < residin/ on ser'er +. released b, S$P to the publi( so that
the, (an interfa(e =ith S$P. 4here is a 9usiness 9usiness Ob5e(t $sso(iated =ith a 9$PI. So a 9$PI has an Interfa(e- 1e, Field- $ttributesMethods- and E'ents. Outside =orld >6$"$- "9- .Net or an, Non S$P s,stem? (an (onne(t to S$P usin/ a 9$PI. Error or Su((ess messa/es are returned returned in a RE4URN table.
No 9usiness Ob5e(t is asso(iated =ith a RFC.
Non@S$P =orld (annot (onne(t to S$P usin/ RFC. RFC does not ha'e a return table.
Question %:What is the diference between SAPS#$IP& and S'A$&!($'" SAPS#$IP& S'A$&!($' S$PSCRIP4 is is (l (lient de dependent. SM$R4FORM is is (l (lient in independent. S$PSCRIP4 does not /enerate an, SM$R4FORM /enerates a Fun(tion Fun(tion module. Module =hen a(ti'ated. Main Aindo= is must. +ou (an (reate a SM$R4FORM =ithout a Main Aindo=. S$PSCRIP4 (an be (on'erted to SM$R4FORMS SM$R4FORMS (annot be (on'erted to SM$R4FORMS. Use Pro/ram SCRIP4. SF&MI7R$4E. Onl, nl, one Pa/e a/e for format mat is pos possibl sible e Multi ultipl ple e pa/e a/e for format mats ar are e pos possibl sible. e. Su(h Su(h thin/ thin/ is not not poss possibl ible e in SCRIP4 SCRIP4.. +ou (an (an (re (reate ate multip multiple le (opi (opies es of of a SM$R4FORM usin/ the Copies Aindo=. PRO4EC4 B EN!PRO4EC4 (ommand 4he Prote(t Prote(t Che(box Che(box (an be ti(ed is used for Pa/e prote(tion. prote(tion. for Pa/e Prote(tion. 4he =a, SM$R4FORM SM$R4FORM is de'eloped and the the =a, in =hi(h SCRIP4 is de'eloped is entirel, di2erent. Not listin/ do=n those here. 4hat =ould be too mu(h. Question ):What is the diference between #a** &ransaction 'ethod and the Session method " Session 'ethod Session method id /enerall, used =hen the data 'olume is hu/e. Session method is slo= as (ompared to Call transa(tion. S$P !atabase is updated =hen ,ou pro(ess the sessions. +ou need to
#a** &ransaction Call transa(tion method is =hen the data 'olume is lo= Call 4ransa(tion method is relati'el, faster than Session method. S$P !atabase is updated durin/ the exe(ution exe(ution of the bat(h input
pro(ess the sessions separatel, 'ia SM#. Errors are automati(all, handled durin/ the pro(essin/ of the bat(h input session.
pro/ram. Errors should be handled in the bat(h input pro/ram.
Question +: What is the diference between B,# and BAPI" BAPI 9$PI is faster than 9!C. 9$PI dire(tl, updates database.
No su(h pro(essin/ options are a'ailable in 9$PI. 9$PI =ould /enerall, used for small data uploads.
For pro(essin/ errors- the Return Parameters for 9$PI should be used.4his parameter returns ex(eption messa/es or su((ess messa/es to the (allin/ pro/ram.
B,# 9!C is relati'el, slo=er than 9$PI. 9!C /oes throu/h all the s(reens as a normal user =ould do and hen(e it is slo=er. 9a(/round and Fore/round pro(essin/ options are a'ailable for 9!C. 9!Cs =ould be preferred for lar/e 'olumes of data upload sin(e ba(/round pro(essin/ option is a'ailable. Errors (an be pro(essed in SM# for session method and in the bat(h input pro/ram for Call 4ransa(tion method.
Question -: What is the diference between macro and subroutine" 'acro Ma(ro (an be (alled onl, in the pro/ram it is de0ned. Ma(ro (an ha'e maximum D parameters. Ma(ro (an be (alled onl, after its de0nition. $ ma(ro is de0ned inside: !EFINE B B. EN!OF!EFINI4ION. Ma(ro is used =hen same thin/ is to be done in a pro/ram a number of times.
Subroutine Subroutine (an be (alled from other pro/rams also. Can ha'e an, number of parameters. 4his is not true for Subroutine. Subroutine is de0ned inside: FORM B.. B.. EN!FORM. Subroutine is used for modulariation.
Question .: What is the diference between SAP memor/ and ABAP memor/" SAP 'emor/ Ahen ,ou are usin/ the SE487E4 Parameter I! (ommand- ,ou are usin/ the S$P Memor,. S$P Memor, is User Spe(i0(. Ahat does this meanG 4he data stored in S$P memor, (an be a((esses 'ia an, session from a terminal.
ABAP 'emor/ Ahen ,ou are usin/ the E;POR4 IMPOR4 Statements- ,ou are usin/ the $9$P Memor,. $9$P Memor, is User and 4ransa(tion Spe(i0(.Ahat does this meanG 4he data stored in $9$P memor, (an be a((essed onl, in one session. If ,ou are (reatin/ another session- ,ou (annot use $9$P memor,.
Important Question 0: What is the diference between A& SEE#&I(23 S#$EE2 and A& SEE#&I(23S#$EE2 (U&PU&" $4 SEEC4IONSCREEN is the P$I of the sele(tion s(reen =hereas $4 SEEC4IONSCREEN OU4PU4 is the P9O of the sele(tion s(reen. Question 4: What is the diference between S53I2,E6 and S53 &ABI6" Remember it this way TABIX = Table. So =hen ,ou are loopin/ o'er an internal table- ,ou use S+4$9I;. Ahen ,ou use !O B EN!!O 8 AHIE for loopin/- there is no table in'ol'ed. So ,ou use S+IN!E;.
For RE$! statement- S+IN!E; is used. Question 17: What is the diference between 8IEW and a &ABE"$ table ph,si(all, stores data. $ 'ie= does not store an, data on its o=n. It (an (ontain data from multiple tables and it 5ust a((esses8reads data from those tables. Question 11: What is the diference between #ustomi9in and Wor;bench request"$ =orben(h re3uest is (lient independent =hereas a Customiin/ re3uest is (lient dependent. Chan/es to de'elopment ob5e(ts su(h as Reports- Fun(tion Modules- !ata !i(tionar, ob5e(ts et(. fall under Aorben(h re3uests. Chan/es in SPRO 8 IM7 that de0ne s,stem beha'ior fall under (ustomiin/ re3uests.
$n example =ould be )de0nin/ number ran/es* in SPRO. In short- /enerall, a de'eloper =ould end up (reatin/ a Aorben(h re3uest and a Fun(tional Consultant =ould (reate a Customiin/ re3uest.
Question 1<: What is the diference between PASS B5 8AUE and PASS B5 $E!E$E2#E" 4hese (on(epts are /enerall, used for Fun(tion modules or Subroutines et(. and their meanin/ (an be taen literall,. Sa, =e are passin/ a 'ariable l'&'ar: C$ FUNC4ION !EMO&FM E;POR4IN7 "$R J l'&'ar. Ahen =e P$SS l'&'ar b, "$UE - the a(tual 'alue of l'&'ar is (opied into "$R. Ahen =e P$SS l'&'ar b, REFERENCE - the referen(e or the memor, address of l'&'ar is passed to the Fun(tion module. So "$R and l'&'ar =ill refer to the same memor, address and ha'e the same 'alue. Question 13: What is the difference between Master data and Transaction data? Master data is data that doesn’t 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 Transaction ata. !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
Important Question 1): What wi** /ou use SEE#& SI2=E or SEE#& UP&( 1 $(WS " Ahat =ill ,ou use SEEC4 SIN7E or SEEC4 UP4O ROAS G 4here is /reat (onfusion o'er this in the S$P arena. If ,ou 7oo/le- ,ou =ill see lots of results that =ill sa, SEEC4 SIN7E is faster and eK(ient than SEEC4 UP4O ROAS. 9ut that is LL in(orre(t. SEEC4 UP4O ROAS is faster than SEEC4 SIN7E. If for a AHERE (ondition- onl, one re(ord is present in !9- then both are more or less same. Ho=e'er- If for a AHERE (ondition multiple re(ords are present in !9SEEC4 UP4O ROAS =ill perform better than SEEC4 SIN7E.
Question 1+: Ahat is the di2eren(e bet=een .In(lude Stru(ture and .$ppend stru(tureG I ha'e seen ridi(ulous ans=ers for this at man, pla(es on the Aeb. 4he true ans=er is this: et*s sa, ,ou =ant to use the Stru(ture ; in ,our table +. Aith >Inc*ude 6- ,ou (an in(lude this stru(ture in multiple tables. Aith >Append 6- ,ou spe(if, that stru(ture ; has been used in table + and that this (annot be used in an, other table no=. So ,ou restri(t stru(ture ; onl, to 4able +. Important Question 1-: #an /ou describe the events in ABAP" (A,3(!3P$(=$A': I2I&IAI?A&I(2: If ,ou =ant to initialie some 'alues before sele(tion s(reen is (alled A& SEE#&I(2 S#$EE2 (U&PU&: P9O for Sele(tion S(reen A& SEE#&I(2 S#$EE2: P$I for Sele(tion S(reen S&A$&3(!3SEE#&I(2 E2,3(!3SEE#&I(2 &(P3(!3PA=E E2,3(!3PA=E A& USE$3#(''A2,: Ahen user (li( on sa, buttons in appli(ation toolbar. S53U#('' A& I2E SEE#&I(2: !ouble (li( b, user on basi( list. S53ISE A& P!@@: Ahen User Presses an, of the Fun(tion 1e,s &(P3(!3PA=E ,U$I2= I2E SEE#&I(2 Question 1.:
What events do /ou ;now in 'odu*e Poo* Prorammin" PB(: ,ou no= this . If not ,ou should no= this . 4hats basi(. PAI: +ou no= this. If not ,ou should no= this . 4hats basi(. P(8: Pro(ess on "alue re3uest B i.e. =hen ,ou press F. P(: Pro(ess on help re3uest B i.e. =hen ,ou press F. Question 10: #an /ou show mu*tip*e A8s on a Sin*e Screen" +es- there are multiple =a,s of doin/ this: If ,ou are usin/ OO$"- ,ou (an (reate multiple (ustom (ontainers cl_gui_custom_container C put an $" (ontrol c*DuiDa*vDridC in ea(h of those. +ou (an e'en use a Splitter (ontainer (ontrol and pla(e multiple $"s in ea(h of the split (ontainer. If ,ou are usin/ Normal $"- +ou (an use the follo=in/ FMS: . REUSE&$"&9OC1&IS4&INI4 <. REUSE&$"&9OC1&IS4&$PPEN! . REUSE&$"&9OC1&IS4&!ISP$+ Question 14: $ s,stem has t=o (lients LL and #LL on the same appli(ation ser'er. If ,ou mae (han/es to a S$PSCRIP4 on (lient LL- =ill the (han/es be a'ailable in (lient #LLG No. S$PSCRIP4 is (lient dependent. +ou =ill ha'e to transport (han/es from (lient LL to (lient #LL. Ho=e'er- for SM$R4FORMS- Chan/es =ill be made both for (lient LL and (lient #LL. Question <7: 4here are LLL*s of I!OCs in ,our s,stem and sa, ,ou no lon/er need some of themG Ho= =ill ,ou /et rid of those I!OCsG One =a, is to ar(hi'e the I!OCs usin/ transa(tion SA$A. 9ut =hat the inter'ie=er =as expe(tin/ =as )Ho= do ,ou (han/e I!o( Status*G 4here are di2erent =a,s of doin/ this: $? Use FM I,(#DS&A&USDW$I&ED&(D,A&ABASE 9? USE FMs: E!I&!OCUMEN4&OPEN&FOR&PROCESS and E!I&!OCUMEN4&COSE&PROCESS Question <1: Ahat is the di2eren(e bet=een CH$IN B EN!CH$IN and FIE! (ommands in Module PoolG If ,ou =ant to 'alidate a sin/le 0eld in Module Pool- ,ou use the FIE! Command. On error- this sin/le 0led is ept open for input.
If ,ou ho=e'er =ant to 'alidate multiple 0elds- ,ou (an use the CH$IN B EN!CH$IN (ommand. +ou spe(if, multiple 0elds bet=een CH$IN and EN!CH$IN. On error- all 0elds bet=een CH$IN BB EN!CH$IN are ept open for input.
Question <<: What are the t/pes o !unction 'odu*es" What is an UP,A&E unction modu*e" 4here are three t,pes of Fun(tion Modules: 2orma* F $!# F UP,A&E>
4he aim of the Update fun(tion module is either to COMMI4 all (han/es to database at on(e or to RO9$C1 all the (han/es. 9, de0nition- an update fun(tion module is used to bundle all the updates in ,our s,stem in one UA >lo/i(al unit of =or?. 4his FM is (alled =hene'er COMMI4 AOR1 statement is en(ountered in the (allin/ pro/ram and the =a, ,ou (all it is CALL FUNCTION XXX IN UPDATE TASK. Ha'e a loo at FM E!I&!OCUMEN4&COSE&PROCESS&UP! and do a =here used. 4his FM is used as Update FM in (ase ,ou mae (han/es to I!o( (ontents8status 'ia ,our pro/ram. Question <%: Ho= is the table sorted =hen ,ou do not spe(if, 0eld name and $s(endin/ or !es(endin/G On =hat (riteria =ill the table be sortedG !o internal table ha'e e,sG +es- internal table ha'e e,s. 4he default e, is made up of the nonnumeri( 0elds of the table line in the order in =hi(h the, o((ur. Question <): Ep*ain what is a orein ;e/ re*ationship"Explain this =ith the help of an example. et*s dis(uss about tables E11O >PO header? and E1PO >PO line item?. Can ,ou ha'e an entr, in table E1PO =ithout ha'in/ an entr, in table E11OG In other =ords (an ,ou ha'e PO line items =ithout the PO headerG
Ho= does this happenG 4he ans=er is forei/n e, relationship. So orein ;e/s come into picture when /ou deGne re*ationship between two tab*es>
Forei/n e,s are de0ned at 0eld le'el. Che( the forei/n e, relation for 0eld E9EN of table E1PO. 4he (he( table is E11O. 4his 5ust means that =hene'er an entr, is made in E1PO- it is (he(ed =hether the entered 'alue for E9EN alread, exists in E11O. If not- entr, (annot be made to E1PO table. Question <+ : What is the diference between a va*ue tab*e and a chec; tab*e"Che( table is maintained =hen ,ou de0ne forei/n e, relationships. For Che( table- read 3uestion abo'e. . "alue table is de0ned and maintained at a domain le'el. $t a domain le'el- ,ou (an mention allo=ed 'alues in the form of: ? Sin/le 'alues Ran/es ? "alue tableFor example- ha'e a loo at domain SH1%7. Onl, allo=ed 'alues are S and H for !ebit8Credit indi(ator. Ahene'er and =here'er ,ou use this domain- the s,stem =ill for(e ,ou to use onl, these t=o 'alues: S and H. $nother example is domain M$4NR. For this domain the 'alue table is M$R$. So =hene'er and =here'er- ,ou use this domain the s,stem =ill for(e ,ou to use 'alues for M$4NR in table M$R$.
Question <-: How do /ou Gnd BAPI" Approach1: +ou (an /o to 4ransa(tion 9$PI and then sear(h for ,our desired ob5e(t. Sa, ,ou =ant to 0nd a 9$PI for (reatin/ users in the s,stem- in su(h (ase ,ou (an sear(h for the )User* and 0nd the rele'ant 9$PIs. Approach2: $nother =a, is to 0nd a 9usiness Ob5e(t. Sa, ,ou =ant to 0nd a 9$PI for (reatin/ Material in S$P and ,ou no= the 9O for Material is 9USLLLLQ. +ou (an /o to 4ransa(tion SAO and enter the 9O 9USLLLLQ in the 9OR. 4hen ha'e a loo at the methods for this 9O.
Important Question <.: ow do /ou Gnd BA,I" Approach1: 7o to #*ass #DE6I&A2,E$ in SE< Put a breapoint in method =E&DI2S&A2#E>No= /o and exe(ute ,our transa(tion (ode for =hi(h ,ou =ant to 0nd 9$!I. +ou =ill 0nd the 9$!I in the (han/in/ parameter eitDname:
Approach 2: 7o to 4(ode SE Enhan(ements 9$!Is !e0nitions. Find the pa(a/e for the 4(ode for =hi(h ,ou are 0ndin/ the 9$!I. Enter it as sho=n and hit exe(ute:
SAPABAPI n t e r v i e wQu es t i o nsPar t3:Sma r t f o r ms
Ael(ome to ,et another post on $9$P inter'ie= 3uestions. Here I ha'e (omplied a list of inter'ie= 3uestions on Smartforms in S$P. 4his list is 3uite (omprehensi'e. Hope ,ou 0nd it useful. Cheers TT Smartform is S$Ps print form te(hnolo/, and is an alternati'e to S$PS(ripts. Ahene'er ,ou a(ti'ate a Smartform - a fun(tion module is /enerated for that Smartform. 4he pro/ram that (alls this fun(tion module is (alled the !ri'er Pro/ram for Smartform. 4he 4.(ode for Smartforms is SM$R4FORMS. Un*i;e SAP3ScriptsF Smartorms are c*ient independent> Here =e /o: HAn SAP $% s/stem has < c*ients 077 J 017> 5ou create an SAP Script ?DScript and a Smartorm ?DSmartorm in c*ient 077> Wi** both ?DScript and ?DSmartorm be avai*ab*e in c*ient 017 as we**" Client &hen /ou mirated the Smartorm to P$(, environment> Wi** the name o the unction modu*e be same in ,E8 and P$(," On(e ,ou transport the Smartform from !E" to PRO! en'ironment- a ne= fun(tion module name for the Smartform in /enerated in the PRO! en'ironment. For a parti(ular Smartform - /enerated fun(tion module names are di2erent in di2erent s,stems.One (an /et the name of the fun(tion module for Smartform b, passin/ the Smartform name to FM SSF&FUNC4ION&MO!UE&N$ME. Hen(e in the dri'er pro/ram for Smartform- it is (ommon pra(ti(e to use FM SSF&FUNC4ION&MO!UE&N$ME and then (allin/ the Smartform Fun(tion Module. C$ FUNC4ION SS!D!U2#&I(2D'(,UED2A'E
E;POR4IN7 formname J %&SM$R4FORM IMPOR4IN7 fm&name J l'&fm&name C$ FUNC4ION l'&fm&name How do /ou convert a Smartorm (utput to P,! output" 4here is a tri(, solution here.9ut lets eep that for the last. et us 0rst dis(uss the (on'entional =a, of /ettin/ a P!F output for Smartform. For that ,ou need to eep in mind the follo=in/ t=o fun(tion modules and their importin/8exportin/ parameters: CON"ER4&O4F CON"ER4&O4F&<&P!F In the !ri'er pro/ram- import the parameter 5ob&output&info from the Smartform FM and utilie that info in O4F parameter of the t=o aforementioned fun(tion modules.
Here is one more and probabl, the easiest =a, to see P!F output for a Smartform. 4,pe P!FT in the (ommand prompt and hit enter :?.
4o see the Smartform Print Pre'ie= output as list output 4,pe SIS in the (ommand prompt and hit enter.
How do /ou achieve Bar #ode printin in Smartorms" Step1: Use SE i.e. S$PS(ript Font Maintenan(e and (reate a 9ar (ode sa, %!EMO. Step <: For Smartform- (reate a (hara(ter format C and use the re(entl, (reated 9ar(ode %!EMO.
It (an be 0nall, used to print 9ar(ode as:
ow do /ou add a Watermar; (r a Bac;round Imae or Smartorms " If ,ou /o to the properties of a pa/e in Smartform- ,ou =ill 0nd a tab for 9a(/round Ima/e. Spe(if, the sour(e of the ima/e ,ou need here and it (an be used as ba(/round ima/e 8 Aatermar in Smartforms.
7raphi(s (an be maintained usin/ &>code SE.0>
ow wi** /ou print on both sided o a Smartorm" $t the Pa/e le'el in Smartforms- ,ou (an 0nd somethin/ (alled as Print Mode. Set the Print mode to duplex to print on both sides of the Smartform.
What is the diference in a &ab*e and a &emp*ate in Smartorm" $ 4emplate has 0xed number of Ro=s and Columns =hereas a 4able (an ha'e 'ariable ro=s and (olumns i.e. ,ou (an ha'e a internal table =ith (ontents asso(iated to a 4able element but not to a 4emplate. +ou should use a template =hen the tabular output is 0xedT
ow do /ou achieve Pae Protection in Smartorm " Ahile one (an use the PRO4EC4 ..... EN!PRO4EC4 (ommand for S$PS(ripts- for
Smartforms the Pa/eProte(tion (he(box (an be used to ensure pa/e prote(tion:
2ote: +ou ha'e Pa/eprote(tion propert, onl, for 4ext Elements in the Main Aindo=.
#an /ou move a Smartorm rom one SAP s/stem to another without usin transports " +es- this (an be a(hie'ed usin/ the Upload8!o=nload feature for Smartforms. One (an do=nload the Smartform from one s,stem and sa'e it as an ;M 0le. On(e that is done- the ;M 0le (an be used to upload the Smartform in another s,stem.
#an /ou have a Smartorm without a main window" +es- ,ou (an (reate a Smartform =ithout a Main Aindo=. 9ut there is no need to do an,thin/ of su(h sort. Ahene'er ,ou (reate a Smartform- a main =indo= is (reated b, default. I (ant thin of a situation - =here ,ou =ill ha'e a situation in =hi(h it is mandator, for ,ou to remo'e the Main Aindo=. 9ut still I ha'e seen this 3uestion in $9$P inter'ie=s. So I ha'e put it here. ow do /ou Gnd the name o the !unction 'odu*e or a Smartorm" When is this unction modu*e created" 4he fun(tion module for Smartform is (reated =hen the Smartform is a(ti'ated. +ou (an 0nd the name of the Fun(tion Module for a Smartform b, /oin/ to
En'ironment Fun(tion Module Name.
BDCI nt er v i e w Ques t i o ns Ahat is 9!C and =h, do =e use 9!C G 9!C > 9at(h !ata Communi(ation ? also no=n as bat(h input is a te(hni3ue b, =hi(h lar/e 'olumes of data (an be transferred from Non Sap or e/a(, s,stems to S$P s,stems.
Eamp*e: $ e/a(, s,stem that is to be repla(ed b, S$P has sa, LLL Customers - If the old s,stem runs alon/ =ith S$P- in that (ase the transfer is (alled an Interace>
4he t=o methods for 9!C are: • • •
Session 'ethod #a** &$A2SA#&I(2 'ethod #A ,IA(= (utdatedC
ABAP interview questions on B,#: Important: Question 1:What is the diference between #a** &ransaction 'ethod and the Session method "
Session 'ethod
#a** &ransaction
Session method id /enerall, used =hen the data 'olume is hu/e.
Call transa(tion method is =hen the data 'olume is lo=
Session method is slo= as (ompared to Call transa(tion.
Call 4ransa(tion method is relati'el, faster than Session method.
S$P !atabase is updated =hen ,ou pro(ess the sessions. +ou need to pro(ess the sessions separatel, 'ia SM#.
S$P !atabase is updated durin/ the exe(ution of the bat(h input pro/ram.
Errors are automati(all, handled durin/ the pro(essin/ of the bat(h input session.
Errors should be handled in the bat(h input pro/ram.
Important: Question <: ow do /ou do B,# or a tab*e contro*" Aith other thin/s as usual- there is a spe(ial tri( that ,ou ha'e to use =hile doin/ 9!C for table (ontrol. +ou need to use the B,# (K#(,E LMPNL> Its the 9C!&O1CO!E for Pa/e do=n that (an be used for s(rollin/ do=n in table (ontrol.
Important: Question%: Is there an/ method apart rom B,# or data up*oad to SAP" $part from 9!C and SMA- ,ou (an use BAPIs to upload data into S$P. 9$PIs should be preferred o'er 9!Cs- be(ause the, pro(ess data faster than 9!C. $ 9$PI is faster sin(e it updates !atabase Vdire(tl,V. Ahereas 9!C (alls transa(tion and /oes throu/h the =hole s(reen se3uen(e as an, user =ould do.
BAPI
B,#
9$PI is faster than 9!C.
9!C is relati'el, slo=er than 9$PI.
9$PI dire(tl, updates database.
9!C /oes throu/h all the s(reens as a normal user =ould do and hen(e it is slo=er.
No su(h pro(essin/ options are a'ailable in 9$PI.
9a(/round and Fore/round pro(essin/ options are a'ailable for 9!C.
9$PI =ould /enerall, used for small data uploads.
9!Cs =ould be preferred for lar/e 'olumes of data upload sin(e ba(/round pro(essin/ option is a'ailable.
For pro(essin/ errors- the Return Parameters for 9$PI should be
Errors (an be pro(essed in SM# for session method and in the bat(h input
used.4his parameter returns ex(eption messa/es or su((ess messa/es to the (allin/ pro/ram.
pro/ram for Call 4ransa(tion method.
Question ): ow do /ou process errors in #a** &ransaction method " ets ha'e a loo at the s,ntax for C$ 4R$NS$C4ION method. Sample (ode: !$4$: 9E7IN OF 7&4&MESS4$9 OCCURS L. INCU!E S4RUC4URE 9!CMS7CO. !$4$: EN! OF 7&4&MESS4$9.
C$ 4R$NS$C4ION M9 USIN7 7&4&9!C!$4$ MO!E E UP!$4E S MESS$7ES IN4O 7&4&MESS4$9.
$ll the error messa/es =ill be trapped inside 7&4&MESS4$9. Question +: What is the use o proram $SB,#SUB" 4here are t=o =a,s to pro(ess the 9!C sessions: ? 7o to SM# Choose session hit pro(ess. No= See Wuestion no. L. Use pro/ram RS9!CSU9. RS9!CSU9 s(hedules the session to be pro(essed in ba(/round. ets tae an example to understand this. 4he sessions are (reated at one point of time and pro(essed at other point of time and this ma, (reate a problem: !or eamp*e: a 9!C pro/ram (reates a session for updatin/ #LL (ustomers in S$P. Ho=e'er - before this session is pro(essed 'ia SM# - a user inserts LL (ustomers in the s,stem manuall,. In this (ase - the session =ill ha'e at least LL errors =hen the session is pro(essed from SM#. One =a, to a'oid this is to use the pro/ram VRS9!CSU9V in the bat(h input pro/ram itself so that the session is pro(essed as soon as it is (reated. RS9!CSU9 s(hedules the session to be pro(essed in ba(/round.
Question -: What is the structure o the B,# tab*e" 4he 9!C!$4$ (onsists of the follo=in/ 0elds:
PRO7R$M XCH$R LY Online pro/ram name.
!+NPRO XNUMC Y S(reen number.
!+N9E7IN XCH$R Y Fla/ to indi(ate the start of a ne= s(reen.
FN$M XCH$R
F"$ XCH$R
Sample S(reenshot:
9!C!$4$ table stru(ture
Question .: What is the diference between B,#D(K#(,E and B,#D#U$S($" B,#D(K#(,E: is used for storin/ (ommands durin/ the re(ordin/. lie 8LL is the (ommand for EN4ER 1e,. B,#D#U$S($: (ontains the (ursor position. it (ontians the 0eld in =hi(h (ursor =ill be.
Example (ode: perform bd(&0eld
usin/ 9!C&CURSOR PRO6PSPI!.
perform bd(&0eld
usin/ 9!C&O1CO!E J9U.
Question 0: What are the % methods that we use in sequence in a Batch input session method "
? B,#D(PE2D=$(UP for openin/ the 9at(h Input Session B,#DI2SE$& for insertin/ the transa(tional data into S$P ? B,#D#(SED=$(UP for (losin/ the 9at(h Input Session
If there are n re(ords - the 9!C&INSER4 method should be (alled n times. 9!C&OPEN&7ROUP and 9!C&COSE&7ROUP are (alled onl, on(e. 7eneral Information about a session is stored in tab*e APQI> 4ransa(tion data for a session is stored in tab*e APQ,> Question 4: What is /our approach or writin a B,# proram" Identif, the 4(ode and do the re(ordin/ in SH!9 to populate the 9!C!$4$.
On(e the re(ordin/ is done - one (an 4ransfer it to the 9at(h input pro/ram.
In the bat(h Input pro/ram - 4he transa(tional data is read from the 0le to an internal table. 4hen one (an loop o'er the transa(tional data in the internal table and start uploadin/ the data in S$P either b, C$ 4R$NS$C4ION method or b, (reatin/ sessions throu/h the bat(h input pro/ram.
Question 17: ow do /ou process errors in Session method " +ou (an /o to 4ransa(tion SM# - Choose the session name and (li( on Pro(ess.
Question 11: What are the diferent modes o processin batch input sessions"
4he three modes are:
Fore/round
!ispla, Errors Onl,
9a(/round
Question 1<: What is the diference between S/nchronous and As/nchronous Update " In S/nchronous update - the database is updated before the next transa(tion is taen for pro(essin/ in a bat(h input. In As/nchronous update - the s,stem doesnt =ait for updatin/ the database before the next transa(tion is taen for pro(essin/ in a bat(h input.
Question 1%: What is the transaction or $ecordin B,# "
4he 4(ode is SH!9. Question 1): ow do /ou read G*es rom the App*ication server "
+ou (an use the (ommands: (PE2 ,A&ASE& opens the 0le>dataset? either in read 8=rite mode. $EA, ,A&ASE& Read the 0le #(SE ,A&ASE& Close the dataset on(e the date has been read . Question 1+: ow do /ou read G*es rom the presentation server " +ou (an use the Fun(tion Modules : =UIDUP(A, 4o read data from 0le into an internal table =UID,(W2(A, 4o =rite data from internal table to a 0le on presentation ser'er
SAPAL EI Do c si nt e r v i e wq ue s t i on sanda ns wer sPa r t1
ALEI Docsi nSAP AL EI Do csi nSAPi sal o ta bo utc on fig ur a t i o na ndal o ta bo utT c ode s.Soi fy o uha v ewo r k e do n atl eas toneendt ,y o up r o ba bl yal r ea dyha v ea ns wer st o oendscenar i oi nALEI Docsi nSAP al otofques t i ons . Ch ee r s ! ! Buti fy ouha ven' t,mak es ur ey oudot hi sex er c i s e.Ther ear epl ent yofs t epbys t epgui dest o ALEI Doc sav ai l abl eont hei nt e r ne t.Mak es ur ey our eadon eunder s t andi tal l t hewa y.Sendi ng I Docf r om c l i ent800t os aycl i ent810ont hes ames er v eri seas y.I fpos si bl e, T r yanex er c i s ei n wh i c hy o us e ndanI Do cf r o mo nes y s t e mt oan ot h ers y s t e m.
Le t sge ts t a r t e d.Hop ey o uge ts omev a l u ei nt h es ep ag es: ) Quest i on1:Whati sALE? ALEs t andsf orAppl i c at i onLi nkEnabl i ng.Asi t ' snamei ndi c at es,i tl i nk st wos y st ems . AL Ei sat e c hn ol o gyt h atc a ne na bl eex c h an geofd at abe t we ent wodi ff er e ntSy s t e ms(Sa p-Sa p ORSap-NonSap) .ALEt ec hnol ogyenabl esdi s t r i but e dy e ti nt egr at edi ns t al l at i o nofSAP s y s t e ms . ALEar c hi t ec t ur ecompr i s esof3l a yer s: Appl i c at i onl a ye r r ef er st ot heappl i c at i ondat a(SD,MM ,FIordat af oran ySAPappl i c at i on). I nt hi sl ay ert hedat ai sc ol l ec t edt obedi s t r i but edandt hens entt ot hedi s t r i but i onl a y er . Di st r i but i onl ay er d et er mi nest owhom s houl dt hedat ag ener a t edbyt heappl i c at i onl a y erhast o bedi s t r i but edi . e.i ti si nt hedi s t r i but i onl a y ert hatt her ec i pi enti sdet er mi ned,t hedat ai s f or mat t edorfi l t er edandt henanac t ual i scr eat ed. t ak est her es pons i bi l i t yofdel i v er i ngt heI doct ot her ec ei v i ngs ys t em and Communi cat i onl ayer c ommu ni c at e st ot her e ce i v i n gs y s t e mv i at RFC,Fi l epo r t s,FTPo rT CP/ I Pe t c . ALEusesI Docasavehi cl et ot r ansf erdat abet weent wosyst ems.
Quest i on2:Whati sEDI? EDIs t andsf orEl ec t r oni cDat aI nt er c hange.I tr ef er st ot heel ec t r oni cex c hangeofbus i nes sdat a i nas t r uc t ur e df or ma t b et we ent wos y s t e ms .Th eEDIs u bs y s t e mg en er a l l yc on v e r t st h eI d oc
d at ai n t oon eo ft h ema nyEDIf o r ma t san dg en er a t e sanEDIfi l ei nanX1 2f o r ma t .Th e mi d dl e wa r et h ent r a ns l a t e st h eX1 2fi l et oa nI DOCf o r ma ta ndt h eI DOCi ss en tt ot h eSAP sys t em.
Quest i on3:Wh ati sa nI d oc ? Wh ati sI Do cT y p e ? Wh ati sa nI Do cEx t e ns i o n?
$n I!o( >Intermediate do(ument? is a 'ehi(le that is used to transfer data from one s,stem to another. I,oc is not a techno*o/ o some sort F but it is Oust a container that ho*ds data > It holds data in a stru(tured format i.e. in the Fields of the Se/ments. I,oc &/pe vs> I,oc: $n I!o( 4,pe is nothin/ but a (olle(tion of one or more stru(tures de0ned in a s,stem =ith spe(i0( 0elds. It does not hold !ata. Ho=e'er- an I!o( is somethin/ that holds the 'alues in the 0elds of the stru(ture de0ned b, I!OC t,pe. 4he transa(tion (ode to 'ie= an I!o( t,pe >9asi( and extension? is WE%7> Eamp*es: OR!ERSL- !E9M$SL- M$4M$SL- CREM$SL. 4hese are all S$P standard Basic I,oc &/pes> +ou (an e'en ha'e an I,oc etension in =hi(h ,ou (an use the existin/ 9asi( I!o( t,pe and add extra se/ments and 0elds to it. Usuall, =e extend an I!o( =hen the standard S$P I!o( t,pe is not able to (ater to the business pro(ess. Quest i on4:Wha ta r et h et y pe so fr e co r d si nSAPAL EI d oc san dwh er ei st h i si n f o r ma t i on s t or ed? Th er ea r et h r e et y p esofr e c or d si nSAPAL EI d oc s : Cont r olRecor ds: Cont r ol r ec or di nf or mat i onf oranI Doci ss t or edi ns t andar dt abl e EDI DC. Dat aRecor ds: Cont r ol r ec or di nf or mat i onf oranI Doci ss t or edi ns t andar dt abl e EDI DD. St at usRecor ds: Cont r ol r ec or di nf or mat i onf oranI Doci ss t or edi nst andar dt abl e EDI DS.
Quest i on5:Whati sanI docs t at us ? Whatar et hedi ff er entt y pesofI docs t at us est haty oukn ow ? Whe na nI Do ci ss en tf r om o nes y s t e mt oa no t he r,i tg oe st h r o ug hv a r i u oss t ag es . TheI Do c s t at usi ndi c at est hes t aget hatt heI doci nc ur r ent l yi n. Th er ea bo ut75I Docst at uses. Th er ei sn owa yy o uc a nr e me mb ert h os eal l . Do n' te v ent r yt o!Yo uwi l l p r o ba bl yr eme mbe ro nl yt h os eonwh i c hy o uh av ewor k e d. Bu th er ea r eaf e wt h aty o us h ou l dk no w: 0 4 9 i n di c a t e sanOu t b ou ndI Do can d5 0 7 5 a sI n bo un dI Do c .
01 I Do cg e ne r a t e d 02 Er r orpas s i ngdat at opor t 03 Da t ap as s e dt op or tOK pl i c at i ondo cu men tn otp os t e d 51 Ap 52 Appl i c at i ondoc umentnotf ul l ypos t ed 53 Ap pl i c at i ondo cu men tp os t e d
Quest i on6:Wha ti saPo r t ?Wh atar et h et y pe so fPo r t s? Ap or ti sac ommu ni c a t i o nc h an ne lt h r o ug hwh i c hMe s s ag esc a nb es e nto rr e c ei v e di nSAP. Thesenderandt her ec ei v erbo t hs pec i f yt hepor tt hr oughwhi c ht he ywi l l c ommuni c at e. Thecommonpor tt ypesar et heTRFCPor tandt heFi l ePor t . I fb ot hs en de ra ndr e ce i v e rme nt i o nTRFCp or t s ,d at ai se x c ha ng edv i aRFCc on ne ct i o ns . I fhowev er,afi l epor ti sment i oned,t heI DOCi swr i t t eni nafl atfi l eatt hes pec i fi edl oc at i onat t hesen ders y s t em. ThenaFTPt r ans f ers houl dbedonef r om t hatl oc at i ont ot her ec ei v ers y s t em oraMi ddl e war et hatwi l l s endt hefi l et ot her ec ei v ers y st em. Thet r ans ac t i ont omai nt ai npor t si sWE21.
Quest i on7:Whati saMessaget ypeandI docType?Whati st hedi ffer encebet weenMessage t y p ea ndanI Do ct y p e? AMes s aget y peandanI Doct y pear ec l os el yr e l at ed.I nf ac t ,y ouwi l l fi ndt hataMes s aget y pei s al wa y sas s oc i at edwi t hanI Doct y pe. Wher easanI Do ct y pei sade t ai l edv er s i onwi t hal l t he s egment sandfi el ds,aMes s ag et y pei sus edj us tt os pec i f yt hek i ndofi nf or mat i ont hatas y s t em c ans en do rr e ce i v et oo rf r o ma no t h ers y s t e m. SoI fs y s t e m SAP1h asaPa r t n erPr o fi l ewh er ei ts p ec i fi e sMATMAS asanout boundmess age t y pe,i tj u s tmea nst h atSAP1c ans en dma t e r i a lma s t e rd at at os ays y s t e m SAP2 . I fs y s t em SAP1ha saPa r t ne rPr o fil ewh er ei ts pe ci fi esMATMAS a sa ni n bo un dme s s a get y p e, i tj u s tme an st h atSAP1c a nr e c ei v ema t e r i a lma s t e rd a t af r o ms a ys y s t e m SAP2 . Whatal l fi el dsc anbes en tandr e cei v edwi l l bes pe ci fi edi nt heI Do ct y pe . Someot hermessaget ypes:DEBMAS(Cus t omer s ) ,CREMAS( Ven do r s )be l on gt ot h eMa s t e r da t a .
Th el i n kbe t we ename s s a geT y pean da nI Do ct y p ei sma i n t a i n edi nT c od e WE82.
sapar t nerpr o fil e?Whatar et het y pesofp ar t nerpr ofi l es? Quest i on8:Whati T ob ea bl et oc ommu ni c at ewi t hap ar t n erv i aa nI Do ci n t e r f a ce ,e ac hs y s t e mn ee dst oma i n t a i na par t nerpr ofi l e.Apa r t nerpr ofi l ei samec hani s mb ywh i c ht hesy s t em c anspe ci f ywhatk i ndof me s s ag es( me s s ag et y p es )i tc a ns e ndo rr e c ei v e . Par t nerpr ofi l esc anbemai nt ai nedi nWE20.
Quest i on9:Wha ti sad i s t r i bu t i o nmo de li nAL EI Do cs? Th ed i s t r i b ut i o nmo de ld es c r i b esho wAL Eme s s ag esfl owb et we end i ff er e ntl o gi c a ls y s t e ms . Youc anmen t i o nt hes en de ra ndr e ce i v e rl o gi c al s y s t e ms ,t h eme s sa get y pet ob ed i s t r i b ut edan d al s odi s t r i but edat a( I Doc s)bas edonc er t ai nc ondi t i onsbyus i ngt hedi s t r i but i onmodel . TheALEl a yerus est hedi s t r i but i onmodel t oc ont r ol whi c hs y st emswi l l r ec ei v et he i nf or mat i on( I Doc s)andal s ofi l t ert hedat abas edonc er t ai nc ondi t i ons . Di s t r i but i onModel scanbec r e at edandmai nt ai nedi nt r ans ac t i on BD64.
Quest i on10:Whatar epr ocesscodes? Idon' twantt omak et hi spos tt oobi g.So,Iwi l l s t opher ef ort het i mebei ng. Quest i on11:Ho wd oy o uEd i tI Do cc on t e nt sma nu al l y ? Quest i on12:Cany ouedi tI Docc ont entf ors uc c es s f ul I Doc s? No .Y ouc a nn o t . Quest i on13:I fy o us e ndanI Do cs a y1 00 00 80 08f r o ms y s t e m ECC1t os y s t e m ECC2 ,wi l l t h e I Docnumberi nECC2be100008008? No .Th ene x tn umb erf r o mt h eI Do cn umb err a ng ei nECC2 wi l l b ep i c k e du p.