| Panel | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
The application provides for a given month, the average sale prices observed during the X previous months. Data is both:
The aim of the application is to calculate and provide to transfer pricing team the monthly average sale price by BFC Company Code, Material, Revenue Type. This historical sales price will used for internal control in internal flow.Provide an overview of the app (e.g Domain, key processes, purpose of the app, etc) |
| Panel | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
For this Application the access is provided based on the BW menu "TP - Transfer Price Historical Sales" and it's done via Service one. Fill the form In SAP system select the " WBP - BW Business Warehouse" In WBP - BW Business Warehouse : Select the Business Role select the " TP - Transfer Price Historical Sales" Describe the key User profiles that exist for the application. General role/Viewer role: Approver role: |
| Info | ||
|---|---|---|
| ||
Target Users:As examples: Controllers / Accountants Transfer Price team. |
VERSION | DATE | MODIFIED BY | DESCRIPTION |
0.01 | dd16.mm11.yyyy2023 | Inês Vilares<Insert name> | Initial draft |
| Panel | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
|
2.0 Business Process
This project was developed in September 2019 by Ludovic Depoix with BW technical support of Cyril Bianco and a new OFFSET parameters has been added to the data flow in June 2022 by Ludovic Depoix with BW technical support of Charles Benier.
To construct Internal Margin check flow in ECC (PF1 and WP1) the process need to have Historical Sales Price calculated each month at material / company code // Revenue Type level.
This historical sales price will used for internal control in internal flow.
With this it was built a solution in BW to have the necessary information to feed the systems (PF1 and WP1) to the HUSP table and to finalize the process in the TRSA table for the calculations for the Internal Margin flow.
Capture the business process that the application supports . This can be describe through a process diagram or a business capability model
3.0 Application Feature Overview
Information about the existent Workbooks and the respective BW queries.For this application find below all the workbooks available:
| Reports | Definition | Prompts | BW Workbook Query | Query Technical Name |
|---|---|---|---|---|
| Controlling - Sales Price - Detail | This report will show the sales prices to be checked by the users and to be used in SAP to calculate the right internal price. We have a lot of details regarding the documents associated to the sales. | Mandatory:
Optional:
| BW_WBK_COTP_0002 | BW_QRY_CPCOTP01_0004 |
| Controlling - Sales Price - Synthesis | This report it's the same information from "Controlling - Sales Price - Detail" but on a high level perspective. | Mandatory:
Optional:
| BW_WBK_COTP_0001 | BW_QRY_CPCOTP01_0003 |
4.0 Functional Specification
4.1 General Data/Calculations
| COPA Document | Refers to a document related to the Controlling module, specifically to the Profitability Analysis (COPA stands for CO-PA, where CO stands for Controlling). Profitability Analysis (CO-PA) in SAP is a sub-module of SAP Controlling that provides detailed information about the profitability of an organization's segments, such as products, customers, or business areas. COPA documents capture data related to sales, costs, and profitability. A COPA document contains information on revenues, costs, and other key financial metrics associated with specific segments. It helps businesses analyze and understand the profitability of different aspects of their operations. The data in COPA documents can be used for reporting and analysis purposes, enabling organizations to make informed decisions about their business strategies. The exact structure and content of COPA documents can vary based on the specific configuration and customization implemented by each organization in their SAP system. |
|---|---|
| GBU Assignment | The concept for GBU doesn't exist in SAP but it’s a requirement to have in BW since in BFC we have this definition. This GBU assignment is different for WP1 and PF1 and it's explained in detail in the Process Definition section in Profit and Loss functional documentation |
. |
4.2 Process Detail
4.2.1. Report/Process Definition
| Domain |
|---|
| Finance |
| Application |
|---|
| BW reports under TP - Transfer Price Historical Sales |
| Provider |
|---|
<insert link>
This section represents the process with detail information for the application. Can include specific or special cases, complex logics , calculations, flows, among others.
4.2.2. KPI's/Calculations/Indicators
Indicators available:
- XXXX
- XXXX
Indicatores/KPI's
Definition
Calculation/Extraction of data
Can be a field, a program, something that was created or the report
What are we looking for ? Why has this KPI been created/developed? What is the goal of monitoring this data ?
How is the calculation, or if it's a program what are the steps or how the data is extracted if it's by files
| CPCOTP01 |
| Info | ||
|---|---|---|
| ||
In this section we will approach: |
SAP BW High Level View Anchor SAP BW High Level View SAP BW High Level View
| SAP BW High Level View | |
| SAP BW High Level View |
Main Flow Anchor Main Flow Main Flow
| Main Flow | |
| Main Flow |
| Info |
|---|
This is a general view of the workflow to have the data available in the source systems. In the next sections we have more details in the different steps based on the specification for this report. If we need to check the document we can see it in here Internal Margin : Historical sales price calculation. |
Filters Anchor Filters Filters
| Filters | |
| Filters |
Only consider :
- Only PF1 and WP1 data
- All what is posted to the R10000 BFC heading + BFC heading N8110 (for quantities)
- Only items with Material code and Distribution channel.
- All COPA of all record types (F, C, Z,...)
- Exclude Record type X for PF1 datas
Exclude:
PAX GBU (GBU : PV , PX , PM ).
Material type (C_MATNR2_0MATL_TYPE) different from :
- Z710 No-name article-service (WP1),
- ZDIE (WP1),
- ZNLA (WP1),
- ZUNB (WP1),
- Z710 (PF1),
- ZR09 (PF1),
- Z709 (PF1).
Month of calculation and month of selection Anchor Month of calculation and month of selection Month of calculation and month of selection
| Month of calculation and month of selection | |
| Month of calculation and month of selection |
Each month M we calculate the historic sales price using M-1 to M-3 datas.
For example Historical Sales price of August 2019 is base and sales from May 2019 to July 2019. We have more information about this number month offset explaining in the technical part.
Dynamic View versus Historical Data Anchor Dynamic View versus Historical Data Dynamic View versus Historical Data
| Dynamic View versus Historical Data | |
| Dynamic View versus Historical Data |
After meeting with Project, there is no need to save the data before load it in PF1/WP1 . Due to the fact data will be manually change in ERP ; traçability will be complex.
Only dynamic view is necessary . So when the user will launch the query only current business rules will be applied even if the user launch an previous month.
It will simplify developments especially line item query.
Revenue Type Anchor Revenue Type Revenue Type
| Revenue Type | |
| Revenue Type |
Revenue type Characteristic
Revenue type should take 8 values + 1 Error value
- - Domestic Third Party sales (no distinction or included customs duties) => DoTP
- - Domestic Third Party sales duty free => DoTP_DF
- - Domestic Related Party sales (no distinction or included customs duties) => DoRP
- - Domestic Related Party sales duty free => DoRP_DF
- - Abroad-Export Third Party sales => AbExTP
- - Abroad-Export Related Party sales => AbEXRP
- - Abroad-EUdel Third Party sales => AbEUTP
- - Abroad-EUdel Related Party sales => AbEURP
This new object will 3 navigational Attributes
1- Partner Type
With values
a. RP “Related Party”
b. TP “Third Party”
2- Geographical flow
With values
a. ABEX “Abroad-export”
b. ABEU “Abroad-EUdel”
c. DOMS “Domestic”
3- Chinese Duty
With values
a. NC “Not Chinese Company”
b. DF “Duty Free”
c. ID “Included custom duties”
Revenue type determination
The differing type of revenue will be determined according to 3 steps:
- Partner type determination;
- Geographical flow;
- Chinese Custom.
1- Partner type determination
We must determine if the line item is linked to a
- Related Party
- Or Third Party
We must use the trading partner (C_PCOMPAN) of the line item and and the LE exception table.
1) If there is no trading partner OR the trading partner have a conso method ( C_PCOMPAN_C_CSMETH) = 90 => Third party
2) trading partner (C_PCOMPAN) not empty and consolidation method ( C_PCOMPAN_C_CSMETH) different from 90 sold but the Trading partner is founded in exception table (Z1F_TP-TPLE to be created) => Third party
3 -trading partner (C_PCOMPAN) not empty and consolidation method different from 90 sold and BFC Company of the Trading partner (C_COMPANY__0COMPANY) not founded in exception table (Z1F_TP-TPLE to be created) => Related Party
Remark : this way to split internal and external is completely different from the way it’s done in BW P&L application and Working Capital.
In ZFI_T_TP_TPLE , if a company code is maintained in here we will not consider for the calculation.
2- Geographical flow
The second distinction Domestic sales / abroad sale.
We will compare:
- the recipient country (ship to customer country) C_SHIPID_0COUNTRY.
- And the country of the selling company (company code country):C_PCOMPRS__0COUNTRY (= C_COMPCDE__0COUNTRY).
- Abroad-export :both countries are different and one of them at least is outside E.U.
- Abroad-EU : both countries are different and inside E.U.
- Domestic (same country).
3- Chinese Custom
The third distinction is only for chinese companies.
If the company code is not a chinese company ( C_PCOMPRS__0COUNTRY or C_COMPCDE__0COUNTRY <> CN) = > domestic included duties.
If the company code (C_COMPRS) is a chinese company ; to split the domestic line by "included customs duties" or "duty free", based on:
- the invoicing currency (0DOC_CURRCY) <> Local company currency(C_COMPRS_0CURRENCY ) => domestic duty free
- the invoicing currency = local company currency (CNY), the legal entity is SSP CHANGSHU (5991) and the customer is related party => domestic duty free
- other cases => domestic included duties
Remark : For the future we can have more than one exception than SSP CHANGSHU (5991). We must have a variable.
Additionally for the Transfer price EU definition:
A EU country is a country managed in T005 table with EU country X
+ Monaco country (for fiscal reason)
Key Figure Anchor Key Figure Key Figure
| Key Figure | |
| Key Figure |
We must provide:
- Sales Qty(VVA01 );
- Sales Qty(VVA01 ) in UOM.
The quantities must be converted in the unit Base Unit of Measure of C_MATNR2.
We can use a unit conversion rule type RSUOM ; for example UOM_MATNR2 conversion type, c onvert firstly with table T0006 and after use DSO UOMCMAT2.
- Sales R10000 in local currency:
Amount and C_FIELDN__C_MGN_ACC = R10000
Remark : technically speaking for PF1 tadata the object of BFC account is C_FIELDN2__C_MGN_ACC. This object is identified with C_FIELDN__C_MGN_ACC in the multi provider.
- Historical Sales Price:
Sum of Sales R10000 in local currency on the M-1 to M-X /Sum of Sales Qty(VVA01 ) on the M-1 to M-X in UOM
- Historical Sales Price *1000 units:
Sum of Sales R10000 in local currency on the M-1 to M-X *1000 /Sum of Sales Qty(VVA01 ) on the M-1 to M-X in UOM
- Number of COPA line items:
Number of distincts 0CO_AREA/ C_PABELNR/ C_PAPOSNR used to calculate Historical Sales Price.
Remark : to calculate historical sales price we have quantities and perhaps more than 1 amount for the same 0CO_AREA/ C_PABELNR/ C_PAPOSNR. We must count this crossing 0CO_AREA/ C_PABELNR/ C_PAPOSNR only one time.
- Number of COPA line items different from “F”
Number of distincts 0CO_AREA/ C_PABELNR/ C_PAPOSNR used to calculate Historical Sales Price where 0REC_TYPE <> F.
Level of calculation of historical sales price
Revenu type will be calculated at:
- Month (calculation month);
- Company code (C_COMPCDE) / PRS Company code (C_COMPCDE _COMPPRS);
- Material Level (C_MATNR2);
- Source system;
- Revenue Type.
5.0 Non-functional Descriptions
5.1 Usability
as per standard.
5.2 Regulatory Compliance
as per standard.
5.3 Security
as per standard.
5.4 Performance
as per standard.
5.5 Reliability
as per standard.
5.6 Scalability
as per standard.
5.7 Compatibility
as per standard.
5.8 Availability
as per standard.
5.9 Refresh of the Data
The load is on a daily basis for master data around 2 a.m CET and for the controlling - TP - Sale Price Extracts it's on the third working day of each month around 5:30 a.m CET.
5.0 Non-functional Descriptions
Please populate the relevant section and delete those that are not applicable.5.1 Usability
Usability is about the ease with which a User can learn to start using the solution and the ease with which they can use the system. In addition to ease of learning and ease of use, usability also includes areas such as ease of recall, error avoidance and handling, accessibility among others e.g., 99% of metadata entry Users who have use the Maintenance Dashboard should be able to change filters, extract etc., when required. Maintenance data will be centrally stored in the Google Cloud platform, which will be available to other applications e.g., and Dashboards if needed.
5.2 Regulatory Compliance
Software systems must comply with legal and regulatory e.g., GDPR requirements, this can change depending on country, organisation industry and / or region. The software systems must be secure from unauthorized access. The Maintenance Dashboard will comply with Solvay’s regulations and compliance e.g., access only granted to authorized Users.
5.3 Security
Security refers to essential aspects that assure a solution and its components will be protected against unauthorized access or malware attacks. Important considerations related to security aspects of a system are User authentication, User authorization or User access privileges, data theft, malware attacks, data encryption, and maintaining audit trails, e.g., only Users with administrator access shall be able to create new accounts and assign data access privileges to the new accounts e.g.,
- All data will be encrypted in the dashboard
- Only authorised Users / Administrative Users will be able to access data.
- Maintenance data will be split between either SCO or ECO, and Users will only have authority to one Entity data.
5.4 Performance
Performance defines how fast a software system or a particular section of it responds to certain User actions under a certain workload. In most cases, this metric explains how long a User must wait before the target operation happens e.g., the page renders, a transaction is processed, etc., given the overall number of Users now. Performance requirements may describe background processes invisible to Users, e.g., backup and speed of data transfers.
5.5 Reliability
Reliability is the ability of a solution or its component to perform its required functions without failure under predefined conditions for a specified time / period. Reliability can possibly be specified in terms of average time system runs before failure occurs, percentage of operations completed successfully within a time / period, maximum acceptable failure probability, or number of failures within a period. Reliability aspects are in reference to (but not limited to) evaluation of the system to be considered as reliable, classification of reliability defining failures vs. regular failures, and the impact of failure on business operations. The Maintenance Dashboard will display data from the previous refresh of data.
5.6 Scalability
Scalability refers to the degree to which a solution can evolve to handle increased amounts of work. The increased amount of work could be in terms of the user base, transactions, data, network traffic, or other factors e.g., the system should be able to handle an additional load of a maximum of 5,000 Users every month for the next 6 months without any noticeable performance impacts.
5.7 Compatibility
Interoperability is the degree to which the solution is compatible with other components. It is a measure of how effectively the system interoperates with other software systems and how easily it integrates with external hardware devices.
Interoperability aspects to be discussed during elicitation are in reference to (but not limited to) software systems to be interfaced with along with data / messages to be exchanged and any standard data formats, hardware components to be integrated with, and any standard communication protocols to be followed e.g., Order Management system will push the order file into a secured file transfer protocol server from where it will be loaded into the system through a daily job. To guarantee between Google Cloud platform and SAP BW Queries e.g., BW_QRY_MVPMOR01_0002, Solvay has introduced a new tool called Xtract (Xtract).
5.8 Availability
Availability is the degree to which the solution is operable and accessible when required. It is a measure of time during which the system is fully operational e.g., available for use and sometimes included as a Service Level Agreement (SLA) considering its criticality to the business, e.g., the system shall be at least 99% available on weekdays between 09:00 to 18:30 Central European Time (CET).
5.9 Refresh of the Data
Frequency, data, and time of the data refresh in the data product.





