При переносе или совместной эксплуатации баз данных 1С:Предприятия 7.7 на компьютерах с современными версиями Windows (Windows 7, 8.1, 10, 11) пользователи часто сталкиваются с критической ошибкой: «Порядок сортировки, установленный для базы данных, отличается от системного». Проанализируем природу этой ошибки, разберем причины ее появления и пошагово рассмотрим все способы решения проблемы.
Выясним причину такого поведения платформы. Встроенный в 1С 7.7 табличный движок работы с DBF (библиотека CodeBase) жестко сопоставляет порядок сортировки в индексных файлах таблиц (*.cdx) с алгоритмами текущей операционной системы. Начиная с Windows Vista и Windows 7, компания Microsoft изменила таблицы национальных языковых стандартов (NLS) и правила сопоставления символов по сравнению с Windows 2000 и XP.
Когда одна рабочая станция работает под управлением Windows 8.1, а вторая под Windows 7, каждая система считывает системную локаль с небольшими внутренними различиями в таблицах сопоставления. В результате 1С 7.7 считает, что порядок сортировки не совпадает, и блокирует вход пользователя для предотвращения порчи индексов.
Фирма «1С» предусмотрела официальный механизм подавления проверки порядка сортировки. Разберем по шагам, как его применить и почему он иногда не срабатывает:
7.70.026 (рекомендуется использовать последний официальный релиз 7.70.027). В более ранних релизах механизм отключения проверки не поддерживается.OrdNoChk.prm.BIN, где расположен файл 1cv7s.exe или 1cv7.exe) либо непосредственно в каталоге конкретной информационной базы данных.Если после размещения файла ошибка сохраняется, проверим типичные проблемы:
OrdNoChk.prm.txt. Проверим имя через свойства файла или командную строку.C:\Program Files (x86)\ система контроля учетных записей (UAC) может перенаправлять запись в изолированное хранилище пользователя, и платформа фактически не увидит файл в системной папке. В этом случае разместим файл OrdNoChk.prm прямо в каталоге базы данных или перенесем каталог программы за пределы защищенных папок Windows.Проанализируем системные языковые параметры операционной системы на всех компьютерах, имеющих доступ к базе данных:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage. Убедимся, что строковые параметры 1250, 1251 и 1252 ссылаются на файл c_1251.nls.Рассмотрим порядок правильной смены кодовой страницы внутри самой информационной базы:
*.cdx. После этого запустим базу в монопольном режиме — платформа автоматически пересоздаст индексные файлы с актуальными параметрами.При гетерогенной сетевой среде (когда в одной локальной сети работают клиенты с разными версиями ОС от XP до Windows 11) отключение проверки индексов не гарантирует абсолютную стабильность. Рассмотрим более надежные архитектурные решения:
Cyrillic_General_CI_AS), а не локальными библиотеками клиентских Windows.Помним о важных ограничениях при использовании файла OrdNoChk.prm:
*.cdx. Рекомендуется регулярно выполнять процедуру «Тестирование и исправление ИБ» и делать резервные копии.