Search on this Website

Showing posts with label ABAP FAQ. Show all posts
Showing posts with label ABAP FAQ. Show all posts

Monday, July 2, 2007

BASIS/ABAP Transactions

SEARCH_SAP_MENU Show the menu path to use to execute a given tcode. You can search by transaction code or menu text.

DI02 ABAP/4 Repository Information System: Tables.

LSMW Legacy System Migration Workbench. An addon available from SAP that can make data converstion a lot easier. Thanks to Serge Desland for this one.

OSS1 SAP Online Service System

OY19 Compare Tables

SM13 Update monitor. Will show update tasks status. Very useful to determine why an update failed.

S001 ABAP Development Workbench

S001 ABAP/4 Development Weorkbench.

S002 System Administration.

SA38 Execute a program.

SCAT Computer Aided Test Tool

SCU0 Compare Tables

SE01 Old Transport & Corrections screen

SE03 Groups together most of the tools that you need for doing transports. In total, more than 20 tools can be reached from this one transaction.

SE09 Workbench Organizer

SE10 New Transport & Correction screen

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). Provided by Smijo Mathew.

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. Very useful to see the overall structure of a program. Thanks to Isabelle Arickx for this tcode.

SE49 Table manipulation. Show what tables are behind a transaction code. Thanks to Isabelle Arickx for this tcode.

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 SE66 R/3 Documentation Statistics (Test!)

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

SE81 SAP Application Hierarchy

SE82 Customer Application Hierarchy

SE83 Reuse Library. Provided by Smiho Mathew.

SE84 ABAP/4 Repository Information System

SE85 ABAP/4 Dictionary Information System

SE86 ABAP/4 Repository Information System

SE87 Data Modeler Information System

SE88 Development Coordination Info System

SE91 Maintain Messages

SE92 Maintain system log messages

SE93 Maintain Transaction.

SEARCH_SAP_MENU From the SAP Easy Access screen, type it in the command field and you will be able to search the standard SAP menu for transaction codes / keywords. It will return the nodes to follow for you.

SEU Object Browser

SHD0 Transaction variant maintenance

SM04 Overview of Users (cancel/delete sessions)

SM12 Lock table entries (unlock locked tables)

SM21 View the system log, very useful when you get a short dump. Provides much more info than short dump

SM30 Maintain Table Views.

SM31 Table Maintenance

SM32 Table maintenance

SM33 Display Table Parameter ID TAB

SM35 View Batch Input Sessions

SM37 View background jobs

SM50 Process Overview.

SM51 Delete jobs from system (BDC)

SM62 Display/Maintain events in SAP, also use function BP_EVENT_RAISE

SMEN Display the menu path to get to a transaction

SMOD Transactions for processing/editing/activating new customer enhancements.

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 Click Here to Read More !!!!

Tuesday, June 19, 2007

What is BDC and How you use it?

BC Basis Components-

-ABAP workbench-
-BC Basis Programming interfaces
--Data transfer



During data transfer, data is transferred from an external system into the SAP
R/3 System. •Transfer data from an external system into an R/3 System as it is
installed. •Transfer data regularly from an external system into an R/3 System.

Example: If data for some departments in your company is input using a system
other than the R/3 System, you can still integrate this data in the R/3 System. To do
this, you export the data from the external system and use a data transfer method to
import it into the R/3 System.
Batch input with batch input sessions : Data consistency check with the help of
screen logic.

With the batch input method, an ABAP program reads the external data that is to be
entered in the R/3 System and stores the data in a "batch input session". The
session records the actions that are required to transfer data into the system using
normal SAP transactions.

When the program has generated the session, you can run the session to execute
the SAP transactions in it. You can explicitly start and monitor a session with the
batch input management function (by choosing System ® Services ® Batch input), or
have the session run in the background processing system.

Use the BDC_OPEN_GROUP function module to create a new session. Once you
have created a session, then you can insert batch input data into it with
BDC_INSERT. Use the BDC_INSERT function module to add a transaction to a
batch input session. Use the BDC_CLOSE_GROUP function module to close a
session after you have inserted all of your batch input data into it.

Click Here to Read More !!!!

ABAP IMPORTANT TCODES

OSS1 SAP Online Service System

SM13 Update monitor. Will show update tasks status. Very useful to determine why an update failed.

S001 ABAP Development Workbench

SE01 Old Transport & Corrections screen

SE10 New Transport & Correction screen

SE09 Workbench Organizer

SE16 Data Browser: Initial Screen.

SE30 ABAP/4 Runtime Analysis

SE36 ABAP/4: Logical Databases

SE37 ABAP/4 Function Modules

SE38 ABAP Editor

SE39 Splitscreen Editor: Program Compare

SE41 Menu Painter

SE51 Screen Painter: Initial Screen.

SE71 SAPscript layout set

SE80 ABAP/4 Development Workbench Object Browser

SM12 Lock table entries (unlock locked tables)

SM21 View the system log, very useful when you get a short dump. Provides much
more info than short dump

SM35 View Batch Input Sessions

SQ00 ABAP/4 Query: Start Queries

Click Here to Read More !!!!

Describe the functions of the debugger screen.

- Single step(F5) - Use this option to step through the program statement by
statement. This allows you to branch into subroutines and function modules, and to
execute these routines step by step as well. Once a subroutine or function module
has been processed, control returns to the statement following the CALL FUNCTION
or PERFORM statement.

- Execute(F6)- Use this option to process a program line by line. All of the
statements on the current line are processed in a single step. If you are positioned
on a line that calls a subroutine and you choose Execute, the Debugger processes
the whole subroutine and then moves on to the line following the subroutine call. This
allows you to jump through the statements within the subroutine.

- Return(F7) - The Debugger returns from a routine to the point at which control
returns to the main program. Use this option to return from a subroutine, function
module, or called program to the calling program.

- Continue(F8)- Use this option to process the program up to the next dynamic or
static breakpoint or up to the cursor position. If there are no more breakpoints in the
program and no cursor has been set, the system exits debugging mode and
executes the rest of the program normally.

- Tables - Display the contents of internal tables.
Click Here to Read More !!!!

How do you run a report for a row in table?

Using Graphics Multiplexer. There is an option some thing similar to screen capture
which captures data only. Using that data you can draw graphs (3D and 2D). This option
is available all the time from Menu! -> Generate Graphics which captures the data then
you need to drag and select the data you want to draw a graph on. Once you select you
can click on Graphics, which launches graphics multiplexer.
Memory Management

SAP memory (Global Memory): - is available to a user during the entire duration of
a terminal session. Its contents are retained across transaction boundaries as well
as external and internal sessions.
External session: - when user logs on to R/3 system, the system creates a new
terminal session called external session. E.g. System Create Session.

Internal session: - created by calling a transaction (with CALL TRANSACTION), a
dialog module (with CALL DIALOG) or a report (with SUBMIT or RETURN).
For external session: - internal sessions are allowed.

Roll area: - Data areas of used programs are created in roll areas for each internal
session.
Posting data between internal sessions: -
EXPORT TO MEMORY and
IMPORT FROM MEMORY.

Main program group: - Created when exporting an internal session.

Additional program group: - If a function module belonging to a function group not
so far loaded, additional program group is created.

Subroutine call: - When external subroutine is called, system loads the relevant
program and adds it to the program group of calling program.

Work areas: - Both table & common workareas with the same name are created
once for each program group and then shared by all programs in the group.

List system: - Consists of basic list and all details list belonging to basic list
assigned to exactly one screen level.

User interface: - Only program has its own user interface. Internal sessions
interface is initially empty. Special user interface has to be activated using SET
PF-STATUS statement.

ABAP/4 memory: - Retained only during the lifetime of an external session.

Data cluster: - Group of several data objects.

Data objects: - Units of data, which a program processes at runtime. Click Here to Read More !!!!

What does CHAIN ....END CHAIN do

Sometimes you want to check several fields as a group. To do this, include the fields in a
FIELD statement, and enclose everything in a CHAIN-ENDCHAIN block.

Example

**** Screen flow logic: ****
CHAIN.

FIELD: SPFLI-CARRID, SPFLI-CONNID.
MODULE CHECK_FLIGHT.
ENDCHAIN.
When an error is found inside a chain, the screen is re-displayed, and all fields found
anywhere in the chain are input-enabled. All non-chain fields remain disabled. Click Here to Read More !!!!

How do you set up background jobs in SAP?

How do you set up background jobs in SAP? What are the steps? What are events driven batch jobs?

- Create a job using function module JOB-OPEN
- Collect the job specifications.
- Add a job step to the job with the function module JOB-SUBMIT.
- Close the job and pass it to Background processing system for execution with the
function module JOB-CLOSE
- EVENT DRIVEN BATCH JOBS :-
- Types = System events ¬ triggered when activation of new operation mode takes
place
- User events - Triggered from ABAP/4 or external program.
- Triggering an event notifies the background processing that named condition has
been reached. The Background system reacts by starting any jobs that were waiting
for the event.
Transaction codes related to background jobs creation and processing are :-
SM36(Job creation)
SM37(Job selection and execution). Click Here to Read More !!!!

What is CTS and What do you know about it?

[ CTS is Correction and Transport Systems ]

- Correction system manages the internal system components like objects like only original version of the object exists. It stores all changes made to the object.

- Transport system allows to transports the object from on SAP system to another (Development system to Production system). It allows to over write or delete existing object in target system and import new objects to target systems. During development work we start by opening a task (correction) to which we can assign new and changed objects. Once changes have been made, transport new or changed objects to other SAP system by means of transport (Change) request. Click Here to Read More !!!!

SAP supplied programs to load master data

- SAP supplied BDC programs ¬ RM06BBI0 (Purchase requisitions)
- RMDATIND (Material master) RFBIKR00 (Vendor Masters)
- RFBIDE00 (Customer Master) RVINVB00 (Sales Order) Click Here to Read More !!!!

How and where do You create Message class?

You can create a message class from two places in the system:
1) From an Object class object list (in the Object Browser)
2) From an ABAP/4 module (in the ABAP/4 editor) Click Here to Read More !!!!

What are the events used in ABAP4?

The events are
• INITIALIZATION
• AT SELECTION-SCREEN
• AT SELECTION-SCREEN ON
• START-OF-SELECTION
• TOP-OF-PAGE
• TOP-OF-PAGE DURING LINE SELECTION
• END-OF-PAGE
• END-OF-SELECTION
• AT USER-COMMAND
• AT LINE-SELECTION
• AT PF
• GET
• GET LATE.
• AT User Command Click Here to Read More !!!!

What is an interactive reports ?

What is an interactive reports ? What is the obvious difference of such reports with HTML type reports?

Interactive reporting allows the user to participate actively in retrieving and presenting
data during the session. Instead of one extensive and detailed list, with interactive
reporting you create a condensed basic list from which the user can call detailed
information by positioning the cursor and entering commands. Interactive reporting thus
reduces information retrieval to the data actually required.
Detailed information is presented in secondary lists. A secondary list may either overlay
the basic list completely or appear in an additional dialog window on the same screen.
The secondary list can itself be interactive again.
Apart from creating secondary lists, interactive reporting also allows to call transactions
or other reports from lists. These programs then use values displayed in the list as input
values. The user can, for example, call a transaction from within a list to change the
database table whose data is displayed in the list. Click Here to Read More !!!!

What happens when a table is activated in DD?

When the table is activated, a physical table definition in the database is added to the
table definition stored in the ABAP/4 Dictionary. The database-independent table
definition from the ABAP/4 Dictionary is translated into a definition of the relevant
database Click Here to Read More !!!!

What is a check table and What is a value table?

The relational data model contains not only tables, but also relationships between tables.
These relationships are defined in the ABAP/4 Dictionary by foreign keys. An important
function of foreign keys is to support data integrity in the relational data model. Foreign
key fields may assume only those values allowed by the check table, in other words,
values occurring in the primary key of the check table.
A foreign key provides a link between two tables, for eg.,T1 and T2 by including a
reference in table T1 to the primary key of table T2. For this purpose, Foreign key fields
assigned to the primary key fields of T2 are included in T1. Table T1, which is the one

being checked, is called a foreign key table, and table T2 is called a check table. The
terms dependent (foreign key) table and referenced (check) table are also used.

VALUE TABLE:If the domain of the check field has a value table, this is proposed by the system as check table in the foreign field maintenance. The key fields of the value table are in this case assigned fields of the foreign key table with the same domain. These
fields may assume only those values allowed by the value table.
The value range of the domain can be defined by specifying value table.All table fields
referring to this domain can then be checked against the corresponding field of this value
table.In order the check can be executed, a foreign key must be defined for the value
table.
Click Here to Read More !!!!

What are matchcodes? Describe?

A matchcode is a tool to search for data records in the system. Matchcodes are an efficient and user-friendly search aid for cases where the key of a record is unknown. It consists of two stages one is Match code object and the other is Matchcode ID. A matchcode object describes the set of all possible search paths for a search term. Matchcode ID describes a special search path for a search term. Click Here to Read More !!!!

What are ranges? What are number ranges?

It is often necessary to directly access individual records in a data structure. This is done using unique keys. Number ranges are used to assign numbers to individual database records for a commercial object, to complete the key. Such numbers are e.g. order numbers or material master numbers. Click Here to Read More !!!!

Validate the selection criteria of a report

How do you validate the selection criteria of a report? And how do you display initial values in a selection screen?

The selection criteria is validated in the processing block of the AT SELECTION SCREEN event for the input values on the screen and respective messages can be sent.

To display initial values in the selection screen:

· Use INITIALIZATION EVENT

· Use DEFAULT VALUE option of PARAMETERS Statement

· Use SPA/GPA Parameters (PIDs).

Click Here to Read More !!!!

What is the Client concept in SAP? What is the meaning of Client independent?

In commercial, organizational and technical terms, the client is a self contained unit in
the R3 system, with separate set of Master data and its own set of Tables.
When a change is made in one client all other clients are affected in the system - this
type of objects are called Client independent objects. Click Here to Read More !!!!

Monday, June 18, 2007

What is a variant and where do you use it?

If you want to run a report program with same selections at regular intervals (for
example, for monthly sales statistics), you would not want to enter the same values each
time. So, ABAP/4 offers you a possibility to combine the desired values for all these
selections in one selection set. You can create as many different selection sets as you
like for each report program and they remain assigned only to the report program in
question. Such a selection set is called a variant.

Using Variants Online
Using Variants in Background Processing


Online, starting a report via variant saves the user work,minimizes input errors. In
background processing, a variant is the only possibility you have to pass values for the
selections.

To fill certain selections with values that change according to the application, you use a
variant, which takes the variable values from Table TVARV. Click Here to Read More !!!!

What is set parameter and get parameter?

We can pass data to a called program using SPA/GPA parameters. SPA/GPA
parameters are field values saved globally in memory. Each parameter is identified by a
three-character code: you can define these parameters in the object browser by
selecting Other objects on the first screen. The SPA/GPA storage is user-specific and
valid throughout all the user's sessions.by using the SET PARAMETER or GET
PARAMETER statements
These statements let you store and retrieve SPA/GPA values from an ABAP/4 program.
If the selection screens for the two transactions do not share the same required fields,
use these statements to store screen fields explicitly by name.
Before calling the new transaction from a PAI module, store the caller transaction's fields
under one name:

SET PARAMETER ID 'RID' FIELD .

The system stores the value in in the SPA parameter 'RID'. The three-
character identifier 'RID' must be defined in the SAP table TPARA. If the SPA parameter
'RID' already contains a value, the SET PARAMETER statement overwrites it (with the
contents of ).
In the PBO module for the called transaction, retrieve the fields under the other name:

GET PARAMTER ID 'RID' FIELD . Click Here to Read More !!!!