Your Ad Here

Tuesday, November 18, 2008

ALE – IDOC

What is an IDOC?

An IDoc is simply a data container that is used to exchange information between any two processes that can understand the syntax and semantics of the data.

IDOCs are stored in the database. In the SAP system, IDOCs are stored in database tables. IDOCs are independent of the sending and receiving systems.IDOCs are independent of the direction of data exchange. Several SAP applications use the robust IDOC interface. IDocs serve the basic purpose of transferring data from one application to another.

What is the difference between ALE and EDI?


ALE
Application Link Enabling
Used mostly for SAP to SAP communication. Used in Distributed servers system. E.g. Say a Company has a central server at its head office and local servers at its branches. ALE is used to keep all the servers synchronized.
Does not need EDI subsystem for communication.
ALE is an SAP terminology. ALE is integrated with SAP product.


EDI
Electronic Data Interchange
Used Mostly for communication between any 2 systems on different networks. E.g. Communication by a company with its Suppliers and Customers.
Needs a EDI subsystem for communication
EDI is a technology in itself. It has its own set of standards. SAP supports EDI through IDOCs.


There are three types of records in IDOC.

Control Record
It contains all of the control information about an IDOC. It includes the IDOC number, sender and receiver information, and information such as the message type it represents and the IDOC Type. Control records are stored in EDIDC table. It is stored in EDIDC table.

Data Records
It contains the application data. It is stored in EDIDD table. Data Records contains two parts Administrative Section and Data Section. Administrative Section consists of Idoc number, Segment Name, Segment number, Version, Segment Hierarchy etc. Data Section contains the data of respective segment. Data records are of EDIDD type of structure. It is stored in EDID4 table.

Status Records
Whenever a process is taken place, system will generate status records. We can identify the process with the number of status record.
Status 01 - 49 for Outbound Process and status 50 - 75 for Inbound Process.

When IDoc is processed the messages are:
01 - IDoc is created
30 - IDoc is ready for dispatch
03 - IDoc is processed

The status can be maintained using transaction WE47.

The two available processes in IDOCs are,

Outbound Process
When sending out the data from our system, the used IDOC is called as Outbound IDOC.

Inbound Process
When the data is coming in, the process is called Inbound Process and the IDoc is known as Inbound IDoc.

Partner Profile
Partner profile is used to define the parameters for the electronic interchange of data with a trading partner using the IDoc interface. To communicate with a partner using the IDoc interface partner profile should be defined.
Partner profile is defined using transaction code WE20.


Steps in creating an IDOC

Create Idoc Type ( WE30)

Go to transaction code WE30
Enter the Object Name, select Basic type and click Create icon
Select the create new option and enter a description for your basic IDOC type and press enter
Select the IDOC Name and click Create icon
The system prompts us to enter a segment type and its attributes
Choose the appropriate values and press Enter
The system transfers the name of the segment type to the IDOC editor.
Follow these steps to add more number of segments to Parent or as Parent-child relation
Save it and go back
Go to Edit -> Set release

Create Segment ( WE31)
Go to transaction code WE31
Enter the name for your segment type and click on the Create icon
Type the short text
Enter the variable names and data elements
Save it and go back
Go to Edit -> Set Release
Follow steps to create more number of segments

Create Message Type ( WE81)
Go to transaction code WE81
Change the details from Display mode to Change mode
After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter
Click New Entries to create new Message Type
Fill details
Save it and go back

Assign Idoc Type to Message Type ( WE82)
Go to transaction code WE82
Change the details from Display mode to Change mode
After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter.
Click New Entries to create new Message Type.
Fill details
Save it and go back


Assign FM to Idoc Type & Message Type
Go to transaction code WE57
Change the details from Display mode to Change mode
After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter
Click New Entries to create new Message Type
Fill details
Save it and go back

Characteristics of Inbound FM
Go to transaction code BD51
Change the details from Display mode to Change mode
After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter
Click New Entries to create new Message Type
Fill details
Save it and go back

Create Outbound process code ( WE41)
Go to transaction code WE41
Change the details from Display mode to Change mode
After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter.
Click New Entries to create new outbound process code.
Fill details
Save it and go back

Create Inbound process code ( WE42)
Go to transaction code WE42
Change the details from Display mode to Change mode
After selection, the system will give this message “The table is cross-client (see Help for further info)”. Press Enter.
Click New Entries to create new Inbound process code.
Fill details
Save it and go back


Test tool for IDoc Processing
Go to transaction code WE19
Enter the IDoc Number


There are two types of IDOCs

Basic IDOCs
Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.


Extended IDOCs
Extending the functionality by adding more segments to existing Basic IDOCs.

Monday, November 17, 2008

What is the difference between Narrowing cast and Widening cast in ABAP – OOPS?

Narrowing cast means copying an instance of sub class to an instance of super class.

For example: Car is super class and race car is a sub class of car. Race car has all the parameters as car and some more parameters. Think of a scenario were we have an instance of race car, but we don’t need all the parameters of race car, only some basic parameters are required. In this case we will create an instance of car from the race car instance through narrowing cast. So car instance is made with all the basic parameters from race car.

i.e.

race_car instance of class race car is already available.

Data : new_car type ref to car.

new_car ?= race_car. Here “?=” is the syntax for narrowing cast.


Widening cast means copying an instance of super class to an instance of sub class.

This is the exact opposite of narrowing cast. For example: We have an instance of super class car, but we need to create an instance of sub class race car with same parameters and we will add the remaining parameters later. Here we will use the widening cast to create an instance of race car from car with all basic parameters from car. Remaining parameters could be added to race car instance through other methods of race car.

i.e.

car_old instance of class car is already available.

Data : new_racecar type ref to race car.

new_racecar = car_old. Here “=” is the syntax for widening cast.

SAP BI Overview

The SAP Business Intelligence enables Online Analytical Processing (OLAP) to format the information of large amounts of operative and historical data. It is used to create various reports as per organizations need from this data. OLAP technology enables multi-dimensional analyses according to various business perspectives.

What is the difference between OLAP and OLTP?

OLTP (Online Transaction Processing) is the real time processing of data. This is the methodology used in most of the transaction processing in both SAP and non SAP systems. Here data is read from table real time, displayed in transaction and it updates the table back if data is modified in transaction.

In OLAP (Online Analytical Processing) output is given after the analysis of large amount of data. Here data is not directly fetched from the data base, instead the system analysis large amount of historical data and based on that analysis output is given. OLAP tools enable users to analyze different dimensions of multidimensional data residing in different tables. Time, Quantity etc are different dimensions.

Different Components of BI are

Source System

Any system that provides SAP BI with data is called a source system .It could be R/3 system, Another BI system, Flat files or any third party systems.

SAP (R/3) Source System has ABAP Programs named Extractors that enable the SAP (BW) System to extract data from the SAP (R/3) Source System DataSets into the Extract Structure of a DataSource.

Data that logically belongs together is stored in the SAP (R/3) Source System in the form of DataSources. A DataSource contains a number of fields in a flat structure used to transfer data into BI System. A DataSource is an object that, at the request of SAP BI System, makes data available in one of its predetermined structures.

The data from a DataSource in SAP (R/3) Source System is staged in Extract Structures. The Extract Structure contains the amount of fields that are offered by an Extractor in the SAP (R/3) Source System for the data loading process.

The data is transported from the SAP (R/3) Source System to the SAP BI System through Transfer Structure. We have the option of mentioning which all Extract Structure fields are to be transferred to the SAP BI system in Transfer Structure maintenance.
When DataSource is activated in SAP (R/3) Source System from the SAP BI
System, identical Transfer Structure like the one in the SAP (R/3) Source System is created in the SAP BI System.


SAP BI System

The SAP BI System is an enterprise-wide information hub, which analyses data from R/3 and non-R/3 application and present it in an Excel-Based user interface.

All the processes related to data staging and processing in SAP BI system is controlled, monitored and maintained through the tool Administration Workbench. And reporting is done through a tool called Business Explorer (BEx).

Data that logically belongs together is stored in the SAP BI System in the form of
InfoSources. An InfoSource contains a number of InfoObjects which structure the information needed to create InfoCubes / ODS Objects in the SAP (BW) System.
An InfoSource is an object that, at the request of SAP (BW) System, makes data available to the InfoCubes / ODS Objects.

The data from an InfoSource is staged in the Communication Structure in SAP BI System. The Communication Structure displays the structure of the InfoSource. It contains all of theInfoObjects belonging to the InfoSource of the SAP BI System. Data is updated in the InfoCubes from the Communication Structure.

InfoObjects are the basic information providers of BW. They structure the information needed to create InfoCubes/ODS Objects.

Different types of InfoObjects are,

Key Figures: Data part of an InfoObject. They are quantifiable
values. (Eg. Quantity Sold, Revenue)

Characteristics: Objects that are used to calculate and present Key
Figures. (Eg. Sales Office, Customer)

Time Characteristics: Characteristics that are assigned to the dimension of
time. (Eg. Fiscal Year, Period)

Technical Characteristics: Only of structural use within BW.
Units: Units for the Key Figures

Logical collections of data that are based on data models and business rules that are derived from the enterprise model of the SAP (R/3) System. SAP BI Systems store data in InfoAreas which can contain ODS Objects and InfoCubes.

The central objects, upon which reports and analyses in BI are based, are called InfoCubes. An InfoCube is a multidimensional data structure. An InfoCube is a set of relational tables that contains InfoObjects. An InfoCube consists of a Fact Table and a set of n Dimension Tables that define the axes of its multiple dimensions.

An Infocube contains 1 fact table, n dimension tables, n surrogate ID tables, n text tables and n master data tables.

Fact table : Contains the key figures, which are quantifiable values.

Dimension tables : Contain the characteristics that are used to analyse and
report on the key figures.

Sid tables : Specify tables in the SAP (BW) System that contain surrogate
ids. Sid tables link the master and hierarchy tables outside the
dimensions of a star schema.

Text tables : Contain descriptive text that might be time or language
dependent.

Master tables : Contains attributes that are used for presenting and navigating
reports in SAP (BW) System. They can, however, be extended
to include other data. Master tables are also time-dependent and
can be shared by multiple InfoCubes.

A basic Infocube in BI is based on snowflake schema.

Snowflake schema is a logical arrangement of tables in relational database where the entity relationship diagram represents the snowflake shape. Snowflake schema has a centralized fact table connected to multiple dimensions table. Here dimensions are normalized into multiple related tables.

Star schema consists of few fact tables referencing to any number of dimension tables. Here dimensions are denormalized with each dimension being represented by a single table. It is a kind of Snowflake schema.

There are three kinds of Infocubes,

BasicCube : It is the one on which reports and analyses in BI are based.
BasicCubes are supplied with data from one or several InfoSources.

MultiCube : A MultiCube is a superior InfoCube that combines data from several
BasicCubes / RemoteCubes, and brings it together into one context.
The MultiCube itself does not contain any data; its data comes
exclusively from the BasicCubes it is based on.

RemoteCube : A RemoteCube is an InfoCube whose transaction data is not managed
in the BI system but externally. Only the structure of the RemoteCube is defined in BW. The data is read for reporting using a BAPI from another system.

All the components mentioned until is maintained through configuration. In some scenarios we need to write little bit of code to achieve more from the configuration.

Update Rules
The update rules specify how the InfoObjects (Key Figures, Time Characteristics,
Characteristics) are updated in the DataTargets from the Communication Structure of an
InfoSource. You are therefore connecting an InfoSource with an InfoCube/ODS object.

Transfer Rules
In the transfer rules maintenance, you determine whether the communication structure is
filled with fixed values from the transfer structure fields, or using a local conversion routine.

The three types of transfer rules are,

InfoObject: The fields are transferred from the transfer structure and are not modified.
Execute the function Default transfer rules to assign fields of the transfer structure to those of the communication structure.

Constants: An InfoObject is filled by a fixed value. You could, for example, assign the fixed value 01 to the InfoObject 0COUNTRY.

Routine: Conversion routines are ABAP programs that you can create yourself. The routine always refers to just one InfoObject of the transfer structure. Data is transferred 1:1 from the Transfer Structure of the SAP (R/3) Source System into the Transfer Structure of the SAP BI System, and is then transferred into the SAP BI
System Communication Structure using the Transfer Rules

Monday, November 10, 2008

Difference between Netweaver Mobile 7.1 and previous versions

SAP NetWeaver Mobile is an open integration and application platform offered by SAP NetWeaver to integrate business applications on mobile devices. Netweaver Mobile gives you the option to use standard business solutions provided by SAP and customer-specific development which can be optimized for user roles and target devices. It also provides the option of runtime monitoring of synchronization activity of the mobile devices and data flow to ensure optimal performance.

The main difference between Netweaver Mobile 7.1 and its previous versions is the Data Orchestration Engine (DOE), which is the equivalent to the Middleware server in previous versions. In previous versions mobile applications are defined as MCDs (Mobile Component Descriptor) in middleware server. MCDs were built from syncbos. The DOE comprises of a Data Orchestration Engine Workbench for defining data objects and mapping the data flow and distribution between the mobile device and the back end. The DOE also contains SAP Mobile Administrator as previous versions for monitoring the data flow at runtime through system messaging. But in Netweaver Mobile 7.1 Mobile Administrator is running from the ABAP stack of DOE through Webdynpro ABAP application. In the earlier versions Mobile Administrator ran from the J2EE engine of middleware server through Webdynpro JAVA application.

Another significant difference is in the development of client applications. In previous versions client applications were developed from JSP (Java Server Pages) or AWT (Abstract Window Toolkit) using the MVC (Model View Controller) methodology in NWDS (Netweaver developer studio). This involved lot of coding as all the code was user written from scratch. In Netweaver Mobile 7.1 client applications are developed using Webdynpro JAVA in NWDS. Webdynpro Java uses SAP’s strong webdynpro frame work where almost 80% of the code is automatically generated by the Graphical Meta model toolset and only remaining is user written. This significantly improves the time required for developing client application and makes it easy. Netweaver Mobile 7.1 provides two plug-in for NWDS, so that Webdynpro JAVA application for laptops with higher foot print and Webdynpro JAVA application for PDA with much smaller foot print can be developed in NWDS.

Netweaver Mobile 7.1 provides additional security options like more roles for client authorization and logging of client-side incidents in DOE also, so that the server can keep track of all the security related activities.

SAP’s Enterprise SOA

Enterprise SOA
Enterprise SOA is a conceptual architecture for SAP business applications and their development, which is based on Enterprise Services. Its foundation is similar to SAP Netweaver, which has various tools to support Enterprise SOA and Enterprise Service development.

Enterprise Services
Enterprise services are almost same as Web services. Like web services it forms the independent building block. It can be incorporated into a new or existing business process regardless of their implementation or the underlying applications or software components. Like Web services it has separate service interfaces and service implementations that confirm to Web services standards.

The difference between Enterprise services and Web services are
Enterprise services have high granularity and aggregate reusable elements with specific business value
Enterprise services support the execution of specific business tasks, such as the automatic execution of enterprise business scenarios
Enterprise services are optimized for the effective development of business processes and composite applications.
Enterprise services uses Global data types to simplify data exchange. Global data types which are defined in the Enterprise Service Repository establish globally available definitions of individual data elements. This guarantees that data sent by one enterprise service will be understood by another enterprise service because a single centrally stored definition is used by all.


SOA based environment contains loosely coupled and interoperable application services based on web services standard that operates independently of underlying platform and programming language. Individual software components may be developed in different programming languages. In this industrial standards like WSDL will define the way in which a service is accessed. And there is a strict separation between service implementation and its public interface.

In SAP, ESOA allows to integrate the functionality of both SAP and non-SAP solutions as services. These solutions could be running in SAP Netweaver platform or traditional R/3. SAP Netweaver provides an Enterprise Service Repository which has all the basic elements to build services like business objects, enterprise services and process components. These building blocks can be used to create industry specific functionality. SAP also provides enterprise services for the SAP business suite and users have the option to create custom enterprise service for same. All these components of enterprise SOA are centrally stored in Enterprise Service Repository.

Saturday, November 8, 2008

How to create a three level tree node in Webdynpro ABAP

The purpose of this example is to create a three level tree node in Webdynpro ABAP. First level will be all distinct Carrier ids. Under carrier id there will be Connection id as second level. And under Connection id there will be Plane types as third level.

1. Create a Webdynpro component with one view








2. Create a Node FLIGHT with cardinality 1:1. Create sub node CARRID_NODE within FLIGHT, sub node CONNID_NODE within CARRID_NODE and sub node PLANETYPE_NODE within CONNID_NODE. All the sub nodes should be non singleton and should have cardinality 0:n. Create attribute CARRID type SFLIGHT-CARRID, CONNID type SFLIGHT-CONNID and PLANETYPE type SFLIGHT-PLANETYPE within CARRID_NODE, CONNID_NODE and PLANETYPE_NODE respectively.












3. Create a Tree UI element in the layout of View. Create two Tree Node Types CARRID and CONNID. And create a Tree Node Item PLANETYPE.





4. Bind the property DATA SOURCE of Tree UI element with FLIGHT Node.











5. Bind CARRID_NODE node to property DATA SOURCE of CARRID Tree Node Type. And bind CARRID attribute within CARRID_NODE to property TEXT.










6. Similarly bind CONNID_NODE node to property DATA SOURCE of CONNID Tree Node Type. And bind CONNID attribute within CONNID_NODE to property TEXT. And PLANETYPE_NODE node to property DATA SOURCE of PLANETYPE Tree Node Item. And bind PLANETYPE attribute within PLANETYPE _NODE to property TEXT.


7. Create supply functions FILL_CARRID, FILL_CONNID and FILL_PLANETYPE for the nodes CARRID_NODE, CONNID_NODE and PLANETYPE_NODE respectively.














8. In the FILL_CARRID method write the following code,
types : begin of ty_carrid,
carrid type sflight-carrid,
end of ty_carrid.

data : lt_carrid type table of ty_carrid.

select distinct carrid
into table lt_carrid
from sflight.

node->bind_table( lt_carrid ).

Select all the distinct CARRID values from SFLIGHT and pass it to the NODE.


9. In the FILL_CONNID method write the following code
types : begin of ty_connid,
connid type sflight-connid,
end of ty_connid.

data : lt_connid type table of ty_connid,
lv_carrid type sflight-carrid.

parent_element->get_attribute(
exporting
NAME = 'CARRID'
importing
VALUE = lv_carrid ).

select distinct connid
into table lt_connid
from sflight
where carrid = lv_carrid.
node->bind_table( lt_connid ).

Get the selected CARRID by the user, for that get all distinct CONNID
from SFLIGHT and pass it to the node.


10. In the FILL_PLANETYPE method write the following code
Types : types : begin of ty_planetype,
planetype type sflight-planetype,
end of ty_planetype.

data : lt_planetype type table of ty_planetype,
lv_connid type sflight-connid.

parent_element->get_attribute(
exporting
NAME = 'CONNID'
importing
VALUE = lv_connid ).

select distinct planetype
into table lt_planetype
from sflight
where connid = lv_connid.

node->bind_table( lt_planetype ).

Get the selected CONNID by the user, for that get all distinct PLANETYPE
from SFLIGHT and pass it to the node.

11. Add the view to the window, create an Application and activate the
entire component. Now Test the application.

12. The output you get will be like this. Under the root node Flights, first level will be all distinct Carrier ids. Under carrier id you will have distinct Connection id for that Carrier id. And under Connection id you will have distinct Plane types for that Connection id.


EP Certification Preparation Questions

1. What type of permission does the portal server needs to access to
its Portal ContentDirectory (PCD) file system?
a. read/write
b. read
c. write
d. read/write/execute

2. Which of the following is a prerequisite to enable Drag&Relate and
Single Sign-On?
a. Retrieval and Classification (TREX)
b. Java Server Pages
c. Enterprise Portal Plug-In (WP-PI)
d. SAP Unification Server

3. What are the two types of nodes that the J2EE Engine cluster
consists of?
a. dispatchers
b. clients
c. gateway
d. servers

4. What is the first step in SSO CONFIGURATION?
a. Configure logon ticket issuer
b. Configure logon ticket accepter
c. Mention all systems involved.

5. Which of the following is a middleware component that enables the
development ofSAP-compatible components and applications in
Java?
a. SAP JCo
b. SDM
c. J2EE Engine
d. SAP Web AS

6. Which component of the Enterprise Portal provides authentication of
portal usersagainst user repository ?
a. Portal server
b. User management
c. Portal LDAP directory server
d. Corporate LDAP directoryserver

7. Which technology relate business data across applications and/or
databases forwhich you have installed a unifier on your Unification
Server?
a. Drag&Relate
b. iView
c. Drag&Drop
d. Unifiers

8. What are the two variants in Enterprise Portal SSO mechanism available on security requirements and the supported external
applications?
a. SSO with SAP logon tickets
b. SSO with user ID and password
c. SSO with Digital Certificates
d. SSO with LDAP server

9. What is the TCP/IP port number that the lock server use to identify
the specific process request coming from each middleware client?
a. 3299
b. 1080
c. 80
d. 443

10. What type of request the client sends to the Unification Server through HTTP when you perform a Drag Relate action in the front end?
a. SSL
b. TCP
c. HRNP
d. UDP
e. HSRP

SOA Certification Preparation Questions

1. What an sap system consist of (choose one)
a. one database and multiple application server instances
b. abap, java application server, dispatcher, message server
c. R/3, ITS, message server, dispatcher

2. Which standard role given with EP is used for analysis and reporting by manager
a. role for users
b. role for managers
c. role for BI
3. Which of the following are done in integration repository?
a. message mapping
b. interfance mapping
c. communication channels,
d. reciver channels
4. Which customer will use SAP extensions
a. customer with large footprint of their business aleady in SAP
b. customer who want to implement accelerated SAP
c. customer who want to upgrade to newer version of SAP

5. How to define the granularity of service?
a. Goals, objectives, drivers and measures
b. budget and timeline for EA
c. granularity of the corresponding enterprise service in SAP

6. To create and manage master data for Catalog which of the below MDM scenario u will
use?
a. Master data harmonization
b. Rich-Product content scenario
c. Data consolidation

7 . In Data modeling process there are some data types used. Which of the below are
examples of data types?
a. Customer address, customer segment
b. one-to-one, one-to-many, many-to-many
c. Master data, transaction data, aggregated managed data
d. Target Data Architecture; Baseline Data architecture ; Data Architecture governance

8. Which of the below Role is not provided in Enterprise Portal?
a. Administrator for User management
b. Administrator of System management
c. Administrator of Content Management
d. Administrator of Java Runtime Environment

9. MI application wont work on following devices?
a. PDA,
b. smart phones
c. Personal Digital administrator

10. Which of the following iView does not exist?
a. BSP
b. BPM
c. Transaction

Model View Controller - MVC

MVC - Model-View-Controller - is a design pattern for the architecture of web applications. It is a widely adopted pattern, across many languages and implementation frameworks, whose purpose is to achieve a clean separation between three components of most any web application:
(Model View Controller) an Architecture for building applications that separate the data (model) from the user interface (view) and the processing (controller). Providing a programming interface between the data and the processing has been a primary concept in information technology for decades. MVC is widely used in Web-based application frameworks. The clear separation between the Model, View and Controller helps the maintenance of existing applications, as we can change any component without affecting other two as the three are independent. This architecture helps in reusing existing components for make new applications.
In practice, MVC views and controllers are often combined into a single object because they are closely related. For example, the controller code validates a request for data and causes it to be returned in a view. View-controller objects are tied to only one model; however, a model can have many view-controller objects associated with it.

Model: business logic & processing
View: user interface (UI)
Controller: navigation & input

Webdynpro for JAVA

WebDynpro Frame work helps to create applications using declarative programming techniques based on the Model View Controller (MVC) design paradigm. That is, you specify what user interface elements you wish to have on the client, and where those elements will get their data from. All the code to create the user interface is then generated automatically within a standard runtime framework. This relieves you from the repetitive coding tasks involved in writing HTML and then making it interactive with JavaScript.


The WebDynpro technology provides a development and runtime environment for Web applications and enhances classical Web development to build easily adaptable user interfaces. SAP's Web Dyn-pro technology closes significant gaps between typical Web development tools and the needs of cost-effective, responsive, easy-to-use, maintainable, and professional browser-based user interfaces for business solutions. WebDynpro uses design principles similar to SAP's Dynpro technology, but it is a completely new technology geared exclusively towards Web applications. Its main features include the following:
• Usability
• Abstract modelling
• Personalization and customization
• Separation of presentation layers and business logic
• Generic services
• Portability

WebDynpro applications run in the SAP Enterprise Portal.
The main aims are to avoid coding as far as possible and achieve independence from the back-end platform and front-end technology. Web Dynpro delivers a declarative metamodel to develop user interfaces while writing less programming code. Web Dynpro uses this abstract definition to create a ready-to-run Web application for runtime platforms.
Additionally, WebDynpro has a graphical toolset and an embedded IDE (Integrated Development Environment) that help developers to create the Web Dynpro metadata. Since Web Dynpro is a declarative programming toolset, it handles all the mundane aspects of pro-gramming the UI for you. So you can shift your attention away from the specific details of coding the user interface and onto the flow of data through the business process itself.
For instance, if you want a list of suppliers for a particular product displayed in a dropdown list, you just declare a dropdown list and specify where that UI element will get its data from in a data storage area known as the context. To populate the context you have to write some coding but Web Dynpro will generate the coding for the UI and data transport for you.
The only code you have to write is the implementation of those actions that cannot be described in a declarative manner. Such actions would include silently logging on to an SAP system, executing a BAPI call or implementing an action listener event.

What is the difference between Webdynpro and BSP?
BSP (Business Server Pages) is for creating simple web applications using ABAP, HTML and JavaScript. BSP applications are more flexible as we can do lot of client side activities using JavaScript. Where as Webdynpro is used to create Web applications with strict screen guidelines. It is used to create Web transactions with almost similar UI guidelines as SAP GUI transactions. Webdynpro cannot be used to make flexible applications as the webdynpro Framework follows the strict UI guidelines.
From a developer’s point of view, one of the most fun-damental differences is this: In other web development tools, such as BSP or Java Server Pages for in-stance, the unit of development is the web page, and your application consists of a set of connected pages that together, supply the required business functionality.
Not so with Web Dynpro! In the Web Dynpro world, the unit of development is the “component”. A component is a set of related JAVA Classes that together, form a reusable unit of business function-ality.
A component however, can have multiple views. A view is also a set of ABAP Classes that function as a subordinate unit within a component. A view cannot exist outside the scope of its parent compo-nent, but a component could have many views.

The different parts of a Webdynpro Component are,
WebDynpro Component
A component is the unit of a project that contains actual functionality, and if written carefully, can ei-ther be reused by other projects or within other components of the same project.
Web Dynpro has two types of controller:
• View controllers
• Custom controllers: component controller is a type of custom controller.
Component Controller
The component controller is the main controller for the entire component and never has a visual inter-face. This controller is the main repository for the entire component’s data and is the heart of the component's processing logic. Different subsets of the data held within the component controller can be supplied to view controllers for visualization or custom controllers for some specific processing task.
Custom Controller
A custom controller is a special type of controller of a Web Dynpro application, which the Web Dynpro application developer can create explicitly if required. Like all other controller types, the custom controller contains a context class, which is automatically generated when the custom controller is defined. Furthermore, the custom controller contains imported packages and methods that are then relevant to all classes in a Web Dynpro application. The custom controller is also the part of an application that implements the event handlers and validators that react to actions.
Model
A model is any layer of code that encapsulates some business functionality external to the Web Dyn-pro environment. A model provides access to functionality such as BAPI calls or Web services, and can be implemented as a set of proxy objects or Enterprise Java Beans and so on. You create mod-els at project level and each component in the project uses them as needed.
Component Interface
The Web Dynpro component interface consists of two parts: a visual one and a programmatic one, and defines the set of publicly accessible entry points to the component.
You can implement coding to validate user parameters received in the component interface controller.
Underneath the component interface is a controller. The methods and attributes of this controller provide the only publicly accessible entry point into the component. The methods and attributes of all the other controllers making up this component are completely encapsulated, and so invisible to the outside world.
If the functionality of your component is embedded in another Web Dynpro component, the parent component only has access to those methods declared in the interface controller.
The interface controller will, by default, have a view automatically defined. This is because compo-nents usually have a graphical user interface. The implementation of the interface view does not normally require any work beyond simply declaring the existence of the component. Unless you say otherwise, whatever view you first embed into the component’s window will become the default com-ponent interface view.
All controllers can have defined entry and exit points known as plugs. Plugs are the standard entry and exit points to and from all controllers. This means that when the Web Dynpro runtime environ- ment invokes a controller for the very first time, a special inbound plug must be present that acts as the standard entry point. This plug must be of type startup, and is normally called Default.
You may change the name of plug Default if you wish, but if you change its type to something other than startup, then when the Web Dynpro runtime fires the event to start the application, an unhan-dled event exception occurs.
Since you have a standalone component that does not embed any other components, and is not em-bedded in another component, you can ignore the interface controller.
Default Window
The default window is usually needed since almost all components have some sort of visual interface. However, if you are creating a faceless component, the default window will still be present, but just unimplemented.
Window
Whenever you create a component, a window is automatically created for that component. Normally, this window will have at least one view embedded within it, and becomes the default interface with which the user interacts. However, you can create what is known as a faceless component, that is, a component that has no user interaction. Such faceless components will only work in combination with normal components that contain views, since the whole point of the Web Dynpro toolset is to provide a browser-based user interface to business functionality.
View
A view is the visual component inside a window with which a user interacts. To be visible a compo-nent, it must have at least one view. A window can have multiple views arranged in different layouts, for example grid-, flow- or matrix layout, or even have views nested within views.
Application
An application defines an entry point into a Web Dynpro component. Components, in themselves, cannot be accessed directly by the client software. Instead, they must be accessed via an applica-tion. The application associates a URL with a standard entry point in the component interface known as a plug. There is a one-to-one relationship between an application and a component entry point. Therefore, if you wish to give your component multiple entry points, you must define multiple applica-tions.
What is a Context?
All controllers, whether view controllers, custom controllers or component controllers, have a dynamic data storage area known as a context. The context consists of a basic static structure, to which you can add both data and metadata at runtime. The actual context structure obtained at runtime is de-pendent upon the declarations you make at design time.
The context holds both metadata and actual data. However, the context is not a passive data storage area; rather it is a highly dynamic, hierarchical data storage class whose metadata is defined at de-sign time, but whose actual contents (and possibly even extra metadata) are not known until runtime.3
You can think of the context as the central, dynamic class that supplies a controller with both the ac-tual data upon which it acts, and the metadata to describe that data.
Context Structure
The context is a hierarchy consisting of two basic types of entity – nodes and attributes. The only difference between the two is that a node may have children, and an attribute may not.
Nodes and attributes that have the context root node as their immediate parent are referred to as independent. Nodes and attributes that have some other node as their parent are referred to as de-pendent.
The difference between independent and dependent nodes does not feature in this example. But in complex situations where a child component must map one of its context nodes to a node living in a parent component, the difference becomes significant.

Cardinality
Cardinality represents the number of elements a node has at the start of the application and maximum number of elements it could have. It has two parts, Mandatory and Maximum. Mandatory represents the number of elements a node has at the start of the application and Maximum represents the maximum number of elements it could have during its life time.

Cardinality
Meaning
1:1
The node contains only one element instance; this instance is instantiated automatically.
0:1
The node contains only one element instance; this instance must not be instantiated.
1:n
The node can contain multiple element instances of which at least one must always be instantiated (and is instantiated automatically).
0:n
The node can contain multiple element instances of which none have to be instantiated.
What are the Standard Hook Methods For?
When a controller class is created, there are certain standard hook methods that are always present irrespective of whether or not you implement them.
The methods WDDOINIT and WDDOEXIT are always present in all controllers and serve the fol-lowing purposes.
• The method WDDOINIT is called immediately after the controller has been instantiated. Preparatory work should be performed in this method.
• The method WDDOEXIT is called immediately before the controller is garbage collected. You should write code to perform clean up tasks in this method.
What are Singleton and Non-Singleton Nodes?
In general, dependent nodes are represented by a single node instance, whose content – that is, its node collection - changes each time the lead selection of the parent node changes. Such context nodes are known as single nodes. The existence of a single node instance considerably reduces the resources that are required at runtime. This improves the performance of the application significantly. However, the use of singleton nodes also results in programming restrictions. This means that the user can only access data of the child nodes that belong to the code element (lead selection) currently selected in the parent node. Consequently, you cannot read - for example - the address fields of a business partner X if business partner Y is currently selected. Each modification of the parent node lead selection causes a data modification of the singleton child node.
Therefore, Web Dynpro allows you to define additional non-singleton nodes. Each non-singleton node has one node instance for each node element of the parent collection at runtime. The advantage is that each instance can be accessed directly. When using non-singleton nodes, the nodes are only created when the node values are retrieved. This can save resources that otherwise would slow down the performance of the application.

Supply Function is used to populate the values in a node on demand. The supply function is called by the runtime when the data of the context node is used. This is the case when a UI element is to be displayed for the first time with the data of the corresponding context.

Difference between Webdynpro ABAP and Webdynpro JAVA

Webdynpro for ABAP and Webdynpro JAVA use the same declarative metamodel concept based on MVC pattern to create web applications. Everything about Webdynpro ABAP is same as Webdynpro JAVA, except that it uses ABAP as programming language instead of JAVA. It also has a graphical interface tool that is integrated with the ABAP Workbench (Transaction Se80). Both Webdynpro ABAP and Webdynpro JAVA applications are run in the Enterprise Portal.

What is the difference between Webdynpro JAVA and Webdynpro ABAP?

The main difference between Webdynpro JAVA and Webdynpro ABAP is that Model doesn’t have much significance in Webdynpro ABAP. In fact there is no option for model available in the Graphical tool set to develop Webdynpro ABAP application. But we still have the option of defining an ABAP class which helps to read data and save data back to table. The instance of this class should be used as model within the component and this is the proper design. Webdynpro ABAP gives new option called Service Call. In Service Call a wizard creates a custom controller based on the BAPI or Web Service that we give. Context of this controller will be generated based on the import – export parameters of BAPI or Web Service. The wizard will also automatically create methods in the controller to execute the BAPI or Web service and pass the data to Context. This Custom controller can be used within other controllers to read and update data.

Other main difference in Webdynpro ABAP is that code is stored centrally in the ABAP server, so it relieves the load from developer’s client machine where code is stored in the case of Webdynpro JAVA. Webdynpro ABAP has much more powerful Version control system than Webdynpro JAVA as the code is stored centrally in the server. In webdynpro JAVA as each developer is checking out and checking in the code, there are chances of conflicts. Webdynpro ABAP uses the same Transport Management system as R/3, so there is no need to maintain parallel Transport Management system which is the case in Webdynpro JAVA. Webdynpro JAVA runs on sun’s proven web server (J2EE engine) which can support large number of web users at a time. But the ABAP server is yet to prove its credential as a reliable Web Server. So if the number of users are large, its better to go for Webdynpro JAVA and if the number is medium or manageable, you can go for Webdynpro for ABAP. Performance and scalability should be the major criteria while choosing between Webdynpro JAVA and Webdynpro ABAP.

Internet Transaction Server - ITS

The Internet Transaction Server (ITS) extends the client/server architecture of the R/3 System to the Internet.ITS is a gateway between one or more Web servers and one or more R/3 application servers.
All requests and responses that pass between a Web browser client and an R/3 server are managed by the ITS, which consists of 2 main gateway components:
Web server gateway (WGate)
Application server gateway (AGate)
WGate
WGate receives requests from the Web browser via the Web server and forwards them to AGate via a TCP/IP connection. WGate always resides on the same machine as the Web server. WGate is a Web server extension that shields AGate from differences in the various Web server APIs used. WGate connects a ‘stateless’ Web server, which communicates with Web browsers via single request/response cycles, to a ‘stateful’ R/3 System where business transactions depend on internal status.
When an Internet or intranet user starts an application from a Web browser and triggers an R/3 transaction, function module or report via the ITS, a server process must be running throughout the user session (possibly longer) in order to maintain the user’s context in R/3. Although communication between the Web browser and the Web server is based on single request/response cycles, WGate must be able to transfer the browser request to a permanently running server process. This is the role of the AGate component.
AGate
AGate is the core processing component of the ITS.AGate receives Web browser requests from WGate and communicates with the R/3 application server via the DIAG protocol or the RFC protocol.AGate is effectively responsible for managing all sessions, services and users, as well as for generating the HTML documents that are sent back to the Web browser client.
When a connection has been established, AGate processes the requests and sends all relevant details (including logon information) to the R/3 System, which either starts the first dialog step of a new transaction or submits further data for the next dialog step of a transaction already started. When a dialog step has finished, AGate retrieves the results from R/3, processes them and sends the response back to WGate.

ABAP Function Modules

Function modules are ABAP routines that are stored in a central function library. They are available throughout the system for all applications. Function Modules are first assigned to a function pool called Function Group. Function Group acts as a container for Function Modules.

Some standard Function Modules provided by SAP are,

UPLOAD upload a file to the presentation server (PC)

UPLOAD_FILES Will load one or more files from app or presentation server

WEEK_GET_FIRST_DAY For a given week (YYYYMM format), this function returns
the date of the Monday of that week.

WRITE_LIST Useful for writing out the list contents that result from the function
LIST_FROM_MEMORY.

WS_DOWNLOAD Save Internal Table as File on the Presentation Server

WS_EXCEL Start EXCEL on the PC

WS_EXECUTE execute a program on a windows PC

WS_FILE_DELETE Delete File at the Frontend

WS_FILENAME_GET Call File Selector

WS_MSG Create a dialog box in which you display an one line message

WS_UPLOAD Load Files from the Presentation Server to Internal ABAP Tables

WS_VOLUME_GET Get the label from a frontend device.

WWW_LIST_TO_HTML After running a report, call this function to convert the list
output to HTML.

POPUP_TO_CONFIRM_LOSS_OF_DATA Create a dialog box in which you
make a question whether the user
wishes to perform a processing step
with loss of data.

POPUP_TO_CONFIRM_STEP Create a dialog box in which you make a question
whether the user wishes to perform the step.

POPUP_TO_CONFIRM_WITH_MESSAGE Create a dialog box in which you
inform the user about a specific
decision point during an action.

POPUP_TO_CONFIRM_WITH_VALUE Create a dialog box in which you make a
question whether the user wishes to
perform a processing step with a particular
object.

POPUP_TO_DECIDE Provide user with several choices as radio buttons

POPUP_TO_DECIDE_WITH_MESSAGE Create a dialog box in which you inform the
user about a specific decision point via a
diagnosis text.

POPUP_TO_DISPLAY_TEXT Create a dialog box in which you display a two line message

POPUP_TO_SELECT_MONTH Popup to choose a month

POPUP_WITH_TABLE_DISPLAY Provide a display of a table for user to select one,
with the value of the table line returned when
selected.

MONTH_NAMES_GET It returns all the month and names in respective language.

MONTH_PLUS_DETERMINE Add or subtract months from a date. To subtract a
month, enter a negative value for the 'months'
parameter.

CONVERT_TO_FOREIGN_CURRENCY Convert local currency to foreign currency.

CONVERT_TO_LOCAL_CURRENCY Convert from foreign currency to local
currency

DATE_CHECK_PLAUSIBILITY Check to see if a date is in a valid format for SAP.
Works well when validating dates being passed in
from other systems.

DATE_COMPUTE_DAY Returns a number indicating what day of the week the date
falls on. Monday is returned as a 1, Tuesday as 2, etc.

DATE_GET_WEEK will return the week that a date is in.

DATE_IN_FUTURE Calculate a date N days in the future.

DAY_ATTRIBUTES_GET Return useful information about a day. Will tell you the day
of the week as a word (Tuesday), the day of the week (2
would be Tuedsay), whether the day is a holiday, and
more.(provided by Francois Henrotte)

ENQUE_SLEEP Wait a specified period of time before continuing
processing.

ENQUEUE_ESFUNCTION Lock an abap program so that it cannot be executed.

CHANGEDOCUMENT_OPEN Open change document for edit

CHANGEDOCUMENT_SINGLE_CASE Add change document records

CHANGEDOCUMENT_CLOSE Close change document after edit.

CHANGEDOCUMENT_READ_HEADERS Read Change Document records back

Wednesday, November 5, 2008

SAP Webdynpro ABAP Interview questions

1. What is the difference between narrowing cast and widening cast?
If we copy an instance of sub class to super class its called narrowing cast and the vise versa of it is widening cast.
2. Is model used in Webdynpro ABAP?
The webdynpro ABAP Graphical tool set doesn’t give any option to create model. We can define a class in transaction SE24 and the instance of that class can be used as model within the Wedbynpro code.
3. What are the different ways of getting data from a table and pass it to Webdynpro context node?
a. select the data to an internal table and pass it to the node using bind table method
b. use a model class instance to get data
c. use the service call option provided by webdynpro framework
4. What is the Service call option in Webdynpro ABAP?
Webdynpro ABAP Graphical toolset gives a wizard which automatically generates the code for calling a BAPI or Web service. This wizard will create a custom controller which has context nodes or attributes similar to the parameters of BAPI and a method which calls the bapi and pass the value to the context. We only need to use this custom controller within another controller, map the context and call the method.
5. What is an Application?
An application forms as the link between a component and URL.
6. What is a faceless component?
Faceless components are webdynpro components without window or view
7. In case of a component used within a component, how does parent component communicate to child component?
Parent component communicate with the child component through Interface controller and Interface view of the child component.
8. Interface View of a component has 1:1 relationship with ..?
The window of the component
9. What are actions in a view controller?
The methods that can be linked to the UI elements of a view are called actions.
10. What is role of plugs in views?
Plugs in views help the navigation between views. Navigation happens through the link created between outbound plug of a view to the inbound plug of next view.

SAP Webdynpro JAVA Interview questions

1. Webdynpro framework is based on which design pattern?
MVC design pattern.
2. What is a component?
A component is the unit of project which contains the actual functionality and it can be reused
3. What is a model?
A model is any layer of code that encapsulates some business functionality external to the
Web Dyn-pro environment.
4. What is the difference between component controller and view controller?
Component controller is the main controller of the entire component and it’s a global controller. View controller is the controller associated with a view.
5. Which all are the global controllers
Component controller and custom controller
6. What does the component interface contains?
The Web Dynpro component interface consists of two parts: a visual one and a programmatic one, and defines the set of publicly accessible entry points to the component. Visual part is interface view which corresponds to a window in component and the programmatic part is Interface controller.
7. What is a context?
All controllers, whether view controllers, custom controllers or component controllers, have a dynamic data storage area known as a context. Context contains nodes and attributes where data is stored
8. What is cardinality of a node?
Cardinality represents the number of elements a node has at the start of the application and maximum number of elements it could have during its life time
9. What is a singleton node?
Singleton nodes are represented by a single node instance, whose content – that is, its node collection - changes each time the lead selection of the parent node changes.
10. What is the purpose of supply function in a node?
Supply Function is used to populate the values in a node on demand. The supply function is called by the runtime when the data of the context node is used. This is the case when a UI element is to be displayed for the first time with the data of the corresponding context

SAP MI Interview questions

1. What is a syncbo?
A Sync Bo is a business object that has some public and private attributes as well as some private methods. The public attributes correspond to the fields visible to client devices, and they are used for synchronization. The private attributes are not visible to client devices but the SyncBO uses the default values assigned to the attributes to call the private methods internally. The private methods correspond to the BAPI wrappers that typically call publicly available BAPIs. The parameter values for BAPI wrapper call are decided based on both public and private attribute values.
2. What is the software pre-requisite for configuring a MI server?
MI server can be configured in a WAS 6.40 server or above having both J2EE and ABAP instance.
3. Types of synchronizations supported by MI in offline mode are
a. Generic synchronization
b. Smart synchronization

4. Which all types of syncbo are provided by SAP?
a. Upload (U01)
b. Timed 2-Way (T01)
c. Backend-Driven (T51)
d. 2-Way (S01)
5. The five Bapi wrappers used in a syncbo creation are
a. Get list
b. Get detail
c. Create
d. Modify
e. Delete
6. How does my client communicate with MI server?
Using HTTP or Https
7. Does MI support usage of Web Services
Yes
8. Which all can be used a persistence layer in MI client
Max DB and DB2e
9. Which tool is used to develop MI client application?
MDK integrated with NWDS
10. MI client application can be developed using which all technologies?
JSP and AWT for offline mode. Mobile Webdynpro and simple JSP applications for online mode.

JAVA with SAP Netweaver Certification preparation questions

Webdynpro JAVA

1) Which all are global controllers in Webdynpro
a) Custom controller
b) Component controller
c) View Controller
d) All of the above

Ans: a and b

2) Is it mandatory for a component to have a window
a) Yes
b) No

Ans: b

3) The business functionality external to the webdynpro enviornment is encapsulated within
a) Component controller
b) Custom controller
c) Model

Ans: c

4) Which is the cardinality of a node which is bind to a table
a) 0:0
b) 0:1
c) 0:n
d) 1:n

Ans: c and d

5) What acts as the link between Component and a URL
a) View
b) Window
c) Component controller
d) Application

Ans: d

6) Which of the below acts as a collection of views
a) Window
b) Model
c) View itself

Ans: a

7) Which is the smallest unit of a product that can be delivered to the customer?
a) Software Component
b) Development Component
c) Project

Ans: a

8) Which is not a hook method in view controller
a) wddoinit0
b) wddomodifyview()
c) wddoexit()
d) wddopostprocessing()

Ans: d

9) Context is a …
a) place to store hook methods
b) place to store all methods
c) dynamic data storage area
d) link between view and window

Ans: c

10) Supply function contains…
a) method to populate node with values on demand
b) method to clear node
c) method to pass values from node to UI element

Ans: a

ABAP with SAP Netweaver Certification preparation questions

Webdynpro ABAP
Narrowing cast in ABAP is....
a) copying sub class object to super class object
b) copying super class object to sub class object
c) copying from one instance of a class to another
Ans: a
2) Webdynpro ABAP development tool is integrated in the ABAP transaction
a) WD_DEVELOP
b) SE38
c) SE80
d) SE24
Ans: SE80
3) Service call will generate a new___________ for accessing data from a BAPI
a) Component
b) View
c) Custom Controller
Ans: c
4) Which all are global controllers in Webdynpro
a) Custom controller
b) Component controller
c) View Controller
d) All of the above

Ans: a and b

5) Is it mandatory for a component to have a window
a) Yes
b) No

Ans: b

6) Which is the cardinality of a node which is bind to a table?
a) 0:0
b) 0:1
c) 0:n
d) 1:n

Ans: c and d

7) What acts as the link between Component and a URL
a) View
b) Window
c) Component controller
d) Application

Ans: d

8) Which of the below acts as a collection of views
a) Window
b) Model
c) View itself

Ans: a

9) Context is a …
a) place to store hook methods
b) place to store all methods
c) dynamic data storage area
d) link between view and window

Ans: c

10) Supply function contains….
a) method to populate node with values on demand
b) method to clear node
c) method to pass values from node to UI element

Ans: a

SAP MI Certification Preparation questions

SAP Mobile Infrastructure runs in a) J2EE engine alone b) ABAP server alone c) J2EE engine + ABAP server d) Either of a or b Ans: c
2. SAP Mobile Infrastructure can be configured in
a) WAS 6.20 and above
b) WAS 6.40 and above
c) WAS 7.0 and above
d) All the three answers are right
Ans : b

3. Mobile Client and Server can communicate with each other using
a) HTTP
b) HTTPS
c) HTTP and HTTPS
d) None of the above
Ans : c
4. A Name not given to BAPI Wrapper while creation of the SyncBo is
a) Update
b) Modify
c) Getlist
d) Getdetails
Ans: a

5. Two way driven Syncbo is known as
a) U01
b) T01
c) S01
d) T51
Ans: c
6. Syncbo messages are processed
a) synchronously
b) asynchronously
c) synchronously and asynchronously
d) none of the above
Ans : c

7. Inbound and outbound worklists of syncbo can be monitored using transaction
a) MEREP_SBUILDER
b) MEREP_LOG
c) MEREP_MIG
d) MEREP_MON
Ans : d

8. In the case of offline applications. The front end application can be developed using
a) JSP
b) AWT
c) Both of the above
d) None of the above
Ans : c
9. Syncbos are used for which synchronization scenario
a) Generic sync
b) Smart sync
c) Common sync
d) Online application
Ans : b
10. In Generic Synchronization, MI Sync servlet in the J2EE engine makes a JCO call to ABAP server for Function Module
a) WAF_MY_SYNC
b) MEREP_GETLIST
c) MEREP_MODIFY
d) None of the above
Ans: a

SAP Certification Guide

SAP Certification is rated very high in the business world. It is a well known fact that those who hold SAP certification has attained their skill set through hard work and direct experience. In job market SAP certification has good recognition. Consultants with SAP certification are given the first preference over others. The skill pool of an organization is also measured with the number of certified consultants it has. Regardless of whether you are an SAP partner, customer, or user, SAP certification can give you a distinct competitive advantage.

SAP Career Guide

Right now SAP skill set (Both Technical and Functional) are in good demand in market. For fresher who are aspiring a career in the IT sector, it’s advisable to choose the SAP path which gives them ample opportunity to take technical side or Functional side. Even if some body has began their career in the technical side SAP gives them amble opportunity to move towards the functional side as both are very well coupled.

People who technical skill in JAVA and .NET can easily move to SAP technical side as the Netweaver platform is extensively using these technologies. People with good Industrial experience can easily move to SAP Functional side as they will be able to easily relate the business process and SAP transactions and easily adapt to the corresponding Module. It is always advisable for such people to select the corresponding module of their industrial experience than studying a new one. People with good experience in reporting or any of the data ware house tool can easily adapt to the BI tool provided by SAP. Functional experience with BI skill set has very good demand in the SAP market.

ABAP Transactions

ABAP Transactions are a combination of alphabetical and numerical characters forming a code for a business task.. All the technical configurations and developments are also done with the help of ABAP transactions.
List of ABAP transactions
LSMW Legacy System Migration Workbench.

SM13 Update monitor. Will show update tasks status.
SA38 Execute a program.
SCAT Computer Aided Test Tool
SE03 Tools for doing transports.

SE11 ABAP/4 Dictionary Maintenance SE12 ABAP/4 Dictionary Display SE13 Maintain Technical Settings (Tables)
SE12 Dictionary: Initial Screen - enter object name.
SE13 Access tables in ABAP/4 Dictionary.
SE14 Utilities for Dictionary Tables
SE15 ABAP/4 Repository Information System
SE16 Data Browser: Initial Screen.
SE16N Table Browser (the N stands for New, it replaces SE16).
SE17 General Table Display
SE24 Class Builder
SE30 ABAP/4 Runtime Analysis
SE32 ABAP/4 Text Element Maintenance
SE35 ABAP/4 Dialog Modules
SE36 ABAP/4: Logical Databases
SE37 ABAP/4 Function Modules
SE38 ABAP Editor
SE39 Splitscreen Editor: Program Compare
SE41 Menu Painter
SE43 Maintain Area Menu
SE48 Show program call hierarchy.
SE49 Table manipulation.
SE51 Screen Painter: Initial Screen.
SE54 Generate View Maintenance Module
SE61 R/3 Documentation
SE62 Industry utilities
SE63 Translation
SE64 Terminology
SE65 R/3 document. short text statistics

SE68 Translation Administration
SE71 SAPscript layout set
SE71 SAPScript Layouts Create/Change
SE72 SAPscript styles
SE73 SAPscript font maintenance (revised)
SE74 SAPscript format conversion
SE75 SAPscript Settings
SE76 SAPscript Translation Layout Sets
SE77 SAPscript Translation Styles
SE80 ABAP/4 Development Workbench
SE91 Maintain Messages
SE92 Maintain system log messages
SE93 Maintain Transaction.
SM12 Lock table entries (unlock locked tables)
SM21 View the system log,

SM30 Maintain Table Views
SM31 Table Maintenance
SM32 Table maintenance
SM35 View Batch Input Sessions
SM37 View background jobs
SM50 Process Overview.
SM51 List of systems
SM62 Display/Maintain events in SAP
SMEN Display the menu path to get to a transaction
SMOD/CMOD Transactions for processing/editing/activating new customer enhancements.
SNRO Object browser for number range maintenance
SPRO Start SAP IMG (Implementation Guide).
SQ00 ABAP/4 Query: Start Queries
SQ01 ABAP/4 Query: Maintain Queries
SQ02 ABAP/4 Query: Maintain Funct. Areas
SQ03 ABAP/4 Query: Maintain User Groups
SQ07 ABAP/4 Query: Language Comparison
ST05 Trace SQL Database Requests.
ST22 ABAP Dump analysis
SU53 Display Authorization Values for User.
WEDI EDI Menu. IDOC and EDI base.
WE02 Display an IDOC
WE07 IDOC Statistics
SU53 Evaluate Authorization Check
SU01 User Maintenance
SMO4 List of users currently logged into the system
SM66 System wide work process overview.
 

Copyright © 2008 SAP nxt. All Rights Reserved.
All product names are trademarks of their respective companies. This blog is in no way affiliated with SAP AG or any of its subsidiaries.
Every effort is made to ensure the content integrity. Information used from this blog is at your own risk.

Free Domain & Hosting