Revision 8ebd7568
Von Bernd Bleßmann vor mehr als 7 Jahren hinzugefügt
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
CsvImport: Mehrdeutigkeit nur prüfen, wenn entsprechende Daten angegeben sind.
Fehler kam im commit
"CsvImport: bei nicht eindeutigen Kunden/Lieferanten Fehler melden."
rein.