X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/e055700faea1906bea6c03184ba4516b57cac887..d183ece10bbfb9a6aee8ba181ebf493bf7dddcb6:/SL/DB/Helper/LinkedRecords.pm diff --git a/SL/DB/Helper/LinkedRecords.pm b/SL/DB/Helper/LinkedRecords.pm index 6dad81f2e..95b5e7037 100644 --- a/SL/DB/Helper/LinkedRecords.pm +++ b/SL/DB/Helper/LinkedRecords.pm @@ -19,14 +19,14 @@ sub linked_records { dir => delete($params{sort_dir}) ); my $filter = delete $params{filter}; - my $records = linked_records_implementation($self, %params); + my $records = _linked_records_implementation($self, %params); $records = filter_linked_records($self, $filter, @{ $records }) if $filter; $records = sort_linked_records($self, $sort_spec{by}, $sort_spec{dir}, @{ $records }) if $sort_spec{by}; return $records; } -sub linked_records_implementation { +sub _linked_records_implementation { my $self = shift; my %params = @_; @@ -37,8 +37,8 @@ sub linked_records_implementation { my %from_to = ( from => delete($params{from}) || $both, to => delete($params{to}) || $both); - my @records = (@{ linked_records_implementation($self, %params, direction => 'from', from => $from_to{from}) }, - @{ linked_records_implementation($self, %params, direction => 'to', to => $from_to{to} ) }); + my @records = (@{ _linked_records_implementation($self, %params, direction => 'from', from => $from_to{from}) }, + @{ _linked_records_implementation($self, %params, direction => 'to', to => $from_to{to} ) }); my %record_map = map { ( ref($_) . $_->id => $_ ) } @records; @@ -210,23 +210,23 @@ from C<$self> (for C = C). For C all records linked from or to C<$self> are returned. The optional parameter C or C (same as C) -contains the package names of Rose models for table limitation. It can -be a single model name as a single scalar or multiple model names in -an array reference in which case all links matching any of the model -names will be returned. +contains the package names of Rose models for table limitation (the +prefix C is optional). It can be a single model name as a +single scalar or multiple model names in an array reference in which +case all links matching any of the model names will be returned. If you only need invoices created from an order C<$order> then the call could look like this: my $invoices = $order->linked_records(direction => 'to', - to => 'SL::DB::Invoice'); + to => 'Invoice'); The optional parameter C can be used to limit the records returned. The following call limits the earlier example to invoices created today: my $invoices = $order->linked_records(direction => 'to', - to => 'SL::DB::Invoice', + to => 'Invoice', query => [ transdate => DateTime->today_local ]); The optional parameters C<$params{sort_by}> and C<$params{sort_dir}>