Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 265fa6a6

Von Sven Schöling vor mehr als 8 Jahren hinzugefügt

  • ID 265fa6a6f42909e4e27870a1dd838c4570ba61a8
  • Vorgänger fb1a574b
  • Nachfolger e78a50fc

Csv: mappings übersetzen jetzt auch header

Unterschiede anzeigen:

SL/Helper/Csv.pm
my $h_aref = ($self->is_multiplexed)? $header : [ $header ];
my $p_num = 0;
foreach my $h (@{ $h_aref }) {
my @names = (
keys %{ $self->profile->[$p_num]->{profile} || {} },
keys %{ $self->profile->[$p_num]->{mapping} || {} },
my %names = (
(map { $_ => $_ } keys %{ $self->profile->[$p_num]->{profile} || {} }),
(map { $_ => $self->profile->[$p_num]{mapping}{$_} } keys %{ $self->profile->[$p_num]->{mapping} || {} }),
);
for my $name (@names) {
for my $name (keys %names) {
for my $i (0..$#$h) {
$h->[$i] = $name if lc $h->[$i] eq lc $name;
$h->[$i] = $names{$name} if lc $h->[$i] eq lc $name;
}
}
$p_num++;
......
Without strict profiles, mappings can also directly map header fields that
should end up in the same accessor.
With case insensitive headings, mappings will also modify the headers, to fit
the expected profile.
Mappings can be identical to known fields and will be prefered during lookup,
but will not replace the field, meaning that:

Auch abrufbar als: Unified diff