- 1 ABAP
- 2 activity group
- 3 Add-On Patch
- 4 ADO
- 5 ALE
- 6 Alert Monitor
- 7 API
- 8 Application data
- 9 Application server
- 10 ArchiveLink
- 11 ASAP
- 12 Background processing
- 13 BAPI
- 14 Batch input
- 15 CATT
- 16 CCMS
- 17 Change and Transport Organizers (CTO)
- 18 Client copy
- 19 Client-specific
- 20 Component Patch
- 21 Controlled Availability (CA)
- 22 Correction R/3 Release
- 23 CPI-C
- 24 Cross-client
- 25 Customer development
- 26 Customizing
- 27 Data archiving
- 28 Database
- 29 DBA
- 30 Delta Customizing
- 31 development class
- 32 development system
- 33 dialog box
- 34 dialog work process
- 35 dispatcher
- 36 EDI
- 37 enhancement
- 38 External system
- 39 Functional R/3 Release
- 40 General Availability (GA)
- 41 SAP GUI
- 42 high availability
- 43 IDoc type
- 44 Implementation Guide (IMG)
- 45 Import buffer
- 46 Industry Solution (IS)
- 47 Integration system
- 48 Internet Transaction Server (ITS)
- 49 Legacy system
- 50 Local change request
- 51 Local object
- 52 Locks
- 53 Logical system
- 54 Manual transport
- 55 Master data
- 56 Modification
- 57 Name range
- 58 namespace
- 59 Object checks
- 60 Object directory
- 61 OCS
- 62 Original object
- 63 Presentation server
- 64 Production system
- 65 Profile Generator
- 66 Project IMG
- 67 Quality assurance system
- 68 R/3
- 69 R3trans
- 70 RDBMS
- 71 RDDIMPDP
- 72 Release
- 73 Release Customizing
- 74 Repair
- 75 Repository Browser
- 76 Repository object
- 77 Repository switch
- 78 Return code
- 79 RFC
- 80 SAP Business Warehouse Patch
- 81 SAP Notes
- 82 SAP Patch Manager (SPAM)
- 83 SAP Reference IMG
- 84 SAPGUI
- 85 SAProuter
- 86 Session
- 87 Shared memory
- 88 SID
- 89 Software component
- 90 SPAM Update
- 91 Standard transport layer
- 92 Support Package
- 93 System copy
- 94 System landscape
- 95 Table logging
- 96 Target group
- 97 Task
- 98 Transaction code
- 99 Transaction data
- 100 Transport
- 101 Transport control program (tp)
- 102 Transport directory
- 103 Transport domain
- 104 Transport group
- 105 Transport layer
- 106 Transport log
- 107 Transport Management System (TMS)
- 108 Unit testing
- 109 User master data
- 110 Version database
- 111 view
- 112 Virtual system
- 113 Workbench change request
- 114 Workbench Organizer (WBO)
Advanced Business Application Programming. Programming language of the R/3 System.
Central storage facility containing metadata (data about data) for all objects in the R/3 System. The ABAP Dictionary describes the logical structure of application development objects and their representation in the structures of the underlying relational database. All runtime environment components such as application programs or the database interface get information about these objects from the ABAP Dictionary. The ABAP Dictionary is an active data dictionary and is fully integrated into the ABAP Workbench.
ABAP Workbench tool for developing and maintaining ABAP programs, function modules, screen flow logic, type groups, and logical databases. Besides normal text operations (such as insert, search, and replace), the ABAP Editor offers several special functions to support program development.
SAP?s integrated graphical programming environment. The ABAP Workbench supports the development of and changes to R/3 client/server applications written in ABAP. You can use the tools of the ABAP Workbench to write ABAP code, design screens, create user interfaces, use predefined functions, get access to database information, control access to development objects, test applications for efficiency, and debug applications.
Process that makes a runtime object available. The effect of activation is to generate runtime objects, which are accessed by application programs and screen templates.
Subset of actions from the set of actions that were defined in the Enterprise IMG. From the activity group, you can use the Profile Generator to generate the authorizations needed by R/3 users for these actions.
Support Packages that are component patches for add-on software. They are specific to an add-on of a particular R/3 Release. They contain corrections for only the specific add-on.
Application defined object.
Application Link Enabling. ALE is a technology for building and operating distributed applications. The basic purpose of ALE is to ensure a distributed, but integrated, R/3 installation. It comprises a controlled business message exchange with consistent data storage in non permanently connected SAP applications. Applications are integrated not through a central database, but through synchronous and asynchronous communication.
ALE consists of three layers:
- Application services
- Distribution services
- Communication services
ALE Customizing Distribution
Process that enables you to ensure that the Customizing settings related to ALE scenarios are identical on the different R/3 Systems in the system landscape.
A tool that enables you to monitor all actions that have been performed with TMS and that draws your attention to critical information.
Application Programming Interface. Software package used by an application program to call a service provided by the operating system?for example, to open a file.
Client-specific data that comprises master data and business transactional data.
A computer on which at least one R/3 instance runs.
Integrated into the Basis component of the R/3 System, a communications interface between the R/3 applications and external components. ArchiveLink has the following interfaces: user interface, interface to the R/3 applications, and interface to external components (archive systems, viewer systems, and scan systems).
A logical object comprising related business data in the database that is read from the database using an archiving program. After it has been successfully archived, a logical object can be deleted by a specially generated deleting program.
AcceleratedSAP. Standardized procedural model to implement R/3.
Processing that does not take place on the screen. Data is processed in the background, while other functions can be executed in parallel on the screen. Although the background processes are not visible for a user and are run without user intervention (there is no dialog), they have the same priority as online processes.
Business Application Programming Interface. Standardized programming interface that provides external access to business processes and data in the R/3 System.
Method and tools for rapid import of data from sequential files into the R/3 database.
Computer Aided Test Tool. You can use this tool to generate test data, and automate and test business processes.
Computing Center Management System. Tools for monitoring, controlling, and configuring the R/3 System. The CCMS supports 24-hour system administration functions from within the R/3 System. You can analyze the system load and monitor the distributed resource usage of the system components.
Change and Transport Organizers (CTO)
The Organizers in the R/3 System for managing change requests as a result of development efforts in the ABAP Workbench and Customizing activities in the IMG. It comprises the Workbench Organizer, the Customizing Organizer, and the Transport Organizer.
Change and Transport System (CTS)
Tools used to manage changes and development in the R/3 System and their transport to other R/3 Systems. It comprises the Change and Transport Organizers, the Transport Management System, and the operating system level programs, tp, and R3trans.
Information source in the Workbench Organizer and Customizing Organizer that records and manages all changes made to R/3 Repository objects and Customizing settings during an R/3 implementation project.
Function that allows you to copy a client in the same R/3 System (a local client copy) or to another R/3 System (a remote client copy). Client copy profiles determine what will be copied: Customizing data, business application data, and/or user master records.
Client copy according to a transp. request
Functionality with which you can transport client-specific objects of either a change request or a task between clients in the same R/3 System.
Client copy profile
A profile that enables you to copy certain data (e.g., Customizing data, application data, or user master records) from a client into another client. SAP provides all possible profiles and requires that you select the appropriate one for what you need to copy from one client to another.
Specific only to one client. Settings in client-specific tables relate only to the client that was accessed during the logon process. Such tables contain the client number in the table?s primary key. Client-specific is synonymous with the formerly used term client-dependent.
Client-specific transport route
A transport route that consolidates or delivers to an R/3 System and client combination rather than simply an R/3 System. Client-specific transport routes are available with extended transport control in R/3 Release 4.5.
A type of Support Package that applies to a particular software component (SAP_BASIS, SAP_HR, SAP_APPL …) and contains corrections to errors in the Repository and ABAP Dictionary in this component only.
Controlled Availability (CA)
Related to phase FCP in the R/3 Release Strategy. In this phase, a new R/3 Functional Release is available. R/3 Functional Releases are available only for a limited number of customers.
Correction R/3 Release
Corrections used primarily to support the continuous improvement of software quality rather than introduce new functionality are collected together in Correction Releases. SAP provides Support Packages for Correction Releases that correct several types of software errors. SAP recommends a Correction R/3 Release for production activities.
Common Programming Interface-Communication. Programming interface?the basis for synchronous, system-to-system, program-to-program communication.
Relevant for all clients in an R/3 System. Cross-client is synonymous with the formerly used term client-independent.
Additions to the standard, delivered SAP software using the ABAP Workbench. Customer developments involve creating customer-specific objects using the customer?s name range and namespace.
Adjusting the R/3 System to specific customer requirements by selecting variants, parameter settings, etc.
Customizing change request
Change request for recording and transporting changed system settings from client-specific tables.
Customizing Cross-System Viewer
The client comparison tool as of R/3 Release 4.5. In addition to determining the differences in Customizing settings, the Customizing Cross-System Viewer provides for the correction/adjustment of differences. It is often simply referred to as the Cross-System Viewer.
Removing data that is currently not needed from the R/3 database and storing it in archives (see ?archiving object?).
Set of data (organized, for example, in files) for permanent storage on the hard disk. Each R/3 System has only one database.
An administrative unit that allows access to a database. A database instance consists of database processes with a common set of database buffers in shared memory. There is normally only one database instance for each database. DB2/390 and Oracle Parallel Server are database systems for which a database can be made up of multiple database instances. In an R/3 System, a database instance can either be alone on a single computer or together with one or possibly more R/3 instances.
Customizing activities that the customer needs to do to be able to use new functionality in the business application components after an R/3 Release upgrade. While Upgrade Customizing is mandatory for existing functionality, Delta Customizing is only necessary to make use of new functionality.
A grouping of R/3 Repository objects belonging to a common area. Unlike the objects in a change request, the grouping is logical rather than temporal. The development class is assigned a transport layer to ensure that all objects have the same consolidation route.
System in a system landscape where development and Customizing work is performed.
Window that is called from a primary window and displayed in front of that window.
dialog work process
R/3 work process to process requests from users working online.
The process that coordinates the work processes of an R/3 instance.
Electronic Data Interchange. Electronic interchange of structured data (for example, business documents) between business partners in the home country and abroad who may be using different hardware, software, and communication services.
Enhancements generally consist of user exits provided by SAP in the program code to call up external customer-developed programs. The source code of the SAP standard R/3 Release does not need to be changed, as the connected customer objects also lie in the customer name range. The advantage of using enhancements is that during a subsequent upgrade, you do not need to perform a modification adjustment. Enhancements are not affected by upgrading to a new R/3 Release.
An R/3 System defined from within TMS for which no physical system exists. As with virtual systems, an import queue is maintained for them if defined as part of a transport layer. Unlike virtual systems, external systems have their own transport directory that may be explicitly defined.
Functional R/3 Release
An R/3 Release that introduces improved business processes and/or new technology into the R/3 System. Functional Releases are delivered upon request to those customers who want to test the new functionality. For Functional Releases, SAP provides Support Packages that correct major software errors. SAP recommends not using a Functional R/3 Release for production activities.
General Availability (GA)
A phase in the R/3 Release Strategy in which a new R/3 Correction Release is available to all customers.
Graphical User Interface. The medium through which a user can exchange information with the computer. You use the GUI to select commands, start programs, display files, and perform other operations by selecting function keys or buttons, menu options, and icons with the mouse.
Property of a service or a system that remains in production operation for most of the time. High availability for an R/3 System means that unplanned and planned downtimes are reduced to a minimum. Good system administration is decisive here. You can reduce unplanned downtime by using preventive hardware and software solutions that are designed to reduce single points of failure in the services that support the R/3 System. You can reduce the planned downtime by optimizing the scheduling of necessary maintenance activities.
Internal document in SAP format, into which the data of a business process is transferred. An IDoc is a real business process formatted in the IDoc type. An IDoc type is described by the following components:
- A control record: Its format is identical for all IDoc types.
- One or more data records:A record consists of a fixed administration segment and the data segment. The number and format of the segments differ for different IDoc types.
- Status records: These records describe stages of processing that an IDoc can go through. The status records have the same format for all IDoc types.
Implementation Guide (IMG)
A tool for making customer-specific adjustments to the R/3 System. For each application component, the Implementation Guide contains:
- All steps to implement the R/3 System
- All default settings and all activities to configure the R/3 System
- A hierarchical structure that maps the structure of the R/3 application components
- Lists of all the documentation relevant to the implementation of the R/3 System
A file at the operating system level containing the list of change requests to be imported into a specific R/3 System. This file resides in the transport directory?buffer. The terms?import buffer?and?import queues?are often used interchangeable.
Import options that can be assigned either from within TMS import functionality or when using the?tp?command. They are used to cause specific rules of the Change and Transport System (CTS) to be ignored. Traditionally, transport options are known as unconditional modes.
The import queue in R/3 reflects the operating system level import buffer and contains the list of requests that will be imported during the next?import all?process. Because of end marks and nonstandard change requests, there may be more requests in the import buffer than are highlighted in the import queue. The terms?import buffer?and?import queues?are often used interchangeable.
Industry Solution (IS)
Industry-specific applications for R/3. For example, IS-H (IS Hospital), IS-RE (IS Real Estate), or IS-PS (IS Public Sector).
System in the system landscape where developments and Customizing are carried out and then transported to the consolidation system. Each R/3 Repository object is assigned to an integration system through its development class and transport layer.
Internet Transaction Server (ITS)
Gateway between the R/3 System and the World Wide Web.
Typically refers to a customer?s previous system (for example, a mainframe system). The data in this system has to be reformatted before it is imported into a new system (for example, into a client/server system such as R/3).
Local change request
Change request that cannot be transported to other R/3 Systems.
A Repository object assigned to a local development class such as the development class $TMP. Local objects are local to the R/3 System on which they are created and cannot be transported.
The locking of data during transaction processing and R/3 Repository objects during development work.
- If a user changes a data record with a transaction or changes a Repository object, the same record or object cannot be accessed simultaneously by a second user. The record or object is locked for the duration of processing (ENQUEUE), and only afterwards is it released or unlocked (DEQUEUE).
- Repository objects are locked in Workbench change requests until the change request is released.
A way of representing a client in an R/3 System without having to define the R/3 System. Logical systems allow applications to run with a common data basis. In SAP terms, a logical system is a client defined in a database. Logical systems can exchange messages and can be used, for example, by ALE.
The recording of Customizing changes to a change request using a manual rather than an automatic method. Some IMG activities can only be transported using a manual transport option.
Master data is a type of application data that changes infrequently, but is required for the completion of most business transactions. Examples of master data include lists of customers, vendors, and materials, and even the company?s chart of accounts.
Change made by a customer to SAP-owned R/3 Repository objects. During an R/3 Release upgrade, modifications may require the new SAP standard to be adjusted.
Functionality designed to help manage the repair of a Repository object using the ABAP Workbench tools. The Modification Assistant guides the change process to ensure that changes are well documented, original forms of the objects are preserved, and the change request to which the changes are recorded is indicated.
A name range is an interval in a namespace. The name range for customer programs is the set of program names beginning with Y or Z. Customer name ranges can be reserved in view V_TRESN.
Set of all names that satisfy the specific properties of the namespace. A namespace is defined by a prefix SAP provides to the customer or complementary software partner.
When activated, object checks subject Repository objects in a change request to checks, such as a syntax check for ABAP programs, prior to the release of the change request.
Catalog of R/3 Repository objects that contains the following information: object type, object name, original system, person responsible, and development class.
List of R/3 Repository objects and/or Customizing objects in change requests or tasks. Whenever changes are made, objects are added to the object list of a task. When a task is released, its object list is placed in the object list of the request to which it is assigned.
Online Correction Support. OCS is a global term comprising various tools designed to help you support your production environment by supplying Support Packages.
The original of an object is normally the version maintained in the development system. Because all changes and developments are made using the original, it may never be overwritten by a transport.
A computer providing GUI services.
System that contains an enterprise?s active business processes. This is where ?live? production data is entered.
Automatically generates an authorization profile based on the activities in an activity group.
Subset of the Enterprise IMG, containing only the documentation for the Enterprise IMG components required in a particular Customizing project.
Project IMG views
Subset of a Project IMG, containing, for example, all mandatory activities for the project.
Quality assurance system
System in which final testing is carried out. Tested, stable development objects and Customizing settings are transported into the quality assurance system from the development system at times defined for final testing. After verification and sign-off, development objects and Customizing settings are delivered to the production system.
The full form of SAP R/3 is SAP Realtime, Version 3.
Group of resources such as memory and work processes, usually in support of a single application server or database server in an R/3 client/server environment. Instance processes share a common set of buffers and are controlled by the same dispatcher process. An R/3 System can consist of one or more instances.
Central storage facility for all development objects in the ABAP Workbench. These development objects include ABAP programs, screens, and documentation.
R/3 runtime environment
Set of programs that must be available for execution at runtime. The ABAP interpreters in the runtime environment do not use the original of an ABAP program. Rather, they use a copy generated once only during runtime (early binding). Runtime objects, such as programs and screens, are automatically regenerated (late binding) when a time stamp comparison between the object and the ABAP Dictionary detects a difference.
Consists of a central instance offering the services DVEBMGS (dialog, update, enqueue, background processing, message, gateway, spool), a database instance, optional dialog instances offering the service D (dialog), and optional PC frontends.
R/3 System service
Logical function required to support the R/3 System, such as the database service and the application services, which may include the services Dialog, Update, Enqueue, Batch, Message, Gateway, and Spool.
R/3 Upgrade Assistant
Support tool for R/3 upgrades. The R/3 Upgrade Assistant provides one or more graphical user interfaces for the upgrade control program. It also permits you to execute an R/3 upgrade remotely and monitor its status.
A transport utility at the operating system level for the transport of data between R/3 Systems.?R3trans?is also used for the installation of new R/3 Systems, for migration to different R/3 Releases, and for logical backups. Other programs usually call?R3trans, in particular the transport control program?tp?and the upgrade control program?R3up.
Relational Database Management System.
Background job that is scheduled event-periodic. It starts the background jobs that are required for transports. RDDIMPDP is triggered by?tp,?which uses the executable?sapevt?on the operating system level to send event SAP_TRIGGER_RDDIMPDP. RDDIMPDP is also known as transport daemon and transport dispatcher.
The process by which the owner of a change request or task indicates that the contents of the change request or task have been unit tested. Release of a change request of either type Transportable or Customizing initiates the export process.
Only those IMG activities affected by a given R/3 Release upgrade in the business application components concerned are presented for processing. SAP distinguishes between Upgrade Customizing (corrected or amended functionality) and Delta Customizing (new functionality) for R/3 Release upgrades.
An R/3 Repository object that is changed in a system other than its original system is entered in a repair. All modifications of SAP standard objects are repairs, because the customer?s system is not the original system for SAP objects.
ABAP Workbench navigation tool for managing development objects. The user interface of the Repository Browser resembles a file manager where development objects are grouped together in object lists in a hierarchical structure.
Object in the R/3 Repository. Repository objects are development objects of the ABAP Workbench.
A procedure during an R/3 upgrade that replaces an existing R/3 Repository with a new R/3 Repository.
Value that indicates whether a tool (either within R/3 or on the operating system level) ran successfully, with warnings, or with errors.
Remote Function Call. RFC is an SAP interface protocol, based on CPI-C. It allows the programming of communication processes between systems to be simplified considerably. Using RFCs, predefined functions can be called and executed in a remote system or within the same system. RFCs are used for communication control, parameter passing, and error handling.
SAP Business Warehouse Patch
Support Packages that contain a collection of corrections for the SAP Business Information Warehouse (SAP BW) component.
SAP?s announcements of corrections or enhancements to R/3. Often, an SAP Note provides solutions, or a solution will be provided in a Support Package.
SAP Patch Manager (SPAM)
SPAM is the R/3 System interface to SAPNet, SAP?s support services, for the purpose of downloading Support Packages and the tool for applying those Support Packages to the R/3 System.
SAP Reference IMG
Complete Implementation Guide containing all Customizing activities supplied by SAP. It is organized according to business application components.
SAP Graphical User Interface.
A software module that functions as part of a firewall system.
A user session in an SAPGUI window.
The tool used for central control of R/3 applications. The Session Manager is a graphical navigation interface used to manage sessions and start application transactions. It can generate both company-specific and user-specific menus. The Session Manager is available from R/3 Release 3.0C under Windows 95 and Windows NT. A default change request automatically used to record changes without prompting for a request number. A standard request must be manually set and is valid for a specified period of time.
Main memory area that can be accessed by all work processes in an instance. The term?shared memory?is also used to mean the main memory area shared by the RDBMS processes.
SAP System Identifier. Placeholder for the three-character name of an R/3 System.
Set of software objects that can only be deliverd together. There are usually several release versions of a software component. These components are updated by upgrades. You can apply Support Packages separately to each software component. The Software Component concept is introduced with R/3 Release 4.6
A type of Support Package that contains improvements and extensions to the SAP Patch Manager.
Standard transport layer
The default transport layer for an R/3 System and the transport layer used by all Customizing change requests released from that system.
Support Packages contain corrections for errors in the R/3 Repository and in ABAP Dictionary objects. These corrections are collected periodically in Support Packages and made available in OCS.
Also known as database copy. If you create an R/3 System using a database copy, the R/3 installation is not set up with the SAP standard database, but with a database whose content is supplied by an existing R/3 System using R/3 migration tools specific to your platform and R/3 Release.
The R/3 Systems and clients required for a company?s implementation and maintenance of R/3. For example, a common system landscape consists of a development system, a quality assurance system, and a production system.
Activating the logging of all changes to SAP-selected Customizing tables for the purpose of providing an audit history as to who made what changes to the data.
A group of R/3 System and client combinations to which transport routes can consolidate or deliver. Target groups are available with extended transport control in R/3 Release 4.5.
User-specific information carrier in the Change and Transport Organizers for entering and managing all changes to R/3 Repository objects and Customizing settings. When an object is changed, the changed objects are recorded to a task. Tasks are assigned to a change request.
Succession of alphanumeric characters used to name a transaction?that is, a particular ABAP program in the R/3 System. For example, Transaction VA01 (create customer order).
Data collected during standard business activities/transactions and typically related to specific master data. For example, data relating to a specific sale is regarded as transaction data and can be assigned to the master data of the purchaser.
The movement (export and import) of change requests between different R/3 Systems.
Transport control program (tp)
An operation system level utility for controlling the transport of change requests between R/3 Systems and R/3 Release upgrades.
Operating system disk space that provides the management facility for all data to be transported between R/3 Systems.
All R/3 Systems to be administered using the Transport Management System (TMS) belong to a transport domain. In this transport domain, system settings such as the transport route settings are identical for all R/3 Systems. To have consistent settings in the transport domain, one R/3 System (the domain controller) has the reference configuration, and all the other R/3 Systems in the transport domain receive copies of this reference configuration.
All R/3 Systems in a transport domain that share the same transport directory.
Means by which the integration and consolidation system for R/3 Repository objects are determined. A transport layer is assigned to each development class and thus to all R/3 Repository objects in that development class. It determines the R/3 System in which developments or changes to R/3 Repository objects are performed, and whether objects will be transported to other systems when development work has been completed.
Record of the transfer of the objects in a particular change request from a source system to a target system. A transport log contains:
- A summary of transport activities
- A log detailing the export of objects from a source system
- The results of the import check
- A log detailing the import of objects into a target system
Transport Management System (TMS)
The tool in the R/3 System that enables centralized transport configuration, and the execution and monitoring of exports and imports between R/3 Systems in a single transport domain.
Transport Organizer (TO)
Tool for preparing and managing transports that supplements the more commonly used Workbench Organizer and Customizing Organizer. The Transport Organizer is part of the Change and Transport Organizer.
A released and exported change request. This term is often used synonymously with the term?change request.
Transport routes are used to define both the target system in which you want to consolidate change requests and the R/3 Systems to which change requests are delivered after verification and testing. Transport routes are of either type?consolidation?or type?delivery.
Transportable change request
Change request that will be exported to a defined consolidation system when released.
Lowest level of testing where the program or transaction is tested and evaluated for faults (contrasted with business integration testing). Unit testing is the first test that is completed, normally during the Customizing and development effort, while business integration testing usually occurs in the quality assurance system. With unit testing, the focus is on the program?s inner functions rather than on system integration.
User master data
Logon and authorization information for R/3 users. Only users who have a user master record can log on to a client in an R/3 System and use specific transactions.
Storage location for versions of R/3 Repository objects when a change request is released.
Virtual table. simultaneously displaying data from several real tables in the ABAP Dictionary. When you create a table, you assign a key to it. However, the fields in the key may be inadequate for solving some problems, so you can generate a view from several tables or parts of tables.
R/3 System configured as a placeholder for an R/3 System that has not yet been set up. Transport routes can be defined for virtual systems, and the import queue can be set up and displayed.
Workbench change request
Change request for recording and transporting R/3 Repository objects and changed system settings from cross-client tables (client-independent Customizing).
Workbench Organizer (WBO)
Tools for managing Workbench change requests required to record changes as a result of development efforts using the tools of the ABAP