Patents by Inventor Ulrich Bestfleisch
Ulrich Bestfleisch has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11347682Abstract: A system and method providing database level migration of an application and associated data. In one embodiment, the method may include deploying a new data structure, a first database trigger to capture data written to an old data structure and to write the captured data to the new data structure, and a bulk migration stored procedure to a database instance; deploying, in response to a conclusion of an execution of the bulk migration stored procedure, a second database trigger to the database instance to capture data written to the new data structure and to write the captured data to the old data structure; deploying a second version of the application; routing validation data to the second version of the application to validate an expected operation thereof; and routing, in response to a completion of the validation, production data for the database instance to the second version of the application.Type: GrantFiled: September 14, 2020Date of Patent: May 31, 2022Assignee: SAP SEInventor: Ulrich Bestfleisch
-
Publication number: 20220083502Abstract: A system and method providing database level migration of an application and associated data. In one embodiment, the method may include deploying a new data structure, a first database trigger to capture data written to an old data structure and to write the captured data to the new data structure, and a bulk migration stored procedure to a database instance; deploying, in response to a conclusion of an execution of the bulk migration stored procedure, a second database trigger to the database instance to capture data written to the new data structure and to write the captured data to the old data structure; deploying a second version of the application; routing validation data to the second version of the application to validate an expected operation thereof; and routing, in response to a completion of the validation, production data for the database instance to the second version of the application.Type: ApplicationFiled: September 14, 2020Publication date: March 17, 2022Inventor: Ulrich Bestfleisch
-
Patent number: 11256501Abstract: Provided is a system and method for providing a single entry point for integrating software extensions across different software application. In one example, the method may include receiving, via a unified extensibility entry point, an indication that a first software artifact of a first software application is being locally extended, identifying one or more other software artifacts in one or more other software applications that are capable of being cross-extended based on the local extension of the first software artifact in the first software application, and displaying, via a user interface, information about the one or more other software artifacts that are capable of being cross-extended.Type: GrantFiled: April 16, 2019Date of Patent: February 22, 2022Assignee: SAP SEInventor: Ulrich Bestfleisch
-
Patent number: 11093222Abstract: Some embodiments provide a non-transitory machine-readable medium that stores a program. The program receives a data model definition defined using a human-readable syntax. The data model definition includes a set of annotated entity definitions. The program further generates a machine-readable representation of the data model definition. Based on the data model definition, the program also generates, for each annotated entity definition in the set of annotated entity definitions, an interface and an implementation class from the machine-readable representation of the data model definition. The program further provides the set of interfaces and the set of implementation classes to an integrated development environment (IDE) application for design-time implementation of the set of interfaces and the set of implementation classes.Type: GrantFiled: February 26, 2019Date of Patent: August 17, 2021Assignee: SAP SEInventors: Oliver Klemenz, Tim Philipp Trabold, Ulrich Bestfleisch
-
Patent number: 11093220Abstract: Some embodiments provide a non-transitory machine-readable medium that stores a program. The program receives a data model definition defined using a human-readable syntax. The program further generates a machine-readable representation of the data model definition. Based on the data model definition, the program also generates a set of interfaces from the machine-readable representation of the data model definition. Each interface in the set of interfaces includes code specified in a programming language. The program further provides the set of interfaces to an integrated development environment (IDE) application for design-time implementation of the set of interfaces.Type: GrantFiled: February 26, 2019Date of Patent: August 17, 2021Assignee: SAP SEInventors: Oliver Klemenz, Tim Philipp Trabold, Ulrich Bestfleisch
-
Patent number: 11048480Abstract: A system and method providing a single entry point for implementing software extensions across multiple different software applications. In one embodiment, the method may include retrieving an indication of an extension point offered by a cloud application, the extension point being defined by a signature including a name and one or more parameters; generating one or more extension point implementations of the extension point by configuring custom code that fulfills the signature of the extension point; and sending, to the cloud application, an indication the extension point is active for requesting an execution of the one or more extension point implementations to be executed apart from the cloud application.Type: GrantFiled: March 23, 2020Date of Patent: June 29, 2021Assignee: SAP SEInventors: Ulrich Bestfleisch, Eduard Stelle
-
Patent number: 11023445Abstract: Technologies described herein can be used to support modification to data by a client computing device without a concurrency check. An update to a data document can be received from a client computing device. Contents of the update can be analyzed to determine whether a concurrency check is required before applying the update to the data document. In at least some embodiments, at least part of the contents of the data document can be organized in such a way that multiple, independent modifications can be made to the contents of the data document without concurrency checks. A server computer can be configured to identify updates to these contents of the data document, and to apply the updates to the data document without performing concurrency checks. In at least some embodiments, a list of concurrency-safe data document properties can be accessed when determining whether to omit the concurrency check.Type: GrantFiled: July 24, 2018Date of Patent: June 1, 2021Assignee: SAP SEInventor: Ulrich Bestfleisch
-
Publication number: 20200334034Abstract: Provided is a system and method for providing a single entry point for integrating software extensions across different software application. In one example, the method may include receiving, via a unified extensibility entry point, an indication that a first software artifact of a first software application is being locally extended, identifying one or more other software artifacts in one or more other software applications that are capable of being cross-extended based on the local extension of the first software artifact in the first software application, and displaying, via a user interface, information about the one or more other software artifacts that are capable of being cross-extended.Type: ApplicationFiled: April 16, 2019Publication date: October 22, 2020Inventor: Ulrich Bestfleisch
-
Patent number: 10802810Abstract: A persistent library bundle (PLB) is added as a library of an application. The PLB is automatically downloaded from a central registry and installed in an application directory. The PLB provides an out-of-the-box functionality to the application. The PLB includes a PLB persistence description. The PLB persistence description specifies how runtime data of the PLB has to be persisted. Upon installation of the PLB to the application, the PLB persistence description is copied to an application database directory. The application database directory stores application persistence description and the PLB persistence description. The application persistence description and the PLB persistence description are assigned to a certain database schema.Type: GrantFiled: December 27, 2016Date of Patent: October 13, 2020Assignee: SAP SEInventors: Oliver Klemenz, Ulrich Bestfleisch
-
Publication number: 20200272434Abstract: Some embodiments provide a non-transitory machine-readable medium that stores a program. The program receives a data model definition defined using a human-readable syntax. The program further generates a machine-readable representation of the data model definition. Based on the data model definition, the program also generates a set of interfaces from the machine-readable representation of the data model definition. Each interface in the set of interfaces includes code specified in a programming language. The program further provides the set of interfaces to an integrated development environment (IDE) application for design-time implementation of the set of interfaces.Type: ApplicationFiled: February 26, 2019Publication date: August 27, 2020Inventors: Oliver Klemenz, Tim Philipp Trabold, Ulrich Bestfleisch
-
Publication number: 20200272438Abstract: Some embodiments provide a non-transitory machine-readable medium that stores a program. The program receives a data model definition defined using a human-readable syntax. The data model definition includes a set of annotated entity definitions. The program further generates a machine-readable representation of the data model definition. Based on the data model definition, the program also generates, for each annotated entity definition in the set of annotated entity definitions, an interface and an implementation class from the machine-readable representation of the data model definition. The program further provides the set of interfaces and the set of implementation classes to an integrated development environment (IDE) application for design-time implementation of the set of interfaces and the set of implementation classes.Type: ApplicationFiled: February 26, 2019Publication date: August 27, 2020Inventors: Oliver Klemenz, Tim Philipp Trabold, Ulrich Bestfleisch
-
Patent number: 10606706Abstract: A computing device hosts a graphical user interface (GUI) of a computer application, the computer application being run on a backend computing platform accessible to the computing device via a network. The GUI includes multiple models in a Model-View-Controller (MVC) pattern, an eventing mechanism, and a model synchronizer. Each model in the GUI represents one or more application objects of the computer application. The eventing mechanism generates an application object change event when an application object of one of the multiple models in the GUI is changed to a new state. The model synchronizer listens to the generated application object change event, retrieves the new state of the application object, and locally updates other models of the multiple models in the GUI that also represent the application object with the new state of the application object.Type: GrantFiled: November 18, 2016Date of Patent: March 31, 2020Assignee: SAP SEInventors: Ulrich Bestfleisch, Oliver Klemenz, Sergey Smirnov
-
Patent number: 10558663Abstract: Some embodiments provide a non-transitory machine-readable medium that stores a program. In response to receiving a first query for a set of data, the program generates a first query execution plan based on the first query. The program further executes the first query execution plan in order to generate a first result set comprising the set of data. The program also stores the first query execution plan in a cache. The program further replaces the first query execution plan in the cache with a second query execution plan. The second query execution plan includes a query hint applied to the first query execution plan. In response to receiving a second query for the set of data, the program also retrieves the second query execution plan from the cache. The program further executes the second query execution plan in order to generate a second result set comprising the set of data.Type: GrantFiled: March 30, 2017Date of Patent: February 11, 2020Assignee: SAP SEInventor: Ulrich Bestfleisch
-
Publication number: 20200034438Abstract: Technologies described herein can be used to support modification to data by a client computing device without a concurrency check. An update to a data document can be received from a client computing device. Contents of the update can be analyzed to determine whether a concurrency check is required before applying the update to the data document. In at least some embodiments, at least part of the contents of the data document can be organized in such a way that multiple, independent modifications can be made to the contents of the data document without concurrency checks. A server computer can be configured to identify updates to these contents of the data document, and to apply the updates to the data document without performing concurrency checks. In at least some embodiments, a list of concurrency-safe data document properties can be accessed when determining whether to omit the concurrency check.Type: ApplicationFiled: July 24, 2018Publication date: January 30, 2020Applicant: SAP SEInventor: Ulrich Bestfleisch
-
Patent number: 10445157Abstract: An event bus is instantiated for subscribing applications for notifications in relation to cached results. The cached results may be associated with executed requests sent by the applications to services. It is determining whether a result value associated with a request from a first application to a remote service is cached. When the result value is blank, the first application is subscribed for an event associated with request parameters, defined with the request from the first application. A result event associated with caching the result value is published, e.g. at the event bus. The result value is determined based on executing a request sent by a second application, which defines the request parameters and is sent to the remote service prior to the request from the first application. A notification is provided to the first application with regards to the result event.Type: GrantFiled: May 18, 2017Date of Patent: October 15, 2019Assignee: SAP SEInventor: Ulrich Bestfleisch
-
Patent number: 10430521Abstract: A method for internationalization of a computer application being designed and developed as cloud application in a platform-as-a-service (PaaS) environment includes disposing a translatable texts table in a data layer of the computer application as a common source of translatable texts for all layers of the computer application. The method further includes disposing a text string translation service in a logic layer of the computer application. to expose the translatable texts table disposed in the data layer to a presentation layer of the computer application.Type: GrantFiled: September 2, 2016Date of Patent: October 1, 2019Assignee: SAP SEInventors: Ulrich Bestfleisch, Oliver Klemenz, Sebastian Schroetel, Sergey Smirnov, Veit Spaegele
-
Patent number: 10255049Abstract: Techniques are described for providing a non-blocking application object framework allowing parallelization of operation and function calls throughout an application executing within the framework. In one example, a dependency model associated with an application in a non-blocking application object framework is identified, where the application is associated with a plurality of operations and the dependency model defines at least one dependency between at least two of the operations. At runtime of the non-blocking application object framework, the identified dependency model is interpreted. An optimized execution plan of the application is automatically generated in the non-blocking application object framework based on the interpreted dependency model, wherein at least a first portion of the operations of the application are optimized in a sequential execution order based on dependencies defined in the dependency model.Type: GrantFiled: May 15, 2017Date of Patent: April 9, 2019Assignee: SAP SEInventors: Oliver Klemenz, Ulrich Bestfleisch, Sebastian Schroetel, Veit Spaegele, Sergey Smirnov
-
Publication number: 20180336078Abstract: An event bus is instantiated for subscribing applications for notifications in relation to cached results. The cached results may be associated with executed requests sent by the applications to services. It is determining whether a result value associated with a request from a first application to a remote service is cached. When the result value is blank, the first application is subscribed for an event associated with request parameters, defined with the request from the first application. A result event associated with caching the result value is published, e.g. at the event bus. The result value is determined based on executing a request sent by a second application, which defines the request parameters and is sent to the remote service prior to the request from the first application. A notification is provided to the first application with regards to the result event.Type: ApplicationFiled: May 18, 2017Publication date: November 22, 2018Inventor: Ulrich Bestfleisch
-
Publication number: 20180329697Abstract: Techniques are described for providing a non-blocking application object framework allowing parallelization of operation and function calls throughout an application executing within the framework. In one example, a dependency model associated with an application in a non-blocking application object framework is identified, where the application is associated with a plurality of operations and the dependency model defines at least one dependency between at least two of the operations. At runtime of the non-blocking application object framework, the identified dependency model is interpreted. An optimized execution plan of the application is automatically generated in the non-blocking application object framework based on the interpreted dependency model, wherein at least a first portion of the operations of the application are optimized in a sequential execution order based on dependencies defined in the dependency model.Type: ApplicationFiled: May 15, 2017Publication date: November 15, 2018Inventors: Oliver Klemenz, Ulrich Bestfleisch, Sebastian Schroetel, Veit Spaegele, Sergey Smirnov
-
Publication number: 20180285416Abstract: Some embodiments provide a non-transitory machine-readable medium that stores a program. In response to receiving a first query for a set of data, the program generates a first query execution plan based on the first query. The program further executes the first query execution plan in order to generate a first result set comprising the set of data. The program also stores the first query execution plan in a cache. The program further replaces the first query execution plan in the cache with a second query execution plan. The second query execution plan includes a query hint applied to the first query execution plan. In response to receiving a second query for the set of data, the program also retrieves the second query execution plan from the cache. The program further executes the second query execution plan in order to generate a second result set comprising the set of data.Type: ApplicationFiled: March 30, 2017Publication date: October 4, 2018Inventor: Ulrich Bestfleisch