If you create an aggregate Model an group by certain fields which are hasOne references in the source model, it would be convenient to also have/keep those references in the aggregate Model, so if source model has a hasOne reference called 'tax_rule_id':
$aggregateModel = new \Atk4\Data\Model\AggregateModel($sourcemodel);
$aggregateModel->setGroupBy(['tax_rule_id', 'tax_rate'], [
'total_gross' => ['expr' => 'sum([total_gross])'],
'total_net' => ['expr' => 'sum([total_net])'],
'total_tax' => ['expr' => 'sum([total_tax])'],
]);
foreach ($aggregateModel as $taxposition) {
$result = $taxposition->ref('tax_rule_id')->get('revenue_account_id');
}
the aggregateModel should then allow $tax_rule_name = $taxposition->ref('tax_rule_id')->getTitle(); for example.
If you create an aggregate Model an group by certain fields which are hasOne references in the source model, it would be convenient to also have/keep those references in the aggregate Model, so if source model has a hasOne reference called 'tax_rule_id':
the aggregateModel should then allow
$tax_rule_name = $taxposition->ref('tax_rule_id')->getTitle();for example.