Documentation of the interaction of components in ABAP - applications
Hello,
I am developing on an ERP 6.0 system with ABAP , ABAP-OO, business objects, workflow.
Now there are a lot of different components used, i.e. function modules, classes, business objects, dynpros.
I am looking for a way to document how all these components interact.
Ok, you can use PowerPoint to draw charts or use excel-tables, but these means aren't integrated into SAP.
So it is only a matter of time when the documents will be old and no longer up to date.
How do you make such documentation, is the visual composer a possible tool?
Best would be a tool, that offers the possibility to model the interactions in advance.
Has anyone an idea?
thanks in advance,
Dirk
Hello Dirk
At the SDN day prior to the TechEd 2008 in Berlin I asked the people from SAP in the closing session "Latest and Greatest in ABAP" about round-trip engineering (ABAP class -> UML -> ABAP class).
They are about to integrate UML diagram generation from ABAP classes into NetWeaver (perhaps in 7.20).
For anything else you may have a look at package SEST, e.g.
- report SAPRSEUH (call fm RS_SOURCE_STRUCTURE)
- fm RS_CALL_HIERARCHY
- fm RS_PROGRAM_TABLES
Regards
Uwe
Similar Messages
-
Populating values in a dropdown field on the interactive form using WD ABAP
Hi All,
I want to populate values in a dropdown field( of cardinality 0:n ) on interactive form,The values which i want to populate is from a 'z' table which i have created.I used a select query to fetch the entries but on my interactive form the values are flowing in many rows and not in the drop down.I want all the values to be in the dropdown.The dropdown is not showin even one value under it.I am using webdynpro abap and controls from webdynpro native.Can anyone guide me on this with a step by step procedure.
Useful suggestions will be rewarded.
Thanks and Regards,
Srividya.You mean in PFR of controller , ie after user selects a record from LOV window and after its populated back into to the textItem on the main entry form ??
The value is displayed correctly in the intended textItem which has viewInstance and viewValue attached to it .
so this is what setup looks like
Entry form
Customer Name - lov
Customer Number(d) - Display Only - Populated by Lovmappings from LOV - mapped to Customer Number attribute on LOV window. It also has viewInstance and ViewAttrib assigned to it .
Save Action
At this point of time , i am assuming i already have value in Customer Number(d)since its displayed on the screen,rite ??
or Do i have to take the value in formValue and then explicitly do a setAttribute to set that value to view object /Customer Number(d)
hope this helps to understand the scenario -
Cannot save the Interactive form downloaded from abap webdynpro application
Hello Everyone,
Can anyone help me here.
I have created an interactive form in SFP tcode and used in abap webdynpro application.
scenario is i can downloade the form,fill it, sign it,save it and submit the form.
Some thing is going wrong when i try to sign the form downloaded from the application.It is giving the error ->
The document could not be saved. there was a problem in reading the document(26).
When i try to sign the form save as dialog box will come where we can save the filled form.but here when itry to save it is giving above error.and also i cannot save thye form form file option.
but form is working fine from sfp tcode not form application link.
What is going wrong.Can somebody please help me here.
Regards,
Menaka.H.BCheck the enabled and readOnly property of the InteractiveFormUI element in your application.
enabled should be true and readOnly should be false.
Also just FYI interactive forms are licensable in Productive environment for which you need Adobe Credentials. You may contact SAP Account Manager and Note 736902 for it.
Chintan -
Best Practice for enhancing the SAP delivered standard WD ABAP application
Hi,
I am new to WebDypro ABAP.
To enhance the SAP delivered Standard WebDynpro Component (complex component with Business objects & powl).
Kindly let me know the best practice for enhancing the Standard WD ABAP from the below 1 or 2.
1) To copy & create a "Z" of the component & make changes in that (or)
2) to enhance directly on the same standard component without making "Z".
Regards,
NSHi NS,
If it is a standard component its better we go for enhancing the component rather than copying it into Z component.
If there is any issue with in the standard component , SAP supports it through notes and OSS messages. If it is a Z component, SAP doesn't support it.
If there is any up gradation of business packages, changes will be done to standard , but not the Z components, wherein we could miss it.
Further, since it is a standard component it might have been used at many places, changes that has to done to reflect all changes might be difficult in this case if it is a z component.
Regards,
Harsha -
Adobe interactive form in wd abap
hi,
When i set the enabled property to true for the interactive form in WD ABAP, it either doesnt display the form or the form comes in display mode,
Can you please tell me know if any,
Thanks,
SaujanyaHi Saujanya,
The interface of the UI element InteractiveForm contains the method
SET_LEGACY_EDITING_MODE, which in turn contains a Boolean parameter. The form is
then ready for input when
● The parameter has the value X.
● The property enabled in the UI element InteractiveForm is selected.
The following code fragment shows how this input readiness can be set up:
method WDDOMODIFYVIEW.
data: LR_INTERACTIVE_FORM type ref to CL_WD_INTERACTIVE_FORM,
LR_METHOD_HANDLER type ref to IF_WD_IACTIVE_FORM_METHOD_HNDL.
check first_time = abap_true.
LR_INTERACTIVE_FORM ?= VIEW->GET_ELEMENT(u2018INTERACTIVE_FORM_1u2019).
*Replace INTERACTIVE_FORM_1 with Property 'ID' of your UI element InteractiveForm
LR_METHOD_HANDLER ?= LR_INTERACTIVE_FORM->_METHOD_HANDLER.
LR_METHOD_HANDLER->SET_LEGACY_EDITING_ENABLED( abap_true ).
endmethod.
Regards,
Runal -
How to Call the RFC in Webdynpro abap application
Dear Experts,
Good Evening to all...
I have to add two numbers using RFC in webdynpro abap application. If we give the numbers in the input screen then the RFC should add it and give it in the output screen. This is the application for that I have created the RFC.
But the problem is i don't know how to call the RFC in that Webdynpro abap application and how to link the input view and output view with that RFC...? I am new to Webdynpro abap. Please kindly help me on this... I am struggled here... I need your help in this....
Thank You.Hi Jaga,
You asked the same question again.
Without closing the [previous one|Re: Where SAP store the uploaded files?].
I think Abhi has answered your question.
If not please elaborate on the problem.
The solution btw is to create a Service Call.
Sumit -
How to call a WD JAVA application from a WD ABAP application
Hi experts,
Here I have two applications with me. One has been created through WebDynpro ABAP while the other one has been created through WebDynpro JAVA. Now i have to call upon the JAVA aplication from my ABAp application. In other words in need to integrate both the applications so as to have an easy navigation in between them.
In the whole process I need to take care that the data is not lost from both ABAP or JAVA side.
Please help me someone knows the solution.
Regards,
Kaustubh MaithaniHi,
Usally to run WebDynpro for Java Application, we get the Application URL.
If you want to call this WebDynpro Java Application from Webdynpro Abap, then create UI element like Link to Action or LinktoURL and give the url as WebDynpro for Java URL.
Regards,
Lakshmi Prasad. -
How to call custom themes for Web Dynpro ABAP Application?
Hi,
I need to change the appearance of Web Dynpro ABAP application. So far I followed below steps,
1. Created theme folder u2018testngou2019 (SE80->MIME Repositoty -> SAP->PUBLIC->BC->UR->nw5->themes -> u2018testngou2019 ).
2. used program BSP_UPDATE_MIMEREPOS to dowmloaod content of u2018sap_tradeshowu2019 (SE80->MIME Repositoty -> SAP->PUBLIC->BC->UR->nw5->themes -> sap_tradeshowu2019) to desktop.
3. Modified the themes using Eclipse Theme Editor.
4. used program BSP_UPDATE_MIMEREPOS to upload modified themes to MIME repository u2018testngou2019 (SE80->MIME Repositoty -> SAP->PUBLIC->BC->UR->nw5->themes -> u2018testngou2019) .
My current URL is like http://server.name:XXXX/sap/bc/webdynpro/sap/hrrcf_a_startpage_int_cand?sap-client=XXX.
Now I want to know how custom themes called for Web Dynpro ABAP Application.
Is my approach correct?
...NaddyHi Naddy,
What you used is one way and even I failed when tried that method,
Instead go to SE38 - WD_THEMES - and you need to upload the zip file and you need to follow a folder structure.
it is case sensitive, atleast the zip file.
Make a zip file by name "Project.zip" -
Create a Folder Project and have the below folder structure,
1 data - all the properties files and also the designinfo file, below is the code
2 themes - (to get all the files download the theme from portal and you will have all the folders)
2.1 ur
2.1.1 name of the theme
2.1.1.1 common
2.1.1.2 csf
2.1.1.3 r
2.1.1.4 ur - all the css files (would be good if you can get the files from the server.)
2.1.1.5 WSRP
3 war - empty folder
*.designinfo
isVisible=true
version=7.0.14.1.0
isDefault=false
isSapDesign=false
designName=**** name of the theme
Once done create a zip file and click on Start Import and give the path and will ask for transport request, it will take a while to upload once done as mentioned in the use the parameter sap-ep-themeroot="path"
This will resolve the issue.
Cheers-
Pramod
reward points if helpful -
Open Webdynpro ABAP application from UWL
Hello Experts,
The requirement is we need to open the Custom Webdynpro ABAP application when the user clicks on the UWL tasks instead of ITS based screen.
We have created a custom workflow task. Then we maintained the task entry with Webdynpro ABAP application name in SWFVISU transaction.
After re-registering the UWL connector in Portal I could not find the Task ID in UWL definition. In UWL the task item is visible but could not open the task because the UWL could not identify the task no for this.
Am I missing something in the above steps?
Kindly help.
Kind Regards,
Nirmal Sivakumar GAny thoughts on this issue guys?
-
Testing webdynpro abap application
Hi Everyone,
Could anyone please provide me the steps for testing webdynpro-Abap application .
Thanks in advance,
Best regards,
PriyaHi Priya,
There are diffrent ways of testing ABAP Web dynpro application, this link should be helpfull for you.
SDN Demo: on testing WEB Dynpro ABAP applications https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/media/uuid/e3b19f11-0a01-0010-409d-b3951f754963
Thanks and Kind Regards
Mohan -
I want the Definitaion fo Class and its Components in ABAP . With Example
Gowri
<b>Classes</b>
Classes are templates for objects. Conversely, you can say that the type of
an object is the same as its class. A class is an abstract description of an object. You could say that it is a set of instructions for building an object. The attributes
of objects are defined by the components of the class, which describe the
state and behavior of objects.
<b>
Local and Global Classes</b>
Classes in ABAP Objects can be declared either globally or locally. You define global classes and interfaces in the Class Builder (Transaction SE24) in the
ABAP Workbench. They are stored centrally in class pools in the class library
in the R/3 Repository. All of the ABAP programs in an R/3 System can access the global classes. Local classes are defined within an ABAP program. Local classes and interfaces can only be used in the program in which they are defined. When you use a class in an ABAP program, the system first searches for a local class with the specified name. If it does not find one, it then looks for a global class. Apart from the visibility question, there is no difference between using a global class and using a local class.
There is, however, a significant difference in the way that local and global classes are designed. If you are defining a local class that is only used in a single program, it is usually sufficient to define the outwardly visible components so that it fits into that program. Global classes, on the other hand, must be able to be used anywhere. This means that certain restrictions apply when you define the interface of a global class, since the system must be able to guarantee that any program using an object of a global class can recognize the data type of each interface parameter.
The following sections describe how to define local classes and interfaces in an ABAP program. For information about how to define local classes and interfaces, refer to the Class Builder section of the ABAP Workbench Tools documentation.
<b>Defining Local Classes</b>
Local classes consist of ABAP source code, enclosed in the ABAP statements CLASS ... ENDCLASS. A complete class definition consists of a declaration part and, if required, an implementation part. The declaration part of a class <class> is a statement block:
CLASS <class> DEFINITION.
ENDCLASS.
It contains the declaration for all components (attributes, methods, events) of the class. When you define local classes, the declaration part belongs to the global program data. You should therefore place it at the beginning of the program.
If you declare methods in the declaration part of a class, you must also write an implementation part for it. This consists of a further statement block:
CLASS <class> IMPLEMENTATION.
ENDCLASS.
The implementation part of a class contains the implementation of all methods of the class. The implementation part of a local class is a processing block. Subsequent coding that is not itself part of a processing block is therefore not accessible.
<b>Structure of a Class</b>
<u>The following statements define the structure of a class:</u>
A class contains components
Each component is assigned to a visibility section
Classes implement methods
The following sections describe the structure of classes in more detail.
<b>Class Components</b>
The components of a class make up its contents. All components are declared in the declaration part of the class. The components define the attributes of the objects in a class. When you define the class, each component is assigned to one of the three visibility sections, which define the external interface of the class. All of the components of a class are visible within the class. All components are in the same namespace. This means that all components of the class must have names that are unique within the class.
There are two kinds of components in a class - those that exist separately for each object in the class, and those that exist only once for the whole class, regardless of the number of instances. Instance-specific components are known as instance components. Components that are not instance-specific are called static components.
In ABAP Objects, classes can define the following components. Since all components that you can declare in classes can also be declared in interfaces, the following descriptions apply equally to interfaces.
<b>Attributes</b>
Attributes are internal data fields within a class that can have any ABAP data type. The state of an object is determined by the contents of its attributes. One kind of attribute is the reference variable. Reference variables allow you to create and address objects. Reference variables can be defined in classes, allowing you to access objects from within a class.
<b>Instance Attributes</b>
The contents of instance attributes define the instance-specific state of an object. You declare them using the DATA statement.
<b>Static Attributes</b>
The contents of static attributes define the state of the class that is valid for all instances of the class. Static attributes exist once for each class. You declare them using the CLASS-DATA statement. They are accessible for the entire runtime of the class.
All of the objects in a class can access its static attributes. If you change a static attribute in an object, the change is visible in all other objects in the class.
<b>Methods</b>
Methods are internal procedures in a class that define the behavior of an object. They can access all of the attributes of a class. This allows them to change the data content of an object. They also have a parameter interface, with which users can supply them with values when calling them, and receive values back from them The private attributes of a class can only be changed by methods in the same class.
The definition and parameter interface of a method is similar to that of function modules. You define a method <met> in the definition part of a class and implement it in the implementation part using the following processing block:
METHOD <meth>.
ENDMETHOD.
You can declare local data types and objects in methods in the same way as in other ABAP procedures (subroutines and function modules). You call methods using the CALL METHOD statement.
<b>Instance Methods</b>
You declare instance methods using the METHODS statement. They can access all of the attributes of a class, and can trigger all of the events of the class.
<b>Static Methods</b>
You declare static methods using the CLASS-METHODS statement. They can only access static attributes and trigger static events.
<b>Special Methods</b>
As well as normal methods, which you call using CALL METHOD, there are two special methods called CONSTRUCTOR and CLASS_CONSTRUCTOR, which are automatically called when you create an object (CONSTRUCTOR) or when you first access the components of a class (CLASS_CONSTRUCTOR).
<b>Events</b>
Objects or classes can use events to trigger event handler methods in other objects or classes. In a normal method call, one method can be called by any number of users. When an event is triggered, any number of event handler methods can be called. The link between the trigger and the handler is not established until runtime. In a normal method call, the calling program determines the methods that it wants to call. These methods must exist. With events, the handler determines the events to which it wants to react. There does not have to be a handler method registered for every event.
The events of a class can be triggered in the methods of the same class using the RAISE EVENT statement. You can declare a method of the same or a different class as an event handler method for the event <evt> of class <class> using the addition FOR EVENT <evt> OF <class>.
Events have a similar parameter interface to methods, but only have output parameters. These parameters are passed by the trigger (RAISE EVENT statement) to the event handler method, which receives them as input parameters.
The link between trigger and handler is established dynamically in a program using the SET HANDLER statement. The trigger and handlers can be objects or classes, depending on whether you have instance or static events and event handler methods. When an event is triggered, the corresponding event handler methods are executed in all registered handling classes.
<b>Instance Events</b>
You declare instance events using the EVENTS statement. An instance event can only be triggered in an instance method.
<b>Static Events</b>
You declare static events using the CLASS-EVENTS statement. All methods (instance and static methods) can trigger static events. Static events are the only type of event that can be triggered in a static method.
<u>See also Triggering and Handling Events.</u>
<b>Types</b>
You can define your own ABAP data types within a class using the TYPES statement. Types are not instance-specific, and exist once only for all of the objects in a class.
<b>Constants</b>
Constants are special static attributes. You set their values when you declare them, and they can then no longer be changed. You declare them using the CONSTANTS statement. Constants are not instance-specific, and exist once only for all of the objects in a class.
<b>Visibility Sections</b>
You can divide the declaration part of a class into up to three visibility areas:
CLASS <class> DEFINITION.
PUBLIC SECTION.
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
These areas define the external visibility of the class components, that is, the interface between the class and its users. Each component of a class must be assigned to one of the visibility sections.
<b>Public Section</b>
All of the components declared in the public section are accessible to all users of the class, and to the methods of the class and any classes that inherit from it. The public components of the class form the interface between the class and its users.
<b>
Protected Section</b>
All of the components declared in the protected section are accessible to all methods of the class and of classes that inherit from it. Protected components form a special interface between a class and its subclasses. Since inheritance is not active in Release 4.5B, the protected section currently has the same effect as the private section.
<b>Private Section</b>
Components that you declare in the private section are only visible in the methods of the same class. The private components are not part of the external interface of the class.
<b>Encapsulation</b>
The three visibility areas are the basis for one of the important features of object orientation - encapsulation. When you define a class, you should take great care in designing the public components, and try to declare as few public components as possible. The public components of global classes may not be changed once you have released the class.
For example, public attributes are visible externally, and form a part of the interface between an object and its users. If you want to encapsulate the state of an object fully, you cannot declare any public attributes. As well as defining the visibility of an attribute, you can also protect it from changes using the READ-ONLY addition.
"Example :
CLASS C_COUNTER DEFINITION.
PUBLIC SECTION.
METHODS: SET_COUNTER IMPORTING VALUE(SET_VALUE) TYPE I,
INCREMENT_COUNTER,
GET_COUNTER EXPORTING VALUE(GET_VALUE) TYPE I.
PRIVATE SECTION.
DATA COUNT TYPE I.
ENDCLASS.
CLASS C_COUNTER IMPLEMENTATION.
METHOD SET_COUNTER.
COUNT = SET_VALUE.
ENDMETHOD.
METHOD INCREMENT_COUNTER.
ADD 1 TO COUNT.
ENDMETHOD.
METHOD GET_COUNTER.
GET_VALUE = COUNT.
ENDMETHOD.
ENDCLASS.
The class C_COUNTER contains three public methods - SET_COUNTER, INCREMENT_COUNTER, and GET_COUNTER. Each of these works with the private integer field COUNT. Two of the methods have input and output parameters. These form the data interface of the class. The field COUNT is not outwardly visible.
Reward points if it is usefull...
Girish -
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. -
Uploading data from Interactive form in Webdynpro ABAP
Hello All,
I am uploading data from an Offline interactive form to an ABAP WebDynpro application. Form is first downloaded, data is filled and now I am trying to upload the form to another WebDynpro application. Form DataSource is mapped to Context node with same data structure. However when I upload the form, form data does not pass automatically to specified context node.
Do I miss any important step in between? I am on SAP NetWeaver 2004s SP10.
Thanks,
Nitesh Shelar.hi,
the data is automatically passed to the context when the "interactive form" UI element is there in the view.
when you just upload the pdf, just like that, it will treat it like a PDF file, not an interactive form....
try using the same interactive form which you used to create the offline form.
i hope this helps,
regards,
-ag. -
I'd like to make a list of interactive Swing components....
EDIT: I've been doing more research about Layout Managers and it appears that BoxLayout may provide me with the solution I need. I'll mess around with it for awhile and report back if I still need help. Thanks pals!+
I would like to make a list of JPanels laid out in basically a column. One on top of the other. That's not so difficult, but I need to make it able able to add and remove panels in response to user-driven events (in other words, I can't just hard-code them all, and the panels are generated on the fly, so I don't even know how many I'll need to be displaying until I need to display them.
Here's a simple mockup of the window I'm talking about.
| - o x |
|____________|
| |
| |
| Panel1 |
| Panel2 |
| Panel3 |
| Panel4 |
|____________|At first, I thought a JList would serve my purpose, but you can't add interactive Swing components to JLists (or JTables)... they'll render, but that's all. My panels will contain a button and a checkbox, so this is a no-go.
I was also thinking I could just manage the placement with GridBagLayout and just keep indexes for the current y position, but if there's an easier way, I'd rather not go this route. It has me writing a lot of extra code and manipulating a lot of fields of GridBagConstraints, which opens me to less-understandable code and more error-prone code, on account of I'm great at making little mistakes when I'm setting craploads of constraints.
Does anyone have any ideas? It'd be ideal if there was just some sort of container I could plop them in with add and remove methods (a la JTabbedPane or something).
I'm pretty new to Swing, so maybe I'm missing something obvious.
Edited by: Caryy on Sep 30, 2010 4:15 PMI would recommend using BoxLayout or Box.createVerticalBox(). As mKorbel already mentioned, you need to call revalidate() after adding any component to an already realized/visible container, and additionally call repaint() after removing a component. To resize the top level window to accommodate its new content, you would call pack(). Or, again as suggested by mKorbel, wrap your panel/Box in a JScrollPane.
db -
Filling Activity fields from the Interactive Script WinClient
Hi Experts,
I am working with Interactive Scripting (CRMM_TM_SCRIPT) and I already defined my interactive script. I am also creating Activities after I finish with the Script in order to register a case. I am doing this by defining an Action Type CIC-AB which calls an Action Box in the Interaction Center WinClient. In the Action field I define the name of the Activity I want to call from the Action Box of the Interaction Center.
When the Agent receives a call, he navigates in the Interactive Script in order to clasify the case he is treating. At the end of the Script, the case needs to be register following the clasification made by the Agent, and thats why we are calling an Activity. The thing is that we dont want the Agent to fill again the information he just defined in the Script in the Activiy, so we want to fill certain fields of the Activiy I am calling with Information of the Interactive Script I used before, in order to save time to the Agent that Register the Case.
Can anyome shed some light on this issue?
Thanks to everyone.Alberto
You can create an activity.i.e., you can create an Order from the Interactive Script if you already created the Script structurethen follow the below steps
I think it would be helpful
Procedure:
T-Code: EWFC0
Path: SPROIMGCustomer Relationship ManagementCustomer Interaction CenterVisible ComponentsAction Box SettingsDefine Configuration Profile for Action Box.
1. Choose F4 help to select one of the Action Box profiles you have created and you want to adapt and choose change.
2. Mark the Action box Configuration and create a new Action Box Group by choosing Create transaction group.
Enter a group ID, description and icon for the new transaction group and choose Continue.
3. Mark the new transaction group and create a new Action Box transaction by choosing Create transaction.
4. Enter a transaction ID.
5. Enter a Transaction Definition section, select Workspace.
6. In the Transaction Definition section, select Workspace.
Two additional fields will appear.
7 Choose F4 in the Workspace field to select the Script.
8. Choose F4 in the profile field to select the Interactive Scripting profile that you created in the previous steps above.
9. Enter a Slot Name if desired.
10. Choose Continue.
You are automatically taken to the Maintain Data Flow screen .No data flow parameters need to be maintained for the Interactive Scripting workspace.
11. Choose Back.
12 Choose Save.
Note: Since Only Workspace of this type can be open at once, you will need to close the Automatically Created Interactive Scripting Workspace before launching the Interactive Scripting Action Box call.
Regards
Surendra
Maybe you are looking for
-
need extremely urgent help...I forgot my password on my ipad...thanks
-
Why there is a Color class in the LiveDocs?
If the old color class was gone, why in the online documentation it is still standing? http://livedocs.adobe.com/flash/9.0_it/ActionScriptLangRefV3/fl/motion/Color.html What does this class do?
-
I have an iPone4S 64GB and a 2 yr. old iPod Touch 32 GB and wish to use a case with magnets in it to hold them to the tank of my motorcycle. The cases' data sheet says do not use if the device stores information magnetically. Not being tech savey I d
-
Hi there! Can somebody help me on this issue???. I've been getting this error several times this week, but I can't find any solution. I've read many stuff about it, but all of them are about "OS issues". Does anybody know something different, or at l
-
Lvm pvcreate not working (need /dev/sda9 entry)
Hi. Here's my partition table layout: [root@arch01 gregb]# uname -a Linux arch01 2.6.20-ARCH #1 SMP PREEMPT Sat Mar 24 10:51:35 CET 2007 i686 Intel(R) Celeron(R) CPU 2.40GHz GenuineIntel GNU/Linux [root@arch01 gregb]# fdisk /dev/sda Command (m for he