+
+sub get_type {
+ my $self = shift;
+
+ my $ref = ref $self->record;
+
+ return "ar" if $ref->isa('SL::DB::Invoice');
+ return "ap" if $ref->isa('SL::DB::PurchaseInvoice');
+ return "gl" if $ref->isa('SL::DB::GLTransaction');
+
+ die "Can't find trans_id " . $self->trans_id . " in ar, ap or gl" unless $ref;
+
+};
+
+sub transaction_name {
+ my $self = shift;
+
+ my $ref = ref $self->record;
+ my $name = "trans_id: " . $self->trans_id;
+ if ( $self->get_type eq 'ar' ) {
+ $name .= " (" . $self->record->abbreviation . " " . t8("AR") . ") " . t8("Invoice Number") . ": " . $self->record->invnumber;
+ } elsif ( $self->get_type eq 'ap' ) {
+ $name .= " (" . $self->record->abbreviation . " " . t8("AP") . ") " . t8("Invoice Number") . ": " . $self->record->invnumber;
+ } elsif ( $self->get_type eq 'gl' ) {
+ $name = "trans_id: " . $self->trans_id . " (" . $self->record->abbreviation . ") " . $self->record->reference . " - " . $self->record->description;
+ } else {
+ die "can't determine type of acc_trans line with trans_id " . $self->trans_id;
+ };
+
+ $name .= " " . t8("Date") . ": " . $self->transdate->to_kivitendo;
+
+ return $name;
+
+};
+