@@ -, +, @@ --- C4/ClassSortRoutine/Dewey.pm | 4 ++++ C4/Search.pm | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) --- a/C4/ClassSortRoutine/Dewey.pm +++ a/C4/ClassSortRoutine/Dewey.pm @@ -76,6 +76,10 @@ sub get_class_sort_key { } } } + # Pad the first digit_group if there was only one + if (1 == $digit_group_count) { + $tokens[0] .= '_000000000000000' + } my $key = join("_", @tokens); $key =~ s/[^\p{IsAlnum}_]//g; --- a/C4/Search.pm +++ a/C4/Search.pm @@ -364,10 +364,10 @@ sub getRecords { $sort_by .= "1=9003 >i "; } elsif ( $sort eq "call_number_asc" ) { - $sort_by .= "1=20