Cost sharing method, system, device and storage medium
By using the collaborative work of the model view module, view module, allocation module and connection module in the PaPM subsystem of the SAP system, the problem of high dependence on code in the implementation of the cost allocation program function in the existing technology is solved, and flexible and efficient expenses are achieved. Apportioned processing.
Patent Information
- Application Number
- CN202211665712.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-23
- Publication Date
- 2025-01-21
- Estimated Expiration
- 2042-12-23
AI Technical Summary
The existing cost sharing program designed based on the ABAP language has a highly code-dependent function, making it difficult to flexibly respond to changes in business needs.
The PaPM subsystem based on the SAP system is used to realize the cost sharing function through the collaborative work of the model view module, view module, allocation module and connection module. This method allows apportionment rules to be set through the application layer, and the database layer parses and calls the corresponding function modules to automatically extract and apportion relevant data.
It achieves flexibility and efficiency in the cost allocation process, avoids high dependence on code, and can quickly respond and adapt to changing business needs.
Smart Images

Figure CN116109359B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of expense management technology, and specifically relates to an expense sharing method, system, device and storage medium. Background Art
[0002] In order to analyze the profitability of a company, the company usually allocates the expenses incurred during the operation to various product, service and other revenue items to help the company with the pricing and performance evaluation of products and services.
[0003] Cost sharing mainly involves three aspects: first, deferred expenses, whose main source is the profit and loss data calculated by the financial system used by the enterprise; second, sharing rules, that is, for different types of deferred expenses, the sharing standards and sharing indicators that match the types are used. For example, if the type of deferred expenses is exclusive expenses, the sharing indicators that match the exclusive expense type items include compensation expenditure sharing indicators and subordinate premium sharing indicators; third, the sharing recipient, that is, the object of the final cost sharing result. For example, taking an insurance company as an example, the object of the sharing can be the insurance business that brings income to the insurance company, such as the type of insurance, insurance category, channel, etc. For an insurance company, how to share a deferred expense with each sharing recipient with premium income is to calculate the cost shared by each sharing recipient among these sharing recipients according to the proportion of their respective premium income to the overall premium income after determining the specific sharing recipients.
[0004] Currently, expense sharing is often achieved through the standard configuration functions of the cost center module and profitability analysis module of the SAP system (SAP system refers to an enterprise financial management software developed by SAP). On this basis, the ABAP language of the SAP platform (an advanced business application programming developed by the German software company SAP and mainly used for SAP programming) is used to develop a complete expense sharing logic function to meet the company's personalized expense sharing needs.
[0005] The problem with the method of implementing expense sharing by designing an expense sharing program based on ABAP language is that if the business requirements change, the sharing rules need to be changed first. Secondly, the changed sharing rules involve the classification of expense types to be shared, the selection of sharing indicators corresponding to the expense types to be shared, and the determination of the sharing issuer and the sharing receiver. All of these need to be completed by modifying the program code based on the original program, which is inefficient and difficult to flexibly respond to changing business requirements. Summary of the invention
[0006] The embodiment of the present application provides a cost sharing method, which can solve the problem that according to the prior art, the cost sharing program designed based on the ABAP language is used to implement cost sharing, and the existing functions are highly dependent on the code, making it difficult to flexibly respond to changes in business requirements.
[0007] The embodiment of the present application also provides a cost sharing device, which can solve the problem that according to the prior art, the cost sharing program designed based on the ABAP language is used to implement cost sharing, and the existing functions are highly dependent on the code, making it difficult to flexibly respond to changes in business needs.
[0008] The embodiments of the present application also provide an electronic device and a readable storage medium.
[0009] The present application embodiment adopts the following technical solutions:
[0010] A cost sharing method is implemented based on the PaPM subsystem of the SAP system. The PaPM subsystem includes an application layer for front-end data interaction and a database layer for back-end data processing. The database layer is provided with a model view module, a view module, an allocation module and a connection module. The method includes:
[0011] In response to the parameters input through the model view module, the view module is called to execute: extracting the original deferred expenses associated with the parameters from a preset database, wherein the parameters represent the allocation subject of the expense allocation and the time dimension to which the expense belongs, and the database is used to store each original deferred expense, sales expense, first allocation indicator data and first allocation recipient;
[0012] Based on the extracted original deferred expenses, the allocation module is called to execute: extract the sales expenses from the preset database, split the extracted original deferred expenses according to the proportion of the sales expenses among various business dimensions according to the allocation rules preset by the application layer, and obtain the split deferred sub-expenses, which are respectively used as the senders of each primary allocation, and the business dimension represents the classification basis for the recipients of the primary allocation;
[0013] Based on each of the primary allocation issuers, calling the view module to execute: according to each of the primary allocation issuers, extracting first allocation indicator data corresponding to the expense types of each of the primary allocation issuers from the database;
[0014] Based on the first allocation indicator data, calling the connection module to execute: establishing a first association relationship between a primary allocation sender and a primary allocation receiver pre-stored in the database according to the allocation rule;
[0015] Based on the first association relationship, the allocation module is called to execute: performing a primary allocation processing on each primary allocation sender to the primary allocation receiver according to the first allocation indicator data.
[0016] A cost sharing device, characterized in that it is based on the PaPM subsystem of the SAP system, the PaPM subsystem includes an application layer for front-end data interaction and a database layer for back-end data processing, the database layer is provided with a model view module, a view module, an allocation module and a connection module, and the device specifically includes:
[0017] A model view module is used to provide a parameter input interface to the user and call the view module based on the parameters input by the user, wherein the parameters represent the cost sharing subject and the time dimension to which the cost belongs;
[0018] A view module, used for extracting the original deferred expenses associated with the parameter from a preset database, wherein the database is used for storing the original deferred expenses, sales expenses, first allocation indicator data and first allocation recipient; and calling the allocation module based on the extracted original deferred expenses;
[0019] An allocation module is used to extract the sales expenses from a preset database, split the extracted original deferred expenses according to the proportion of the sales expenses between various business dimensions according to the allocation rules preset by the application layer, obtain the split deferred sub-expenses, and use them as the first-time allocation issuers respectively. The business dimensions represent the classification basis of the first-time allocation recipients, and call the view module based on the first-time allocation issuers;
[0020] The view module is further used to extract first allocation index data corresponding to the expense types of each primary allocation issuer from the database according to each primary allocation issuer, and call the connection module based on the first allocation index data;
[0021] A connection module, configured to establish, according to the allocation rule, a first association relationship between a primary allocation issuer and a primary allocation receiver pre-stored in the database, and to call an allocation module based on the first association relationship;
[0022] An allocation module is used to perform a primary allocation processing on each primary allocation sender to a primary allocation receiver according to the first association relationship and the first allocation indicator data.
[0023] An electronic device comprises a processor, a memory and a program or instruction stored in the memory and executable on the processor, wherein the program or instruction implements the steps of the cost sharing method when executed by the processor.
[0024] A readable storage medium stores a program or instruction, and when the program or instruction is executed by a processor, the steps of the cost sharing method are implemented.
[0025] At least one of the above technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects:
[0026] Since the expense sharing function is collaboratively implemented by calling multiple functional blocks under the PaPM database layer, when business requirements change, it is only necessary to change the settings of the expense sharing rules through the application layer. The database layer parses the updated expense sharing rules to implement calls between functional modules, extracts the information related to the updated expense sharing rules from the database, and obtains the corresponding expense sender and expense receiver under the current expense sharing rules, thereby completing the expense sharing process. This avoids high dependence on the code and can flexibly respond to ever-changing business needs. BRIEF DESCRIPTION OF THE DRAWINGS
[0027] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:
[0028] Figure 1 It is a flowchart of a cost sharing method provided in an embodiment of the present application;
[0029] Figure 2 It is a flowchart of one implementation method of a cost sharing method provided in an embodiment of the present application;
[0030] Figure 3 It is a schematic diagram of the application interface of the PaPM subsystem in a cost sharing method provided in an embodiment of the present application;
[0031] Figure 4 It is a schematic diagram of functional blocks included in the PaPM subsystem in a cost sharing method provided in an embodiment of the present application;
[0032] Figure 5 It is a schematic diagram of the interface of the model table module of the PaPM subsystem in the cost sharing method provided in an embodiment of the present application;
[0033] Figure 6 It is a schematic diagram of an interface for extracting data by a model table module of the PaPM subsystem in a cost sharing method provided in an embodiment of the present application (I);
[0034] Figure 7 This is a schematic diagram of an interface for extracting data by a model table module of the PaPM subsystem in a cost sharing method provided in an embodiment of the present application (II);
[0035] Figure 8 It is a schematic diagram of an interface for extracting data by a model table module of the PaPM subsystem in a cost sharing method provided in an embodiment of the present application (III);
[0036] Fig. 9 This is a schematic diagram of an interface for extracting data by a model table module of the PaPM subsystem in a cost sharing method provided in an embodiment of the present application (IV);
[0037] Fig.10 It is a schematic diagram of an interface of a query module of the PaPM subsystem calling a model table module in a cost sharing method provided in an embodiment of the present application;
[0038] Fig.11 1 is a schematic diagram of an operation interface of a query module of the PaPM subsystem in a cost sharing method provided in an embodiment of the present application (I);
[0039] Fig.12 This is a schematic diagram (II) of the operation interface of the query module of the PaPM subsystem in the cost sharing method provided in an embodiment of the present application;
[0040] Fig.13 It is a structural schematic diagram of a cost sharing device provided in an embodiment of the present application;
[0041] Fig.14 It is a structural schematic diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0042] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0043] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first", "second", etc. are generally of one type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" in the specification and claims represents at least one of the connected objects, and the character " / " generally indicates that the objects associated with each other are in an "or" relationship.
[0044] The following is a detailed description of the cost sharing method, device, equipment and storage medium provided by the embodiment of the present application through specific embodiments and their application scenarios in conjunction with the accompanying drawings. The cost sharing method provided by the embodiment of the present application is used to solve the problem that the cost sharing program designed based on the ABAP language is highly dependent on the code and it is difficult to flexibly respond to changes in business requirements.
[0045] For ease of description, the following describes the method using a computer device as an example in which the execution subject of the method is a SAP system-based PaPM subsystem installed on the computer device. It should be understood that the description of the execution subject of the method being a computer device should not be construed as a limitation of the method.
[0046] Figure 1 FIG. 2 shows a method for cost sharing provided by an embodiment of the present invention, which is implemented based on the PaPM subsystem of the SAP system. Figure 2 As shown, the PaPM subsystem includes an application layer for front-end data interaction and a database layer for back-end data processing, and the database layer is provided with a model view module, a view module, an allocation module, a connection module and a model table module.
[0047] The application layer is oriented towards front-end users and is used for data interaction between users and electronic devices, and provides assistance for data processing at the database layer.
[0048] The data interaction at the application layer includes three items: allocation rule input, allocation indicator data synchronization, and sales expense synchronization. These three items have no dependency on each other and can be performed in parallel. After the three data interactions are completed, the database layer will start to execute the specific process of expense allocation.
[0049] The allocation rule input is used to provide the user with an input interface for the allocation rules, which can be input in the form of pure text description, text plus mathematical formula, or image format. After the application layer performs text recognition on the input content, it sends the parsed results of the allocation rules to the database layer, or the database layer obtains the input content, performs text recognition within the database layer, and parses the corresponding allocation rules.
[0050] The allocation rules include cost center group analysis, cost center non-allocation rule analysis, cost element non-allocation rule analysis, business scope attribution relationship rule analysis, earned premium indicator calculation rule analysis, aviation insurance and distribution restoration rule analysis, etc. These allocation rules can be adaptively set by financial personnel according to the company's financial calculation needs, and will not be elaborated here.
[0051] The synchronization of the number of apportioned cases includes synchronizing the number of claims cases, the number of reported cases, the number of reinsurance cases and other case-related indicator data of the specified month from the existing financial accounting system.
[0052] Sales expense download includes downloading basic law and documentary sales expenses from the sales expense system, which is used to split the original deferred expenses among various business dimensions with sales expenses in the initial stage of allocation.
[0053] The database layer is oriented to the back-end data processing and is used to execute the cost allocation process. The database layer calls the function modules one by one to execute the cost allocation process according to the allocation rules set by the user through the application layer.
[0054] The process steps at the database level are the main operating process of cost sharing. Taking advantage of the performance of the database, the operating process is sunk to the database level for calculation. The following is a detailed introduction to the cost sharing process from the database level.
[0055] Before allocating expenses at the database level, first set up the database to save the original deferred expenses, sales expenses, first allocation indicator data, second allocation indicator data, first allocation recipient, second allocation recipient and allocation rules used in the entire allocation process in the database, so as to facilitate the extraction of relevant data by each functional module during operation.
[0056] The cost-sharing method includes the following steps:
[0057] Step 11, in response to the parameters input through the model view module, call the view module to execute: extract the original deferred expenses associated with the parameters from a preset database, the parameters represent the sharing subject of the expense sharing and the time dimension to which the expenses belong, and the database is used to store each original deferred expense, sales expense, first sharing indicator data and first sharing recipient.
[0058] The execution process of step 11 corresponds to Figure 2 The deferred expenses of the database layer are implemented.
[0059] The parameters input through the model view module represent the subject of expense sharing and the time dimension to which the expense belongs. For example, if the subject of expense sharing is a provincial company or a subsidiary, and the time dimension is year, quarter, month, etc.
[0060] In one implementation, after obtaining the original deferred expenses, the model table module of the database layer is called to land the original deferred expenses in a custom table; wherein the custom table is set in the model table module.
[0061] In one implementation, after the original deferred expenses are placed in the custom table and before the sales expenses are extracted from the preset database, the method further includes: extracting data from the custom table in a partitioned parallel manner; the partitions are obtained by dividing each piece of data of the original deferred expenses into a number of parts. In this embodiment, the partitioning method uses the method of taking the remainder of the database sequence number function to evenly divide each piece of data into 900 partitions, and the subsequent modules process in parallel in a 900 partition manner when processing.
[0062] Step 12, based on the extracted original deferred expenses, call the allocation module to execute: extract the sales expenses from the preset database, split the extracted original deferred expenses according to the proportion of the sales expenses among various business dimensions according to the allocation rules preset by the application layer, and obtain the split deferred sub-expenses, which are used as the issuers of each primary allocation respectively. The business dimension represents the classification basis for the recipients of the primary allocation.
[0063] The execution process of step 12 corresponds to Figure 2 Cost cleaning and splitting part of the database layer.
[0064] The business dimensions identified by the original deferred expenses are cleaned according to the allocation rules set by the application layer. The cleaning is a preprocessing of the business dimensions, that is, filtering out invalid business dimensions. The business dimension represents the classification basis for the recipient of the one-time allocation. Taking an insurance company as an example, the business dimensions can be insurance types, insurance categories, sales channels, policyholders and issuing institutions, etc. In the process of cost allocation, the policyholder business dimension is often not considered and is usually screened out (cleaned). When the insurance type is used as the classification basis for the recipient of the one-time allocation, the recipient of the one-time allocation can be personal insurance or auto insurance; when the insurance category is used as the classification basis for the recipient of the one-time allocation, the recipient of the one-time allocation can be life insurance, accident insurance and health insurance in personal insurance types.
[0065] The purpose of splitting the original deferred expenses based on the proportion of sales expenses in various business dimensions is to more accurately allocate the expenses to each primary allocation recipient.
[0066] Step 13, based on each primary allocation issuer, calling the view module to execute: according to each primary allocation issuer, extracting first allocation indicator data corresponding to the expense type of each primary allocation issuer from the database;
[0067] The execution process of step 13 corresponds to Figure 2 The first-time allocation of indicators to the database layer.
[0068] The first allocation index data corresponds to the expense type item to which the to-be-allocated expense corresponding to the issuer of the primary allocation belongs.
[0069] The expense types are divided into exclusive expenses and common expenses according to the corresponding first allocation indicator data. The expense types can be refined into basic law expenses, unreturned personnel expenses, basic law expenses-accrual, agricultural insurance team expenses, market expenses-follow-up, market expenses-non-follow-up, project development expenses and fixed expenses. The above-mentioned detailed expenses can be classified as exclusive expenses or common expenses based on the setting of the allocation rules.
[0070] The one-time allocation indicators include:
[0071] VV300 management cost allocation index (60% of premium income + 40% of direct claims);
[0072] VV301 Claims center allocation index (number of claims cases * claims equivalent coefficient);
[0073] VV302 Policy center allocation index (number of policies*policy equivalent coefficient);
[0074] VV303 IT center allocation index (number of insurance policies*50%+number of claims*50%);
[0075] VV304 Financial shared center allocation index (equivalent to IT center allocation index);
[0076] VV305 95518 allocation index (i.e. number of reported cases);
[0077] VV306 reinsurance apportionment index (number of reinsurance bills);
[0078] VV307 Compensation expenditure allocation index (direct compensation);
[0079] VV310 subordinate premium sharing indicators (premium income).
[0080] For exclusive expenses, the corresponding first allocation indicator data include VV307 compensation expenditure allocation indicator (direct compensation) and VV310 subordinate premium allocation indicator (premium income).
[0081] For public expenses, the corresponding first allocation indicator data include VV300 management expense allocation indicator (60% of premium income + 40% of direct claims), VV301 claims center allocation indicator (number of claims cases * claims equivalent coefficient), VV302 issuance center allocation indicator (number of policies * issuance equivalent coefficient), VV303 IT center allocation indicator (number of policies * 50% + number of claims cases * 50%), VV304 financial shared center allocation indicator (equivalent to IT center allocation indicator), VV305 95518 allocation indicator (number of reported cases), VV306 reinsurance part allocation indicator (number of reinsurance bills), VV307 compensation expenditure allocation indicator (direct compensation) and VV310 subordinate premium allocation indicator (premium income).
[0082] The correspondence between the first allocation index data and the to-be-allocated sub-expenses can be set through allocation rules. The content in brackets of the first allocation index data is the calculation process of the allocation index.
[0083] In one implementation, after obtaining the first allocation index data, the model table module of the database layer is called to land the first allocation index data in a custom table.
[0084] Step 14, based on the first allocation indicator data, calling the connection module to execute: establishing a first association relationship between a primary allocation sender and a primary allocation receiver pre-stored in the database according to the allocation rule;
[0085] The execution process of step 14 corresponds to Figure 2 The receiver aggregation portion of the one-time allocation at the database layer.
[0086] In one implementation, the establishing of a first association relationship between a primary allocation issuer and a primary allocation receiver pre-stored in the database specifically includes:
[0087] Step 141, respectively obtain the fields included in the primary allocation sender and the primary allocation receiver;
[0088] Step 142, select each field of the primary allocation sender and match it with the field of the primary allocation receiver one by one; or select each field of the primary allocation receiver and match it with the field of the primary allocation sender one by one;
[0089] Step 143, connect the data table structures of the primary allocation issuer and the primary allocation receiver having common fields into one view, and establish a first association relationship between the primary allocation issuer and the primary allocation receiver.
[0090] In step 143, the data table structures of the one-time allocation issuer and the one-time allocation receiver having common fields are connected into a view, specifically: the common fields between the one-time allocation issuer and the one-time allocation receiver are connected to the database, so as to determine which one-time allocation receivers correspond to each one-time allocation issuer.
[0091] Step 15, based on the first association relationship, calling the allocation module to execute: performing a primary allocation processing on each primary allocation sender to the primary allocation receiver according to the first allocation indicator data.
[0092] The execution process of step 15 corresponds to Figure 2 The once-allocated portion of the database layer.
[0093] In one implementation, during the apportionment process, the OVER function is used to perform classification aggregation, classification statistical ratio, multiplication processing, and tail difference smoothing.
[0094] In one implementation, the primary allocation issuers are grouped according to the allocation rules, and the first allocation index data corresponding to the different groups are determined; based on the first allocation index data corresponding to the different groups, the to-be-allocated sub-expenses in the current group are allocated to the primary allocation receivers.
[0095] The allocation rules use different allocation indicators based on the grouping of the primary allocation issuer, such as sales, management, claims, etc. For example, sales groups use premium indicators for allocation.
[0096] In one implementation, corresponding to Figure 2 The primary allocation and bottom-line processing part of the database layer. After the primary allocation processing, the following steps are further performed: calling the connection module to execute: for the primary allocation issuer that has not established the first association relationship, performing a bottom-line processing according to the allocation rule (the bottom-line sub-rule in the allocation rule).
[0097] In one implementation, corresponding to Figure 2 The secondary allocation issuer processing part of the database layer. After the primary allocation processing or the primary allocation bottom-up processing, the secondary allocation processing is also included. The secondary allocation issuance processing, secondary allocation indicator landing, secondary allocation receiver collection, secondary allocation and secondary allocation bottom-up processing described below are all based on the setting of allocation rules. In some possible implementation methods, the secondary allocation related processing flow described in this paragraph is not required.
[0098] The secondary allocation issuer processing is specifically as follows: calling the connection module to execute: aggregating the result data of the primary allocation processing with the issuer of the secondary allocation determined according to the allocation rule as the issuer of the secondary allocation. The issuer of the secondary allocation determined according to the allocation rule is determined according to the expense category, and the expense category includes the allocation motivation, the type of the allocated expense, etc.
[0099] In one implementation, corresponding to Figure 2 The second allocation indicator landing part of the database layer. Based on the second allocation issuer, call the view module to execute: extract the second allocation indicator data corresponding to the second allocation issuer from the preset database. The second allocation indicator data corresponding to the second allocation issuer is the second allocation indicator data of the cost sub-center and business scope. The extracted second allocation indicator data is landed in the custom table. The indicators are composed of multiple types of amount and quantity indicator data such as organizational structure, more detailed business dimensions, premiums, claims, number of cases, etc.
[0100] In one implementation, corresponding to Figure 2 The secondary allocation receiver aggregation part of the database layer calls the connection module based on the second allocation indicator data to execute: establishing a second association relationship between the secondary allocation sender and the secondary allocation receiver pre-stored in the database.
[0101] According to the allocation rules, a connection is established between the issuer of this allocation and the recipient of the secondary allocation, that is, a database JION is performed through the common fields between the issuer of the secondary allocation and the recipient of the secondary allocation, so as to determine which second allocation recipients correspond to each second allocation issuer.
[0102] In one implementation, corresponding to Figure 2 Secondary allocation part of the database layer. Based on the second association relationship, call the allocation module to execute: according to the second association relationship, based on the second allocation index data, the secondary allocation sender is processed by the secondary allocation receiver. The OVER function of the database is used to perform classification and aggregation, classification statistics ratio, multiplication processing and tail difference smoothing. Secondary allocation is mainly based on premium indicators.
[0103] In one implementation, corresponding to Figure 2 The secondary allocation bottom-up processing part of the database layer. After the secondary allocation processing, it also includes: calling the connection module to execute: for the secondary allocation issuer that has not established the second association relationship, the secondary bottom-up processing is performed according to the allocation rules.
[0104] In one implementation, corresponding to Figure 2The intermediate data table landing part of the database layer. During the entire execution process, the intermediate data of the original deferred expenses, the first deferred expenses, the first allocation index, the first allocation result, the second deferred expenses, the second allocation index, and the second allocation result are all landed in the final customization for subsequent allocation and allocation tracing.
[0105] The following is an introduction to the PaPM subsystem used in the present application embodiment for cost sharing. Figure 3-Figure 12 shown.
[0106] like Figure 3 As shown in the figure, each functional module in the PaPM database layer is modeled in the form of building blocks, where the functional blocks are the building blocks that make up the modeling model. By using the PaPM subsystem, you can combine the functional blocks to create your own model, in which you can assign corresponding functions and configure the content of each function on several sides of the PaPM subsystem.
[0107] Figure 4 The building blocks currently available in the PaPM subsystem are given, namely, function blocks, which have built-in input, output and intermediate processing rules. Different function blocks have different intermediate processing rules and are used to implement different functions. The function blocks include a transmission structure module, a valuation module, a writer module, an allocation module, a description module, a file adapter module, a machine learning module, a query module, a model BW module, a model RDL module, a model table module, a model view module, a derivation module, a stream modeling module, a view module, a calculation module, a calculation unit module, a funds transfer pricing module, a conversion module, a remote function adapter module and a connection module. The modules used to implement the cost sharing function in the embodiment of the present application have been given in the above-mentioned cost sharing method embodiment and will not be repeated here.
[0108] The following is an example of the building block combination of the model table module and the query table module.
[0109] like Figure 5 As shown, the interface of the model table module includes connection type and model table source, where the connection type usually selects physical connection, and the model table source includes four forms: data dictionary, environment, HANA (High-Performance Analytic Appliance, high-performance analysis software for data query function) and SDA (Smart Data Access, intelligent database).
[0110] like Figure 6 As shown, when the model table source of the model table module selects the data dictionary, all tables at the application level are directly supported, and the content of the table can be extracted in a parameterized manner.
[0111] like Figure 7As shown, when the model table source of the model table module selects the environment, you can directly customize the table, maintain the data you need, and quickly enter the data for prototype verification.
[0112] like Figure 8 As shown in the figure, when HANA is selected as the model table source of the model table module, all tables or views at the database level are supported, and the table contents can be extracted in a parameterized manner.
[0113] like Fig. 9 As shown, when the model table source of the model table module selects SDA, the remote database is directly integrated and synchronized in real time.
[0114] As can be seen from the above model table module, the introduction of data sources provides multiple options, and users can freely choose according to their needs to meet rapid integration.
[0115] like Fig.10 As shown, through the query module, the data integrated in the model table module is used for reporting. The data source of the query module supports multiple display methods such as Analysis for Office, data warehouse, environment, and environment CDS. For example, when selecting an environment, Fig.11 As shown, you can select the input method available in the current environment in "Input Function", define the query conditions of fixed values and default values in "Filter", and define columns and rows in table definition, such as Fig.12 As shown, select Activate in the upper right corner to execute the query module and query the data integrated through the model table module.
[0116] To solve the problem that the cost sharing program designed based on the ABAP language according to the prior art realizes cost sharing, the existing function implementation is highly dependent on the code and it is difficult to flexibly respond to changes in business requirements, based on the same inventive concept as the above-mentioned embodiment of the present application, the embodiment of the present application also provides a cost sharing device, such as Fig.13 As shown, the cost sharing device is implemented based on the PaPM subsystem of the SAP system. The PaPM subsystem includes an application layer for front-end data interaction and a database layer for back-end data processing. The database layer is provided with a model view module, a view module, an allocation module and a connection module. The device specifically includes:
[0117] The model view module 1301 is used to provide a parameter input interface to the user and call the view module based on the parameters input by the user, wherein the parameters represent the cost sharing subject and the time dimension to which the cost belongs;
[0118] The view module 1302 is used to extract the original deferred expenses associated with the parameter from a preset database, wherein the database is used to store the original deferred expenses, sales expenses, first allocation indicator data and first allocation recipient; and call the allocation module based on the extracted original deferred expenses;
[0119] The allocation module 1303 is used to extract the sales expenses from a preset database, split the extracted original deferred expenses according to the proportion of the sales expenses between various business dimensions according to the allocation rules preset by the application layer, obtain the split deferred sub-expenses, and use them as the first-time allocation issuers respectively. The business dimensions represent the classification basis of the first-time allocation receivers, and call the view module based on the first-time allocation issuers;
[0120] The view module 1302 is further configured to extract first allocation index data corresponding to the expense types of each primary allocation issuer from the database according to each primary allocation issuer, and call the connection module based on the first allocation index data;
[0121] A connection module 1304 is used to establish a first association relationship between a primary allocation sender and a primary allocation receiver pre-stored in the database according to the allocation rule, and call an allocation module based on the first association relationship;
[0122] The allocation module 1303 is used to perform a primary allocation processing on each primary allocation sender to the primary allocation receiver according to the first association relationship and the first allocation indicator data.
[0123] The parameters input into the model view module 1301 represent the subject of expense sharing and the time dimension to which the expense belongs, such as the subject of expense sharing is a provincial company or a subsidiary, and the time dimension is year, quarter, month, etc.
[0124] In one implementation, after the original deferred expenses are obtained, the original deferred expenses are placed in a custom table through a model table module.
[0125] The allocation module 1303 cleans the business dimensions identified by the original deferred expenses according to the apportionment rules set by the application layer. The cleaning is a pre-processing of the business dimensions, that is, filtering out invalid business dimensions. The original deferred expenses are split according to the proportion of sales expenses among various business dimensions in order to more accurately apportion the expenses to each primary apportionment recipient.
[0126] The view module 1302 can set the correspondence between the first allocation indicator data and the sub-expenses to be allocated through allocation rules.
[0127] The connection module 1304 establishes the first association relationship between the one-time allocation issuer and the one-time allocation receiver pre-stored in the database, specifically including: respectively obtaining the fields contained in the one-time allocation issuer and the one-time allocation receiver; selecting each field of the one-time allocation issuer and matching it with the fields of the one-time allocation receiver one by one; or selecting each field of the one-time allocation receiver and matching it with the fields of the one-time allocation issuer one by one; connecting the data table structures of the one-time allocation issuer and the one-time allocation receiver with common fields into a view, and establishing the first association relationship between the one-time allocation issuer and the one-time allocation receiver.
[0128] During the allocation process, the allocation module 1303 uses the OVER function to perform classification and aggregation, classification statistical ratio, multiplication processing, and tail difference smoothing.
[0129] The connection module 1304 is also used to perform a backup processing according to the allocation rule (the backup sub-rule in the allocation rule) for the allocation issuer for which the first association relationship is not established after the primary allocation processing.
[0130] The connection module 1304 is also used to aggregate the result data of the primary allocation processing with the issuer of the secondary allocation determined according to the allocation rules as the issuer of the secondary allocation. The issuer of the secondary allocation determined according to the allocation rules is determined according to the expense category, which includes the allocation motivation, the type of the allocated expense, etc.
[0131] The view module 1302 is also used to extract the second allocation index data corresponding to the secondary allocation issuer from the preset database. The second allocation index data corresponding to the second allocation issuer is the second allocation index data of the cost sub-center and business scope.
[0132] The connection module 1304 is further used to establish a second association relationship between the secondary allocation issuer and the secondary allocation receiver pre-stored in the database.
[0133] The allocation module 1303 is further configured to perform secondary allocation processing on the secondary allocation sender from the secondary allocation receiver according to the second association relationship and based on the second allocation indicator data.
[0134] The connection module 1304 is also used to perform secondary backup processing according to the allocation rules for the secondary allocation issuer that has not established the second association relationship.
[0135] Fig.141 is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. At the hardware level, the electronic device 1400 includes a processor 1402, and optionally also includes an internal bus, a network interface, and a memory 1401. Among them, the memory 1401 may include a memory, such as a high-speed random access memory (RAM), and may also include a non-volatile memory (non-volatile memory), such as at least one disk storage, etc. Of course, the electronic device may also include hardware required for other services.
[0136] The processor 1402, the network interface and the memory 1401 may be connected to each other via an internal bus, which may be an ISA (Industry Standard Architecture) bus, a PCIe (Periphe ral Component Interconnect) bus or an EISA (Extended Industry Standard Architecture) bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.14 Only one bidirectional arrow is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0137] The memory 1401 is used to store computer programs. Specifically, the program may include program code, and the program code includes computer operation instructions. The memory may include internal memory and non-volatile memory, and provide instructions and data to the processor.
[0138] The processor 1402 is coupled to the memory 1401, reads the corresponding computer program from the non-volatile memory into the memory and then runs it, forming a data synchronization device at the logical level, which is used to execute the computer program stored in the memory 1401 to perform the following operations:
[0139] In response to the parameters input through the model view module, the view module is called to execute: extracting the original deferred expenses associated with the parameters from a preset database, the parameters representing the sharing subject of the cost sharing and the time dimension to which the costs belong, and the database is used to store the original deferred expenses, sales expenses, first sharing indicator data and the first sharing recipient; based on the extracted original deferred expenses, the allocation module is called to execute: extracting the sales expenses from the preset database, splitting the extracted original deferred expenses according to the proportion of the sales expenses between various business dimensions according to the sharing rules preset by the application layer, and obtaining the split deferred sub-expenses, which are respectively used as the first-time sharing issuers, The business dimension represents the classification basis for the one-time allocation recipient; based on each one-time allocation issuer, the view module is called to execute: according to each one-time allocation issuer, the first allocation indicator data corresponding to the expense type of each one-time allocation issuer is extracted from the database; based on the first allocation indicator data, the connection module is called to execute: according to the allocation rule, a first association relationship between the one-time allocation issuer and the one-time allocation recipient pre-stored in the database is established; based on the first association relationship, the allocation module is called to execute: according to the first allocation indicator data, each one-time allocation issuer is allocated to the one-time allocation recipient.
[0140] The above application Fig.14The method performed by the electronic device provided in the illustrated embodiment can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor or an instruction in the form of software. The above processor may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc. The steps of the method disclosed in conjunction with the embodiments of the present application can be directly embodied as being executed by a hardware decoding processor, or executed by a combination of hardware and software modules in a decoding processor. The software module can be located in a storage medium mature in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0141] Of course, in addition to software implementation methods, the electronic device of the present application does not exclude other implementation methods, such as logic devices or a combination of software and hardware, etc. That is to say, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.
[0142] The embodiment of the present application further provides a computer-readable storage medium storing a computer program, wherein the computer-readable storage medium stores one or more programs, wherein the one or more programs include instructions, and when the instructions are executed by a portable electronic device including a plurality of application programs, the portable electronic device can perform the following operations:
[0143] In response to the parameters input through the model view module, the view module is called to execute: extracting the original deferred expenses associated with the parameters from a preset database, the parameters representing the sharing subject of the cost sharing and the time dimension to which the costs belong, and the database is used to store the original deferred expenses, sales expenses, first sharing indicator data and the first sharing recipient; based on the extracted original deferred expenses, the allocation module is called to execute: extracting the sales expenses from the preset database, splitting the extracted original deferred expenses according to the proportion of the sales expenses between various business dimensions according to the sharing rules preset by the application layer, and obtaining the split deferred sub-expenses, which are respectively used as the first-time sharing issuers, The business dimension represents the classification basis for the one-time allocation recipient; based on each one-time allocation issuer, the view module is called to execute: according to each one-time allocation issuer, the first allocation indicator data corresponding to the expense type of each one-time allocation issuer is extracted from the database; based on the first allocation indicator data, the connection module is called to execute: according to the allocation rule, a first association relationship between the one-time allocation issuer and the one-time allocation recipient pre-stored in the database is established; based on the first association relationship, the allocation module is called to execute: according to the first allocation indicator data, each one-time allocation issuer is allocated to the one-time allocation recipient.
[0144] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0145] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0146] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0147] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.
[0148] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0149] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.
[0150] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.
[0151] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0152] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that contain computer-usable program code.
[0153] The above is only an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application should be included in the scope of the claims of the present application.
Claims
1. A cost sharing method, characterized in that: The method is implemented based on the PaPM subsystem of the SAP system. The PaPM subsystem includes an application layer for front-end data interaction and a database layer for back-end data processing. The database layer is provided with a model view module, a view module, an allocation module and a connection module. The method includes: In response to the parameters inputted through the model view module, the view module is called to execute: extracting the original deferred expenses associated with the parameters from a preset database, wherein the parameters represent the allocation subject of the expense allocation and the time dimension to which the expense belongs, and the database is used to store the original deferred expenses, sales expenses, first allocation indicator data and a primary allocation recipient; Based on the extracted original deferred expenses, the allocation module is called to execute: extract the sales expenses from the preset database, split the extracted original deferred expenses according to the proportion of the sales expenses among various business dimensions according to the allocation rules preset by the application layer, and obtain the split deferred sub-expenses, which are respectively used as the senders of each primary allocation, and the business dimension represents the classification basis for the recipients of the primary allocation; Based on each of the primary allocation issuers, calling the view module to execute: according to each of the primary allocation issuers, extracting first allocation indicator data corresponding to the expense types of each of the primary allocation issuers from the database; Based on the first allocation indicator data, calling the connection module to execute: establishing a first association relationship between a primary allocation sender and a primary allocation receiver pre-stored in the database according to the allocation rule; Based on the first association relationship, calling the allocation module to execute: performing a primary allocation processing on each of the primary allocation senders and the primary allocation receivers according to the first allocation indicator data; The step of establishing a first association relationship between a primary allocation issuer and a primary allocation receiver pre-stored in the database specifically includes: Get the fields contained in the primary allocation sender and the primary allocation receiver respectively; Select each field of the primary allocation sender and match it with the fields of the primary allocation receiver one by one; or select each field of the primary allocation receiver and match it with the fields of the primary allocation sender one by one; The data table structures of the one-time allocation issuer and the one-time allocation receiver having common fields are connected into one view, and the first association relationship between the one-time allocation issuer and the one-time allocation receiver is established.
2. The method according to claim 1, characterized in that: The method further comprises: After obtaining the original deferred expenses, the model table module of the database layer is called to land the original deferred expenses in the custom table; After obtaining the first allocation indicator data, the model table module of the database layer is called to land the original deferred expenses in the custom table; Wherein, the custom table is set in the model table module.
3. The method according to claim 2, characterized in that After the original deferred expenses are placed in the custom table and before the sales expenses are extracted from the preset database, the following steps are also included: Data is extracted from the custom table in a partitioned parallel manner; the partitions are obtained by dividing each piece of data of the original deferred expenses into a plurality of parts.
4. The method according to claim 1, characterized in that: The one-time apportionment process includes: Grouping the primary allocation issuers according to the allocation rules, and determining the first allocation indicator data corresponding to different groups; According to the first allocation index data corresponding to different groups, the to-be-allocated sub-expenses in the current group are allocated to the primary allocation recipients.
5. The method according to claim 1, characterized in that The one-time apportionment process also includes: Call the connection module to execute: For the issuer of the primary allocation without establishing the first association relationship, a bottom-up processing is performed according to the allocation rules.
6. The method according to claim 1, characterized in that The primary allocation process also includes a secondary allocation process, which is specifically: Calling the connection module to execute: aggregating the result data of the primary allocation processing with the issuer of the secondary allocation determined according to the allocation rule as the issuer of the secondary allocation; Based on the secondary allocation issuer, calling the view module to execute: extracting the second allocation indicator data corresponding to the secondary allocation issuer from a preset database; Based on the second allocation indicator data, calling the connection module to execute: establishing a second association relationship between the secondary allocation sender and the secondary allocation receiver pre-stored in the database; Based on the second association relationship, the allocation module is called to execute: according to the second association relationship, based on the second allocation indicator data, secondary allocation processing is performed on the secondary allocation sender to the secondary allocation receiver.
7. The method according to claim 6, characterized in that The secondary apportionment process further includes: Call the connection module to execute: For the secondary allocation issuer that has not established a second association relationship, perform secondary backup processing according to the allocation rules.
8. A cost sharing device, characterized in that: The PaPM subsystem based on the SAP system includes an application layer for front-end data interaction and a database layer for back-end data processing. The database layer is provided with a model view module, a view module, an allocation module and a connection module. The device specifically includes: A model view module is used to provide a parameter input interface to the user and call the view module based on the parameters input by the user, wherein the parameters represent the cost sharing subject and the time dimension to which the cost belongs; A view module, used for extracting the original deferred expenses associated with the parameters from a preset database, wherein the database is used for storing the original deferred expenses, sales expenses, first allocation index data and a primary allocation recipient; and calling the allocation module based on the extracted original deferred expenses; An allocation module is used to extract the sales expenses from a preset database, split the extracted original deferred expenses according to the proportion of the sales expenses between various business dimensions according to the allocation rules preset by the application layer, obtain the split deferred sub-expenses, and use them as the first-time allocation issuers respectively. The business dimensions represent the classification basis of the first-time allocation recipients, and call the view module based on the first-time allocation issuers; The view module is further used to extract first allocation index data corresponding to the expense types of each primary allocation issuer from the database according to each primary allocation issuer, and call the connection module based on the first allocation index data; A connection module, configured to establish, according to the allocation rule, a first association relationship between a primary allocation issuer and a primary allocation receiver pre-stored in the database, and to call an allocation module based on the first association relationship; The allocation module is further used to perform a primary allocation processing on each of the primary allocation senders to the primary allocation receiver according to the first association relationship and the first allocation indicator data; The step of establishing a first association relationship between a primary allocation issuer and a primary allocation receiver pre-stored in the database specifically includes: Get the fields contained in the primary allocation sender and the primary allocation receiver respectively; Select each field of the primary allocation sender and match it with the fields of the primary allocation receiver one by one; or select each field of the primary allocation receiver and match it with the fields of the primary allocation sender one by one; The data table structures of the one-time allocation issuer and the one-time allocation receiver having common fields are connected into one view, and the first association relationship between the one-time allocation issuer and the one-time allocation receiver is established.
9. An electronic device, characterized in that: It includes a processor, a memory, and a program or instruction stored in the memory and executable on the processor, wherein the program or instruction, when executed by the processor, implements the steps of the cost sharing method as described in any one of claims 1 to 7.
10. A readable storage medium, characterized in that: The readable storage medium stores programs or instructions, and when the programs or instructions are executed by the processor, the steps of the cost sharing method as described in any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Business data adjustment method and device, computer device and storage medium
CN108629050A
Premium data processing methodand device based on hierarchical relationship, apparatus and medium
CN109377382A