# US 12,008,490 B2 · Centralized configuration of enterprise software applications

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,008,490 B2
- Document ID: US12008490B2
- Status: Granted
- Kind: B2
- Application number: 16/690,076
- Filed: 2019-11-20
- Published: 2021-05-20
- Granted: 2024-06-11
- Earliest claimed: 2019-11-20
- Assignees: Sap SE
- Applicants: Sap SE
- Inventors: Wulf Kruempelmann; Barbara Freund
- Web page: https://patentgrep.com/patent/US12008490B2

## CPC

- G06Q 10/06311: {Scheduling, planning or task assignment for a person or group}
- G06Q 10/06398: {Performance of employee with respect to a job function}
- G06Q 10/1091: Recording time for administrative or management purposes
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

A method may include a configuration engine receiving inputs for generating a customized function whose performance requires a first software application at a first host system to perform a first subprocess and a second software application at a second host system to perform a second subprocess. The configuration engine may apply a first customization to a first template to change a first manner in which data is stored in a first database table operated upon by the first software application while performing the first subprocess. A second customization may be applied to a second template to change the second manner in which data is stored in a second database table operated upon by the second software application while performing the second subprocess. The customized function may be implemented by sending the first template to the first host system and the second template to the second host system.

## Claims

### Claim 1

A system, comprising:
at least one data processor; and
at least one memory storing instructions, which when executed by the at least one data processor, result in operations comprising:
receiving, at a configuration engine, one or more inputs for generating a customized function whose performance requires a first software application to perform a first subprocess and a second software application to perform a second subprocess, the first software application being deployed at a first host system and operating on a first database table having a first column, and the second software application being deployed at a second host system and operating on a second database table having a second column mapped to the first column in order to accomplish the customized function;
applying, based at least on the one or more inputs, a first customization to a first template associated with the first software application to change a first manner in which data is stored in the first database table operated upon by the first software application performing the first subprocess;
applying, based at least on the one or more inputs, a second customization to a second template associated with the second software application to change a second manner in which data is stored in the second database table operated upon by the second software application performing the second subprocess;
staging, at the configuration engine, the customized function to at least determine a compatibility between the first customization applied to the first software application and the second customization applied to the second software application; and
upon determining that the first customization applied to the first software application is compatible with the second customization applied to the second software application, implementing the customized function by at least sending, to the first host system of the first software application, the first template having the first customization and sending, to the second host system of the second software application, the second template having the second customization.

### Claim 2 (depends on 1)

The system of claim 1, wherein the customized function is further staged to at least determine a consistency between the customized function and each of the first customization and the second customization.

### Claim 3 (depends on 1)

The system of claim 1, further comprising:
importing, from the first host system, a first artifact including the first template, the first artifact further including documentation and/or metadata, the documentation and/or the metadata identifying one or more static features and/or runtime features of the first software application.

### Claim 4 (depends on 1)

The system of claim 1, further comprising:
importing, from the second host system, a second artifact including the second template, the second artifact further including documentation and/or metadata, the documentation and/or the metadata identifying one or more static features and/or runtime features of the second software application.

### Claim 5 (depends on 1)

The system of claim 1, further comprising:
generating, by the configuration engine, a user interface for presentation at a client device, the user interface configured to display a plurality of queries, and the user interface further configured to receive, from a user at the client device, the one or more inputs in response to the plurality of queries.

### Claim 6 (depends on 1)

The system of claim 1, wherein the first template specifies at least the first column included in the first database table operated upon by the first software application, and wherein the second template specifies at least the second column included in the second database table operated upon by the second software application.

### Claim 7 (depends on 1)

The system of claim 1, wherein the first software application and the second software application comprise an enterprise resource planning (ERP) software application, a customer relationship management (CRM) software application, and/or a supply chain management (SCM) software application.

### Claim 8 (depends on 1)

The system of claim 1, wherein the one or more functions include invoicing, procurement, payroll, time and attendance management, recruiting and onboarding, learning and development, performance and compensation, and/or workforce planning.

### Claim 9

A computer-implemented method, comprising:
receiving, at a configuration engine, one or more inputs for generating a customized function whose performance requires a first software application to perform a first subprocess and a second software application to perform a second subprocess, the first software application being deployed at a first host system and operating on a first database table having a first column, and the second software application being deployed at a second host system and operating on a second database table having a second column mapped to the first column in order to accomplish the customized function;
applying, based at least on the one or more inputs, a first customization to a first template associated with the first software application to change a first manner in which data is stored in the first database table operated upon by the first software application performing the first subprocess;
applying, based at least on the one or more inputs, a second customization to a second template associated with the second software application to change a second manner in which data is stored in the second database table operated upon by the second software application performing the second subprocess;
staging, at the configuration engine, the customized function to at least determine a compatibility between the first customization applied to the first software application and the second customization applied to the second software application; and
upon determining that the first customization applied to the first software application is compatible with the second customization applied to the second software application, implementing the customized function by at least sending, to the first host system of the first software application, the first template having the first customization and sending, to the second host system of the second software application, the second template having the second customization.

### Claim 10 (depends on 9)

The method of claim 9, wherein the customized function is further staged to at least determine a consistency between the customized function and each of the first customization and the second customization.

### Claim 11 (depends on 9)

The method of claim 9, further comprising:
importing, from the first host system, a first artifact including the first template, the first artifact further including documentation and/or metadata, the documentation and/or the metadata identifying one or more static features and/or runtime features of the first software application.

### Claim 12 (depends on 9)

The method of claim 9, further comprising:
importing, from the second host system, a second artifact including the second template, the second artifact further including documentation and/or metadata, the documentation and/or the metadata identifying one or more static features and/or runtime features of the second software application.

### Claim 13 (depends on 9)

The method of claim 9, further comprising:
generating, by the configuration engine, a user interface for presentation at a client device, the user interface configured to display a plurality of queries, and the user interface further configured to receive, from a user at the client device, the one or more inputs in response to the plurality of queries.

### Claim 14 (depends on 9)

The method of claim 9, wherein the first template specifies at least the first column included in the first database table operated upon by the first software application, and wherein the second template specifies at least the second column included in the second database table operated upon by the second software application.

### Claim 15 (depends on 9)

The method of claim 9, wherein the first software application and the second software application comprise an enterprise resource planning (ERP) software application, a customer relationship management (CRM) software application, and/or a supply chain management (SCM) software application.

### Claim 16

A non-transitory computer readable medium storing instructions, which when executed by at least one data processor, result in operations comprising:
receiving, at a configuration engine, one or more inputs for generating a customized function whose performance requires a first software application to perform a first subprocess and a second software application to perform a second subprocess, the first software application being deployed at a first host system and operating on a first database table having a first column, and the second software application being deployed at a second host system and operating on a second database table having a second column mapped to the first column in order to accomplish the customized function;
applying, based at least on the one or more inputs, a first customization to a first template associated with the first software application to change a first manner in which data is stored in the first database table operated upon by the first software application performing the first subprocess;
applying, based at least on the one or more inputs, a second customization to a second template associated with the second software application to change a second manner in which data is stored in the second database table operated upon by the second software application performing the second subprocess;
staging, at the configuration engine, the customized function to at least determine a compatibility between the first customization applied to the first software application and the second customization applied to the second software application; and
upon determining that the first customization applied to the first software application is compatible with the second customization applied to the second software application, implementing the customized function by at least sending, to a first host system of the first software application, the first template having the first customization and sending, to a second host system of the second software application, the second template having the second customization.
