DataMgr Build 2 Documentation: Change Log
2.5 (March 3, 2013)
- Filters (and named filters)
- Paging (via an "offset" argument in the getRecords method)
- Paging handling in the database: MS SQL 2005 +, MySQL, Oracle, PostGreSQL
- For all others, the query is sliced in ColdFusion
- Support for managing Indexes
- Optional "fieldlist" argument to limit the data that can be changed while saving data.
- Optional "truncate" argument to automatically truncate data to fit in database while saving data.
- For tables with a simple (single-field) primary keys, the ability to pass a single value into the "data" argument for getRecords() instead of a structure of values.
- New Methods:
- Ability to extend DataMgr
- Ability to migrate fields - moving old data to new field names. Handy for renaming fields or easy migration from many-to-one relationship to a many-to-many one.
- loadXml():
- Ability to introspect database tables.
- New "ftable" attribute.
- Major performance improvements for loadXml() (many for all database, some specific to SQL Server)
- New "isDeletable" calculated field available to "getRecords" determines if each record can be deleted based on "onDelete" property of relation fields.
- Ability to exclude columns from multi-row get queries (see useInMultiRecordsets).
- "advsql" argument now available for update methods
- Defaults for init() "datasource" argument:
- Special Date Type setting
- Special="UUID": Set the value of the field to a UUID if no value is passed in on an insert.
- SQL Server: Added support for varchar(max) (and made it the default for LONGVARCHAR).
- New "applyListRelations" method (take tablename,query) for post-calculation of list relations for getRecords() - also useful with CF_DMQuery
- Optional "XmlData" argument to "init" method (calls "loadXml" automatically)
- Ability to check for table existence.
- Improved MS Word cleanup
- Fixes
- Fixed error on ColdFusion 9.0.1
- Better handling of CFML Engine peculiarities
- getDatabaseXml() now always accurately reports just the database schema.
- Relation fields that use themselves now error instead of producing an infinite loop.
- "maxrows" argument now works in Derby
- Some small MS SQL specific improvements
- Several small fixes
- Cascading Relation Fields
- Custom Relation Fields
- Optional "sort-field" attribute for "list" relation field to dictate order of list
- Optional "delimiter" attribute for "list" relation field
- DataMgr throws error for more than one "Increment" field in one table
- Report datasource name in loadXML() error
- Optional bidirectional self-relational many-to-many-relationships
- Optional "advsql" argument in getRecords
- Relation Fields
- Special Fields
- DeletionMark (allows logical deletes)
- CreationDate (tracks when record was first created)
- LastUpdatedDate (tracks when last update was for record)
- Sorter (allows DataMgr to automatically manage manual sort order)
- Username/password support
- Simulated Database
- Logging
- getRecords(): added "orderby" argument
- insertRecord(): "onexists" argument: added "save" option
- Added "setColumn()" method (deprecating "addColumn()")
- New deployment options
- Can be instantiated from any directory
- Can pass database type as second argument in init() for DataMgr.cfc
- Reports SQL on failed create or alter on a table
- getSupportedDatabases() returns recordset of databases supported by DataMgr.
- Added "getMaxRowsPrefix()"
- Added "getMaxRowsSuffix()"
- Added "getNewSortNum()"
- Added "saveSortOrder()"
- getRecords(): added "maxrows" argument
- loadXml(): Seed Data
- insertRecord()
- updateRecord()
- saveRelationList()
- getRecords()
- getRecord()
- loadXml()
- deleteRecord()
- truncate()
- addColumn()