$self->link_to_record($invoice);
# TODO extend link_to_record for items, otherwise long-term no d.r.y.
foreach my $item (@{ $invoice->items }) {
$self->link_to_record($invoice);
# TODO extend link_to_record for items, otherwise long-term no d.r.y.
foreach my $item (@{ $invoice->items }) {
linked to the new invoice via L<SL::DB::RecordLink>. C<$self>'s
C<closed> attribute is set to C<true>, and C<$self> is saved.
linked to the new invoice via L<SL::DB::RecordLink>. C<$self>'s
C<closed> attribute is set to C<true>, and C<$self> is saved.
Returns the new invoice instance on success and C<undef> on
failure. The whole process is run inside a transaction. On failure
Returns the new invoice instance on success and C<undef> on
failure. The whole process is run inside a transaction. On failure