IP Library Granted Patent US 10,169,410
Granted Patent B2
US 10,169,410 · App. 14/945,360 · Granted Jan 1, 2019

Merge of stacked calculation views with higher level programming language logic

Inventors: Johannes Merx (Heidelberg, DE); Tobias Mindnich (Sulzbach, DE); Christoph Weyerhaeuser (Heidelberg, DE)
Assignee: SAP SE
G06F17/30451
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,169,410
App. No.
14/945,360
Granted
Jan 1, 2019
Kind
B2
Abstract

A stacked calculation view, defining a calculation scenario, having calculation views associated with high-level programming logic which can include complex analytical privileges. Resolving, using a high-level programming logic layer, a calculation view having associated high-level programming logic with the next calculation view in the stack to generate a sub-query. Converting the sub-query into a format readable by a database system and separating the part of the sub-query provided by the high-level programming logic from the sub-query to form a high-level programming logic filter in the database system format. Merge the high-level programming logic filter into the calculation scenario to provide a calculation scenario including high-level programming logic information in the database system format.

Claims (38)

1. A method to be performed on one or more data processors comprising at least part of a computer system, the method comprising:

resolving, using a high-level programming logic layer, high level programming logic associated with a first calculation view and a second calculation view below the first calculation view in a stacked calculation view of a calculation scenario to form a sub-query, the high level programming logic comprising a plurality of complex analytical privileges, each complex analytical privilege comprising at least one sub-select on at least one database table;

converting, using the high-level programming logic layer, the sub-query into a database system format;

applying, using the high-level programming logic layer, a high-level programming logic tag to the sub-query in the database system format; and,

merging, using a calculation engine layer, the sub-query into the calculation scenario, the calculation engine layer comprising the first and second calculation views.

2. The method of claim 1 , wherein merging the sub-query into the calculation scenario comprises:

separating, using the calculation engine layer, the portion of the sub-query provided by the high-level programming logic from the rest of the sub-query, to generate a high-level programming logic filter in the database system format; and,

applying, using the calculation engine layer, the high-level programming logic filter to the calculation scenario.

3. The method of claim 1 , wherein the complex analytical privileges are defined in SQL.

4. The method of claim 1 , wherein the complex analytical privileges define a database system user's rights to access database information managed by the database system.

5. The method of claim 1 , wherein the database system format is column store syntax.

6. The method of claim 1 , wherein the high-level programming logic layer is an SQL layer.

7. A system comprising:

at least one data processor; and,

memory coupled to the at least one data processor, the memory storing instructions, which, when executed, cause the at least one data processor to perform operations comprising:

resolving, using a high-level programming logic layer, high level programming logic associated with a first calculation view and a second calculation view below the first calculation view in a stacked calculation view of a calculation scenario to form a sub-query, the high level programming logic comprising a plurality of complex analytical privileges, each complex analytical privilege comprising at least one sub-select on at least one database table;

converting, using the high-level programming logic layer, the sub-query into a database system format;

applying, using the high-level programming logic layer, a high-level programming logic tag to the sub-query in the database system format; and,

merging, using a calculation engine layer, the sub-query into the calculation scenario, the calculation engine layer comprising the first and second calculation views.

8. The system of claim 7 , wherein merging the sub-query into the calculation scenario comprises:

separating, using the calculation engine layer, the portion of the sub-query provided by the high-level programming logic from the rest of the sub-query, to generate a high-level programming logic filter in the database system format; and,

applying, using the calculation engine layer, the high-level programming logic filter to the calculation scenario.

9. The system of claim 7 , wherein the complex analytical privileges are defined in SQL.

10. The system of claim 7 , wherein the complex analytical privileges define a database system user's rights to access database information managed by the database system.

11. The system of claim 7 , wherein the database system format is column store syntax.

12. The system of claim 7 , wherein the high-level programming logic layer is an SQL layer.

13. A non-transitory computer program product storing instructions that, when executed by at least one programmable processor forming part of at least one computing system, cause the at least one programmable processor to perform operations comprising:

resolving, using a high-level programming logic layer, high level programming logic associated with a first calculation view and a second calculation view below the first calculation view in a stacked calculation view of a calculation scenario to form a sub-query, the high level programming logic comprising a plurality of complex analytical privileges, each complex analytical privilege comprising at least one sub-select on at least one database table;

converting, using the high-level programming logic layer, the sub-query into a database system format;

applying, using the high-level programming logic layer, a high-level programming logic tag to the sub-query in the database system format; and,

merging, using a calculation engine layer, the sub-query into the calculation scenario, the calculation engine layer comprising the first and second calculation views.

14. The computer program product of claim 13 , wherein merging the sub-query into the calculation scenario comprises:

separating, using the calculation engine layer, the portion of the sub-query provided by the high-level programming logic from the rest of the sub-query, to generate a high-level programming logic filter in the database system format; and,

applying, using the calculation engine layer, the high-level programming logic filter to the calculation scenario.

15. The computer program product of claim 13 , wherein the complex analytical privileges are defined in SQL.

16. The computer program product of claim 13 , wherein the complex analytical privileges define a database system user's rights to access database information managed by the database system.

17. The computer program product of claim 13 , wherein the database system format is column store syntax.

18. The computer program product of claim 13 , wherein the high-level programming logic layer is an SQL layer.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2015
From: MERX, JOHANNES; MINDNICH, TOBIAS; WEYERHAEUSER, CHRISTOPH
To: SAP SE
Reel/Frame 037084/0263 →
Continuity (1)
Related Publication 20170139988A1 · May 18, 2017
Cited By (1)
US 12,536,173