Commit History

Author SHA1 Message Date
  pgoiffon e8dceb7304 Fix regression introduced in trunk[4943] 7 years ago
  eespie 9e56c1be9c N.1065 Fix performance issues (caches added on query build) 7 years ago
  romainq b746111a12 Obsolescence: hide rows for which any of the selected class is obsolete (SELECT a, b FROM ...) 8 years ago
  romainq b246164f18 Obsolescence: finalizing the implementation of the flag (hide obsolete objects, show an icon on hyperlinks and a tag on the object details, user preference defaulting to the new setting 'show_obsolete_data') 8 years ago
  romainq 4b36e9e017 Obsolescence: introduction of this new concept (wording could change later). The obsolescence of an object is computed after other attributes, by the mean of an OQL expression. The code has been refactored (again) so as to factorize between the computation of friendly names and the computation of obsolescence flags. The refactoring involved a significant AND RISKY change: external key friendly names (magic attributes) have been changed from AttributeFriendlyName to AttributeExternalField, which simplifies the SQL query build logic. 8 years ago
  romainq 34ab6cd77b NEW! Archiving data. Archiving is a soft delete. It can be undone. Enter the archive mode to see all the data including archives (everything is read-only in that mode). Archiving must be enabled per class (data model). Archiving is achieved by the mean of the API DBObject::Archive (or Unarchive). 8 years ago
  romainq 43d294e036 Internal: query arguments could be array values, making it easier to build dynamic IN() clauses 9 years ago
  romainq 353e6a0ffc OQL arguments: when the value of a query argument is null, it must be considered as being a valid argument (was reported as missing). Improved the error reporting when the argument is in the form :this->attcode and the attcode is not valid for the class of 'this'. 9 years ago
  romainq 0dff1739a5 Internal: fixed the verb DBObjectSearch::IsAny 9 years ago
  dflaven cda7f3861f Code refactoring to make the OQL parsing self contained in the "oql" subdirectory. 9 years ago