Если только Вам это интересно .... Смотрите, что получается (для удобства ответа - по пунктам).
Что бы понять алгоритмику CLACOLSEQ, давайте, для простоты, формализуем задачу и предположим, что меня
посетила фантазия сортировать цифры в обратном порядке (9876543210) и я хочу это сделать с помощью CLACOLSEQ ....
Также у меня есть функция GetCurSEQ() которая возвращает отсортированную строку из всех 255 символов,
по текущей настройке CLACOLSEQ, как Вы описали это через сортировку очереди.
1. По умолчанию приложение Clarion имеет сортировку ANSI.
2. Я могу выполнить Locale('CLACOLSEQ','9876543210') и получу сортировку ANSI с обратной сортировкой чисел. OK !
3. Я могу выполнить Locale('CLACOLSEQ','Windows') и получу сортировку по региональным настройкам Windows. OK !
4. Но я не могу получить сортировку Windows с обратной сортировкой чисел.
Если я выполняю последовательно:
Код: Выделить всё
Locale('CLACOLSEQ','Windows')
Locale('CLACOLSEQ','9876543210')
Message(GetCurSEQ())
то все получается результат из п.2 (т.е. затирается сортировка Windows)
Если я выполняю:
Код: Выделить всё
Locale('CLACOLSEQ','Windows')
Loc:Str255 = GetCurSEQ()
ChangeString(Loc:Str255,'0123456789','9876543210') ! Замена в строке порядка следования цифр
Locale('CLACOLSEQ',Loc:Str255)
Message(GetCurSEQ())
То получается какая-то мешанина из символов ....
