CSV Interface v4.3.0
This version includes an important code refactoring of several members of the library, as well as some improvements that allow to outline the tool as a solid solution for data management.
Improvements
- Key related records: users can now use keys to segregate records as they are stored when the
keyTreeproperty is set toTrue. For example, under a key "fruits" you can store the records "lemon", "pear" and for a key "tools" you can store "hammer" and "chainsaw"; the user can request the segregated records at any time with theGetIndexedItemmethod by specifying a key. - Faster deduplication: the execution time of the "Dedupe" method is 40% less.
- Use headers titles for computations:
Filter,ReduceandInsertFieldmethods now supports headers titles (also with white spaces) as variables. - Calculated fields: the new
InsertFieldmethod unleashes the possibility to use complex expressions to calculate values and insert them as a new field/column in the data tables. For example the following instruction adds a new field called "Taxes" in the ninth position which is defined as 18% of the total profit in each record, giving the VBA "Currency" format to the computation made: :.InsertField(8, "Taxes", True, "FORMAT(Total Revenue * PERCENT(18);'Currency')"). - Easy data storage: copy data from arrays of arraylist with the flexible and robust
Add2method and theitemsproperty. Define and share data from scratch with theFromStringandToStringmethods.
Members changes
CSVinterface
-
InsertFieldnow has aFormulaparameter to allow insertion of calculated fields.
CSVarrayList
- Added:
Dedupe,FromString,InsertField,MergeFields,RearrangeFields,RemoveField,ShiftField,ShiftRecord,SortByField,SortKeys,SplitField, andToStringmethods. - Added:
isSorted,keyTree,lastSortedIndexproperties. - Optimized:
Add2andDedupemethods,itemsproperty. - Bug fixed: parser unable to properly get the order of the fields given by the user. Affected methods:
Dedupe,LeftJoin,RightJoin,InnerJoin. - Bug fixed: unexpected behavior. Affected method:
SortByField
CSVexpression
- Improvement: more than 60 string, mathematical, logical, date-time and financial built-in functions
- Bug fixed: boolean negation prevents recognizing variables. Affected method:
Eval. - Bug fixed: function parsing was broken. Affected method:
Create.