Patents by Inventor Sanam Narula
Sanam Narula 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: 11914667Abstract: Some embodiments provide a program. The program receives a visualization collection definition specifying a plurality of visualization definitions for a plurality of visualization definitions. Each visualization definition in the plurality of visualization definitions specifies a multi-dimensional array of data definition. The program further identifies a set of multi-dimensional array of data definitions specified in the plurality of visualization definitions of the visualization collection definition. The program also sends a request for the set of multi-dimensional array of data definitions to a computing system. The program further receives the set of multi-dimensional array of data definitions from the computing system. The program also stores the set of multi-dimensional array of data definitions in a cache storage of the mobile device for later use.Type: GrantFiled: February 10, 2022Date of Patent: February 27, 2024Assignee: BUSINESS OBJECTS SOFTWARE LTDInventors: Shou-Chieh Chao, Sanam Narula, Nathan Wang, Walter Mak, Tsz Hong Sung
-
Patent number: 11556432Abstract: A method for accessing data stored in a database may include generating a snapshot of a definition of a data story that includes a software widget configured to receive inputs for creating, based on a portion of data stored in the database, a data presentation providing a visual representation of the data. In response to a first indication to apply a filter removing some of the data associated with the data presentation, modifying a runtime definition of the data story to reflect the application of the filter. In response to a second indication to reset the filter, restoring the data story to a state prior to the application of the filter by replacing the runtime definition of the data story with the snapshot of the definition of the data story. Related systems and articles of manufacture are also provided.Type: GrantFiled: July 15, 2021Date of Patent: January 17, 2023Assignee: SAP SEInventors: Sanam Narula, Yahui Ke
-
Patent number: 11537413Abstract: The presentation of data models (a story) on a mobile device having limited memory and processing resources includes instantiating widgets one at a time for interaction with a user. When the user completes their interaction, the instance of that widget is removed from memory (destroyed); widgets are therefore stateless. A context framework that manages the application of filters to widgets that comprise the story. When a filter is applied, widget snapshot images used to display corresponding widgets in a collection view can be updated to reflect state changes of affected corresponding widgets so that users can see the state changes despite the widget being stateless.Type: GrantFiled: July 9, 2020Date of Patent: December 27, 2022Assignee: SAP SEInventors: Sanam Narula, Pak Man Chan
-
Publication number: 20220164409Abstract: Some embodiments provide a program. The program receives a visualization collection definition specifying a plurality of visualization definitions for a plurality of visualization definitions. Each visualization definition in the plurality of visualization definitions specifies a multi-dimensional array of data definition. The program further identifies a set of multi-dimensional array of data definitions specified in the plurality of visualization definitions of the visualization collection definition. The program also sends a request for the set of multi-dimensional array of data definitions to a computing system. The program further receives the set of multi-dimensional array of data definitions from the computing system.Type: ApplicationFiled: February 10, 2022Publication date: May 26, 2022Inventors: Shou-Chieh Chao, Sanam Narula, Nathan Wang, Walter Mak, Michael Tsz Hong Sung
-
Patent number: 11250092Abstract: Some embodiments provide a program. The program receives a visualization collection definition specifying a plurality of visualization definitions for a plurality of visualization definitions. Each visualization definition in the plurality of visualization definitions specifies a multi-dimensional array of data definition. The program further identifies a set of multi-dimensional array of data definitions specified in the plurality of visualization definitions of the visualization collection definition. The program also sends a request for the set of multi-dimensional array of data definitions to a computing system. The program further receives the set of multi-dimensional array of data definitions from the computing system. The program also stores the set of multi-dimensional array of data definitions in a cache storage of the mobile device for later use.Type: GrantFiled: December 21, 2018Date of Patent: February 15, 2022Assignee: BUSINESS OBJECTS SOFTWARE LTDInventors: Shou-Chieh Chao, Sanam Narula, Nathan Wang, Walter Mak, Tsz Hong Sung
-
Patent number: 11222023Abstract: A system includes reception of a request to execute queries associated with an interactive data visualization, building, based on the request, of all queries required by the interactive data visualization on a background thread, reception of a query response associated with each built query on the background thread, building of a final response on the background thread based on the received query responses, and rendering, on a main thread, of the interactive data visualization based on the final response.Type: GrantFiled: September 4, 2019Date of Patent: January 11, 2022Assignee: BUSINESS OBJECTS SOFTWARE LTD.Inventors: Sanam Narula, Noel Ray Barron, Pak Man Chan, Walter Mak, Rita Huang, Tsz Hong Sung
-
Patent number: 11176204Abstract: A method for accessing data stored in a database may include receiving, at an application, a request to load a data story that includes a software widget configured to create, based on a portion of data stored in a database coupled with a cloud-based analytics engine, a data presentation providing a visual representation of the portion of data. In response to the request to load the data story, a scripting engine associated with the application may execute a first programming code associated with the software widget. The first programming code may be executed to retrieve, from the cloud-based analytics engine, visualization data for rendering the data presentation. An in-app web browser associated with the application may execute a second programming code associated with the software widget. The second programming code may be executed to render, based on the visualization data retrieved from the cloud-based analytics engine, the data presentation.Type: GrantFiled: December 13, 2018Date of Patent: November 16, 2021Assignee: Business Objects Software LimitedInventors: Sanam Narula, Pak Man Chan, Noel Ray Barron, Nathan Wang
-
Publication number: 20210349792Abstract: A method for accessing data stored in a database may include generating a snapshot of a definition of a data story that includes a software widget configured to receive inputs for creating, based on a portion of data stored in the database, a data presentation providing a visual representation of the data. In response to a first indication to apply a filter removing some of the data associated with the data presentation, modifying a runtime definition of the data story to reflect the application of the filter. In response to a second indication to reset the filter, restoring the data story to a state prior to the application of the filter by replacing the runtime definition of the data story with the snapshot of the definition of the data story. Related systems and articles of manufacture are also provided.Type: ApplicationFiled: July 15, 2021Publication date: November 11, 2021Inventors: Sanam Narula, Yahui Ke
-
Patent number: 11099947Abstract: A method for accessing data stored in a database may include generating a snapshot of a definition of a data story that includes a software widget configured to receive inputs for creating, based on a portion of data stored in the database, a data presentation providing a visual representation of the data. In response to a first indication to apply a filter removing some of the data associated with the data presentation, modifying a runtime definition of the data story to reflect the application of the filter. In response to a second indication to reset the filter, restoring the data story to a state prior to the application of the filter by replacing the runtime definition of the data story with the snapshot of the definition of the data story. Related systems and articles of manufacture are also provided.Type: GrantFiled: November 8, 2018Date of Patent: August 24, 2021Assignee: SAP SEInventors: Sanam Narula, Yahui Ke
-
Patent number: 11068558Abstract: Some embodiments provide a program. The program receives from a first webview a first request for data for a first visualization in a plurality of visualizations specified in a visualization collection definition. The program further retrieves the data for the first visualization in the plurality of visualizations. The program also sends the first webview the data for the first visualization in order for the first webview to render the first visualization. The program further receives from a second webview a second request for data for a second visualization in the plurality of visualizations specified in the visualization collection definition. The program also retrieves the data for the second visualization in the plurality of visualizations using the background processing thread. The program further sends the second webview the data for the second visualization in order for the second webview to render the second visualization.Type: GrantFiled: December 21, 2018Date of Patent: July 20, 2021Assignee: BUSINESS OBJECTS SOFTWARE LTDInventors: Nathan Wang, Rita Huang, Shou-Chieh Chao, Pak Man Chan, Walter Mak, Sanam Narula, Tsz Hong Sung, Benny Mak
-
Patent number: 11023098Abstract: Embodiments of the present disclosure pertain to rendering on a mobile device. In one embodiment, a list of widgets to be rendered on a display stored in a priority queue. Widgets in the priority queue are sent to rendering software components based on a specified priority in the queue. The priority is based on whether or not the widgets are in a display area of a display. In one embodiment, data for widgets in the queue is retrieved during rendering of other widgets, and priority is based on whether data for a particular widget in the queue is available.Type: GrantFiled: October 3, 2018Date of Patent: June 1, 2021Assignee: SAP SEInventors: Walter Mak, Steffen Koette, Tsz Hong Sung, Yahui Ke, Nathan Wang, Sanam Narula, Shou-Chieh Chao
-
Patent number: 11003473Abstract: Some embodiments provide a program. The program receives a first request to perform a first function in a plurality of functions configured for execution by a web browser operating on a client device. The first function is implemented by a second function on the mobile device using native code. The second function is configured to emulate the first function. In response to the first request, the program further performs the second function. The program also receives a second request to perform a third function in the plurality of functions. The third function is implemented by a fourth function on the mobile device using scripting code compliant with a defined scripting standard. The fourth function is configured to emulate the third function. In response to the second request, the program further performing the fourth function.Type: GrantFiled: December 21, 2018Date of Patent: May 11, 2021Assignee: BUSINESS OBJECTS SOFTWARE LTDInventors: Sanam Narula, Nathan Wang, Pak Man Chan
-
Publication number: 20210064623Abstract: A system includes reception of a request to execute queries associated with an interactive data visualization, building, based on the request, of all queries required by the interactive data visualization on a background thread, reception of a query response associated with each built query on the background thread, building of a final response on the background thread based on the received query responses, and rendering, on a main thread, of the interactive data visualization based on the final response.Type: ApplicationFiled: September 4, 2019Publication date: March 4, 2021Inventors: Sanam Narula, Noel Ray Barron, Pak Man Chan, Walter Mak, Rita Huang, Tsz Hong Sung
-
Patent number: 10909206Abstract: Some embodiments provide a program. The program receives a visualization collection definition specifying a plurality of visualizations. The program further processes a first visualization in the plurality of visualization using a main processing thread. While processing the first visualization, the program also retrieves data for a second visualization in the plurality of visualizations from a computing system using a background processing thread. After the processing of the first visualization is completed, the program further processes the second visualization using the main processing thread.Type: GrantFiled: December 21, 2018Date of Patent: February 2, 2021Assignee: SAP SEInventors: Sanam Narula, Nathan Wang, Pak Man Chan, Shou-Chieh Chao, Benny Mak, Walter Mak, Tsz Hong Sung
-
Patent number: 10866707Abstract: A method for accessing data stored in a database may include receiving, at an application, a request to load a data story including a first software widget and a second software widget. The first software widget and the second software widget each being configured to create, based on a portion of data stored in a database coupled with a cloud-based analytics engine, a corresponding data presentation providing a visual representation of at least the portion of data. The first software widget may be rendered while visualization data for the second software widget is retrieved from the cloud-based analytics engine, processed, and stored in a cache. Upon completing the rendering of the first software widget, the processed visualization data for the second software widget may be retrieved from the cache in order to render the second software widget. Related systems and articles of manufacture are also provided.Type: GrantFiled: December 5, 2018Date of Patent: December 15, 2020Assignee: SAP SEInventors: Sanam Narula, Nathan Wang, Pak Man Chan, Rita Huang
-
Publication number: 20200341778Abstract: The presentation of data models (a story) on a mobile device having limited memory and processing resources includes instantiating widgets one at a time for interaction with a user. When the user completes their interaction, the instance of that widget is removed from memory (destroyed); widgets are therefore stateless. A context framework that manages the application of filters to widgets that comprise the story. When a filter is applied, widget snapshot images used to display corresponding widgets in a collection view can be updated to reflect state changes of affected corresponding widgets so that users can see the state changes despite the widget being stateless.Type: ApplicationFiled: July 9, 2020Publication date: October 29, 2020Inventors: Sanam Narula, Pak Man Chan
-
Patent number: 10747552Abstract: The presentation of data models (a story) on a mobile device having limited memory and processing resources includes instantiating widgets one at a time for interaction with a user. When the user completes their interaction, the instance of that widget is removed from memory (destroyed); widgets are therefore stateless. A context framework that manages the application of filters to widgets that comprise the story. When a filter is applied, widget snapshot images used to display corresponding widgets in a collection view can be updated to reflect state changes of affected corresponding widgets so that users can see the state changes despite the widget being stateless.Type: GrantFiled: August 24, 2018Date of Patent: August 18, 2020Assignee: SAP SEInventors: Sanam Narula, Pak Man Chan
-
Publication number: 20200201659Abstract: Some embodiments provide a program. The program receives a first request to perform a first function in a plurality of functions configured for execution by a web browser operating on a client device. The first function is implemented by a second function on the mobile device using native code. The second function is configured to emulate the first function. In response to the first request, the program further performs the second function. The program also receives a second request to perform a third function in the plurality of functions. The third function is implemented by a fourth function on the mobile device using scripting code compliant with a defined scripting standard. The fourth function is configured to emulate the third function. In response to the second request, the program further performing the fourth function.Type: ApplicationFiled: December 21, 2018Publication date: June 25, 2020Inventors: Sanam Narula, Nathan Wang, Pak Man Chan
-
Publication number: 20200201928Abstract: Some embodiments provide a program. The program receives from a first webview a first request for data for a first visualization in a plurality of visualizations specified in a visualization collection definition. The program further retrieves the data for the first visualization in the plurality of visualizations. The program also sends the first webview the data for the first visualization in order for the first webview to render the first visualization. The program further receives from a second webview a second request for data for a second visualization in the plurality of visualizations specified in the visualization collection definition. The program also retrieves the data for the second visualization in the plurality of visualizations using the background processing thread. The program further sends the second webview the data for the second visualization in order for the second webview to render the second visualization.Type: ApplicationFiled: December 21, 2018Publication date: June 25, 2020Inventors: Nathan Wang, Rita Huang, Shou-Chieh Chao, Pak Man Chan, Walter Mak, Sanam Narula, Michael Tsz Hong Sung, Benny Mak
-
Publication number: 20200201927Abstract: Some embodiments provide a program. The program receives a visualization collection definition specifying a plurality of visualizations. The program further processes a first visualization in the plurality of visualization using a main processing thread. While processing the first visualization, the program also retrieves data for a second visualization in the plurality of visualizations from a computing system using a background processing thread. After the processing of the first visualization is completed, the program further processes the second visualization using the main processing thread.Type: ApplicationFiled: December 21, 2018Publication date: June 25, 2020Inventors: Sanam Narula, Nathan Wang, Pak Man Chan, Shou-Chieh Chao, Benny Mak, Walter Mak, Tsz Hong Sung