What is the top hierarchical class in abap
What is the top hierarchical class in abap ? in java we have the class Object, that is on top of all the rest.
Is there a similar class in ABAP ?
Thanks
Hi,
Well actually there is a difference. In Java 'Object' is an actual class which is the root for all other classes (http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html). While in ABAP 'type ref to object' only means it is a reference to a class instance. An actual root class like Object in Java does not exist.
Only for exception classes there is a root: CX_ROOT...
Regards, Gerd Rother
Similar Messages
-
What are the various system variabels in ABAP
What are the various system variabels in ABAP?
u can view all the system variables in SYST TABLE Also ...............
ABAP System Fields
ABAP system fields are always available in ABAP programs. The runtime system fills them according to context. They can then be used in programs to query the system status. System fields are variables but you should always treat them as though they were constants, and only read them. If you change their values, important information for the flow of the program may be lost. In exceptional circumstances, system fields may be overwritten in an ABAP program to control the system for example, SY-LSIND (for navigating to a detail list).
With one exception the names and data types of the system fields are stored in the ABAP Dictionary in the SYST structure and realized as components of the predefined structure SY in ABAP programs.
The system field SY-REPID is not part of SYST or SY. Instead, every program contains the predefined constants SY-REPID and SYST-REPID, which both contain the name of the corresponding program. Furthermore, there are two predefined types of the same name, SY-REPID and SYST-REPID.
All system fields are addressed using SY field name and their types using SYST field name.
Alphabetical Overview
The following table lists the definitions of the structure SYST in the ABAP Dictionary alphabetically. The character in the first column indicates how you can use the corresponding system field in ABAP programs. Name is the name of the component, Type is the Dictionary data type, and Length is the field length defined in the Dictionary. The Use column shows in which environment the system fields are set. The Description indicates the content.
Name
Type
Length
Use
Description
ABCDE
CHAR
26
Constants
Alphabet (A,B,C,...)
APPLI
RAW
2
Obsolete
BATCH
CHAR
1
Background processing
Program runs in the background
BATZD
CHAR
1
Obsolete
BATZM
CHAR
1
Obsolete
BATZO
CHAR
1
Obsolete
BATZS
CHAR
1
Obsolete
BATZW
CHAR
1
Obsolete
BINPT
CHAR
1
Batch input
Program runs under batch input
BREP4
CHAR
4
Obsolete
BSPLD
CHAR
1
Obsolete
CALLD
CHAR
1
ABAP Program
Call mode of ABAP program
CALLR
CHAR
8
Printing Lists
ID for print dialog function
CCURS
DEC
9
Obsolete
CCURT
DEC
9
Obsolete
CDATE
DATS
8
Obsolete
CFWAE
CUKY
5
Internal
CHWAE
CUKY
5
Internal
COLNO
INT4
10
Creating Lists
Current column in the list
CPAGE
INT4
10
List processing
Current page number
CPROG
CHAR
40
ABAP Program
External procedure call
CTABL
CHAR
4
Obsolete
CTYPE
CHAR
1
Obsolete
CUCOL
INT4
10
Screens
Horizontal cursor position at PAI
CUROW
INT4
10
Screens
Vertical cursor position at PAI
DATAR
CHAR
1
Screens
Displays user input
DATLO
DATS
8
Date and time
Local date of user
DATUM
DATS
8
Date and time
Current (application server) date
DAYST
CHAR
1
Date and time
Daylight saving time flag
DBCNT
INT4
10
Database accesses
Number of processed table rows
DBNAM
CHAR
20
ABAP Program
Linked logical database
DBSYS
CHAR
10
R/3 System
Name of central database system
DCSYS
CHAR
4
Obsolete
DEBUG
CHAR
1
Internal
DSNAM
CHAR
8
Internal
DYNGR
CHAR
4
ABAP Program
Screen group of current screen
DYNNR
CHAR
4
ABAP Program
Number of current screen
ENTRY
CHAR
72
Internal
FDAYW
INT1
3
Date and time
Factory calendar weekday
FDPOS
INT4
10
Character strings
Offset in character strings
FFILE
CHAR
8
Internal
FLENG
INT4
10
Internal
FMKEY
CHAR
3
Obsolete
FODEC
INT4
10
Internal
FOLEN
INT4
10
Internal
FTYPE
CHAR
1
Internal
GROUP
CHAR
1
Internal
HOST
CHAR
8
R/3 System
Name of application server
INDEX
INT4
10
Loops
Current loop pass
INPUT
CHAR
1
Internal
LANGU
LANG
1
R/3 System
Current language
LDBPG
CHAR
40
ABAP Program
Program of logical database
LILLI
INT4
10
List processing
Selected list row
LINCT
INT4
10
Creating Lists
Page length of list
LINNO
INT4
10
Creating Lists
Current row
LINSZ
INT4
10
Creating Lists
Column width of list
LISEL
CHAR
255
List processing
Content of selected row
LISTI
INT4
10
List processing
Index of selected list
LOCDB
CHAR
1
Obsolete
LOCOP
CHAR
1
Obsolete
LOOPC
INT4
10
Screens
Number of rows visible in table
LPASS
CHAR
4
Internal
LSIND
INT4
10
List processing
Index of detail list
LSTAT
CHAR
16
List processing
ID for list levels
MACDB
CHAR
4
Obsolete
MACOL
INT4
10
Printing Lists
Columns from SET MARGIN statement
MANDT
CLNT
3
R/3 System
Client number from logon
MARKY
CHAR
1
Obsolete
MAROW
INT4
10
Printing Lists
Rows from SET MARGIN statement
MODNO
CHAR
1
R/3 System
Index of external modes
MSGID
CHAR
20
Messages
Message class
MSGLI
CHAR
60
Messages
Message line
MSGNO
NUMC
3
Messages
Message number
MSGTY
CHAR
1
Messages
Message type
MSGV1
CHAR
50
Messages
Message variable
MSGV2
CHAR
50
Messages
Message variable
MSGV3
CHAR
50
Messages
Message variable
MSGV4
CHAR
50
Messages
Message variable
NEWPA
CHAR
1
Internal
NRPAG
CHAR
1
Internal
ONCOM
CHAR
1
Internal
OPSYS
CHAR
10
R/3 System
Operating system of application server
PAART
CHAR
16
Print parameters
Print formatting
PAGCT
INT4
10
Obsolete
PAGNO
INT4
10
Creating Lists
Current page:
PAUTH
NUMC
2
Internal
PDEST
CHAR
4
Print parameters
Output device
PEXPI
NUMC
1
Print parameters
Retention period
PFKEY
CHAR
20
Screens
Current GUI status
PLAYO
CHAR
5
Internal
PLAYP
CHAR
1
Internal
PLIST
CHAR
12
Print parameters
Name of spool request
PNWPA
CHAR
1
Internal
PRABT
CHAR
12
Print parameters
Part of cover sheet
PRBIG
CHAR
1
Print parameters
Selection cover page
PRCOP
NUMC
3
Print parameters
Number of copies
PRDSN
CHAR
6
Print parameters
Name of spool dataset
PREFX
CHAR
3
Obsolete
PRI40
CHAR
1
Internal
PRIMM
CHAR
1
Print parameters
Print immediately
PRINI
NUMC
1
Internal
PRLOG
CHAR
1
Internal
PRNEW
CHAR
1
Print parameters
New spool request
PRREC
CHAR
12
Print parameters
Recipient
PRREL
CHAR
1
Print parameters
Delete after print
PRTXT
CHAR
68
Print parameters
Text for cover sheet
REPI2
CHAR
40
Internal
REPID
CHAR
40
ABAP Program
Current main program
RSTRT
CHAR
1
Internal
RTITL
CHAR
70
Print parameters
Title of printing program
SAPRL
CHAR
4
R/3 System
Release status R/3 System
SCOLS
INT4
10
Screens
Number of columns
SFNAM
CHAR
30
Obsolete
SFOFF
INT4
10
Internal
SLSET
CHAR
14
Selection screens
Name of variant
SPONO
NUMC
10
Printing Lists
Spool number
SPONR
NUMC
10
Obsolete
SROWS
INT4
10
Screens
Number of rows
STACO
INT4
10
List processing
First displayed column
STARO
INT4
10
List processing
Uppermost displayed row
STEPL
INT4
10
Screens
Index of current table row
SUBCS
CHAR
1
Internal
SUBRC
INT4
10
Return value
Return value after ABAP statement
SUBTY
RAW
1
Internal
SYSID
CHAR
8
R/3 System
Name of R/3 System
TABID
CHAR
8
Internal
TABIX
INT4
10
Internal Tables
Current row index
TCODE
CHAR
20
ABAP Program
Current transaction code
TFDSN
CHAR
8
Obsolete
TFILL
INT4
10
Internal Tables
Current number of rows
TIMLO
TIMS
6
Date and time
Local time of user
TITLE
CHAR
70
Screens
Text in header line
TLENG
INT4
10
Internal Tables
Row size
TLOPC
INT4
10
Internal
TMAXL
INT4
10
Obsolete
TNAME
CHAR
30
Obsolete
TOCCU
INT4
10
Obsolete
TPAGI
INT4
10
Obsolete
TSTIS
INT4
10
Internal
TTABC
INT4
10
Obsolete
TTABI
INT4
10
Obsolete
TVAR0
CHAR
20
Creating Lists
Text variable for headers
TVAR1
CHAR
20
Creating Lists
Text variable for headers
TVAR2
CHAR
20
Creating Lists
Text variable for headers
TVAR3
CHAR
20
Creating Lists
Text variable for headers
TVAR4
CHAR
20
Creating Lists
Text variable for headers
TVAR5
CHAR
20
Creating Lists
Text variable for headers
TVAR6
CHAR
20
Creating Lists
Text variable for headers
TVAR7
CHAR
20
Creating Lists
Text variable for headers
TVAR8
CHAR
20
Creating Lists
Text variable for headers
TVAR9
CHAR
20
Creating Lists
Text variable for headers
TZONE
INT4
10
Date and time
Time difference to Greenwich Mean Time
UCOMM
CHAR
70
Screens
Function code that triggered PAI
ULINE
CHAR
255
Constants
Horizontal line with length 255
UNAME
CHAR
12
R/3 System
Logon name of user
UZEIT
TIMS
6
Date and time
Current (application server) time
VLINE
CHAR
1
Constants
Vertical line
WAERS
CUKY
5
Obsolete
WILLI
INT4
10
Obsolete
WINCO
INT4
10
Obsolete
WINDI
INT4
10
Obsolete
WINRO
INT4
10
Obsolete
WINSL
CHAR
79
Obsolete
WINX1
INT4
10
Obsolete
WINX2
INT4
10
Obsolete
WINY1
INT4
10
Obsolete
WINY2
INT4
10
Obsolete
WTITL
CHAR
1
Creating Lists
Flag for standard page header
XCODE
CHAR
70
Internal
XFORM
CHAR
30
Internal
XPROG
CHAR
40
Internal
ZONLO
CHAR
6
Date and time
Time zone of user
Key:
The system field is set by the runtime environment. Its content can be evaluated in the ABAP program but not changed.
The system field is set by the runtime environment. Its content can be changed in the ABAP program to influence the runtime environment.
The system field must be set in the ABAP program. It can then be evaluated by the runtime environment or the program.
The system field is only for internal use and must not be used in ABAP programs.
The system field is obsolete and its content is not set. It cannot be used in ABAP programs.
Thematic Overview
The following is a thematic summary of the system fields with notes on their use:
System information
· Information on the current R/3 System
· Information on the user session
· Date and time information
· Information on the current ABAP program
· Background processing
· Batch input
ABAP programming
· Constants
· Character strings
· Loops
· Internal Tables
· Database accesses
· Return value
Screens
· Screens
· Selection screens
· Lists
· Messages
Internal system fields
Obsolete system fields
System Information
Information on the Current R/3 System
SY-DBSYS
Central database system, for example INFORMIX, ORACLE
SY-HOST
Application server, for example HS0333, PAWDF087
SY-OPSYS
Operating system of application server, for example HP-UX, SINIX
SY-SAPRL
Release status of R/3 System, for example 30D, 46A
SY-SYSID
Name of R/3 System, for example B20, I47
Information on the User Session
SY-LANGU
One-digit language key, for example D, E, F. Either logon language of user or set using the SET LOCALE LANGUAGE statement.
SY-MANDT
Client number the user logged on with, for example 000, 400.
For database accesses with Open SQL, SY-MANDT is used as the first key field of the WHERE clause.
SY-MODNO
Indexes external modes. Zero in first mode. In new modes, opened using the Create Mode function or by calling a transaction using /o, it is raised by 1. If previous modes were deleted, the free numbers are used first. Modes opened using CALL TRANSACTION STARTING NEW TASK start back at 0.
SY-UNAME
Logon name of user, for example KELLERH, BC400-01.
Date and Time Information
The following system fields are always set automatically. If necessary, the GET TIME statement synchronizes the application server time with that of the database server and writes it to the system field SY-UZEIT. SY-DATUM and the system fields for the local time zone, that is SY-TIMLO, SY-DATLO, and SY-ZONLO are also reset.
SY-DATLO
Local date of user, for example 19981129, 19990628.
SY-DATUM
Current (application server) date, for example 19981130, 19990627.
SY-DAYST
During daylight saving time X, otherwise empty.
SY-FDAYW
Factory calendar weekday, Sunday 0 Saturday 6.
SY-TIMLO
Local time of user, for example 154353, 225312.
SY-TZONE
Time difference to Greenwich Mean Time (UTC) in seconds, for example 3600, 10800.
SY-UZEIT
Current (application server) time, for example 164353, 215312.
SY-ZONLO
Time zone of user, for example CET, UTC.
Information on the Current ABAP Program
SY-CALLD
SY-CALLD contains SPACE if the program is the first and only program in a call chain. SY_CALLD contains 'X' if the program is a called program in a call chain (see ABAP Calls Overview).
· SY-CALLD is set to X in a program called using CALL TRANSACTION, CALL DIALOG, or SUBMIT AND RETURN.
· SY-CALLD is set to SPACE in a program called using LEAVE TO TRANSACTION, entering a transaction code on a screen, and processing batch input folders.
· With SUBMIT (without RETURN) SY-CALLD retains the previous value.
SY-CPROG
In externally called procedures, the name of the calling program, otherwise the name of the current program. If an externally called procedure calls another external procedure, SY-CPROG keeps the name of the first main program and is not given the name of the main program of the further caller.
SY-DBNAM
With executable programs this is the linked logical database.
SY-DYNGR
Screen group of current screen. You can assign several screens to a common screen group. You can use this, for example, to modify all of the screens in the group in a uniform way.
SY-DYNNR
Number of current screen During the selection screen processing, SY-DYNNR contains the screen number of the current selection screen. During list processing, SY-DYNNR contains the number of the container screen. While a subscreen is being processed, SY-DYNNR contains its screen number. This also applies to tabstrips.
SY-LDBPG
With executable programs, the database program of the linked logical database.
SY-REPID
Name of current ABAP program. With externally called procedures this is the name of the procedures main program.
If SY-REPID was transferred to an external procedure as an actual parameter before Release 6.10, the formal parameter was not given the name of the caller, but the name of the procedures main program. SY-REID had to be transferred to an auxiliary variable before the call or you had to use SY-PROG.
As of Release 6.10, SY-REPID is a separate constant that is no longer part of the structure SYST or SY. It can be transferred to external procedures directly.
SY-TCODE
Name of current transaction code.
Background Processing
SY-BATCH
SY-BATCH is set to X in an ABAP program running in the background. Otherwise it is empty.
Batch Input
SY-BINPT
SY-BINPT is set to X during processing of batch input folders and in ABAP programs called with CALL TRANSACTION USING. Otherwise it is empty.
· OPTIONS FROM in the CALL TRANSACTION USING statement can set SY-BINPT to empty for the whole program execution, as well as at the end of the BDC data.
· In CATT procedures, SY-BINPT is always empty.
ABAP Programming
Constants
SY-ABCDE
Contains the Alphabet. Can be used to access individual letters independently of the codepage by specifying offset.
SY-ULINE
Contains a horizontal line with length 255. Can be used when creating the list.
SY-VLINE
Contains a vertical line (|). Can be used when creating the list
Loops
SY-INDEX
SY-INDEX contains the number of loop passes in DO and WHILE loops, including the current loop pass.
Character Strings
SY-FDPOS
Found location for operations with character-type fields.
· If the operators CO, CN, CA, NA, CS, NS, CP, NP are used in comparisons, SY-FDPOS is assigned offset values depending on the comparison result.
· SEARCH FOR sets SY-FDPOS to the offset of the found search string.
Internal Tables
SY-TABIX
Current line in an internal table. With the following statements SY-TABIX is set for index tables. With hashed tables, SY-TABIX is not filled or it is set to 0.
· APPEND sets SY-TABIX to the index of the last table row, that is the total number of entries in the target table.
· COLLECT sets SY-TABIX to the index of the existing or appended table row. With hashed tables, SY-TABIX is set to 0.
· LOOP AT sets SY-TABIX to the index of the current table row at the beginning of every loop pass. After leaving a loop, SY-TABIX is set to the value it had before entering the loop. With hashed tables, SY-TABIX is set to 0.
· READ TABLE sets SY-TABIX to the index of the table row read. If no row is found with binary search while reading, SY-TABIX contains the index of the next-highest row or the total number of rows +1. If no row is found with linear search while reading, SY-TABIX is undefined.
· SEARCH 0). Each time an interactive list event occurs, the system automatically increases SY-LSIND by 1. SY-LSIND can be changed in the ABAP program to navigate between detail lists. Changes to SY-LSIND are not taken into account until the end of the list event. Therefore, any manipulation of SY-LISND should be done using the last command of the processing block.
SY-LSTAT
ID for list levels within the program. SY-LSTAT can be filled with values during list creation in the ABAP program. The value valid when the list is completed is saved with the list. In the case of an interactive list event, SY-LSTAT is set to the value it was assigned during the creation of the list from which the event takes place. SY-LSTAT is no longer maintained and should therefore no longer be used.
SY-STACO
Number of the first displayed column of the list from which the event was triggered. Counting starts at 1.
SY-STARO
Number of the upper-most displayed row of the upper-most page of the list, from which the event was triggered. Counting begins at 1. This does not include the page header.
Printing Lists
When printing lists, the spool and runtime systems require certain internal information, which is available in the following system fields and is set during print activation.
SY-CALLR
Contains a value that displays where printing was started, for example NEW-PAGE for program-controlled printing or RSDBRUNT for printing from the selection screen.
SY-PRDSN
Contains the name of the spool file during printing.
SY-SPONO
Contains the name of the spool number during printing.
SY-MAROW, SY-MACOL
The SET MARGIN statement fills the system fields SY-MAROW and SY-MACOL, which determine the number of lines on the upper margin and the number of columns on the left margin when printing.
Print Parameters
The print parameters are transferred to the spool system by the runtime system in a structure of dictionary type PRI_PARAMS. Before this structure was used, its purpose was served by system fields. Today a subset of the PRI_PARAMS structure is still written to system fields with the same names when printing is activated. This information is redundant and should not be used.
Messages
If you execute the MESSAGE statement, the following system fields are set. If you execute the MESSAGE RAISING statement in function modules and methods, these fields are also set in the calling program, if it handles the exception.
SY-MSGID
SY-MSGID contains the message ID.
SY-MSGNO
SY-MSGNO contains the message number.
SY-MSGTY
SY-MSGTY contains the message type.
SY-MSGV1, ,SY-MSGV4
SY-MSGV1 to SY-MSGV4 contain the field contents that are used for the messages placeholders.
Special Actions that Fill Message Fields
· If you request database locks using the ENQUEUE function module, the field SY-MSGV1 contains the name of the user who holds the lock, in the case of the FOREIGN_LOCK exception.
· IN the case of CALL TRANSACTION or CALL DIALOG with the USING addition, a message displayed during the called screen sequence is returned in the fields SY-MSGID, SY-MSGTY, SY-MSGNO, SY-MSGV1, ... , SY-MSGV4.
· During Remote Function Call (RFC), error messages are transferred from the remote system to the calling system and SY-MSGID, SY-MSGTY, SY-MSGNO,SY-MSGV1, SY-MSGV2, SY-MSGV3, SY-MSGV4 are set. If short dumps or type X messages occur, the system also sets the fields.
Internal System Fields
Internal system fields are only for internal use in the ABAP runtime environment and are defined in the kernel. Under no circumstances must they be overwritten in ABAP programs and they should also not be read (processed).
SY-CFWAE
Undocumented
SY-CHWAE
Undocumented
SY-DEBUG
Undocumented
SY-DSNAM
Name of spool output file. -
What is the first step of an abaper after getting the FDS
what is the first step of an abaper after getting the Functional Document ?what we have to do? how to analyze it , and how to face such interview questions on FDS TDS . any resource available.
Hi,
After getting the FDS , first understand the functionality of the requirment or take the help of the functional consultant and then start preparing TS ( TEchnical Specification) and do coding and get your doe reveirewed and prepare test cases and do testign in sand box and quality environment and after having got the confrimation that the requirment is met then port it to production.
Regards,
Irfan
Note: Please award helpful answers. -
What does the top level instance name "iop" mean?
What does the top level instance name "iop" mean?
Dear Humility,
In general term higher level account group means which account group is used to the higher level customers in the Customer Hierarchy process.
Or
Which of these account groups are valid for higher-level customers in the hierarchy.
I hope this will help you,
Regards,
Murali. -
What is the use of class Class
What is the use of class Class?
Sample use: if you are specifying the name of a class in a config file, you can use Class method newInstance to instantiate it.:
String classname = ...
Runnable r = (Runnable) Class.forName(classname).newInstance();
r.run(); -
General question:
In package /SAPAPO/MAT, what are the /SAPAPO/CL_PR_EEW* classes for?
Specific question:
Assume your client wants to add custom fields to the APO product master and display them on the standard screens displayed by the MATn transactions (e.g. MAT1)
Will the above EEW "enhancement classes" provide any way to customize the MATn screens (tabs, subscreens or even exits to pop custom screens)?
If not, then is there anyway to add custom fields to the MAT1 screens without doing a core mod?Same question for XMDSER function group, particularly module
EXIT_SAPMMDUSER_001
(fires out of screen 100 initial master data maintenance)
I think this one will probably work, but it maybe a question of "timing", i.e. what customer action fires the PAI routines which ultimately fire the exit.
If a simple "ENTER" fires the exit, then we're fine. -
What is the importance of 4 in ABAP/4 , is there any other types
hi friends,
what is the importance of 4 in ABAP/4 , is there any other types like that availble in ABAP.Hi Satish,
Here's an interesting link ...
http://en.wikipedia.org/wiki/Fourth-generation_programming_language
I hope this serves your purpose of knowing about "Generation of Programming Languages" and even more
Reward if useful!
Cheers
Kripa Rangachari -
What is the package-visible class?
I am reading JCVM2.2.1 Spec.
I don't know what the package-visible class is?
for example,
Here is a sentence I could not understand.
A public class cannot contain a public or protected field of type reference to a package-visible class.
However, I know a general Access controls such as public, protected and private.
Help me?
What is the package-visible class in Java Card?There is something called package protected in Java. This means that an object may be accessible thru a package only. Sort of like public with limited visibility.
Search the Java 2 Tutorial. -
what is the differene between class diagram and er diagram .....pls explain with examples
<b>Diff btw Class Diagrams and ERD's:</b>
Class diagrams and ERDs both model the structure of a system. Class diagrams
represent the dynamic aspects of a system: both the structural and behavioural features.
ERDs, depicting only structural features provide a static view of the system.
Elements of a class diagram:
>class
>association
>binary
>n-ary
>Aggregation
>Composition
>Generalization
>Dependency
>Realization
>Association Classes
Elements of Entity Relationship Diagrams:
>Entity - A data attribute is a property common to an entity.
Check this link
www.cdf.toronto.edu/~csc340h/summer/tutorials/TutorialClassERD.pdf
Regards,
Pavan. -
What are the top 5 apps you have to download once you get the ipad
what are the top 5 apps you have to download once you get the ipad
Air video
Splashtop
Netflix
Hulu+
AvplayerHD
If you want more....
Skyfire
Kindle
iBooks
Dropbox
Dragon Dictation
TextNow
Friendly+
Remote
These are the ones I use the most. Barely touch my laptop now. Use it mostly as a media server on my network. If I need something on it I just use Splashtop and remote into it. -
How to Find out what are the top 20 queries executed in the system
Hi Guru's,
I would like to know how to gather the information regarding the Top 20 queries used in the system per week, by a multicube.
Note: I am using BI 7.0 and also Statistics are turned on.
People have provided me the Cube name and table name last time but nothing seems to work.
I do not have the query names and I just have my multiprovider name and with the help of that, I want to find out what are all the queries which were executed related to that multiprovider.
Thanks and regards,Hi,
Here is an idea for your request.
Basically you can create a simple query on multiprovider 0TCT_MC01.
Filter: you can use a variable for restriction of time ( calday, or calmonth) since you should be interested for a time period.
Choose following characters into your objects:
InfoProvider ( 0TCTIFPROV ) - you can create a variable for choosing infoprovider before query runs.
*Tp.[Type of BI Application Object] 0TCTBISOTYP = filter this with 'QUERY' or whatever your need is.
*BI Application Object 0TCTBISBOBJ, ( this will give you the name of the queries)
In key figures choose, Count for BI Appl. (0TCTWTCOUNT).
(number for query run)
Create a condition , for top 20.
Hope this helps.
Derya -
What are the joins are available in abap.
Hi all,
What are all the joins are avaialble in abap. Can anyone explain me with examples.
thanxs in advance
hariHi,
There are two types of JOINS
INNER JOINS and OUTERJOINS
In the case of INNER JOIN only the records from tables for which the JOIN condition is met are retrieved.
In the case of OUTER JOIN you will get all the fields that are there in the LEFT table irrespective of the join condition.
Syntax
... [(] {dbtab_left [AS tabalias_left]} | join
{[INNER] JOIN}|{LEFT [OUTER] JOIN}
{dbtab_right [AS tabalias_right] ON join_cond} [)] ... .
Effect
The join syntax represents a recursively nestable join expression. A join expression consists of a left-hand and a right- hand side, which are joined either by means of [INNER] JOIN or LEFT [OUTER] JOIN . Depending on the type of join, a join expression can be either an inner ( INNER) or an outer (LEFT OUTER) join. Every join expression can be enclosed in round brackets. If a join expression is used, the SELECT command circumvents SAP buffering.
On the left-hand side, either a single database table, a view dbtab_left, or a join expression join can be specified. On the right-hand side, a single database table or a view dbtab_right as well as join conditions join_cond can be specified after ON. In this way, a maximum of 24 join expressions that join 25 database tables or views with each other can be specified after FROM.
AS can be used to specify an alternative table name tabalias for each of the specified database table names or for every view. A database table or a view can occur multiple times within a join expression and, in this case, have various alternative names.
The syntax of the join conditions join_cond is the same as that of the sql_cond conditions after the addition WHERE, with the following differences:
At least one comparison must be specified after ON.
Individual comparisons may be joined using AND only.
All comparisons must contain a column in the database table or the view dbtab_right on the right-hand side as an operand.
The following language elements may not be used: BETWEEN, LIKE, IN.
No sub-queries may be used.
For outer joins, only equality comparisons (=, EQ) are possible.
If an outer join occurs after FROM, the join condition of every join expression must contain at least one comparison between columns on the left-hand and the right-hand side.
In outer joins, all comparisons that contain columns as operands in the database table or the view dbtab_right on the right-hand side must be specified in the corresponding join condition. In the WHERE condition of the same SELECT command, these columns are not allowed as operands.
Resulting set for inner join
The inner join joins the columns of every selected line on the left- hand side with the columns of all lines on the right-hand side that jointly fulfil the join_cond condition. A line in the resulting set is created for every such line on the right-hand side. The content of the column on the left-hand side may be duplicated in this case. If none of the lines on the right-hand side fulfils the join_cond condition, no line is created in the resulting set.
Resulting set for outer join
The outer join basically creates the same resulting set as the inner join, with the difference that at least one line is created in the resulting set for every selected line on the left-hand side, even if no line on the right-hand side fulfils the join_cond condition. The columns on the right-hand side that do not fulfil the join_cond condition are filled with null values.
Example
Join the columns carrname, connid, fldate of the database tables scarr, spfli and sflight by means of two inner joins. A list is created of the flights from p_cityfr to p_cityto. Alternative names are used for every table.
PARAMETERS: p_cityfr TYPE spfli-cityfrom,
p_cityto TYPE spfli-cityto.
DATA: BEGIN OF wa,
fldate TYPE sflight-fldate,
carrname TYPE scarr-carrname,
connid TYPE spfli-connid,
END OF wa.
DATA itab LIKE SORTED TABLE OF wa
WITH UNIQUE KEY fldate carrname connid.
SELECT ccarrname pconnid f~fldate
INTO CORRESPONDING FIELDS OF TABLE itab
FROM ( ( scarr AS c
INNER JOIN spfli AS p ON pcarrid = ccarrid
AND p~cityfrom = p_cityfr
AND p~cityto = p_cityto )
INNER JOIN sflight AS f ON fcarrid = pcarrid
AND fconnid = pconnid ).
LOOP AT itab INTO wa.
WRITE: / wa-fldate, wa-carrname, wa-connid.
ENDLOOP.
Example
Join the columns carrid, carrname and connid of the database tables scarr and spfli using an outer join. The column connid is set to the null value for all flights that do not fly from p_cityfr. This null value is then converted to the appropriate initial value when it is transferred to the assigned data object. The LOOP returns all airlines that do not fly from p_cityfr.
PARAMETERS p_cityfr TYPE spfli-cityfrom.
DATA: BEGIN OF wa,
carrid TYPE scarr-carrid,
carrname TYPE scarr-carrname,
connid TYPE spfli-connid,
END OF wa,
itab LIKE SORTED TABLE OF wa
WITH NON-UNIQUE KEY carrid.
SELECT scarrid scarrname p~connid
INTO CORRESPONDING FIELDS OF TABLE itab
FROM scarr AS s
LEFT OUTER JOIN spfli AS p ON scarrid = pcarrid
AND p~cityfrom = p_cityfr.
LOOP AT itab INTO wa.
IF wa-connid = '0000'.
WRITE: / wa-carrid, wa-carrname.
ENDIF.
ENDLOOP.
Joins are used to fetch data fast from Database tables:
Tables are joined with the proper key fields to fetch the data properly.
If there are no proper key fields between tables don't use Joins;
Important thing is that don't USE JOINS FOR CLUSTER tableslike BSEG and KONV.
Only use for Transparenmt tables.
You can also use joins for the database VIews to fetch the data.
JOINS
... FROM tabref1 [INNER] JOIN tabref2 ON cond
Effect
The data is to be selected from transparent database tables and/or views determined by tabref1 and tabref2. tabref1 and tabref2 each have the same form as in variant 1 or are themselves Join expressions. The keyword INNER does not have to be specified. The database tables or views determined by tabref1 and tabref2 must be recognized by the ABAP Dictionary.
In a relational data structure, it is quite normal for data that belongs together to be split up across several tables to help the process of standardization (see relational databases). To regroup this information into a database query, you can link tables using the join command. This formulates conditions for the columns in the tables involved. The inner join contains all combinations of lines from the database table determined by tabref1 with lines from the table determined by tabref2, whose values together meet the logical condition (join condition) specified using ON>cond.
Inner join between table 1 and table 2, where column D in both tables in the join condition is set the same:
Table 1 Table 2
A
B
C
D
D
E
F
G
H
a1
b1
c1
1
1
e1
f1
g1
h1
a2
b2
c2
1
3
e2
f2
g2
h2
a3
b3
c3
2
4
e3
f3
g3
h3
a4
b4
c4
3
|--|||--|
Inner Join
A
B
C
D
D
E
F
G
H
a1
b1
c1
1
1
e1
f1
g1
h1
a2
b2
c2
1
1
e1
f1
g1
h1
a4
b4
c4
3
3
e2
f2
g2
h2
|--||||||||--|
Example
Output a list of all flights from Frankfurt to New York between September 10th and 20th, 2001 that are not sold out:
DATA: DATE LIKE SFLIGHT-FLDATE,
CARRID LIKE SFLIGHT-CARRID,
CONNID LIKE SFLIGHT-CONNID.
SELECT FCARRID FCONNID F~FLDATE
INTO (CARRID, CONNID, DATE)
FROM SFLIGHT AS F INNER JOIN SPFLI AS P
ON FCARRID = PCARRID AND
FCONNID = PCONNID
WHERE P~CITYFROM = 'FRANKFURT'
AND P~CITYTO = 'NEW YORK'
AND F~FLDATE BETWEEN '20010910' AND '20010920'
AND FSEATSOCC < FSEATSMAX.
WRITE: / DATE, CARRID, CONNID.
ENDSELECT.
If there are columns with the same name in both tables, you must distinguish between them by prefixing the field descriptor with the table name or a table alias.
Note
In order to determine the result of a SELECT command where the FROM clause contains a join, the database system first creates a temporary table containing the lines that meet the ON condition. The WHERE condition is then applied to the temporary table. It does not matter in an inner join whether the condition is in the ON or WHEREclause. The following example returns the same solution as the previous one.
Example
Output of a list of all flights from Frankfurt to New York between September 10th and 20th, 2001 that are not sold out:
DATA: DATE LIKE SFLIGHT-FLDATE,
CARRID LIKE SFLIGHT-CARRID,
CONNID LIKE SFLIGHT-CONNID.
SELECT FCARRID FCONNID F~FLDATE
INTO (CARRID, CONNID, DATE)
FROM SFLIGHT AS F INNER JOIN SPFLI AS P
ON FCARRID = PCARRID
WHERE FCONNID = PCONNID
AND P~CITYFROM = 'FRANKFURT'
AND P~CITYTO = 'NEW YORK'
AND F~FLDATE BETWEEN '20010910' AND '20010920'
AND FSEATSOCC < FSEATSMAX.
WRITE: / DATE, CARRID, CONNID.
ENDSELECT.
Note
Since not all of the database systems supported by SAP use the standard syntax for ON conditions, the syntax has been restricted. It only allows those joins that produce the same results on all of the supported database systems:
Only a table or view may appear to the right of the JOIN operator, not another join expression.
Only AND is possible in the ON condition as a logical operator.
Each comparison in the ON condition must contain a field from the right-hand table.
If an outer join occurs in the FROM clause, all the ON conditions must contain at least one "real" JOIN condition (a condition that contains a field from tabref1 amd a field from tabref2.
Note
In some cases, '*' may be specified in the SELECT clause, and an internal table or work area is entered into the INTO clause (instead of a list of fields). If so, the fields are written to the target area from left to right in the order in which the tables appear in the FROM clause, according to the structure of each table work area. There can then be gaps between table work areas if you use an Alignment Request. For this reason, you should define the target work area with reference to the types of the database tables, not simply by counting the total number of fields. For an example, see below:
Variant 3
... FROM tabref1 LEFT [OUTER] JOIN tabref2 ON cond
Effect
Selects the data from the transparent database tables and/or views specified in tabref1 and tabref2. tabref1 und tabref2 both have either the same form as in variant 1 or are themselves join expressions. The keyword OUTER can be omitted. The database tables or views specified in tabref1 and tabref2 must be recognized by the ABAP-Dictionary.
In order to determine the result of a SELECT command where the FROM clause contains a left outer join, the database system creates a temporary table containing the lines that meet the ON condition. The remaining fields from the left-hand table (tabref1) are then added to this table, and their corresponding fields from the right-hand table are filled with ZERO values. The system then applies the WHERE condition to the table.
Left outer join between table 1 and table 2 where column D in both tables set the join condition:
Table 1 Table 2
A
B
C
D
D
E
F
G
H
a1
b1
c1
1
1
e1
f1
g1
h1
a2
b2
c2
1
3
e2
f2
g2
h2
a3
b3
c3
2
4
e3
f3
g3
h3
a4
b4
c4
3
|--|||--|
Left Outer Join
A
B
C
D
D
E
F
G
H
a1
b1
c1
1
1
e1
f1
g1
h1
a2
b2
c2
1
1
e1
f1
g1
h1
a3
b3
c3
2
NULL
NULL
NULL
NULL
NULL
a4
b4
c4
3
3
e2
f2
g2
h2
|--||||||||--|
Example
Output a list of all custimers with their bookings for October 15th, 2001:
DATA: CUSTOMER TYPE SCUSTOM,
BOOKING TYPE SBOOK.
SELECT SCUSTOMNAME SCUSTOMPOSTCODE SCUSTOM~CITY
SBOOKFLDATE SBOOKCARRID SBOOKCONNID SBOOKBOOKID
INTO (CUSTOMER-NAME, CUSTOMER-POSTCODE, CUSTOMER-CITY,
BOOKING-FLDATE, BOOKING-CARRID, BOOKING-CONNID,
BOOKING-BOOKID)
FROM SCUSTOM LEFT OUTER JOIN SBOOK
ON SCUSTOMID = SBOOKCUSTOMID AND
SBOOK~FLDATE = '20011015'
ORDER BY SCUSTOMNAME SBOOKFLDATE.
WRITE: / CUSTOMER-NAME, CUSTOMER-POSTCODE, CUSTOMER-CITY,
BOOKING-FLDATE, BOOKING-CARRID, BOOKING-CONNID,
BOOKING-BOOKID.
ENDSELECT.
If there are columns with the same name in both tables, you must distinguish between them by prefixing the field descriptor with the table name or using an alias.
Note
For the resulting set of a SELECT command with a left outer join in the FROM clause, it is generally of crucial importance whether a logical condition is in the ON or WHERE condition. Since not all of the database systems supported by SAP themselves support the standard syntax and semantics of the left outer join, the syntax has been restricted to those cases that return the same solution in all database systems:
Only a table or view may come after the JOIN operator, not another join statement.
The only logical operator allowed in the ON condition is AND.
Each comparison in the ON condition must contain a field from the right-hand table.
Comparisons in the WHERE condition must not contain a field from the right-hand table.
The ON condition must contain at least one "real" JOIN condition (a condition in which a field from tabref1 as well as from tabref2 occurs).
Note
In some cases, '*' may be specivied as the field list in the SELECT clause, and an internal table or work area is entered in the INTO clause (instead of a list of fields). If so, the fields are written to the target area from left to right in the order in which the tables appear in the llen in der FROM clause, according to the structure of each table work area. There can be gaps between the table work areas if you use an Alignment Request. For this reason, you should define the target work area with reference to the types of the database tables, as in the following example (not simply by counting the total number of fields).
Example
Example of a JOIN with more than two tables: Select all flights from Frankfurt to New York between September 10th and 20th, 2001 where there are available places, and display the name of the airline.
DATA: BEGIN OF WA,
FLIGHT TYPE SFLIGHT,
PFLI TYPE SPFLI,
CARR TYPE SCARR,
END OF WA.
SELECT * INTO WA
FROM ( SFLIGHT AS F INNER JOIN SPFLI AS P
ON FCARRID = PCARRID AND
FCONNID = PCONNID )
INNER JOIN SCARR AS C
ON FCARRID = CCARRID
WHERE P~CITYFROM = 'FRANKFURT'
AND P~CITYTO = 'NEW YORK'
AND F~FLDATE BETWEEN '20010910' AND '20010920'
AND FSEATSOCC < FSEATSMAX.
WRITE: / WA-CARR-CARRNAME, WA-FLIGHT-FLDATE, WA-FLIGHT-CARRID,
WA-FLIGHT-CONNID.
ENDSELECT.
Regards,
Priyanka. -
IN MATERIAL MASTER RECORD WHAT IS THE USE OF CLASS TYPE(CLASSIFICATION VIEW
Hi Guys,
Can you please explain what are the different critiria to use different class type and what exactly meaning of the each class type with respect to Material classification.
Any material available on this to study. Please give link.
Thanks,
DhanuHi,
Purpose
The classification system allows you to use characteristics to describe all types of objects, and to group similar objects in classes u2013 to classify objects, in other words, so that you can find them more easily later.
You then use the classes to help you to find objects more easily, using the characteristics defined in them as search criteria. This ensures that you can find objects with similar or identical characteristics as quickly as possible.
Integration
The classification system allows you to classify all types of object. First, you must define certain settings in Customizing for the classification system. For more information, see Customizing for the Classification System.
SAP has predefined a number of object types (for example, materials, and equipment). The settings for these object types have already been defined in Customizing, so you can start to set up your classification system for these object types without defining further settings.
Features
Before you can use classification functions, you need to set up your classification system.
The there are three steps to setting up a classification system:
Defining the Properties of Objects
You use characteristics to describe the properties of objects. You create characteristics centrally in the SAP R/3 System.
See the SAP Library, Characteristics (CA-CL-CHR).
Creating Classes
You need classes to classify objects. These classes must be set up. During set up you must assign characteristics to the classes.
Assigning Objects
Once you have created the classes you require for classification, you can assign objects to these classes. You use the characteristics of the class to describe the objects you classify.
This completes the data you require to use your classification system. You can then use your classification system to find objects that match the criteria you require.
Once you have set up the classification system you can use it to find certain objects. To do this:
Find a class in which objects are classified
Find the object(s) you require in the class
When you use classification to find objects, you use the characteristics as search criteria, and the system compares the values you enter with the values of the classified objects.
Uts
Award if helpfull -
What is the use of keyword SCAN ABAP-SOURCE
Hello experts,
what is the use of scan abap-source. please explain. what is tokens, statements, levels in that.Hi
<b>SCAN</b>
This statement is for internal use only.
It cannot be used in application programs.
<b>SCAN ABAP-SOURCE itab1 ...TOKENS INTO itab2
...STATEMENTS INTO itab3.</b>
Parts marked with " ..." are interchangeable
<b>Addition 1</b>
... FROM n1
<b>Addition 2</b>
... TO n2
Breaks down the source code table itab1 into tokens not from start to finish, but only from line n1 to line n2.
The additions FROM n1 and TO n2 must, in this order, follow the specification of the source code table itab1.
When using the start specification n1, use the addition WITHOUT TRMAC to ensure that there are no unnecessary database accesses to the table TRMAC.
The end specification n2 is treated as "soft", i.e. a statement that begins on a line <= n2, but ends only on a line > n2, is returned completely.
If the end specification n2 is split in a chain statement, only the split part up to the next comma is returned completely, not the entire chain statement up to the next period.
Negative line specifications are not allowed and result in a runtime error.
A line specification of 0 amounts essentially to no specification.
If n1 number of lines in source code table, the scanner is not called (SY-SUBRC = 2).
If n1 > n2 and n2 > 0, the scanner is not called (SY-SUBRC = 2).
<b>
Addition 3</b>
... KEYWORDS FROM itab4
Does not return all statements, only those specified in the key word table itab4.
If the key word table is empty (i.e. it contains 0 lines), all the statements are selected.
The lines of the key word table are treated as a character field.
To select a Native-SQL-statement or a macro definition, you can specify the pseudo key words EXEC_SQL or DEFINE_MACRO. It makes no difference whether the statements EXEC or DEFINE occur as well. Native SQL statements and macro definitions are returned as one statement (of type E or M even if the expansion of a macro definition results in more than one statement.
If the key word table contains a blank line, blank statements are also selected.
<b>Addition 4</b>
... LEVELS INTO itab5
Stores details about each edited source code unit (source code table itab1 itself, expanded include-programs, expanded macro definitions) in the level table itab5.
Specification of a level table makes sense only with the addition WITH INCLUDES.
The level table itab5 must have the structure SLEVEL.
The fields of the structure SLEVEL - and consequently the columns of the level table itab5 have the following meaning:
TYPE
Type of source code unit with the following possible values:
P (Program)
D (Internal DEFINE macro)
R (Macro from table TRMAC)
NAME
Name of source code unit (name of include program, macro name)
DEPTH
Current nesting depth of source code unit (>= 1)
LEVEL
Index of superior (i.e. including or calling) source code unit in the level table (>= 1, if DEPTH >= 2, otherwise 0)
STMNT
Index of superior (i.e. including or calling) statement in the statement table (>= 1, if DEPTH >= 2, otherwise 0)
FROM
Index of first statement of source code unit in the statement table (>= 1)
TO
Index of last statement of source code unit in the statement table (>= 1)
If the source code unit contains include programs or macro calls, the line range [ FROM, TO] in the statement table also covers the statements in subordinate source code units.
<b>Addition 5</b>
... STRUCTURES INTO itab6
Details of the construction of the source text table are given in the structure table itab6.
The structure table itab6 must have the structure SSTRUC.
The fields in SSTRUC (which are also the columns of structure table itab6) have the following meanings:
TYPE
Type of the structure with possible values:
P (Beginning of the source code)
R (Subroutine)
M (Macro, EXEC SQL)
I (Loop)
A (Case distinction)
C (Condition in a case distinction)
J (Goto command)
D (Structured declaration)
E (Event)
S (Follow-on from simple structured statement)
STMNT_TYPE
The statement type of the beginning of the structure. The values are listed in the type pool SCAN in structure SCAN_STRUC_STMNT_TYPE.
KEY_START
Flags whether the start of the structure is described semantically ('X' if there is a special statement, otherwise ' ').
KEY_END
Flags whether the end of the structure is described semantically ('X' if there is a special statement, otherwise blank).
STMNT_FROM
Index of the first statement of the structure in the statement table itab3.
STMNT_TO
Index of the last statement of the structure in the statement table itab3.
Index of the first substructure of the structure in structure table itab6.
STRUC_TO
Index of the last substructure of the structure in structure table itab6.
BACK
Index of the structure in the structure table itab6 that contains the structure as a substructure (0 if the structure is the root structure of a structure tree).
<b>Addition 6</b>
... OVERFLOW INTO c1
The addition is only allowed and required if the token table itab2 has the structure STOKEN or STOKEX.
If a token is too large to be stored in the token table in the field STR, it is placed in the overflow area c1. The offset of the token in the overflow area then lies in the token table in the field OFF1.
<b>Addition 7</b>
... WITH ANALYSIS
Breaks down each token t = a+b(c) according to the logic of the RSYN key word >ANALY into its three components a, b and c.
Offset and length of components a, b and c are stored in the fields LEN1, OFF2, LEN2, OFF3, and LEN3 in the token table. (The offset of OFF1 is always 0 and therefore not required.)
If you specify the addition WITH ANALYSIS, the token table itab2 must have the structure STOKESX, so that the fields LEN1, OFF2, LEN2, OFF3 and LEN3 are available.
If the token table has the structure STOKEX, you must consider the following:
If the whole token exists in the token table, the offset specifications are relative to the token start. If the token is in the overflow area c1, the offset specifications are relative to the start of the overflow area.
<b>Addition 8</b>
... WITH COMMENTS
Returns comments also, with each individual comment representing a token. The system additionally stores entries for each full block of comments in the table itab3, differentiating between comments that occur within statements and those that occur at program level. In itab3, an entry for a comment within a statement always comes before the statement containing the comment.
<b>Example</b>
Look at the following program fragment. The preceding numbers are the indexes of the tokens.
1 * An example *
2 * with scattered comments
6 MOVE
3 * Inserted comment 1
7 X
4 * Inserted comment 2
8 TO
9 Y
5 * Inserted comment 3
SCAN then enters the following values for the components TYPE, FROM and TO (in this order from left to right) into itab3.
'P' 1 2
'S' 3 5
'K' 6 9
If the addition ... WITH COMMENTS is used, the table itab2 must have the line type STOKES or STOKESX.
<b>Addition 9</b>
... WITH INCLUDES
Also breaks down subordinate source code units (included programs, called macros) into tokens.
You should normally combine the addition WITH INCLUDES with the addition LEVELS INTO itab5.
If (at least) one included program does not exist, SY-SUBRC is set to 1 and the relevant INCLUDE statement is flagged in the statement table itab3 by the statement type J (instead of I), but the breakdown process continues. The level table itab5 contains no entry for include-programs that do not exist.
If you combine WITH INCLUDES with WITHOUT TRMAC , TRMAC-Macros are not expanded because the system does not recognize them as subordinate source code units.
When macro calls are expanded, no position specifications are available. The corresponding fields in the token table itab2 and the statement table itab3 are then set to 0.
<b>Addition 10</b>
... WITH TYPE-POOLS
This addition has the same effect as the WITH INCLUDES addition, except that with the former include programs belonging to type groups are broken down into tokens.
<b>Addition 11</b>
.. WITH LIST TOKENIZATION
Tokens of the form (a1, a2, a3) are not returned as tokens but broken down into the elementary components.
<b>Addition 12</b>
... WITHOUT TRMAC
If a statement begins neither with an ABAP/4 key word nor with a DEFINE macro, the system does not check whether this is a TRMAC macro, but assumes an unknown statement. (Unknown statements are flagged in the statement table itab3 with a U in the field TYPE.)
To avoid unnecessary database accesses to the table TRMAC, you should use the addition WITHOUT TRMAC whenever you assume that the source code to be scanned contains unknown statements. Unknown statements are particularly likely to occur if you use the addition FROM n1, because the scanner does not start at the beginning of the source code, but from a specified point.
If you use WITHOUT TRMAC with WITH INCLUDES, TRMAC macros are not expanded because the system does not recognize them as subordinate source code units.
<b>Addition 13</b>
... PROGRAM FROM c2
<b>Addition 14</b>
... INCLUDE INTO c3
<b>Addition 15</b>
... MESSAGE INTO c4
<b>Addition 16</b>
... WORD INTO c5
<b>Addition 17</b>
... LINE INTO n3
<b>Addition 18</b>
... OFFSET INTO n4
The above additions have the same meaning as those for the
SYNTAX-CHECK: statement: c2 is an input field for a program name to be assigned to the source code, while the fields c3, c4, c5, n3 and n4 are output fields in case an error occurs.
To be able to analyze errors without modifying programs, use the additions INCLUDE, MESSAGE, WORD, LINE and OFFSET. These provide information about the errors which have occurred.
<b>Variant 2</b>
SCAN AND CHECK ABAP-SOURCE itab1 ...RESULT INTO itab2.
Parts marked with " ..." are interchangeable
<b>Extras:</b>
1. ... PROGRAM FROM c1 2. ... INCLUDE INTO c2
3. ... MESSAGE INTO c3
4. ... WORD INTO c4
5. ... LINE INTO n1
6. ... OFFSET INTO n2
The syntax of the program in table itab1 is checked. During the check, all of the information from the program, such as statement structures, statements, tokens, data objects, types and do on are placed into the result field. This field must have the type SYSCH_RESULT, which is defined in type group SYSCH. You must therefore declare type group SYSCH in your ABAP-program using a TYPE-POOLS statement.
&ABAP_ADDITION _1&
... PROGRAM FROM c1
&ABAP_ADDITION _2&
... INCLUDE INTO c1
&ABAP_ADDITION _3&
... MESSAGE INTO c3
&ABAP_ADDITION _4&
... WORD INTO c4
&ABAP_ADDITION _5&
... LINE INTO n1
&ABAP_ADDITION _6&
... OFFSET INTO n2
The above additions have the same effect as the corresponding additions in the statement SYNTAX-CHECK: c1 is an input field for a program name to be assigned to the source code, the fields c2, c3, c4, n1 and n2 are output fields, used when errors occur.
To enable you to analyze errors without having to modify the program, you should specify the INCLUDE, MESSAGE, WORD, LINE and OFFSET additions for the information about the error that occurred.
<b>Reward if usefull</b> -
hey yo all
i just downloaded this decompiler and amazingly if you give it the class file it will give you the actual
java code
uhhh whats the point of class file then
your codes are not safe =(
hmmm
i tried it on one of the applets i wrote and dang it
it gave the excat java file
LINE by LINE
how dose it work its really amazing
but in other hands how do you protect your codesThere's a tool called an obfuscator that can make decompiled code very hard to read. Here's a few that I found mentioned:
http://www.retrologic.com
http://www.zelix.com/
http://www.codingart.com/codeshield.html
http://www.codework.com/dashO/product.html
I find that it's best to make the source code available, with that type of thinking, a decompiler is useless :) Though if you're looking for security, it depends what you want to protect. If you mean Java source code, obfuscators are your best bet. You can make your program to an exe, but I won't suggest that. Then platform independece is lost. I'd say these are your only choices. Interpreted languages can have this problem, this is why Java can be decompiled.
Maybe you are looking for
-
Inter company billing relevancy - Question
We have one order type (A) which we want to make it not relevant for inter company billing. The order type used to use the same delivery and intercompany billing type (ZIA) other order types (B, C...) which are relevant for inter company billing. We
-
Macbook pro vs. macbook air for engineering
I am starting my undergraduate degree in chemical engineering and I wanted to know if it matters if I get the Pro or the Air. I am pretty sure the school gives us lap tops to take home and do our homewrok, so I guess I wont be downloading too much so
-
Issues with Importing 'AVIs' into CS3
I have CS3 and am trying to import AVIs, but am getting no audio or no video, however it seems to be a bit unpredictable. On one computer one file will play with both on the other I get either audio or video but not both. Have done a lot of reading t
-
G4 with not boot with Tige- what are my options
I have a PowerMac G4 500MHZ with a newly installed 120GB ATA drive and 1.5GB of RAM. In the last few weeks, I have tried all of the following. I installed OS9 on the new drive. I performed all the updates to 9.2.2. I made sure all software was update
-
When i run load test on oracle RDF i get the following modelname_RI busy
Hi Issue: When running load test for 250 VU on oracle RDF getting the following error: modelname_RI table busy This happens for all methods that use inferencing. Inferencing used in the application is: graph.performInference(); Kindly suggest wts the