Download as xlsx, pdf, or txt
Download as xlsx, pdf, or txt
You are on page 1of 264

Self Introduction

Reason for the job change


Expected Salary and currency salary
Roles and responsibilties in currency project
Challenging work you did recently
Strength
Weekness
Team Leader qualities and how to split the work
How to handle pressure
Goals or Where do you see yourself in 5 years?
Why do you want to work here
why whould we hire you
Greatest accomplishment
any questions for us
What are you looking for from a new position?
Why have you switched jobs so many times?
PTP Work Process
Singleton Class - Ensures that the class has only one instance and provides global point of access to this object/instance.
Difference between Abstract class and Interface - Abstract - can’t be instantiated,at least contain one abstract method,Meth
What is the constructor and class constructor - The instance constructor is executed each time you create an object (instance
What is static and Instance Method / Attributes - Static -doesn’t require instance,pass by reference,CLASS-METHODS,It can a
“METHODS,Involves declaration of reference variable, instantiating the class and then calling the class, itt can access all attribu
Narrow casting / Widening Casting in OOPS ABAP - Both the Narrow casting and Wide casting is related to Inheritance concep
- An instance of the superclass is assigned to the instance of the subclass

Abstraction, Encapsulation, Polymorphism, Inheritance - Inheritance - Derive code functionality from one class to another, p
Polymosphism - Polymorphism means redefining methods to either
class which contains methods with implementation and without implementation is called Abstract Class. * We can't create 'ob

Friend Class / Final Class - Friend class - A class can grant friendship to other classes and interfaces (and thus to all classes tha
specifying all classes and interfaces to which friendship is to be granted. These friends are granted access to all components o
instances of this class regardless of the addition CREATE of the statement CLASS.
Final Class - creating a class as a final means you can stop polymorphism. A class that is defined as final class can not be inheri
method can not be redefined further.
Event Handler Technique in OOPS ABAP -
Method overloading and Method Overriding - ABAP doesn’t Support method Overloading. The Process of overriding the supe
Concept of ‘SUPER’ and ‘ME’ in SAP ABAP Class? - ME - By using ME, we access the instance attribute. SUPER - Super Keywor
Deffered Keyword in OOPS ABAP. - One class can be refrerred within another class definition with defining the class. But that
1. Delivery Class
2. Data Browser
3. Foreign Key Relationship
4. Index in Transparent Tables
5. Database Utility
6. Data Class

Views

Data Type

Type Group

Domain

Search Help

Lock Object
Delivery Class - Decides how the transport management is going to happen in case of development, or implementation or upd
Data Browser - Data class determines the physical area (tablespace) of the database in which a database table is created. APP
Foreign Key Relationship - You use foreign keys to define relationships between tables in the ABAP Dictionary, create value ch
Secondary Index in Transparent Tables - Secondary indexes are used to enhancement performance when retrieving data. For
Database Utility - The database utility is the interface between the ABAP Dictionary and the relational database underlying th
Data Class - Each data class corresponds to a physical area in which all the tables assigned to this data class are stored. There a
Size Category - You use the size category to define the expected space required for the table in the database. You can choose
Pool Table and Cluster Table - https://www.youtube.com/watch?v=dsjCQO6II8g
Buffering - https://www.youtube.com/watch?v=puTd-a_YZBk
Max. no. Of structures that can be included in a table or structure. - Nine
Enhancement Category - The enhancement category of a structure describes whether a structure can be enhanced subsequen
Elementary and collective search helps - Dialog Type( Dialog Values Immediately, Dialog Values with restriction, Dialog depen
Types of Lock objects - Read(Shared Lock - I can read but not update the data ), Write(Exclusive Lock - Other user cannot read
Lock objects Function Module - Enqueue and Dequeue
Table Maintances generator - https://www.youtube.com/watch?v=lbGoDW5LjaY( Auth Group, One Step,Two Step,Overview
Events in TMG - https://www.youtube.com/watch?v=cI5tPkkFNkk
Recording Routine - To move the transaction data to higher system.
Domain - A domain is one of the fundamental objects of the ABAP data dictionary, which is used to define the technical attribu
Data Elemets - You use data elements to define the type of a table field, structure component or the row type of a table type
Type Groups - if we want to use some custom types in various programs then we need not define them separately, we can sim
Structure - Structure is a group of components defined under a name. A component is a field that can be an elementary type o
Table Type - You use a table type to describe the structure of an internal table in ABAP.
Value Table and Check Table - https://www.youtube.com/watch?v=Y2ANPmhyrgc Check Table - check table is validation at fi
Types of view - Database View, Help View, & Projection View
SM12 Lock Object - T code to view the lock objects
Append Structure and Custom Includes -
and T2 by assigning fields of table T1 to the primary key fields of table T2.
is table using AUFNR, the performance will be great because you are using the key. Say you need to hit this table with GLTRP(finish date),
finition in the ABAP Dictionary) database objects derived from objects of the ABAP Dictionary.
master data is the data contained in an address file, such as the name, address and telephone number.
s on the database system used, is assigned to each category.

ocak with extra feature, Can access only one time)

to a data element and can be reused in the field.


ble with GLTRP(finish date), it is not part of the key, so the performance would be poor. If you created a secondard index using this field GL
dard index using this field GLTRP, the performance would be improved
Events in Module Pool Programming - PAI,PBO,POH,POV
AT EXIT COMMAND - To bypasss the mandatory required fields we use at exit command. Functiona Type should be E. Module
CALL SCREEN - Add new screen to the stack, all the screen is alive, SET SCREEN - kill the current screen, don’t keep alive,will no
ON CHAIN COMMAND - Used the validate the field input. Remain enbaled after giving the error message
SUBSCREEN - 100(Normal Screen,Subscreen Area), 200( Subscreen ). CALL SUBSCREEN SUB INCLUDING SY-REPID '0101'

ON INPUT AND ON REQIUEST FIELD Statement - On Input - ON INPUTThe ABAP module is called only if the field contains a va
numeric fields. Even if the user enters the initial value of the screen as the initial value, the module is not called. (ON REQUEST
On Request - The module <mod> is only called if the user has entered something in the field. This includes cases when the use
In general, the ON REQUEST condition is triggered through any form of "manual input".
SUPPRESS DIALOG - Screen will be suppressed. LEAVE TO LIST PROCESSING - Screen to reports
Tabstrips Controls - CONTROLS : tab_strip TYPE TABSTRIP.
Table Control - CONTROLS : tbl_ctrl TYPE TABLEVIEW USING SCREEN 0001.
Changing screen field properties - Using Loop at screen. If screen-field = 'xxxx'. Screen-input = 0. MODIFY SCREEN. Endloop.
utube.com/watch?v=AQfjScgguSU
Update Function modules - Types of update - Start immediately, Delayed,Collective run. VBMOD,VBDATA,VBHDR
Remote enabled Function Module
Formal Parameter
Actual Parameter
Call by value and call by refference
Internal and External Subroutines
Why RFC Is pass by value
Difference between Subroutines and function modules
Types - Include Program, Function Module,
LUW - Database LuW, SAP LuW --- SAP LUW -> Database LUW ( SAP LUW collects all the process and pass it to Database LUW
COMMIT WORK - End the LUW and start the new one
https://blogs.sap.com/2014/04/18/relation-between-data-references-and-field-symbols-with-examples/
https://www.youtube.com/watch?v=0LtMrGuSnss
https://www.youtube.com/watch?v=X355G4mtpT4 https://sapcodes.com/2015/11/17/sap-abap-mem
https://www.youtube.com/watch?v=4McHkcmWJhY
m/2015/11/17/sap-abap-memory/
https://www.youtube.com/watch?v=S8JL8182NM0
ALSM_EXCEL_TO_INTERNAL_TABLE
FILE_READ_AND_CONVERT_SAP_DATA
IMPORT_FROM_SPREADSHEET
KCD_EXCEL_OLE_TO_INT_CONVERT
TEXT_CONVERT_XLS_TO_SAP
UPLOAD_XLS_FILE_2_ITAB

GUI DOWNLOAD
https://www.youtube.com/watch?v=d_4N8zAAKeE
https://www.youtube.com/watch?v=ugGfV-jsBhg
https://www.youtube.com/watch?v=For8ooD8Iis
https://www.youtube.com/watch?v=pzvBPGe1HmQ
https://www.youtube.com/watch?v=zj0rEl2USpI
https://www.youtube.com/watch?v=WcUJxIqYO0Q
T code for application server - CG3Y , CG3Z
https://answers.sap.com/questions/1213482/al11-directory-f4-help.html
https://www.youtube.com/watch?v=Q08x4eIqdGk
Message class - SE91
Transport Organizer - SE09/SE10
System Landscaspe - DEV,QA,PROD
Types - Workbench,Customizing,Transport of copies,Relocation
Status - Modifiable,Released
Workbench Request - Carry Custom ABAP Objects
Customizing Request - Configuration Changes. SPRO changes, Customizng data
Who will import the TR to Q/p = Basis person
ToC - Only task will be released
Simulate Release
Service Consumer
Service Provider
Create custom webservice
Webservice enhancements
SOAMANAGER
CRUD Operations
dsd

sd
BDC - Batch Da
CALL TRANSACTION
SESSION Method
DIRECT INPUT METHOD
BAPI - Business App
BDC - Batch Data Communication
LSMW - Legacy system Migration Workbench
BAPI - Business Application Programming Interface
Enhancement & Modifications

Implicit and Explicit Enhancements


Customer Exit
BADI
CLASSIC BADI
BADI Sort

New BADI ( Kernal BADI )

Kernal BADI will have the enhancement spot


Enhancement spot are the contanier of the kernal BADI
Filter BADI
When we have Multi use BADI which can have multiple implementation and we want the implementations to be conditional. S

BADI Sort
Fallback class

USER EXITS
Only available in SAP SD Module
mentations to be conditional. Say we want the different implementations for different Country codes we can go with Filter dependent BAD
n go with Filter dependent BADI.
Adobe form are interactive forms
We can interact with the output of adobe forms
Adobe forms provides the output in the form of PDF
T code is SFP
Need to create the interface first
Generate the functional module in runtime
Need ADLC( Adobe Life cycle designer)
form interface , global definationv are defined in the interface
Interface - ABAP Dictionary Based Interface, XML Scheme based interface, smartform compatible interface
Form Layout - Standard Layout,Xacf Layout, ZCI Layout,Unknow Layout Type
System Fields - DATE,TIME,USERNAME,SUBRC
Master Page,Body Page
Flowed,Positioned
Subform
Image Upload, Pages,Barcoed,text modules,INCLUDE TEXT
Integration into programs( FP_JOB_OPEN,FP_FUNCTION_MODULE_NAME,FP_JOB_CLOSE)
Scripting Language in Adobe form( Form Calc, Java Script)
FormCalc - To perform arithmetic and logical calculation
Javascript - For Dynamic form requirementts
this.presence = "visbile";
}
Points - ADS is must to design the layout, Check ADS connection FP_TEST_00,Positioned/Flowed
Adobe form tranlation to other language - SE63
Form Attributes - Generic Information
Form Interface - It’s used to pass the input and output parameters
Global Defination - Global data,Types,FieldSymbols,Initilization,form routines,currenct / quan fields
Page
Window - Main Window(Default)
Templates - Static and Fixed data
Table - For Dynamic data ( Header, Main Area, Footer),Line Type,
& - To display data
SUM - Using calculation tab
Generate the FM automatically at runtime
Driver program for smartform
SSF_FUNCTION_MODULE_NAME
Types of Windows - Main Windows,Secondary Window,Copies Window,final window
Main Window - For continuous output. Like Table
Secondary Window - For Fixed length output
Copies Window - Ist the special kind of secondary window. For making copies or orginal- SFSY-COPYCOUNT - Orginal Copy/Cus
Final Window - Ist the special kind of secondary window. Will be processed only at the end of processing of the form
Possible without main window - Yes
Windows will be processedd in the seq order except final window
Types of text - Text elements, Text Modules, Include Text, Dynamic text
Debugging - Place breakpoint at the FM,Put BREAKPOINT or BREAK USERNAME in the smartform code itself
Uploading and Downloading - best practice
Logo or graphics in smart forms - BITMAP - SE78 - Import Graphics, Define Resolutions in Smartforms
Address in Smartforms - Address are stored in ADRC table, Use address option in the SF and provide the address number
Folder Creation in SF - Achieve page protection in SF, So that everything will be printed in the same page, PAGE PROTECTION
Page Craetion - By defauly one page will be created along with one main window. If I want header info only on the first page, t
Currenct page and Total Page - SFSY-PAGE, SFST-FORMPAGES
SMARTSTYLES - Here we define paragraph format , and charater format, format, assign SMARTSTYLE in the smartforms
Bar Code and charater format - SE73, Assign barcode via charterformat
Smartforms Control Parameters, Output Options and User Settings - NO DIALOG,PERVIEW,TDTEST,USER SETTING OPTIONS
Output to PDF format - Get the OTF for smart form -> Convert OTF to PDF
Smartform Translation in to other language - SE63 Only for text elemnts not for incldue text or text modules
What is the tcode for SAPScript forms?
What is PROTECT & ENDPROTECT?
What are the different types of SAPScript symbols?
What are the different window types in SAPScript?
How many MAIN windows are allowed in SAPscript?
How can we omit a leading sign and a leading zero in SAPScript?
How to debug a SAPScript?
What are the different function modules used in SAPScript?
How to call a subroutine in SAPScript?
SE71
PROTECT & ENDPROTECT is a command used to protect a paragraph against a page break.
System symbols,Standard symbols,Program symbols,Text symbols
Main,VAR,CONST
99 main windows are allowed in SAPscript
Leading sign can be omitted by using ‘S’ with the sapscript symbol i.e. &symbol(S)&. Leading zero can be omitted by using ‘Z’ with the sapscript symbol i.
To switch on the debugger for SAPScript use the menu path Utilities->Debugger or use the program RSTXDBUG.
START_FORM,OPEN FORM,WRITE_FORM,CLOSE_FORM,END_FORM
Use PERFORM to call a subroutine.

Syntax for PERFORM statement is as follows

/: PERFORM <subroutine> IN PROGRAM <program>


/: USING &INVAR1&
/: USING &INVAR2&
/: CHANGING &OUTVAR1&
/: CHANGING &OUTVAR2&
/: ENDPERFORM

Syntax for FORM statement in the program is as follows.

FORM <subroutine> TABLES IN_TAB STRUCTURE ITCSY


OUT_TAB STRUCTURE ITCSY.
...
ENDFORM.
sing ‘Z’ with the sapscript symbol i.e. &symbol(Z)&.
ABAP on HANA Introductoion
In Memory Database
Row Store vs Column Store
DATA Compression
OLTA and OLAP
Code Push Down Techniquw
Data will be stored in the RAM instead of Hardisk, 8 CPU * 8-16 cores per blade
https://www.youtube.com/watch?v=Zo_DAROMrBU&list=PLqz8SLrkjv2iNxQCtKdbzWa-E1e2m2XBX&index=2
https://www.youtube.com/watch?v=U3tM8w-xFrQ&list=PLqz8SLrkjv2iNxQCtKdbzWa-E1e2m2XBX&index=3
https://www.youtube.com/watch?v=oxfibFNhP_8&list=PLqz8SLrkjv2iNxQCtKdbzWa-E1e2m2XBX&index=4
https://www.youtube.com/watch?v=D4hMu-p2b_o&list=PLqz8SLrkjv2iNxQCtKdbzWa-E1e2m2XBX&index=6
New Operator

Concatenation
Repeating Values

InLine Declaration
VALUE Expressions/Chaining/DEFAULT
CONV – Conversion Operator
LET Expression
COND & SWITCH operator
Alternative to READ TABLE
FILTER expression
LINE_EXISTS
LINE_INDEX
FOR Operator
REDUCE Operator
BASE, CORRESPONDING & MOVE-CORRESPONDING Operators
LOOP AT – GROUP
Extension and performance Boost
Comma and Escaping variable
Selecting a Constant
Arithmetic Calculation
Concatenation
CASE Statement
CTE – Common Table Expressions
INSERT with SELECT
Case Insensitive search with SELECT
New SQL functions with ABAP 7.51
DATA lo_ref TYPE REF TO CL_XX.
Lo_ref = NEW #( ).
[OR]
DATA(lo_ref) = NEW CL_XX( ).

DATA(lv_xx) = |Hello| & |{ lc_abap}|.


DATA(lv_xx) = |{ repeat( val = 'A' occ = 5 ) }|
READ TABLE ITAB INTO DATA(LS_DATA) INDEX 1.
READ TABLE ITAB ASSIGNING FIELDSYMBOL(<ls_data>) INDEX 1.
https://archer4sap.com/sap-abap-7-51_v1/value-expressions-chaining-default/
https://archer4sap.com/sap-abap-7-51_v1/conv-conversion-operator/
https://archer4sap.com/sap-abap-7-51_v1/let-expression/
https://archer4sap.com/sap-abap-7-51_v1/cond-switch-operator/
https://archer4sap.com/sap-abap-7-51_v1/alternative-to-read-table/
https://archer4sap.com/sap-abap-7-51_v1/filter-expression/
https://archer4sap.com/sap-abap-7-51_v1/line_exists/
https://archer4sap.com/sap-abap-7-51_v1/line_index/
https://archer4sap.com/sap-abap-7-51_v1/for-operator/
https://archer4sap.com/sap-abap-7-51_v1/reduce-operator/
https://archer4sap.com/sap-abap-7-51_v1/base-corresponding-move-corresponding-operators/
https://archer4sap.com/sap-abap-7-51_v1/loop-at-group/
https://archer4sap.com/sap-abap-7-51_v1/extension-and-performance-boost/
https://archer4sap.com/sap-abap-7-51_v1/comma-and-escaping-variable/
https://archer4sap.com/sap-abap-7-51_v1/selecting-a-constant/
https://archer4sap.com/sap-abap-7-51_v1/arithmetic-calculation/
https://archer4sap.com/sap-abap-7-51_v1/concatenation-in-sql/
https://archer4sap.com/sap-abap-7-51_v1/case-statement/
https://archer4sap.com/sap-abap-7-51_v1/cte-common-table-expressions/
https://archer4sap.com/sap-abap-7-51_v1/insert-with-select/
https://archer4sap.com/sap-abap-7-51_v1/case-insensitive-search-with-select/
https://archer4sap.com/sap-abap-7-51_v1/new-sql-functions-with-abap-7-51/
CDS - allows developers to define and consume semantically rich data models in a standardized manner
Use- Simplified data modeling:, Better performance,Reusability of CDS artifacts,Integration with other SAP technologies
Types - Basic
Restrict accessViews: ,Composite
to CDS Views,Consumption
views - Access Views
to CDS views can be restricted by implementing appropriate authorization checks in the
or roles have access to specific CDS views.
Difference between a CDS view and a database view- CDS views are defined in the ABAP Dictionary and provide a unified syn
such as associations, annotations, and built-in authorization checks.Database views are specific to the database system and a
features compared to CDS views.
Annotations in CDS allow you to enhance the metadata of CDS artifacts, providing additional information to tools and framew
Associations in CDS views define relationships between entities or views. They allow you to express links between data based
providing a convenient way to access related data.( ON DEMAND)
CDS Table Functions - https://discoveringabap.com/2021/11/12/exploring-abap-on-hana-11-cds-table-function/
Expose CDS Views - You can expose a CDS view as an OData service by using the @OData.publish annotation. This annotation
systems. Additionally, you can use the @OData.publish.urlAlias annotation to define a custom URL alias for the OData service.
CDS View and AMDP - 1. it is helpful in returning multiple result set on complex logics. Whereas, CDS is dedicated for single se
2. CDS views can be created to read and process data at DB layer. Whereas AMDP can be created to pr
3. AMDP is used to work with stored procedures, which further go to HANA DB layer and execute that.
Enhance - CDS view extensions allow you to enhance existing CDS views without modifying their original definitions. You can e
annotations, associations, and projections to the base view.
Can you use CDS views for data manipulation (INSERT, UPDATE, DELETE) operations? Yes, Using Table Functions
"@UIAnnotaion - The @UI annotation is used to define the user interface (UI) properties and behavior of fields in a CDS view.
Fiori applications. The @UI annotation allows you to specify properties such as labels, tooltips, field grouping, and formatting o
"@Consumption - The @Consumption annotation is used to define consumption-specific properties for CDS views. It allows yo
data access, or user interfaces.
"@Analytics - The @Analytics annotation is used to specify how a field in a CDS view should be treated in analytics scenarios.
reporting and analysis purposes.
"@Semantics - The @Semantics annotation is used to define the semantic meaning of fields in a CDS view. It provides addition
Path Expression - Path expressions identify an object by describing how to navigate to it to objects via steps/route. For examp
Employee’s address
Debug - ou can debug a CDS view by using the standard ABAP debugging tools available in the ABAP Development Tools (ADT)
ABAP code that calls or uses the CDS view, and then execute the program or application that triggers the CDS view execution.
the data flow in the CDS view.
Parameter in CDS View - Define view ZCDS_DD1_IP_TEST
With parameters matnr:abap.numc(18),
Lang:abap.char(1)

As select from mara as a

inner join makt as b

on a.matnr = b.matnr

key a.matnr as material,

b.maktx as description,

$parameters.Lang as language

} where a.matnr = $parameters.matnr and b.spras = $parameters.Lang;

Session Variables - As of ABAP 7.51, CDS framework provides some runtime system variables which can be readily used to ma
$session.client is runtime SAP client which is equivalent to sy-mandt in AS ABAP
$session.system_date is current system date and works same as sy-datum in AS ABAP
$session.system_language works very similar to sy-langu in AS ABAP
$session.user is essentially same as sy-uname in AS ABAP
ABAP Managed Database Procedure
AMDP Interface - IF_AMDP_MARKER_HDB
Types of AMDP Methods - BY_DATABASE_PROCEDURE and BY_DATABASE_FUNCTION
AMDP Syntax - METHOD XXX BY DATABASE PROCEDURE FOR HDB LANGUAGE SQLSCRIPT OPTIONS READ-ONLY USING TAB
We cannot create the AMDP in GUI SE24
AMDPs will not support automatic client handling
Constructors cannot be implemented as AMDP methods.
exception handling is supported for AMDP procedure methods.
AMDP method does not support implicit enhancement options.
COMMIT and ROLLBACK statements are not permitted in AMDP
We can return data from AMDP method using CHANGING parameters.
The parameters must be declared using VALUE for pass by value. Pass by reference is not permitted
Return values can not be declared as RETURNING
AMDP class can contain both regular methods and AMDP methods.
AMDP - BADI - https://blogs.sap.com/2016/12/26/how-to-extend-an-abap-managed-database-procedures-using-amdp-badis/
Define CDS View data mode using interface view and consumptio view
Create the metadata extension
Create behaviour definition
Crate behavior implementation
Servoce definition
Service binding

https://github.com/miltonchandradas/rapdemo

Create the Table


Interface View
Consumption View
Metadata Extension
Behavior Definition
Create Behaviour Implementation
Validate Age
Change Salary
SetActive
Behaviour Projections
Service Definition
Service Binding

You might also like