Allow use of parts of compound/indexable field types such as dates and arrays in operations. Example:
p.filter_by_value(FieldPart("event_date", "year"), 2013)
Advantages:
- less steps, no need to explicit extraction
- better readability
Disadvantages:
- more requirements for implementing backend operations
- operations might implement this selectively, depending on argument, which might cause inconsistencies
Requirements:
Field.is_composed() - True for date, array, record
DataObject.concrete_field(field_or_part)
Affected methods:
prepare_aggregation_measures()
prepare_key()
- many operations
Recommendation: have this in OperationContext when argument annotations or when operation prototype metadata are implemented.
Allow use of parts of compound/indexable field types such as dates and arrays in operations. Example:
Advantages:
Disadvantages:
Requirements:
Field.is_composed()-Truefor date, array, recordDataObject.concrete_field(field_or_part)Affected methods:
prepare_aggregation_measures()prepare_key()Recommendation: have this in
OperationContextwhen argument annotations or when operation prototype metadata are implemented.