my $o = sprintf("%4s %d ~", $f, $v);
if (defined($s->{sf}->{$f})) {
+ my @subfields = keys %{ $s->{sf}->{$f} };
+warn "$f has subfields ",dump( @subfields );
map {
$o .= sprintf(" %s:%d%s", $_,
$s->{sf}->{$f}->{$_}->{count},
$s->{sf}->{$f}->{$_}->{repeatable} ? '*' : '',
);
- } sort keys %{ $s->{sf}->{$f} };
+ } (
+ # first indicators
+ sort( grep( /^i[12]$/, @subfields ) ),
+ # then subfileds
+ sort( grep( !/^i[12]$/, @subfields ) ),
+ );
}
if (my $v_r = $s->{repeatable}->{$f}) {