$result = $::locale->text('Import finished with errors.');
} else {
- my $report_id = $c->save_report(session_id => $session_id);
+ my $report_id = $c->save_report(session_id => $session_id, test => $test);
$job->set_data(report_id => $report_id)->save;
$c->track_progress(finished => 1);
file => '',
numrows => scalar @{ $self->data },
numheaders => 1,
+ test_mode => $params{test} ? 1 : 0,
);
$report->save(cascade => 1) or die $report->db->error;
file => '',
numrows => scalar @{ $self->data },
numheaders => scalar @{ $self->worker->profile },
+ test_mode => $params{test} ? 1 : 0,
);
$report->save(cascade => 1) or die $report->db->error;
numrows => { type => 'integer', not_null => 1 },
profile_id => { type => 'integer', not_null => 1 },
session_id => { type => 'text', not_null => 1 },
+ test_mode => { type => 'boolean', not_null => 1 },
type => { type => 'text', not_null => 1 },
);
'No department has been created yet.' => 'Es wurde noch keine Abteilung erfasst.',
'No draft was found.' => 'Kein Entwurf gefunden.',
'No dunnings have been selected for printing.' => 'Es wurden keine Mahnungen zum Drucken ausgewählt.',
+ 'No entries have been imported yet.' => 'Es wurden noch keine Einträge importiert.',
'No errors have occurred.' => 'Es sind keine Fehler aufgetreten.',
'No file has been uploaded yet.' => 'Es wurde noch keine Datei hochgeladen.',
'No function blocks have been created yet.' => 'Es wurden noch keine Funktionsblöcke angelegt.',
'The following currencies have been used, but they are not defined:' => 'Die folgenden Währungen wurden benutzt, sind aber nicht ordnungsgemäß in der Datenbank eingetragen:',
'The following drafts have been saved and can be loaded.' => 'Die folgenden Entwürfe wurden gespeichert und können geladen werden.',
'The following groups are valid for this client' => 'Die folgenden Gruppen sind für diesen Mandanten gültig',
+ 'The following is only a preview.' => 'Das Folgende ist nur eine Vorschau.',
'The following list has been generated automatically from existing users collapsing users with identical settings into a single entry.' => 'Die folgende Liste wurde automatisch aus den im System vorhandenen Benutzern zusammengestellt, wobei identische Einstellungen zu einem Eintrag zusammengefasst wurden.',
'The following old files whose settings have to be merged manually into the new configuration file "config/kivitendo.conf" still exist:' => 'Es existieren noch die folgenden alten Dateien, deren Einstellungen manuell in die neue Konfiguratsdatei "config/kivitendo.conf" migriert werden müssen:',
'The following transaction contains wrong taxes:' => 'Die folgende Buchung enthält falsche Steuern:',
--- /dev/null
+-- @tag: add_test_mode_to_csv_import_report
+-- @description: In CSV-Import-Berichtstabelle speichern, ob es ein Test war
+-- @depends: release_3_4_1
+ALTER TABLE csv_import_reports ADD COLUMN test_mode BOOLEAN;
+
+UPDATE csv_import_reports SET test_mode = TRUE;
+
+ALTER TABLE csv_import_reports ALTER COLUMN test_mode SET NOT NULL;
[% USE HTML %]
[% USE LxERP %]
[% USE L %]
- <h3>[%- LxERP.t8('Import result') %]</h3>
+ <h2>
+ [%- IF SELF.report.test_mode %]
+ [%- LxERP.t8('Import preview') %]
+ [%- ELSE %]
+ [%- LxERP.t8('Import result') %]
+ [%- END %]
+</h2>
+
+[%- IF SELF.report.test_mode %]
+ <p>
+ [% LxERP.t8("The following is only a preview.") %]
+ [% LxERP.t8("No entries have been imported yet.") %]
+ </p>
+[%- END %]
[%- PROCESS 'common/paginate.html' pages=SELF.pages, base_url = SELF.base_url %]
<table>