Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 8ebd7568

Von Bernd Bleßmann vor mehr als 7 Jahren hinzugefügt

  • ID 8ebd75685952192deb585e5f5e1cb3c0d65df76e
  • Vorgänger 47186d7a
  • Nachfolger 3c147670

CsvImport: Mehrdeutigkeit nur prüfen, wenn entsprechende Daten angegeben sind.

Fehler kam im commit
"CsvImport: bei nicht eindeutigen Kunden/Lieferanten Fehler melden."
rein.

Unterschiede anzeigen:

SL/Controller/CsvImport/Base.pm
221 221

  
222 222
  my $is_ambiguous;
223 223
  if (!$entry->{object}->$id_column) {
224
    my $vc = $entry->{raw_data}->{customernumber} && $self->vc_by->{number}->{customers}->{ $entry->{raw_data}->{customernumber} };
225
    if ($vc && $self->vc_counts_by->{number}->{customers}->{ $entry->{raw_data}->{customernumber} } > 1) {
226
      $vc = undef;
227
      $is_ambiguous = 1;
228
    }
229
    $vc ||= $entry->{raw_data}->{vendornumber} && $self->vc_by->{number}->{vendors}->{ $entry->{raw_data}->{vendornumber} };
230
    if ($vc && $self->vc_counts_by->{number}->{vendors}->{ $entry->{raw_data}->{vendornumber} } > 1) {
231
      $vc = undef;
232
      $is_ambiguous = 1;
224
    my $vc;
225
    if ($entry->{raw_data}->{customernumber}) {
226
      $vc = $self->vc_by->{number}->{customers}->{ $entry->{raw_data}->{customernumber} };
227
      if ($vc && $self->vc_counts_by->{number}->{customers}->{ $entry->{raw_data}->{customernumber} } > 1) {
228
        $vc = undef;
229
        $is_ambiguous = 1;
230
      }
231
    } elsif ($entry->{raw_data}->{vendornumber}) {
232
      $vc = $self->vc_by->{number}->{vendors}->{ $entry->{raw_data}->{vendornumber} };
233
      if ($vc && $self->vc_counts_by->{number}->{vendors}->{ $entry->{raw_data}->{vendornumber} } > 1) {
234
        $vc = undef;
235
        $is_ambiguous = 1;
236
      }
233 237
    }
234 238

  
235 239
    $entry->{object}->$id_column($vc->id) if $vc;
236 240
  }
237 241

  
238 242
  if (!$entry->{object}->$id_column) {
239
    my $vc = $entry->{raw_data}->{customer} && $self->vc_by->{name}->{customers}->{ $entry->{raw_data}->{customer} };
240
    if ($vc && $self->vc_counts_by->{name}->{customers}->{ $entry->{raw_data}->{customer} } > 1) {
241
      $vc = undef;
242
      $is_ambiguous = 1;
243
    }
244
    $vc ||= $entry->{raw_data}->{vendor} && $self->vc_by->{name}->{vendors}->{ $entry->{raw_data}->{vendor} };
245
    if ($vc && $self->vc_counts_by->{name}->{vendors}->{ $entry->{raw_data}->{vendor} } > 1) {
246
      $vc = undef;
247
      $is_ambiguous = 1;
243
    my $vc;
244
    if ($entry->{raw_data}->{customer}) {
245
      $vc = $self->vc_by->{name}->{customers}->{ $entry->{raw_data}->{customer} };
246
      if ($vc && $self->vc_counts_by->{name}->{customers}->{ $entry->{raw_data}->{customer} } > 1) {
247
        $vc = undef;
248
        $is_ambiguous = 1;
249
      }
250
    } elsif ($entry->{raw_data}->{vendor}) {
251
      $vc = $self->vc_by->{name}->{vendors}->{ $entry->{raw_data}->{vendor} };
252
      if ($vc && $self->vc_counts_by->{name}->{vendors}->{ $entry->{raw_data}->{vendor} } > 1) {
253
        $vc = undef;
254
        $is_ambiguous = 1;
255
      }
248 256
    }
249 257

  
250 258
    $entry->{object}->$id_column($vc->id) if $vc;
251 259
  }
252 260

  
253 261
  if (!$entry->{object}->$id_column) {
254
    my $vc = $entry->{raw_data}->{customer_gln} && $self->vc_by->{gln}->{customers}->{ $entry->{raw_data}->{customer_gln} };
255
    if ($vc && $self->vc_counts_by->{gln}->{customers}->{ $entry->{raw_data}->{customer_gln} } > 1) {
256
      $vc = undef;
257
      $is_ambiguous = 1;
258
    }
259
    $vc ||= $entry->{raw_data}->{vendor_gln} && $self->vc_by->{gln}->{vendors}->{ $entry->{raw_data}->{vendor_gln} };
260
    if ($vc && $self->vc_counts_by->{gln}->{vendors}->{ $entry->{raw_data}->{vendor_gln} } > 1) {
261
      $vc = undef;
262
      $is_ambiguous = 1;
262
    my $vc;
263
    if ($entry->{raw_data}->{customer_gln}) {
264
      $vc = $self->vc_by->{gln}->{customers}->{ $entry->{raw_data}->{customer_gln} };
265
      if ($vc && $self->vc_counts_by->{gln}->{customers}->{ $entry->{raw_data}->{customer_gln} } > 1) {
266
        $vc = undef;
267
        $is_ambiguous = 1;
268
      }
269
    } elsif ($entry->{raw_data}->{vendor_gln}) {
270
      $vc = $self->vc_by->{gln}->{vendors}->{ $entry->{raw_data}->{vendor_gln} };
271
      if ($vc && $self->vc_counts_by->{gln}->{vendors}->{ $entry->{raw_data}->{vendor_gln} } > 1) {
272
        $vc = undef;
273
        $is_ambiguous = 1;
274
      }
263 275
    }
264

  
265 276
    $entry->{object}->$id_column($vc->id) if $vc;
266 277
  }
267 278

  

Auch abrufbar als: Unified diff