Patent classifications
G06F40/18
EFFICIENT CONCURRENT INVOCATION OF SHEET DEFINED FUNCTIONS INCLUDING DYNAMIC ARRAYS
Systems and methods are directed to providing efficient and fast invocation of concurrent sheet defined functions (SDFs) including dynamic arrays by front-loading the work. At SDF creation time, a SDF cell table, a formula table, and a spill area table are generated. The SDF cell table represents cells from a worksheet that are used for the SDF. The formula table comprises an index of formulas used by the SDF, whereby index identifiers are stored in cells of the SDF cell table. The spill area table comprises an index of spill areas where each dynamic array may automatically spill into. The SDF cell table, formula table, and spill area table are shared between a plurality of invocations of the SDF during invocation time.
Method, system and computer program product for providing automated advice
Disclosed is a computer implemented method of providing automated advice including receiving factors for use in providing automated advice, each factor including a defined respective set of categories, and each factor and each category including a respective initial weighting; receiving a rule for generating a recommendation and using the respective weightings of the factors and categories, the rule including a set of possible recommendations such that a generated recommendation is one of the set of possible recommendations; receiving training cases, each training case including inputs relating to each factor, and to the categories, and including a respective validated recommendation; processing the training cases, to derive a respective optimized weighting for each factor and for each category, to satisfy or to match the respective validated recommendations optimally, using the rule, and storing the derived respective optimized weightings for the factors and for each category.
Method, system and computer program product for providing automated advice
Disclosed is a computer implemented method of providing automated advice including receiving factors for use in providing automated advice, each factor including a defined respective set of categories, and each factor and each category including a respective initial weighting; receiving a rule for generating a recommendation and using the respective weightings of the factors and categories, the rule including a set of possible recommendations such that a generated recommendation is one of the set of possible recommendations; receiving training cases, each training case including inputs relating to each factor, and to the categories, and including a respective validated recommendation; processing the training cases, to derive a respective optimized weighting for each factor and for each category, to satisfy or to match the respective validated recommendations optimally, using the rule, and storing the derived respective optimized weightings for the factors and for each category.
Information extraction from open-ended schema-less tables
Systems and methods for generating and annotating cell documents include extracting tables from a document using a table extraction engine. Headers are extracted for each of the tables using a header detection engine. Cells are extracted from each of the tables using a cell extraction engine. A cell document is generated for each of the cells which are each correlated to corresponding portions of the headers, each cell document recording the correlation between the cells and the headers. Each cell document is annotated to generate annotated cell documents with a cell recognition model trained to perform natural language processing on the cell documents by classifying each term in each of the cell documents and extracting relationships between the terms of each of the cell documents.
Information extraction from open-ended schema-less tables
Systems and methods for generating and annotating cell documents include extracting tables from a document using a table extraction engine. Headers are extracted for each of the tables using a header detection engine. Cells are extracted from each of the tables using a cell extraction engine. A cell document is generated for each of the cells which are each correlated to corresponding portions of the headers, each cell document recording the correlation between the cells and the headers. Each cell document is annotated to generate annotated cell documents with a cell recognition model trained to perform natural language processing on the cell documents by classifying each term in each of the cell documents and extracting relationships between the terms of each of the cell documents.
Spreadsheet and method for updating same
A computer software program for improving electronic spreadsheets to manage and control scenarios. The program provides methods for the user to record specific changes made to selected value of cells in the spreadsheet. Each recorded item can be dragged and re-ordered via a graphical user interface (GUI) to build up a scenario script. The script can be executed whereby the spreadsheet is updated with the recorded items. The method allows complex scenarios to be played back in step by incremental step, modified, re-ordered, corrected, and re-played while generating user-defined output reports & charts detailing each step change. The method provides a detailed information trail of all value changes made to the spreadsheet suitable for an independent third-party review. Different scenario components can be recorded in parallel by multiple users and then merged to produce a complete solution. The method is scalable and suitable for scenarios requiring thousands of cell value updates (subject to available computer memory, operating system limitations, and calculation time constraints).
Spreadsheet and method for updating same
A computer software program for improving electronic spreadsheets to manage and control scenarios. The program provides methods for the user to record specific changes made to selected value of cells in the spreadsheet. Each recorded item can be dragged and re-ordered via a graphical user interface (GUI) to build up a scenario script. The script can be executed whereby the spreadsheet is updated with the recorded items. The method allows complex scenarios to be played back in step by incremental step, modified, re-ordered, corrected, and re-played while generating user-defined output reports & charts detailing each step change. The method provides a detailed information trail of all value changes made to the spreadsheet suitable for an independent third-party review. Different scenario components can be recorded in parallel by multiple users and then merged to produce a complete solution. The method is scalable and suitable for scenarios requiring thousands of cell value updates (subject to available computer memory, operating system limitations, and calculation time constraints).
Computerized method and apparatus for automated distributed ingest and presentation of multi-domain metrics
A computerized search method includes receiving first input designating a first location of a first analytic. The method includes, in response to a scheduling event, obtaining a first document from the first location, identifying a first predefined label within the first document, obtaining first and second data associated with the first predefined label, storing the first datum into a value index as a current value of the first analytic, and storing the second datum into a text index as a textual description of the first analytic. The method includes presenting a search interface and, in response to receiving a search query from a user: identifying a set of result analytics relevant to the search query based on the text index and presenting, for each of the result analytics, a textual description of the analytic from the text index and a most recent value of the analytic from the value index.
Computerized method and apparatus for automated distributed ingest and presentation of multi-domain metrics
A computerized search method includes receiving first input designating a first location of a first analytic. The method includes, in response to a scheduling event, obtaining a first document from the first location, identifying a first predefined label within the first document, obtaining first and second data associated with the first predefined label, storing the first datum into a value index as a current value of the first analytic, and storing the second datum into a text index as a textual description of the first analytic. The method includes presenting a search interface and, in response to receiving a search query from a user: identifying a set of result analytics relevant to the search query based on the text index and presenting, for each of the result analytics, a textual description of the analytic from the text index and a most recent value of the analytic from the value index.
Indexing in a spreadsheet based data store using hybrid datatypes
Aspects described relate to implementing indexing on spreadsheets and/or unstructured data stores. A first aspect comprises a system for implementing an indexing scheme to respond to a query on a spreadsheet of a workbook. The system comprises a data store, a user interface, and a processors configured to identify columns for tables in the spreadsheet, generate an index for at least one column of the identified columns, wherein the index has a hybrid datatype and equates datatypes that form the hybrid datatype, identify a formula in the query having at least one operand, at least one operator, and a key value, and identify a value in an identified column from the operand in response to the query based on the key and the corresponding index to the identified column.