Perform Sy-xform In Program Sy-xprog

15.01.2020

.-. Report: ZKBPROGS.-.

Function: Up/Download ABAP reports complete with texts.-. Change Log:. July 5, 1999.

Combined existing programs that did the upload and download into. one program. Changed format that the reports are saved in to be compatible. with Wolfgang Morgenthaler's upload/download program(YSTRASN00. at www.antarcon.de).

Major differences between this program and. Wolfgang's are:. this program does not update TRDIR with the. TRDIR entries that are in the program uploaded. Instead,.

current users stats are used.

ABAP is one of many application-specific fourth-generation languages (4GLs) first developed in the 1980s. It was originally the report language for SAP R/2, a platform that enabled large corporations to build mainframe business applications for materials management and financial and management accounting. ABAP used to be an abbreviation of Allgemeiner Berichtsaufbereitungsprozessor, the German meaning of 'generic report preparation processor', but was later renamed to Advanced Business Application Programming. ABAP was one of the first languages to include the concept of Logical Databases (LDBs), which provides a high level of abstraction from the basic database level.The ABAP programming language was originally used by developers to develop the SAP R/3 platform. It was also intended to be used by SAP customers to enhance SAP applications – customers can develop custom reports and interfaces with ABAP programming. The language is fairly easy to learn for programmers but it is not a tool for direct use by non-programmers. Good programming skills, including knowledge of relational database design and preferably also of object-oriented concepts, are required to create ABAP programs.ABAP remains the language for creating programs for the client-server R/3 system, which SAP first released in 1992.

As computer hardware evolved through the 1990s, more and more of SAP's applications and systems were written in ABAP. By 2001, all but the most basic functions were written in ABAP. In 1999, SAP released an object-oriented extension to ABAP called ABAP Objects, along with R/3 release 4.6.SAP's most recent development platform, NetWeaver, supports both ABAP and Java.ImplementationWhere Does the ABAP Program Run?All ABAP programs reside inside the SAP database. They are not stored in separate external files like Java or C programs. In the database all ABAP code exists in two forms: source code, which can be viewed and edited with the ABAP workbench, and 'compiled' code ('generated' code is the more correct technical term), which is loaded and interpreted by the ABAP runtime system.

Code generation happens implicitly when a unit of ABAP code is first invoked; it can also be requested explicitly, which is very useful in some situations, for example for mass regeneration of code after a release upgrade. If the source code is changed later or if one of the data objects accessed by the program has changed (e.g. Fields were added to a database table), then the code is automatically regenerated.ABAP programs run in the SAP application server, under control of the runtime system, which is part of the SAP kernel. The runtime system is responsible for processing ABAP statements, controlling the flow logic of screens and responding to events (such as a user clicking on a screen button). A key component of the ABAP runtime system is the Database Interface, which turns database-independent ABAP statements ('Open SQL') into statements understood by the underlying DBMS ('Native SQL'). The database interface handles all the communication with the relational database on behalf of ABAP programs; it also contains extra features such as buffering of frequently accessed data in the local memory of the application server.SAP Basis. The ABAP language environment, including the syntax checking, code generation and runtime system, is part of the SAP Basis component.

Perform Sy-xform In Program Sy-xprog Windows 7

SAP Basis is the technological platform that supports the entire range of SAP applications, now typically implemented in the framework of the SAP Web Application Server. In that sense SAP Basis can be seen as the 'operating system' on which SAP applications run. Like any operating system, SAP Basis contains both low-level services (for example memory management, database communication or servicing Web requests) and high-level tools for end users and administrators. These tools can be executables ('SAP kernel') running directly on the underlying operating system, transactions developed in ABAP, or Web-based interfaces.SAP Basis also provides a layer of abstraction between the business applications and the operating system and database. This ensures that applications do not depend directly upon a specific server or database platform and can easily be ported from one platform to another.SAP Basis currently runs on UNIX (AIX, HP-UX, Solaris, Linux), Microsoft Windows, IBM Series i (former iSeries, AS/400) and IBM zSeries (former S/390). Supported databases are DB2, Informix, MaxDB, Oracle and Microsoft SQL Server (support for Informix was discontinued in SAP Basis release 7.00).

ABAP Objects in Release 6.201. New Class for Calculating with Time Stamps2. New Variant PROVIDE FIELDS3. Creating Objects from the XSLT Processor4.

Polymorphism and Object Services5. Error Handling and Exceptions6. New Methods for Ascertaining Type Attributes7. Accessing Data References and Static Class Components in JavaScriptModification 1New Class for Calculating with Time StampsThe class CLABAPTSTMP was introduced for calculating with time stamps.Modification 2New Variant PROVIDE FIELDSThe PROVIDE FIELDS statement allows you to process internal tables without headers.

The functions of the PROVIDE statement are therefore also available under ABAP Objects. Modification 3Creating Objects from the XSLT ProcessorIt is possible to create objects and call class methods from the XSLT processor.

Now only public methods are allowed, whereas previously you could also call private and protected methods.The transfer of parameters now supports all ABAP Elementary Types, any object references, as well as the generic types CSEQUENCE and XSEQUENCE. Previously, the types C, D, F, I, N, STRING, and T were supported.The transfer has been tightened, so that for the data types D and I only valid specifications are permitted. Value losses for type P are now caught. The values of types X and XSTRING are converted into the XML standard format BASE64.Modification 4Polymorphism and Object Services. The uniqueness of object keys is now checked not only by class, but across the whole inheritance hierarchy. Additionally, the behavior of the following methods has been changed:.

The methods RELEASE and REFRESHPERSISTENT behave polymorphically, so that objects of subclasses can also be handled. The methods GETPERSISTENT and DELETEPERSISTENTnow access a table of the root class first, to optimize the type determination.

Because the type is now stored over several transactions, it can no longer be changed. By searching in the tables of the root class, the methods CREATEPERSISTENT and CREATETRANSIENT now check whether the object key exists in another class of the inheritance hierarchy.Modification 5Error Handling and ExceptionsThe Interfaces IFABAPMESSAGE and IFABAPSERIALIZABLEOBJECT have been added to the class CXROOT, which is the global superclass for all exceptions.

They format texts from classes, implemented by these interfaces, as Message Texts. You can use the GETLONGTEXT method to obtain the long text for the exception text.Modification 6New Methods for Ascertaining Type AttributesTwo new methods have been introduced for ascertaining type attributes at runtime (RTTI):. The ISREADONLY method ascertains whether a referenced data object is write-protected. The method APPLIESTODATAREF carries out a type check between the description object and the data object. This allows you to ascertain the compatibility of data objects.Modification 7Accessing Data References and Static Class Components in JavaScriptBinding JavaScript objects to ABAP Objects has been extended to allow you to access data reference variables and static components (attributes and methods) of classes. In bound internal tables, you can delete rows using the JS method deleteLines and the JS method append has been renamed appendLine. Structure Enhancements in SAP Release 6.20Since Release 3.0, customers have been able to make changes to SAP's ABAP Dictionary structures and tables using Customizing includes or appends.

However, these changes can cause problems in programs with an active Unicode Check. For example, if a purely character-type structure is enhanced, it can lose its character-type nature and hence its Fragment View is changed.For Release 6.20, it has therefore been made possible to classify Dictionary structures and tables, so that problems resulting from structure enhancements can be easily recognized and dealt with. This classification is used in the ABAP program check to indicate all parts of the source code that will cause problems with structure enhancements - that is, where structure enhancements will cause a syntax error or change program behavior. The Dictionary categories and their effect in ABAP programs are described in the chapter Structure Enhancements. New Exceptions that Can Be Handled in Release 6.201.

Exceptions that Can Be Handled and Method Calls2. Exceptions that Can Be Handled and Function Module Calls3. Exceptions that Can Be Handled and Widening Cast4.

Exceptions that Can Be Handled and CALL TRANSFORMATION5. Exceptions that Can Be Handled and GENERATE REPORT SUBROUTINE POOL6. Exceptions that Can Be Handled and SCAN7. Exceptions that Can Be Handled and Open SQL8. Exceptions that Can Be Handled and EXPORT TO SHARED MEMORY9. Exceptions that Can Be Handled and PROVIDEModification 1Exceptions that Can Be Handled and Method CallsFor CALL METHOD the following exceptions can now be handled, having been assigned to existing exception classes:.

CALLMETHODNOTIMPLEMENTED. CALLMETHODNOTACCESSIBLE.

CALLMETHODCONFLICTTABTYPE. CALLMETHODCONFLICTGENTYPE. CALLMETHODCONFLICTTYPEModification 2Exceptions that Can Be Handled and Function Module CallsFor CALL FUNCTION the following exceptions can now be handled, having been assigned to existing exception classes. EXTRA ( SAP Release 6.20 )1. DAYLIGHT SAVING TIME for CONVERT TIME STAMP2.

Sy-xprog

AS PERSON TABLE for Infotypes3. TO/FROM INTERNAL TABLE for EXPORT/IMPORT4. CONNECTION for Open SQL5. SOURCE for CALL TRANSFORMATIONModification 1DAYLIGHT SAVING TIME for CONVERT TIME STAMPThe addition DAYLIGHT SAVING TIME dst has been added to the CONVERT TIME STAMP tst statement This addition returns a flag in the data object dst that informs whether the time tst is within daylight saving (summer) time.Modification 2AS PERSON TABLE for InfotypesThis addition causes an internal table of personal data to be created when Infotypes nnnn is declared. The internal table receives the name PPnnnn, unless it was explicitly specified using the NAME addition.Modification 3TO/FROM INTERNAL TABLE for EXPORT/IMPORTThe variant EXPORT. TO INTERNAL TABLE itab allows you to store cluster data in the internal table itab.

Using the variant IMPORT. FROM INTERNAL TABLE itab you can reimport the data you stored.Modification 4CONNECTION for Open SQLThe CONNECTION addition allows all Open SQL statements to use databases other than the standard database, as long as these databases are supported by SAP.Modification 5SOURCE for CALL TRANSFORMATIONThe SOURCE addition allows the serialization of ABAP data and objects in a canonical XML format, where the XSLT processor is directly connected to the serialization. The result of this XSLT transformation can be displayed as an XML document or be converted back into ABAP data and objects. DAYLIGHT SAVING TIME for CONVERT TIME STAMP2. AS PERSON TABLE for Infotypes3. TO/FROM INTERNAL TABLE for EXPORT/IMPORT4. CONNECTION for Open SQL5.

SOURCE for CALL TRANSFORMATIONModification 1DAYLIGHT SAVING TIME for CONVERT TIME STAMPThe addition DAYLIGHT SAVING TIME dst has been added to the CONVERT TIME STAMP tst statement This addition returns a flag in the data object dst that informs whether the time tst is within daylight saving (summer) time.Modification 2AS PERSON TABLE for InfotypesThis addition causes an internal table of personal data to be created when Infotypes nnnn is declared. The internal table receives the name PPnnnn, unless it was explicitly specified using the NAME addition.Modification 3TO/FROM INTERNAL TABLE for EXPORT/IMPORTThe variant EXPORT. TO INTERNAL TABLE itab allows you to store cluster data in the internal table itab.

Using the variant IMPORT. FROM INTERNAL TABLE itab you can reimport the data you stored.Modification 4CONNECTION for Open SQLThe CONNECTION addition allows all Open SQL statements to use databases other than the standard database, as long as these databases are supported by SAP.Modification 5SOURCE for CALL TRANSFORMATIONThe SOURCE addition allows the serialization of ABAP data and objects in a canonical XML format, where the XSLT processor is directly connected to the serialization. The result of this XSLT transformation can be displayed as an XML document or be converted back into ABAP data and objects.

Display of Work Areas2. Selected Variables3. SNAP VariablesModification 1Display of Work AreasThe system now only displays processed work areas, and the data area directory no longer exists. Instead you only see the directory of application tables including their administration information.Modification 2Selected VariablesThe display of selected variables has been extended. You can now see the data for all call levels, whereas previously only the uppermost call level was displayed. You can see a display of all active calls under application calls.Modification 3SNAP VariablesThe SNAP variable list contains the data for the short dump in compact form, without explanatory text.

This data can be stored locally on the front end. Due to the shortened display, this format is suitable for sending, for example as an attachment in a customer problem message. Parameter INITIAL SIZE for Internal Tables2. Relevant Language Key in Dictionary Structures3.

New Functions in Extended Program Check4. Handling IMPORTING Parameters with CREATE5. Secondary Language Access for Text Elements6. Local SAP Memory for SET/GET PARAMETER7. System field SY-TOCCU obsoleteModification 1Parameter INITIAL SIZE for Internal TablesAn internal table created in the ABAP Dictionary as a data type can be assigned an initial number of rows. This specification in the Dictionary has the same effect as the INITIAL SIZE addition in the ABAP source code. Therefore, all the specifications that describe a table, such as table type, key, row number and typ, are also available in the Dictionary.Modification 2Relevant Language Key in Dictionary StructuresFor the error-free conversion of data that is swapped between Unicode and non-Unicode systems, you can specify the structure components responsible for the relevant language key in the ABAP Dictionary.

Tools in Release 6.201. Code Inspector2. Run Time Monitor3. DebuggerModification 1Code InspectorThe Code Inspector is a tool that allows you statically check ABAP programs, function modules, classes, interfaces, and Dictionary objects for errors, performance, security, and reliability.

The development of these Repository objects is supported by simple search and check functions. The check results are available in form of a tree hierarchyThe Code Inspector is called for a single object from the ABAP Editor by choosing Program → Check → Code Inspector, from the Function Builder by choosing Function Module → Code Inspector, or from the Class Builder by choosing Object Type → Check → Code Inspector. If you wish to check several Repository objects, for example all development classes in a package, then these can be grouped together in an object set. You also have the possibility of defining check variants with individual checks. A check of all objects in an object set using a specified check variant is called an inspection.The Code Inspector executes purely static checks that only return hints and clues for an object. The actual runtime behavior can be ascertained using Runtime Analysis or SQL Trace.Modification 2Run Time MonitorThe Run Time Monitor is a framework that supports the recording of ABAP program information at runtime.

This information can come from tests that are fixed in the SAP kernel. ABAP programmers can also query and log specific program conditions at runtime.With Test Create ABAP Test, the Runtime Monitor creates a class, which can be called to record data in the source code.

Sy-xprog

The data is first compressed in the main memory and periodically transferred to the database in a background job. The tests can be individually activated and deactivated for different servers. Compressing and saving the data hardly affects the application server, which means the Runtime Monitor can be used at any time, even in a production operation.Modification 3DebuggerThe display of the memory consumption of dynamic objects has been divided into an overview of the total memory consumption and ranked lists for individual objects.

You can compile the ranked lists according to specific criteria by choosing the function Change Settings. You now display the memory consumption by choosing Goto- Status Displays - Memory Consumption.Breakpoints are then differentiated by whether they are effective in an HTTP or standard session. HTTP debugging is activated in the Editor by choosing Utilities → Settings → HTTPDebugging. Depending on the setting, the system then displays either the HTTP or standard breakpoints in the Editor.If, under Settings, you selected the function Check Sorting Before READ BINARY SEARCH, the system checks, before every execution of this statement, whether the internal table is sorted. If the table is not sorted, a Runtime Error occurs. ABAP ProgrammingConstantsSY-ABCDEContains the alphabet. You can use this field with offset to retrieve a letter of the alphabet regardless of codepage.SY-ULINEContains a horizontal line with length 255 that you can use when creating lists.SY-VLINEContains a vertical line ( ) that you can use when creating lists.LoopsSY-INDEXIn a DO or WHILE loop, SY-INDEX contains the number of loop passes including the current pass.StringsSY-FDPOSLocation of hit in string operations.

When you use CO,CN, CA, NA, CS, NS, CP, and NP, offset values are assigned to SYFDPOS depending on the search result. SEARCH FOR sets SY-FDPOS to the offset of the search string. Internal TablesSY-TABIXCurrent line of an internal table. SY-TABIX is set by the statements below, but only for index tables.

The field is either not set or is set to 0 for hashed tables. APPEND sets SY-TABIX to the index of the last line of the table, that is, it contains the overall number of entries in the table. COLLECT sets SY-TABIX to the index of the existing or inserted line in the table. If the table has the type HASHED TABLE, SY-TABIX is set to 0. LOOP AT sets SY-TABIX to the index of the current line at the beginning of each loop lass. At the end of the loop, SY-TABIX is reset to the value that it had before entering the loop.

It is set to 0 if the table has the type HASHED TABLE. READ TABLE sets SY-TABIX to the index of the table line read.

If you use a binary search, and the system does not find a line, SY-TABIX contains the total number of lines, or one more than the total number of lines. SY-INDEX is undefined if a linear search fails to return an entry. SEARCH FOR sets SY-TABIX to the index of the table line in which the search string is found. SY-TFILLAfter the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TFILL contains the number of lines in the relevant internal table.SY-TLENGAfter the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TLENG contains the length of the lines in the relevant internal table.SY-TOCCUAfter the statements DESCRIBE TABLE, LOOP AT, and READ TABLE, SY-TLENG contains the initial amount of memory allocated to the relevant internal table.Database AccessSY-DBCNTSQL statements set SY-DBCNT to the number of table entries processed.

In an Open SQL SELECT loop, SY-DBCNT is not set until after the ENDSELECT statement. In Native SQL, SYDBCNT is not set until after the ENDEXEC statement. DELETE sets SY-DBCNT to the number of deleted lines. FETCH sets SY-DBCNT to the number of lines read by the corresponding cursor. INSERT sets SY-DBCNT to the number of lines inserted. MODIFY sets SY-DBCNT to the number of lines processed.

UPDATE sets SY-DBCNT to the number of lines changed. Return CodeSY-SUBRCReturn code, set by the following ABAP statements. ScreensScreensA group of system fields is set in the PAI event of each screen. With the exception of SY-DATAR, SY-LOOPC, and SY-STEPL, you can also use all of them in interactive list processing.SY-CUCOLHorizontal cursor position. Counter begins at column 2.SY-CUROWVertical cursor position.

Perform sy-xform in program sy-xprog windows 7

Counter begins at line 1.SY-DATARX if at least one input field on the screen was changed by the user or other data transport, otherwise space.SY-LOOPCNumber of lines currently displayed in a table control.SY-PFKEYGUI status of the current screen. This can be set in the PBO event using the SET PF-STATUS statement.SY-SCOLSNumber of columns on the current screen.SY-SROWSNumber of rows on the current screen.SY-STEPLIndex of the current line in a table control. This is set in each loop pass. SY-STEPL does not have a meaningful value outside the loop (for example, during the POV event for a table line).SY-TITLEText that appears in the title bar of the screen.

This is the program name for selection screens and lists, and SAP R/3 otherwise. Can be set using the SET TITLEBAR statement.SY-UCOMMFunction code that triggered the PAI event. There is a unique function code assigned to every function that triggers the PAI event with one exception: ENTER triggers the PAI, and various function codes can be passed to SY-UCOMM:. If the user has entered a command in the command field, this is passed to SY-UCOMM.

If there is no entry in the command field and a function code has been assigned to the ENTER key, this function code is passed to SY-UCOMM. If there is no entry in the command field and there is no function key assigned to the ENTER. key, the content of SY-UCOMM remains unchanged.

Selection ScreensSY-SLSETVariant used to fill the selection screen.Creating ListsWhen you create a list, you can use the following system fields to control navigation. They help you to ensure that output statements do not overwrite existing output, or that data is not written outside the list. The system fields SY-COLNO and SY-LINNO always contain the current output position, and they are reset by each output statement.

The other system fields contain other values used for creating lists.SY-COLNOCurrent column during list creation. The counter begins at 1. The field is set by the following output statements:. WRITE, ULINE, and SKIP set SY-COLNO to the next output position.

BACK sets SY-COLNO to 1. POSITION sets SY-COLNO to. If is beyond the page border, any subsequent output statements are ignored. NEW-LINE sets SY-COLNO to 1. NEW-PAGE sets SY-COLNO to 1. SY-LINNOCurrent line during list creation.

The counter begins at 1, and includes the page header.SYLINNO is set by the following output statements:. WRITE, ULINE, and SKIP increase SY-LINNO by one at each line break. BACK sets SY-LINNO to the first line following the page header. If you use BACK with RESERVE, SY-LINNO is set to the first line of a block.

NEW-LINE increases SY-LINNO by one. SKIP TO LINE sets SY-LINNO to. If is not between 1 and the length of the page, the statement is ignored. SY-TVAR9You can assign values to these variables in your programs. Their contents replace the placeholders in the list and column headers of the program in the TOP-OF-PAGE event.SY-WTITLThe REPORT, PROGRAM, and FUNCTION-POOL statements set this variable to N if you use the NO STANDARD PAGE HEADING addition.

Otherwise, it has the value space. NEW-PAGE does not set SY-WTITL.List ProcessingThe following system fields are filled at each interactive list event and at the READ LINE statement:SY-CPAGEPage number of the topmost page in the display of the list on which the event was triggered.

The counter begins at 1.SY-LILLILine at which the event was triggered. The counter begins at 1 and includes the page header.SY-LISELContents of the line in which the event was triggered (restricted to the first 255 characters).SY-LISTIIndex of the list in which the event was triggered.SY-LSINDIndex of the list currently being created. The basic list has SY-LSIND = 0, detail lists have SYLSIND 0.

The field is automatically increased by one in each interactive list event. You may change the value of SY-LSIND yourself in the program to enable you to navigate between lists. Changes to SY-LSIND do not take effect until the end of a list event. It is therefore a good idea to place the relevant statement at the end of the corresponding processing block.SY-LSTATProgram-controlled name for list levels. You can assign values to SY-LSTAT during list creation.

The value of SY-LSTAT when the list is finished is saved with the list. In an interactive list event, SY-LSTAT is set to the value assigned to it during creation of the list in which the event occurred. SY-LSTAT is no longer maintained, and you should not use it in your programs.SY-STACONumber of the first displayed column of the list from which the event was triggered. The counter begins at 1.SY-STARONumber of the topmost displayed line of the topmost displayed page of the list from which the event was triggered.

The counter begins at 1, not including the page header.Printing ListsWhen you print lists, the spool and runtime systems require certain internal information that is set in the following system fields when you start printing.SY-CALLRContains a value indicating where printing was started, for example, NEW-PAGE for programcontrolled printing, or RSDBRUNT for printing from a selection screen.SY-PRDSNContains the name of the spool file during printing.SY-SPONOContains the spool number during printing.SY-MAROW, SY-MACOLThe SET MARGIN statement fills the system fields SY-MAROW and SY-MACOL. These determine the number of lines in the top margin and the number of columns in the left-hand margin respectively.Print ParametersThe print parameters are passed to the spool system by the runtime environment, using a structure with the ABAP Dictionary type PRIPARAMS. Before this structure existed, system fields were used instead. When you start printing, some of the fields from PRIPARAMS are still written into system fields with the same names. However, you should not use these system fields yourself.MessagesWhen the MESSAGE statement occurs, the following system fields are set. Internal System FieldsInternal system fields are exclusively for internal use in the ABAP runtime environment and the system kernel.