Patents by Inventor Ehab Sobhy
Ehab Sobhy 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: 11900133Abstract: In an implementation, a computing device under the control of a spreadsheet application displays a spreadsheet in a user interface. The application detects a user action in the spreadsheet associated with an unstructured table and responsively drives the computer to display a suggestion component in the user interface. A selection of the component causes the computer to display a preview of a suggested table feature in the user interface.Type: GrantFiled: December 1, 2021Date of Patent: February 13, 2024Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Ehab Sobhy Deraz, Brenton Aihe Milne
-
Publication number: 20230168910Abstract: In an implementation, a computing device under the control of a spreadsheet application displays a spreadsheet in a user interface. The application detects a user action in the spreadsheet associated with an unstructured table and responsively drives the computer to display a suggestion component in the user interface. A selection of the component causes the computer to display a preview of a suggested table feature in the user interface.Type: ApplicationFiled: December 1, 2021Publication date: June 1, 2023Inventors: Ehab SOBHY DERAZ, Brenton Aihe MILNE
-
Patent number: 10862979Abstract: The techniques described herein facilitate supporting remote micro-services from cloud-based analytics platforms as native functions in spreadsheet applications, e.g., Microsoft Excel®. In an implementation, a method of supporting remote micro-services as native functions in a spreadsheet application is disclosed. The method includes accessing a listing identifying at least one micro-service that is available for use by a user of a spreadsheet application. The at least one micro-service is remotely located in a cloud service platform. The method further includes obtaining a schema associated with the at least one remote micro-service, generating a translation model based on the schema, and registering the skeleton spreadsheet function as a native function in the spreadsheet application. The translation model maps between the at least one remote micro-service and a skeleton spreadsheet function.Type: GrantFiled: April 7, 2017Date of Patent: December 8, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Ehab Sobhy Deraz, Carlos Augusto Otero, Annie Colonna, Christopher John Gross
-
Patent number: 10860656Abstract: In non-limiting examples of the present disclosure, systems, methods and devices for assisting with providing dataset insights associated with datasets are presented. A dataset and a query relating to the dataset may be received. The dataset may be processed to determine metadata that describes one or more properties of the dataset. The dataset, the determined metadata, and the user query may be provided to one or more modular recommendation elements for processing into an insight result that indicates a result from data analysis directed to the query. The insight result may be transferred in a portable format for use by the productivity application in displaying one or more insight objects based on the insight result.Type: GrantFiled: April 25, 2018Date of Patent: December 8, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Ehab Sobhy Deraz, Charles David Ellis, Michael Joe Woolf, Matthew Willem Asplund, Mathew B. Olinger, Sameer Surendra Jagdale, Charles Strempler
-
Patent number: 10846469Abstract: Systems, methods, and software for data calculation frameworks for user applications are provided herein. An exemplary method includes registering dynamic functions for use by a calculation engine of the user application, coupling calls made by the calculation engine for the dynamic functions to services that host the dynamic functions, and monitoring availability status for the dynamic functions related to availability of the dynamic functions to process expressions associated with the calculation engine.Type: GrantFiled: March 7, 2017Date of Patent: November 24, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Ehab Sobhy Deraz, Thomas Alexander Morrison
-
Patent number: 10791105Abstract: The techniques described herein facilitate proactively discovery of remote micro-services by spreadsheet applications, e.g., Microsoft Excel®. In an implementation, a method of operating a spreadsheet application to proactively discover remote micro-services based on credential information is disclosed. The method includes identifying the credential information associated with a user of the spreadsheet application responsive to detecting a micro-service updating event and proactively discovering one or more micro-services that are available to the user of the spreadsheet application through a cloud service platform based on the credential information. The method further includes persisting a list including the one or more micro-services that are available to the user of the spreadsheet application based on the credentials.Type: GrantFiled: April 7, 2017Date of Patent: September 29, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Carlos Augusto Otero, Ehab Sobhy Deraz, Christopher John Gross
-
Patent number: 10572274Abstract: Systems, methods, and computer-executable instructions for supporting custom functions within an application. An application add-in is received that includes a custom function and a custom function location. The application is available across multiple platforms. The custom function is also available across multiple platforms. The custom function is registered within the application using the custom function location. A request to invoke the custom function is received within the application A custom function implementation is downloaded from the custom function location. The custom function implementation is executed. A return value is received from the custom function implementation. The return value may be displayed within the application.Type: GrantFiled: February 6, 2018Date of Patent: February 25, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Michael J Saunders, Hoe Jin Kim, Zlatko Michailov, Hardik V. Shah, Shaofeng Zhu, John Zhongqi Wang, Chae Seong Lim, Hailei Zhang, Sudheer Maremanda, Abhimanyu Sharma, Jay R. Rathi, Robert Ion Gavrila, Ehab Sobhy, Thomas A. Morrison, Jai Srinivasan, Rolando Jimenez Salgado, Nicholas Weinandt, Alexandru Croicu
-
Publication number: 20190171777Abstract: In non-limiting examples of the present disclosure, systems, methods and devices for assisting with providing dataset insights associated with datasets are presented. A dataset and a query relating to the dataset may be received. The dataset may be processed to determine metadata that describes one or more properties of the dataset. The dataset, the determined metadata, and the user query may be provided to one or more modular recommendation elements for processing into an insight result that indicates a result from data analysis directed to the query. The insight result may be transferred in a portable format for use by the productivity application in displaying one or more insight objects based on the insight result.Type: ApplicationFiled: April 25, 2018Publication date: June 6, 2019Inventors: Ehab Sobhy Deraz, Charles David Ellis, Michael Joe Woolf, Matthew Willem Asplund, Mathew B. Olinger, Sameer Surendra Jagdale, Charles Strempler
-
Publication number: 20190095226Abstract: Systems, methods, and computer-executable instructions for supporting custom functions within an application. An application add-in is received that includes a custom function and a custom function location. The application is available across multiple platforms. The custom function is also available across multiple platforms. The custom function is registered within the application using the custom function location. A request to invoke the custom function is received within the application A custom function implementation is downloaded from the custom function location. The custom function implementation is executed. A return value is received from the custom function implementation. The return value may be displayed within the application.Type: ApplicationFiled: February 6, 2018Publication date: March 28, 2019Inventors: Michael J. Saunders, Hoe Jin Kim, Zlatko Michailov, Hardik V. Shah, Shaofeng Zhu, John Zhongqi Wang, Chae Seong Lim, Hailei Zhang, Sudheer Maremanda, Abhimanyu Sharma, Jay R. Rathi, Robert Ion Gavrila, Ehab Sobhy, Thomas A. Morrison, Jai Srinivasan, Rolando Jimenez Salgado, Nicholas Weinandt, Alexandru Croicu
-
Patent number: 10186058Abstract: Various techniques for visualizing cross-pivoted tables are disclosed herein. In one embodiment, a method includes determining if a first dimension and a second dimension of a cross-pivoted table contain non-numerical values, the cross-pivoted table having a plurality of data points each dependent upon a first value in the first dimension and a second value in the second dimension. In response to determining that the first dimension and the second dimension contain non-numerical first and second values, the non-numerical first and second values can be converted to corresponding numerical first and second values. The method can then include plotting, on a display, a visual representation of the plurality of data points of the cross-pivoted table using the numerical first and second numerical values as first and second axis, respectively.Type: GrantFiled: November 11, 2015Date of Patent: January 22, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Igor Peev, Ehab Sobhy, Lewey Geselowitz, Paavany Jayanty
-
Patent number: 10181208Abstract: Performance and capability improvements of computer devices that provide digital images of heatmap visualizations for datasets are provided via both systems and methods. A value-color spectrum is correlated to the dataset via a multi-pass rendering. The multi-pass rendering yields a two-channel mask, which is applied to a map to show the dataset in a heatmap visualization on that map, and may be continually used as the map is manipulated by a user. User interface tools are also provided to enable a user to specify a custom value-color spectrum, how the dataset is to be aggregated, the area of effect for a data point in the visualization, the strength of effect for a data point in the visualization, and which specifies how a dataset will be visually represented in a heatmap.Type: GrantFiled: June 30, 2016Date of Patent: January 15, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Daniel Benjamin Witriol, Matthew W. Asplund, Lewey Alec Geselowitz, Igor Borisov Peev, Ehab Sobhy Deraz
-
Patent number: 10140280Abstract: Systems, methods, and software for data calculation frameworks for user applications are provided herein. An exemplary method includes providing functions for use by a calculation engine of the user application, determining that the calculation engine issues a call for evaluation of a nested expression comprising at least a child function embedded in a parent function, and responsively dispatching at least a first evaluation process for a first portion of the nested expression that employs the child function. During evaluation of the nested expression, the method includes indicating to the calculation engine a predetermined result for at least the parent function, and dispatching at least a second evaluation process for a second portion of the nested expression that employs the child result. Responsive to receiving a parent result from the second evaluation process, the method includes indicating the parent result to the calculation engine.Type: GrantFiled: March 7, 2017Date of Patent: November 27, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Ehab Sobhy Deraz, Thomas Alexander Morrison
-
Publication number: 20180295118Abstract: The techniques described herein facilitate proactively discovery of remote micro-services by spreadsheet applications, e.g., Microsoft Excel®. In an implementation, a method of operating a spreadsheet application to proactively discover remote micro-services based on credential information is disclosed. The method includes identifying the credential information associated with a user of the spreadsheet application responsive to detecting a micro-service updating event and proactively discovering one or more micro-services that are available to the user of the spreadsheet application through a cloud service platform based on the credential information. The method further includes persisting a list including the one or more micro-services that are available to the user of the spreadsheet application based on the credentials.Type: ApplicationFiled: April 7, 2017Publication date: October 11, 2018Inventors: Carlos Augusto Otero, Ehab Sobhy Deraz, Christopher John Gross
-
Publication number: 20180295194Abstract: The techniques described herein facilitate supporting remote micro-services from cloud-based analytics platforms as native functions in spreadsheet applications, e.g., Microsoft Excel®. In an implementation, a method of supporting remote micro-services as native functions in a spreadsheet application is disclosed. The method includes accessing a listing identifying at least one micro-service that is available for use by a user of a spreadsheet application. The at least one micro-service is remotely located in a cloud service platform. The method further includes obtaining a schema associated with the at least one remote micro-service, generating a translation model based on the schema, and registering the skeleton spreadsheet function as a native function in the spreadsheet application. The translation model maps between the at least one remote micro-service and a skeleton spreadsheet function.Type: ApplicationFiled: April 7, 2017Publication date: October 11, 2018Inventors: Ehab Sobhy Deraz, Carlos Augusto Otero, Annie Colonna, Christopher John Gross
-
Publication number: 20180260373Abstract: Systems, methods, and software for data calculation frameworks for user applications are provided herein. An exemplary method includes registering dynamic functions for use by a calculation engine of the user application, coupling calls made by the calculation engine for the dynamic functions to services that host the dynamic functions, and monitoring availability status for the dynamic functions related to availability of the dynamic functions to process expressions associated with the calculation engine.Type: ApplicationFiled: March 7, 2017Publication date: September 13, 2018Inventors: Ehab Sobhy Deraz, Thomas Alexander Morrison
-
Publication number: 20180260374Abstract: Systems, methods, and software for data calculation frameworks for user applications are provided herein. An exemplary method includes providing functions for use by a calculation engine of the user application, determining that the calculation engine issues a call for evaluation of a nested expression comprising at least a child function embedded in a parent function, and responsively dispatching at least a first evaluation process for a first portion of the nested expression that employs the child function. During evaluation of the nested expression, the method includes indicating to the calculation engine a predetermined result for at least the parent function, and dispatching at least a second evaluation process for a second portion of the nested expression that employs the child result. Responsive to receiving a parent result from the second evaluation process, the method includes indicating the parent result to the calculation engine.Type: ApplicationFiled: March 7, 2017Publication date: September 13, 2018Inventors: Ehab Sobhy Deraz, Thomas Alexander Morrison
-
Patent number: 10008015Abstract: Concepts and technologies are described herein for generating scenes and tours in a spreadsheet application. In accordance with the concepts and technologies disclosed herein, a computer system executes a visualization component. Selection of an option to create a tour can be detected by the computer system. In response to detecting selection of the option, the computer system can create a tour. The computer system also can detect selection of an option to add a scene to the tour. The tour can be saved. Playback of the tour can be started in response to detecting selection of a play option. If the playback is paused, changes made to the tour and/or the scenes can be tracked by the computer system, and an updated version of the tour can be saved.Type: GrantFiled: March 14, 2016Date of Patent: June 26, 2018Assignee: Microsoft Technology Licensing, LLCInventors: B. Scott Ruble, Ehab Sobhy, Igor Borisov Peev, Curtis G. Wong, John Alfred Payne, Jonathan Edgar Fay, Kevin Fan
-
Patent number: 9881396Abstract: Concepts and technologies are described herein for displaying temporal information in a spreadsheet application. In accordance with the concepts and technologies disclosed herein, spreadsheet data can be obtained at a computer system. The spreadsheet data can include data values, temporal information, and geographic information. The computer system can generate a visualization of the spreadsheet data based, at least partially, upon the data values, the temporal information, and the geographic location information. The computer system also can output the visualization.Type: GrantFiled: April 3, 2013Date of Patent: January 30, 2018Assignee: Microsoft Technology Licensing, LLCInventors: B. Scott Ruble, Curtis G. Wong, Igor Borisov Peev, Kevin Fan, Jai Srinivasan, Ehab Sobhy, Jonathan Edgar Fay
-
Patent number: 9881399Abstract: Systems and methods are provided to improve map type data visualizations in which custom images are used as background against which datasets are visualized. In various examples, coordinate systems are automatically generated and applied to the custom image based on the positional data of the dataset. The custom image may replace a pre-existing background, and the plotting of the dataset may be automatically modified based on differences between the pre-existing background and the custom image. Aspects provide for enhanced user control of the map type visualization to further modify how datasets are plotted and how visualizations are presented. Example modifications include offsets and scales, which may be automatically determined and applied or set manually. In some examples, the custom image may be part of a set of image tiles, which are operable to provide various levels of detail from several viewing angles and heights.Type: GrantFiled: April 15, 2015Date of Patent: January 30, 2018Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC.Inventors: Igor Borisov Peev, Lewey Alec Geselowitz, James Thomas Marshall, John A. Payne, Jagan Subhas, Puneet Bhatia, Daniel Benjamin Witriol, Safiya Bhojawala, Ehab Sobhy
-
Publication number: 20170270082Abstract: Computer systems, methods, and computer storage media for dynamically rendering geographic data. Geographic data is dynamically rendered as a digital map such that changes to the corresponding geographic data are automatically applied to the map and the map is automatically updated to show the changes to the geographic data. The map is rendered to give the most effective view of the corresponding geographic data by determining a least common ancestor of identified geographic entities. The least common ancestor is the lowest ranked geographic entity, within a geographic hierarchy, that is still common to all of the identified geographic entities within a set of geographic data.Type: ApplicationFiled: May 3, 2016Publication date: September 21, 2017Inventors: James Thomas Marshall, Ehab Sobhy Deraz, Jimmy Y. Sun, Matthew W. Asplund, Jai Srinivasan, David Ping Tang