Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision f0a359a2

Von Tamino Steinert vor 11 Monaten hinzugefügt

  • ID f0a359a25abeeebc57f21fa87be5f265c8e052b2
  • Vorgänger 85ab496c
  • Nachfolger 985d8711

Typedata für Invoice und PurchaseInvoice

Unterschiede anzeigen:

SL/Controller/EmailJournal.pm
20 20
use SL::DB::Reclamation;
21 21
use SL::DB::Reclamation::TypeData;
22 22
use SL::DB::Invoice;
23
use SL::DB::Invoice::TypeData;
23 24
use SL::DB::PurchaseInvoice;
25
use SL::DB::PurchaseInvoice::TypeData;
24 26

  
25 27
use SL::DB::Manager::Customer;
26 28
use SL::DB::Manager::Vendor;
......
69 71
  Invoice => {
70 72
    controller => 'is.pl',
71 73
    class      => 'Invoice',
72
    types => [
73
      'invoice',
74
      'invoice_for_advance_payment',
75
      'invoice_for_advance_payment_storno',
76
      'final_invoice',
77
      'invoice_storno',
78
      'credit_note',
79
      'credit_note_storno',
80
    ],
74
    types => SL::DB::Invoice::TypeData->valid_types(),
81 75
  },
82 76
  ApTransaction => {
83 77
    controller => 'ap.pl',
......
89 83
  PurchaseInvoice => {
90 84
    controller => 'ir.pl',
91 85
    class      => 'PurchaseInvoice',
92
    types => [
93
      'purchase_invoice',
94
      'purchase_credit_note',
95
    ],
86
    types => SL::DB::PurchaseInvoice::TypeData->valid_types(),
96 87
  },
97 88
  GlRecordTemplate => {
98 89
    controller => 'gl.pl',
......
150 141

  
151 142
# has do be done at runtime for translation to work
152 143
sub get_record_types_with_info {
153
  # TODO: what record types can be created, which are only available in workflows?
154 144
  my @record_types_with_info = ();
155
  for my $record_class ('SL::DB::Order', 'SL::DB::DeliveryOrder', 'SL::DB::Reclamation') {
145
  for my $record_class (
146
      'SL::DB::Order', 'SL::DB::DeliveryOrder', 'SL::DB::Reclamation',
147
      'SL::DB::Invoice', 'SL::DB::PurchaseInvoice',
148
    ) {
156 149
    my $type_data = "${record_class}::TypeData";
157 150
    my $valid_types = $type_data->valid_types();
158 151
    for my $type (@$valid_types) {
......
170 163
    }
171 164
  }
172 165
  push @record_types_with_info, (
173
    # invoice
174
    { record_type => 'invoice',                            customervendor => 'customer', workflow_needed => 0, can_workflow => 1, text => t8('Invoice') },
175
    { record_type => 'invoice_for_advance_payment',        customervendor => 'customer', workflow_needed => 0, can_workflow => 1, text => t8('Invoice for Advance Payment')},
176
    { record_type => 'invoice_for_advance_payment_storno', customervendor => 'customer', workflow_needed => 1, can_workflow => 1, text => t8('Storno Invoice for Advance Payment')},
177
    { record_type => 'final_invoice',                      customervendor => 'customer', workflow_needed => 1, can_workflow => 1, text => t8('Final Invoice')},
178
    { record_type => 'invoice_storno',                     customervendor => 'customer', workflow_needed => 1, can_workflow => 1, text => t8('Storno Invoice')},
179
    { record_type => 'credit_note',                        customervendor => 'customer', workflow_needed => 0, can_workflow => 1, text => t8('Credit Note')},
180
    { record_type => 'credit_note_storno',                 customervendor => 'customer', workflow_needed => 1, can_workflow => 1, text => t8('Storno Credit Note')},
181
    # purchase invoice
182
    { record_type => 'purchase_invoice',      customervendor => 'vendor', workflow_needed => 0, can_workflow => 1, text => t8('Purchase Invoice')},
183
    { record_type => 'purchase_credit_note',  customervendor => 'vendor', workflow_needed => 0, can_workflow => 1, text => t8('Purchase Credit Note')},
184 166
    # transactions
185 167
    # gl_transaction can be for vendor and customer
186 168
    { record_type => 'gl_transaction', customervendor => 'customer', workflow_needed => 0, can_workflow => 1, text => t8('GL Transaction')},
SL/DB/Invoice/TypeData.pm
1
package SL::DB::Invoice::TypeData;
2

  
3
use strict;
4
use Carp;
5
use Exporter qw(import);
6
use SL::Locale::String qw(t8);
7

  
8
use constant {
9
  INVOICE_TYPE                            =>  'invoice',
10
  INVOICE_FOR_ADVANCE_PAYMENT_TYPE        =>  'invoice_for_advance_payment',
11
  INVOICE_FOR_ADVANCE_PAYMENT_STORNO_TYPE =>  'invoice_for_advance_payment_storno',
12
  FINAL_INVOICE_TYPE                      =>  'final_invoice',
13
  INVOICE_STORNO_TYPE                     =>  'invoice_storno',
14
  CREDIT_NOTE_TYPE                        =>  'credit_note',
15
  CREDIT_NOTE_STORNO_TYPE                 =>  'credit_note_storno',
16
};
17

  
18
my @export_types = qw(PURCHASE_INVOICE_TYPE PURCHASE_CREDIT_NOTE_TYPE);
19
my @export_subs = qw(valid_types validate_type is_valid_type get get3);
20

  
21
our @EXPORT_OK = (@export_types, @export_subs);
22
our %EXPORT_TAGS = (types => \@export_types, subs => \@export_subs);
23

  
24
my %type_data = (
25
  INVOICE_TYPE() => {
26
    text => {
27
      delete     => t8('The invoice has been deleted'),
28
      list       => t8("Invoices"),
29
      add        => t8("Add Invoice"),
30
      edit       => t8("Edit Invoice"),
31
      type       => t8("Invoice"),
32
    },
33
    show_menu => {
34
      invoice_for_advance_payment => 0,
35
      final_invoice               => 0,
36
      credit_note                 => 1,
37
      sales_order                 => 1,
38
      sales_reclamation           => 1,
39
      use_as_new => 1,
40
      # delete     => sub { die "not implemented" },
41
    },
42
    properties => {
43
      customervendor => "customer",
44
      is_customer    => 1,
45
      nr_key         => "invnumber",
46
      worflow_needed => 0,
47
    },
48
    defaults => {
49
      # TODO
50
    },
51
    part_classification_query => [ "used_for_sales" => 1 ],
52
    rights => {
53
      # TODO
54
    },
55
    features => {
56
      price_tax   => 1,
57
      stock       => 0,
58
      subversions => 0,
59
    },
60
  },
61
  INVOICE_FOR_ADVANCE_PAYMENT_TYPE() => {
62
    text => {
63
      delete     => t8('The invoice for advance payment has been deleted'),
64
      list       => t8("Invoices for Advance Payment"),
65
      add        => t8("Add Invoice for Advance Payment"),
66
      edit       => t8("Edit Invoice for Advance Payment"),
67
      type       => t8("Invoice for Advance Payment"),
68
    },
69
    show_menu => {
70
      invoice_for_advance_payment => 1,
71
      final_invoice               => 1,
72
      credit_note                 => 1,
73
      sales_order                 => 1,
74
      sales_reclamation           => 0,
75
      use_as_new => 1,
76
      # delete     => sub { die "not implemented" },
77
    },
78
    properties => {
79
      customervendor => "customer",
80
      is_customer    => 1,
81
      nr_key         => "invnumber",
82
      worflow_needed => 0,
83
    },
84
    defaults => {
85
      # TODO
86
    },
87
    part_classification_query => [ "used_for_sales" => 1 ],
88
    rights => {
89
      # TODO
90
    },
91
    features => {
92
      price_tax   => 1,
93
      stock       => 0,
94
      subversions => 0,
95
    },
96
  },
97
  INVOICE_FOR_ADVANCE_PAYMENT_STORNO_TYPE() => {
98
    text => {
99
      delete     => t8('The strono invoice for advance payment has been deleted'),
100
      list       => t8("Storno Invoices for Advance Payment"),
101
      add        => t8("Add Storno Invoice for Advance Payment"),
102
      edit       => t8("Edit Storno Invoice for Advance Payment"),
103
      type       => t8("Storno Invoice for Advance Payment"),
104
    },
105
    show_menu => {
106
      invoice_for_advance_payment => 0,
107
      final_invoice               => 0,
108
      credit_note                 => 1,
109
      sales_order                 => 1,
110
      sales_reclamation           => 0,
111
      use_as_new => 1,
112
      # delete     => sub { die "not implemented" },
113
    },
114
    properties => {
115
      customervendor => "customer",
116
      is_customer    => 1,
117
      nr_key         => "invnumber",
118
      worflow_needed => 1,
119
    },
120
    defaults => {
121
      # TODO
122
    },
123
    part_classification_query => [ "used_for_sales" => 1 ],
124
    rights => {
125
      # TODO
126
    },
127
    features => {
128
      price_tax   => 1,
129
      stock       => 0,
130
      subversions => 0,
131
    },
132
  },
133
  FINAL_INVOICE_TYPE() => {
134
    text => {
135
      delete     => t8('The final invoice has been deleted'),
136
      list       => t8("Final Invoices"),
137
      add        => t8("Add Final Invoice"),
138
      edit       => t8("Edit Final Invoice"),
139
      type       => t8("Final Invoice"),
140
    },
141
    show_menu => {
142
      invoice_for_advance_payment => 0,
143
      final_invoice               => 0,
144
      credit_note                 => 1,
145
      sales_order                 => 1,
146
      sales_reclamation           => 0,
147
      use_as_new => 1,
148
      # delete     => sub { die "not implemented" },
149
    },
150
    properties => {
151
      customervendor => "customer",
152
      is_customer    => 1,
153
      nr_key         => "invnumber",
154
      worflow_needed => 1,
155
    },
156
    defaults => {
157
      # TODO
158
    },
159
    part_classification_query => [ "used_for_sales" => 1 ],
160
    rights => {
161
      # TODO
162
    },
163
    features => {
164
      price_tax   => 1,
165
      stock       => 0,
166
      subversions => 0,
167
    },
168
  },
169
  INVOICE_STORNO_TYPE() => {
170
    text => {
171
      delete     => t8('The storno invoice has been deleted'),
172
      list       => t8("Storno Invoices"),
173
      add        => t8("Add Storno Invoice"),
174
      edit       => t8("Edit Storno Invoice"),
175
      type       => t8("Storno Invoice"),
176
    },
177
    show_menu => {
178
      invoice_for_advance_payment => 0,
179
      final_invoice               => 0,
180
      credit_note                 => 1,
181
      sales_order                 => 1,
182
      sales_reclamation           => 0,
183
      use_as_new => 1,
184
      # delete     => sub { die "not implemented" },
185
    },
186
    properties => {
187
      customervendor => "customer",
188
      is_customer    => 1,
189
      nr_key         => "invnumber",
190
      worflow_needed => 1,
191
    },
192
    defaults => {
193
      # TODO
194
    },
195
    part_classification_query => [ "used_for_sales" => 1 ],
196
    rights => {
197
      # TODO
198
    },
199
    features => {
200
      price_tax   => 1,
201
      stock       => 0,
202
      subversions => 0,
203
    },
204
  },
205
  CREDIT_NOTE_TYPE() => {
206
    text => {
207
      delete     => t8('The credit note has been deleted'),
208
      list       => t8("Credit Notes"),
209
      add        => t8("Add Credit Note"),
210
      edit       => t8("Edit Credit Note"),
211
      type       => t8("Credit Note"),
212
    },
213
    show_menu => {
214
      invoice_for_advance_payment => 0,
215
      final_invoice               => 0,
216
      credit_note                 => 1,
217
      sales_order                 => 1,
218
      sales_reclamation           => 0,
219
      use_as_new => 1,
220
      # delete     => sub { die "not implemented" },
221
    },
222
    properties => {
223
      customervendor => "customer",
224
      is_customer    => 1,
225
      nr_key         => "invnumber",
226
      worflow_needed => 0,
227
    },
228
    defaults => {
229
      # TODO
230
    },
231
    part_classification_query => [ "used_for_sales" => 1 ],
232
    rights => {
233
      # TODO
234
    },
235
    features => {
236
      price_tax   => 1,
237
      stock       => 0,
238
      subversions => 0,
239
    },
240
  },
241
  CREDIT_NOTE_STORNO_TYPE() => {
242
    text => {
243
      delete     => t8('The storno credit note has been deleted'),
244
      list       => t8("Storno Credit Notes"),
245
      add        => t8("Add Storno Credit Note"),
246
      edit       => t8("Edit Storno Credit Note"),
247
      type       => t8("Storno Credit Note"),
248
    },
249
    show_menu => {
250
      invoice_for_advance_payment => 0,
251
      final_invoice               => 0,
252
      credit_note                 => 1,
253
      sales_order                 => 1,
254
      sales_reclamation           => 0,
255
      use_as_new => 1,
256
      # delete     => sub { die "not implemented" },
257
    },
258
    properties => {
259
      customervendor => "customer",
260
      is_customer    => 1,
261
      nr_key         => "invnumber",
262
      worflow_needed => 1,
263
    },
264
    defaults => {
265
      # TODO
266
    },
267
    part_classification_query => [ "used_for_sales" => 1 ],
268
    rights => {
269
      # TODO
270
    },
271
    features => {
272
      price_tax   => 1,
273
      stock       => 0,
274
      subversions => 0,
275
    },
276
  },
277
);
278

  
279
my @valid_types = (
280
  INVOICE_TYPE,
281
  INVOICE_FOR_ADVANCE_PAYMENT_TYPE,
282
  INVOICE_FOR_ADVANCE_PAYMENT_STORNO_TYPE,
283
  FINAL_INVOICE_TYPE,
284
  INVOICE_STORNO_TYPE,
285
  CREDIT_NOTE_TYPE,
286
  CREDIT_NOTE_STORNO_TYPE,
287
);
288

  
289
my %valid_types = map { $_ => $_ } @valid_types;
290

  
291
sub valid_types {
292
  \@valid_types;
293
}
294

  
295
sub is_valid_type {
296
  !!exists $type_data{$_[0]};
297
}
298

  
299
sub validate_type {
300
  my ($type) = @_;
301

  
302
  return $valid_types{$type} // croak "invalid type '$type'";
303
}
304

  
305
sub get {
306
  my ($type, $key) = @_;
307

  
308
  croak "invalid type '$type'" unless exists $type_data{$type};
309

  
310
  my $ret = $type_data{$type}->{$key} // die "unknown property '$key'";
311

  
312
  ref $ret eq 'CODE'
313
    ? $ret->()
314
    : $ret;
315
}
316

  
317
sub get3 {
318
  my ($type, $topic, $key) = @_;
319

  
320
  croak "invalid type '$type'" unless exists $type_data{$type};
321

  
322
  my $ret = $type_data{$type}{$topic}{$key} // croak "unknown property '$key' in topic '$topic' for type '$type'";
323

  
324
  ref $ret eq 'CODE'
325
    ? $ret->()
326
    : $ret;
327
}
328

  
329
1;
SL/DB/PurchaseInvoice/TypeData.pm
1
package SL::DB::PurchaseInvoice::TypeData;
2

  
3
use strict;
4
use Carp;
5
use Exporter qw(import);
6
use SL::Locale::String qw(t8);
7

  
8
use constant {
9
  PURCHASE_INVOICE_TYPE     => 'purchase_invoice',
10
  PURCHASE_CREDIT_NOTE_TYPE => 'purchase_credit_note',
11
};
12

  
13
my @export_types = qw(PURCHASE_INVOICE_TYPE PURCHASE_CREDIT_NOTE_TYPE);
14
my @export_subs = qw(valid_types validate_type is_valid_type get get3);
15

  
16
our @EXPORT_OK = (@export_types, @export_subs);
17
our %EXPORT_TAGS = (types => \@export_types, subs => \@export_subs);
18

  
19
my %type_data = (
20
  PURCHASE_INVOICE_TYPE() => {
21
    text => {
22
      delete     => t8('The purchase invoice has been deleted'),
23
      list       => t8("Purchase Invoices"),
24
      add        => t8("Add Purchase Invoice"),
25
      edit       => t8("Edit Purchase Invoice"),
26
      type       => t8("Purchase Invoice"),
27
    },
28
    show_menu => {
29
      purchase_reclamation => 1,
30
      use_as_new           => 1,
31
      # delete => sub { die "not implemented" },
32
    },
33
    properties => {
34
      customervendor => "vendor",
35
      is_customer    => 0,
36
      nr_key         => "invnumber",
37
      worflow_needed => 0,
38
    },
39
    defaults => {
40
      # TODO
41
    },
42
    part_classification_query => [ "used_for_purchase" => 1 ],
43
    rights => {
44
      # TODO
45
    },
46
    features => {
47
      price_tax   => 1,
48
      stock       => 0,
49
      subversions => 0,
50
    },
51
  },
52
  PURCHASE_CREDIT_NOTE_TYPE() => {
53
    text => {
54
      delete     => t8('The purchase credit note has been deleted'),
55
      list       => t8("Purchase Credit Notes"),
56
      add        => t8("Add Purchase Credit Note"),
57
      edit       => t8("Edit Purchase Credit Note"),
58
      type       => t8("Purchase Credit Note"),
59
    },
60
    show_menu => {
61
      purchase_reclamation => 0,
62
      use_as_new           => 1,
63
      # delete => sub { die "not implemented" },
64
    },
65
    properties => {
66
      customervendor => "vendor",
67
      is_customer    => 0,
68
      nr_key         => "invnumber",
69
      worflow_needed => 0,
70
    },
71
    defaults => {
72
      # TODO
73
    },
74
    part_classification_query => [ "used_for_purchase" => 1 ],
75
    rights => {
76
      # TODO
77
    },
78
    features => {
79
      price_tax   => 1,
80
      stock       => 0,
81
      subversions => 0,
82
    },
83
  },
84
);
85

  
86
my @valid_types = (
87
  PURCHASE_INVOICE_TYPE,
88
  PURCHASE_CREDIT_NOTE_TYPE,
89
);
90

  
91
my %valid_types = map { $_ => $_ } @valid_types;
92

  
93
sub valid_types {
94
  \@valid_types;
95
}
96

  
97
sub is_valid_type {
98
  !!exists $type_data{$_[0]};
99
}
100

  
101
sub validate_type {
102
  my ($type) = @_;
103

  
104
  return $valid_types{$type} // croak "invalid type '$type'";
105
}
106

  
107
sub get {
108
  my ($type, $key) = @_;
109

  
110
  croak "invalid type '$type'" unless exists $type_data{$type};
111

  
112
  my $ret = $type_data{$type}->{$key} // die "unknown property '$key'";
113

  
114
  ref $ret eq 'CODE'
115
    ? $ret->()
116
    : $ret;
117
}
118

  
119
sub get3 {
120
  my ($type, $topic, $key) = @_;
121

  
122
  croak "invalid type '$type'" unless exists $type_data{$type};
123

  
124
  my $ret = $type_data{$type}{$topic}{$key} // croak "unknown property '$key' in topic '$topic' for type '$type'";
125

  
126
  ref $ret eq 'CODE'
127
    ? $ret->()
128
    : $ret;
129
}
130

  
131
1;
locale/de/all
198 198
  'Add Follow-Up'               => 'Wiedervorlage erstellen',
199 199
  'Add Follow-Up for #1'        => 'Wiedervorlage für #1 erstellen',
200 200
  'Add General Ledger Transaction' => 'Dialogbuchen',
201
  'Add Invoice'                 => 'Rechnung erfassen',
201 202
  'Add Invoice for Advance Payment' => 'Anzahlungsrechnung erfassen',
202 203
  'Add Letter'                  => 'Brief hinzufügen',
203 204
  'Add Part'                    => 'Ware erfassen',
......
205 206
  'Add Price Factor'            => 'Preisfaktor erfassen',
206 207
  'Add Printer'                 => 'Drucker hinzufügen',
207 208
  'Add Project'                 => 'Projekt erfassen',
209
  'Add Purchase Credit Note'    => 'Einkaufsgutschrift erfassen',
208 210
  'Add Purchase Delivery Order' => 'Lieferschein (Einkauf) erfassen',
211
  'Add Purchase Invoice'        => 'Einkaufsrechnung erfassen',
209 212
  'Add Purchase Order'          => 'Lieferantenauftrag erfassen',
210 213
  'Add Purchase Order Confirmation' => 'Lieferantenauftragsbestätigung erfassen',
211 214
  'Add Purchase Quotation Intake' => 'Angebotseingang erfassen',
......
224 227
  'Add Sales Reclamation'       => 'Verkaufsreklamation erfassen',
225 228
  'Add Service'                 => 'Dienstleistung erfassen',
226 229
  'Add Storno Credit Note'      => 'Gutschrift Storno hinzufügen',
230
  'Add Storno Invoice'          => 'Stornorechnung erfassen',
231
  'Add Storno Invoice for Advance Payment' => 'Storno-Anzahlungsrechnung erfassen',
227 232
  'Add Supplier Delivery Order' => 'Beistell-Lieferschein erfassen',
228 233
  'Add Transaction'             => 'Dialogbuchen',
229 234
  'Add User'                    => 'Neuer Benutzer',
......
804 809
  'Configure'                   => 'Konfigurieren',
805 810
  'Confirm!'                    => 'Bestätigen Sie!',
806 811
  'Confirmation'                => 'Auftragsbestätigung',
807
  'Confirmation Date'           => 'Bestätigungsdatum',
808
  'Confirmation Number'         => 'Bestätigungsnummer',
809 812
  'Consume average'             => 'Durchschnittsverbrauch',
810 813
  'Contact'                     => 'Kontakt',
811 814
  'Contact Departments'         => 'Abteilungen von Ansprechpersonen',
......
959 962
  'Credit Note'                 => 'Gutschrift',
960 963
  'Credit Note Date'            => 'Gutschriftdatum',
961 964
  'Credit Note Number'          => 'Gutschriftnummer',
965
  'Credit Notes'                => 'Gutschriften',
962 966
  'Credit Starting Balance'     => 'EB Aktiva',
963 967
  'Credit Tax'                  => 'Umsatzsteuer',
964 968
  'Credit Tax (lit)'            => 'Habensteuer',
......
1401 1405
  'Edit Follow-Up'              => 'Wiedervorlage bearbeiten',
1402 1406
  'Edit Follow-Up for #1'       => 'Wiedervorlage für #1 bearbeiten',
1403 1407
  'Edit General Ledger Transaction' => 'Buchung im Hauptbuch bearbeiten',
1408
  'Edit Invoice'                => 'Rechnung bearbeiten',
1404 1409
  'Edit Invoice for Advance Payment' => 'Anzahlungsrechnung bearbeiten',
1405 1410
  'Edit Letter'                 => 'Brief bearbeiten',
1406 1411
  'Edit Part'                   => 'Ware bearbeiten',
1407 1412
  'Edit Preferences for #1'     => 'Einstellungen von #1 bearbeiten',
1408 1413
  'Edit Price Factor'           => 'Preisfaktor bearbeiten',
1409 1414
  'Edit Printer'                => 'Drucker bearbeiten',
1415
  'Edit Purchase Credit Note'   => 'Einkaufsgutschrift bearbeiten',
1410 1416
  'Edit Purchase Delivery Order' => 'Lieferschein (Einkauf) bearbeiten',
1417
  'Edit Purchase Invoice'       => 'Einkaufsrechnung bearbeiten',
1411 1418
  'Edit Purchase Order'         => 'Lieferantenauftrag bearbeiten',
1412 1419
  'Edit Purchase Order Confirmation' => 'Lieferantenauftragsbestätigung bearbeiten',
1413 1420
  'Edit Purchase Quotation Intake' => 'Angebotseingang bearbeiten',
......
1754 1761
  'Final Invoice'               => 'Schlussrechnung',
1755 1762
  'Final Invoice (one letter abbreviation)' => 'F',
1756 1763
  'Final Invoice, please use mark as paid manually' => 'Rechnungstyp Schlussrechnung, bitte den Beleg manuell als bezahlt markieren',
1764
  'Final Invoices'              => 'Schlussrechnung',
1757 1765
  'Financial Controlling'       => 'Finanzcontrolling',
1758 1766
  'Financial Controlling Report' => 'Finanzcontrollingbericht',
1759 1767
  'Financial Overview'          => 'Finanzübersicht',
......
2127 2135
  'Invoice with Storno (abbreviation)' => 'R(S)',
2128 2136
  'Invoices'                    => 'Rechnungen',
2129 2137
  'Invoices can only be changed on the day they are posted.' => 'Rechnungen können nur am Buchungstag geändert werden.',
2138
  'Invoices for Advance Payment' => 'Rechnung für Anzahlung',
2130 2139
  'Invoices with payments cannot be canceled.' => 'Rechnungen mit Zahlungen können nicht storniert werden.',
2131 2140
  'Invoices, Credit Notes & AR Transactions' => 'Rechnungen, Gutschriften & Debitorenbuchungen',
2132 2141
  'Is Searchable'               => 'Durchsuchbar',
......
2449 2458
  'No'                          => 'Nein',
2450 2459
  'No 1:n or n:1 relation'      => 'Keine 1:n oder n:1 Beziehung',
2451 2460
  'No AP Record Template for vendor \'#1\' found.' => 'Keine Kreditorenbuchungsvorlage für Lieferant \'#1\' gefunden.',
2452
  'No AP Record Template for vendor #1 found, please add one' => 'Kein Belegvorlage für Lieferant #1 gefunden, bitte eine anlegen',
2453 2461
  'No AP template was found.'   => 'Keine Kreditorenbuchungsvorlage gefunden.',
2454 2462
  'No Billing and ship to address, for Order Number #1 with ID Billing #2 and ID Shipping #3' => 'Keine Rechnungs- und Lieferadresse zur Bestellnummer #1 mit Rechnungs-ID #2 und Liefer-ID #3 gefunden',
2455 2463
  'No Company Address given'    => 'Keine Firmenadresse hinterlegt!',
......
3064 3072
  'Purchase'                    => 'Einkauf',
3065 3073
  'Purchase (typeabbreviation)' => 'E',
3066 3074
  'Purchase Credit Note'        => 'Einkaufsgutschrift',
3075
  'Purchase Credit Notes'       => 'Einkaufsgutschriften',
3067 3076
  'Purchase Delivery Order'     => 'Einkaufslieferschein',
3068 3077
  'Purchase Delivery Orders'    => 'Einkaufslieferscheine',
3069 3078
  'Purchase Delivery Orders deleteable' => 'Einkaufslieferscheine löschbar',
......
3770 3779
  'Storno'                      => 'Storno',
3771 3780
  'Storno (one letter abbreviation)' => 'S',
3772 3781
  'Storno Credit Note'          => 'Stornogutschrift',
3782
  'Storno Credit Notes'         => 'Stornogutschriften',
3773 3783
  'Storno Invoice'              => 'Stornorechnung',
3774 3784
  'Storno Invoice for Advance Payment' => 'Stornorechnung für Anzahlung',
3785
  'Storno Invoices'             => 'Stornorechnungen',
3786
  'Storno Invoices for Advance Payment' => 'Stornorechnung für Anzahlung',
3775 3787
  'Street'                      => 'Straße',
3776 3788
  'Street (Shipping)'           => 'Straße (Lieferung)',
3777 3789
  'Street 1'                    => 'Straße 1',
......
3999 4011
  'The country from the customer\'s address cannot be mapped to an ISO 3166-1 alpha 2 code.' => 'Das Land aus der Kunden-Rechnungsadresse kann keinem der bekannten ISO 3166-1 Alpha 2-Codes zugeordnet werden.',
4000 4012
  'The creation of the authentication database failed:' => 'Das Anlegen der Authentifizierungsdatenbank schlug fehl:',
4001 4013
  'The credentials (username & password) for connecting database are wrong.' => 'Die Daten (Benutzername & Passwort) für das Login zur Datenbank sind falsch.',
4014
  'The credit note has been deleted' => 'Die Gutschrift wurde gelöscht',
4002 4015
  'The currency "#1" cannot be mapped to an ISO 4217 currency code.' => 'Die Währung "#1" kann keinem der bekannten ISO 4217-Codes zugeordnet werden.',
4003 4016
  'The custom report has been deleted.' => 'Der benutzerdefinierte Bericht wurde gelöscht.',
4004 4017
  'The custom report has been saved.' => 'Der benutzerdefinierte Bericht wurde gespeichert.',
......
4056 4069
  'The file has been sent to the printer.' => 'Die Datei wurde an den Drucker geschickt.',
4057 4070
  'The file is available for download.' => 'Die Datei ist zum Herunterladen verfügbar.',
4058 4071
  'The file name is missing'    => 'Der Dateiname fehlt',
4072
  'The final invoice has been deleted' => 'Die Schlussrechnung wurde gelöscht',
4059 4073
  'The first reason is that kivitendo contained a bug which resulted in the wrong taxkeys being recorded for transactions in which two entries are posted for the same chart with different taxkeys.' => 'Der erste Grund war ein Fehler in kivitendo, der dazu führte, dass bei einer Transaktion, bei der zwei Buchungen mit unterschiedlichen Steuerschlüsseln auf dasselbe Konto durchgeführt wurden, die falschen Steuerschlüssel gespeichert wurden.',
4060 4074
  'The follow-up date is missing.' => 'Das Wiedervorlagedatum fehlt.',
4061 4075
  'The following Shop Orders: ' => 'Die folgenden Shop-Aufträge: ',
......
4078 4092
  'The greetings have been saved.' => 'Die Anreden wurden gespeichert',
4079 4093
  'The installation is currently locked.' => 'Die Installation ist momentan gesperrt.',
4080 4094
  'The installation is currently unlocked.' => 'Die Installation ist momentan entsperrt.',
4095
  'The invoice for advance payment has been deleted' => 'Die Anzahlungsrechnung wurde gelöscht',
4096
  'The invoice has been deleted' => 'Die Rechnung wurde gelöscht',
4081 4097
  'The invoice is not linked with a sales delivery order. Post anyway?' => 'Diese Rechnung ist mit keinem Lieferschein verknüpft. Dennoch Buchen?',
4082 4098
  'The invoice recipient can either be a selected contact person (default) or the email adress set in the master data of the customer. Additionally a contact persons mail and the company\'s invoicing mail can be combined.' => 'Der E-Mail-Rechnungsempfänger ist entweder mit dem Ansprechpartner des Belegs vorbelegt (Standard) oder mit der E-Mail-Rechnungsadresse aus den Stammdaten. Alternativ können beide (Ansprechpartner in CC) vorbelegt werden.',
4083 4099
  'The invoices have been created. They\'re pre-selected below.' => 'Die Rechnungen wurden erzeugt. Sie sind unten vorausgewählt.',
......
4165 4181
  'The project link has been updated.' => 'Die Projektverknüpfung wurde aktualisiert.',
4166 4182
  'The project number is already in use.' => 'Die Projektnummer wird bereits verwendet.',
4167 4183
  'The project number is missing.' => 'Die Projektnummer fehlt.',
4184
  'The purchase credit note has been deleted' => 'Die Einkaufsgutschrift wurde gelöscht',
4185
  'The purchase invoice has been deleted' => 'Die Einkaufsrechnung wurde gelöscht',
4168 4186
  'The query did not return any data.' => 'Die Abfrage lieferte keine Daten',
4169 4187
  'The quotation has been deleted' => 'Das Angebot wurde gelöscht',
4170 4188
  'The quotation has been saved' => 'Das Angebot wurde gespeichert',
......
4216 4234
  'The source warehouse does not contain any bins.' => 'Das Quelllager enthält keine Lagerplätze.',
4217 4235
  'The start date is missing.'  => 'Das Startdatum fehlt.',
4218 4236
  'The stock will be changed to your target quantity.' => 'Der Lagerbestand wird auf Ihre gezählte Zielmenge geändert.',
4237
  'The storno credit note has been deleted' => 'Die Stornogutschrift wurde gelöscht',
4238
  'The storno invoice has been deleted' => 'Die Stornorechnung wurde gelöscht',
4239
  'The strono invoice for advance payment has been deleted' => 'Die Storno-Anzahlungsrechnung wurde gelöscht',
4219 4240
  'The subject is missing.'     => 'Der Betreff fehlt.',
4220 4241
  'The tables for user management and authentication do not exist. They will be created in the next step in the following database:' => 'Die Tabellen zum Speichern der Benutzerdaten und zur Benutzerauthentifizierung wurden nicht gefunden. Sie werden in der folgenden Datenbank angelegt:',
4221 4242
  'The tabulator character'     => 'Das Tabulator-Symbol',
locale/en/all
198 198
  'Add Follow-Up'               => '',
199 199
  'Add Follow-Up for #1'        => '',
200 200
  'Add General Ledger Transaction' => '',
201
  'Add Invoice'                 => '',
201 202
  'Add Invoice for Advance Payment' => '',
202 203
  'Add Letter'                  => '',
203 204
  'Add Part'                    => '',
......
205 206
  'Add Price Factor'            => '',
206 207
  'Add Printer'                 => '',
207 208
  'Add Project'                 => '',
209
  'Add Purchase Credit Note'    => '',
208 210
  'Add Purchase Delivery Order' => '',
211
  'Add Purchase Invoice'        => '',
209 212
  'Add Purchase Order'          => '',
210 213
  'Add Purchase Order Confirmation' => '',
211 214
  'Add Purchase Quotation Intake' => '',
......
224 227
  'Add Sales Reclamation'       => '',
225 228
  'Add Service'                 => '',
226 229
  'Add Storno Credit Note'      => '',
230
  'Add Storno Invoice'          => '',
231
  'Add Storno Invoice for Advance Payment' => '',
227 232
  'Add Supplier Delivery Order' => '',
228 233
  'Add Transaction'             => '',
229 234
  'Add User'                    => '',
......
804 809
  'Configure'                   => '',
805 810
  'Confirm!'                    => '',
806 811
  'Confirmation'                => '',
807
  'Confirmation Date'           => '',
808
  'Confirmation Number'         => '',
809 812
  'Consume average'             => '',
810 813
  'Contact'                     => '',
811 814
  'Contact Departments'         => '',
......
959 962
  'Credit Note'                 => '',
960 963
  'Credit Note Date'            => '',
961 964
  'Credit Note Number'          => '',
965
  'Credit Notes'                => '',
962 966
  'Credit Starting Balance'     => '',
963 967
  'Credit Tax'                  => '',
964 968
  'Credit Tax (lit)'            => '',
......
1401 1405
  'Edit Follow-Up'              => '',
1402 1406
  'Edit Follow-Up for #1'       => '',
1403 1407
  'Edit General Ledger Transaction' => '',
1408
  'Edit Invoice'                => '',
1404 1409
  'Edit Invoice for Advance Payment' => '',
1405 1410
  'Edit Letter'                 => '',
1406 1411
  'Edit Part'                   => '',
1407 1412
  'Edit Preferences for #1'     => '',
1408 1413
  'Edit Price Factor'           => '',
1409 1414
  'Edit Printer'                => '',
1415
  'Edit Purchase Credit Note'   => '',
1410 1416
  'Edit Purchase Delivery Order' => '',
1417
  'Edit Purchase Invoice'       => '',
1411 1418
  'Edit Purchase Order'         => '',
1412 1419
  'Edit Purchase Order Confirmation' => '',
1413 1420
  'Edit Purchase Quotation Intake' => '',
......
1754 1761
  'Final Invoice'               => '',
1755 1762
  'Final Invoice (one letter abbreviation)' => '',
1756 1763
  'Final Invoice, please use mark as paid manually' => '',
1764
  'Final Invoices'              => '',
1757 1765
  'Financial Controlling'       => '',
1758 1766
  'Financial Controlling Report' => '',
1759 1767
  'Financial Overview'          => '',
......
2126 2134
  'Invoice with Storno (abbreviation)' => '',
2127 2135
  'Invoices'                    => '',
2128 2136
  'Invoices can only be changed on the day they are posted.' => '',
2137
  'Invoices for Advance Payment' => '',
2129 2138
  'Invoices with payments cannot be canceled.' => '',
2130 2139
  'Invoices, Credit Notes & AR Transactions' => '',
2131 2140
  'Is Searchable'               => '',
......
2448 2457
  'No'                          => '',
2449 2458
  'No 1:n or n:1 relation'      => '',
2450 2459
  'No AP Record Template for vendor \'#1\' found.' => '',
2451
  'No AP Record Template for this vendor found, please add one' => '',
2452
  'No AP Record Template for vendor #1 found, please add one' => '',
2453 2460
  'No AP template was found.'   => '',
2454 2461
  'No Billing and ship to address, for Order Number #1 with ID Billing #2 and ID Shipping #3' => '',
2455 2462
  'No Company Address given'    => '',
......
3064 3071
  'Purchase'                    => 'Purchase',
3065 3072
  'Purchase (typeabbreviation)' => 'P',
3066 3073
  'Purchase Credit Note'        => '',
3074
  'Purchase Credit Notes'       => '',
3067 3075
  'Purchase Delivery Order'     => '',
3068 3076
  'Purchase Delivery Orders'    => '',
3069 3077
  'Purchase Delivery Orders deleteable' => '',
......
3770 3778
  'Storno'                      => '',
3771 3779
  'Storno (one letter abbreviation)' => '',
3772 3780
  'Storno Credit Note'          => '',
3781
  'Storno Credit Notes'         => '',
3773 3782
  'Storno Invoice'              => '',
3774 3783
  'Storno Invoice for Advance Payment' => '',
3784
  'Storno Invoices'             => '',
3785
  'Storno Invoices for Advance Payment' => '',
3775 3786
  'Street'                      => '',
3776 3787
  'Street (Shipping)'           => '',
3777 3788
  'Street 1'                    => '',
......
3998 4009
  'The country from the customer\'s address cannot be mapped to an ISO 3166-1 alpha 2 code.' => '',
3999 4010
  'The creation of the authentication database failed:' => '',
4000 4011
  'The credentials (username & password) for connecting database are wrong.' => '',
4012
  'The credit note has been deleted' => '',
4001 4013
  'The currency "#1" cannot be mapped to an ISO 4217 currency code.' => '',
4002 4014
  'The custom report has been deleted.' => '',
4003 4015
  'The custom report has been saved.' => '',
......
4055 4067
  'The file has been sent to the printer.' => '',
4056 4068
  'The file is available for download.' => '',
4057 4069
  'The file name is missing'    => '',
4070
  'The final invoice has been deleted' => '',
4058 4071
  'The first reason is that kivitendo contained a bug which resulted in the wrong taxkeys being recorded for transactions in which two entries are posted for the same chart with different taxkeys.' => '',
4059 4072
  'The follow-up date is missing.' => '',
4060 4073
  'The following Shop Orders: ' => '',
......
4077 4090
  'The greetings have been saved.' => '',
4078 4091
  'The installation is currently locked.' => '',
4079 4092
  'The installation is currently unlocked.' => '',
4093
  'The invoice for advance payment has been deleted' => '',
4094
  'The invoice has been deleted' => '',
4080 4095
  'The invoice is not linked with a sales delivery order. Post anyway?' => '',
4081 4096
  'The invoice recipient can either be a selected contact person (default) or the email adress set in the master data of the customer. Additionally a contact persons mail and the company\'s invoicing mail can be combined.' => '',
4082 4097
  'The invoices have been created. They\'re pre-selected below.' => '',
......
4164 4179
  'The project link has been updated.' => '',
4165 4180
  'The project number is already in use.' => '',
4166 4181
  'The project number is missing.' => '',
4182
  'The purchase credit note has been deleted' => '',
4183
  'The purchase invoice has been deleted' => '',
4167 4184
  'The query did not return any data.' => '',
4168 4185
  'The quotation has been deleted' => '',
4169 4186
  'The quotation has been saved' => '',
......
4215 4232
  'The source warehouse does not contain any bins.' => '',
4216 4233
  'The start date is missing.'  => '',
4217 4234
  'The stock will be changed to your target quantity.' => '',
4235
  'The storno credit note has been deleted' => '',
4236
  'The storno invoice has been deleted' => '',
4237
  'The strono invoice for advance payment has been deleted' => '',
4218 4238
  'The subject is missing.'     => '',
4219 4239
  'The tables for user management and authentication do not exist. They will be created in the next step in the following database:' => '',
4220 4240
  'The tabulator character'     => '',

Auch abrufbar als: Unified diff