TT#137100 contract exporter: support duplicate datapaths

exporting the same field (path) multiple times results
in duplicate column names, which are rejected by sqlite
or DBD::xyz.

This change introduces a "colname" field for providing
an alternative column name to prevent colliding names.

Change-Id: I904862651c1a24c4cdc6c643da6f9156e15ffbc6
mr10.0
Rene Krenn 4 years ago
parent 6fc3ef8d6d
commit 134aeff964

@ -54,7 +54,7 @@ sub get_fieldnames {
my $expected = shift;
unless (defined $fieldnames and defined $expected_fieldnames) {
$fieldnames = [ map {
local $_ = (ref $_ ? $_->{path} : $_);
local $_ = (ref $_ ? (exists $_->{colname} ? $_->{colname} : $_->{path}) : $_);
$_ =~ s/\./_/g;
$_ =~ s/\[(\d+)\]/_$1/g;
$_;

Loading…
Cancel
Save