]> wagnertech.de Git - kivitendo-erp.git/commitdiff
Projektliste: Kundenname bei PDF-/CSV-Export richtig ausgeben
authorMoritz Bunkus <m.bunkus@linet-services.de>
Mon, 23 May 2016 10:51:03 +0000 (12:51 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Mon, 23 May 2016 10:51:52 +0000 (12:51 +0200)
Der Controller-Helfer für den ReportGenerator muss aus Objekten Werte
machen können. Wie das geschieht, wird über die Spaltendefinition
festgelegt. Für Nicht-HTML-Anzeige wird entweder eine zur Verfügung
gestellte Unterfunktion benutzt, oder aber auf dem Objekt wird der
Spaltenname als Funktion aufgerufen.

Für die Spalte »customer« wird bei einem Projekt also das
SL::DB::Customer-Objekt genutzt, wenn keine manuelle Sub angegeben
wurde.

Fixt #166.

SL/Controller/Project.pm

index fc72036ee050b9ddf70120e0269283e658cfc757..9a75836fe1f3405630bc6a575c487d30aacf9a83 100644 (file)
@@ -263,7 +263,8 @@ sub prepare_report {
     description   => { obj_link => sub { $self->url_for(action => 'edit', id => $_[0]->id, callback => $callback) } },
     project_type  => { sub  => sub { $_[0]->project_type->description } },
     project_status => { sub  => sub { $_[0]->project_status->description }, text => t8('Status') },
-    customer      => { raw_data  => sub { $_[0]->customer_id ? $self->presenter->customer($_[0]->customer, display => 'table-cell', callback => $callback) : '' } },
+    customer      => { sub       => sub { !$_[0]->customer_id ? '' : $_[0]->customer->name },
+                       raw_data  => sub { !$_[0]->customer_id ? '' : $self->presenter->customer($_[0]->customer, display => 'table-cell', callback => $callback) } },
     active        => { sub  => sub { $_[0]->active   ? $::locale->text('Active') : $::locale->text('Inactive') },
                        text => $::locale->text('Active') },
     valid         => { sub  => sub { $_[0]->valid    ? $::locale->text('Valid')  : $::locale->text('Invalid')  },