Администрирование · 11 мин
Как исправить порядок сортировки в 1С
Разбираем, почему в 1С нарушается сортировка справочников и документов, как восстановить порядок кодов, настроить сортировку в списках и отчётах без риска для данных.
Нарушение сортировки в 1С проявляется по-разному: контрагенты в списке идут не по алфавиту, коды элементов справочника «прыгают», документы в журнале располагаются не по дате, а в отчёте строки выстраиваются в неожиданном порядке. Причины у этих симптомов разные — от пользовательских настроек отбора до повреждения индексов базы, поэтому и исправлять их нужно по-разному.
Прежде чем что-то менять, важно понять, где именно нарушен порядок: в форме списка, в нумерации кодов, в отчёте или на уровне самой базы данных. От этого зависит, достаточно ли настройки «Ещё → Настроить список» или потребуется тестирование и исправление информационной базы.
Большинство случаев решается штатными средствами без программирования. Ниже разобраны основные сценарии: сортировка списков, восстановление порядка кодов и номеров, настройка сортировки в отчётах и динамических списках, а также ситуации, когда проблема лежит глубже — в индексах и структуре данных.
Как определить, где именно нарушена сортировка
Один и тот же симптом — «всё перемешалось» — имеет разные источники. Сначала проверьте, в каких местах проблема повторяется: только в одном списке у одного пользователя, у всех пользователей или во всех списках и отчётах сразу.
Если порядок нарушен только у конкретного пользователя и только в одной форме — почти наверняка дело в сохранённых настройках этого пользователя. Если сбит порядок кодов во всём справочнике у всех — вероятна некорректная нумерация после ручного редактирования кодов. Если записи «скачут» везде, включая отчёты, — стоит проверить индексы базы.
Проверить «Ещё → Установить стандартные настройки»
Проверить, редактировали ли коды вручную или при обмене
Проверить настройку сортировки журнала и поведение у других пользователей
Выполнить тестирование и исправление после создания копии
Сортировка в форме списка: настройка и сброс
Самый частый случай — пользователь случайно щёлкнул по заголовку колонки или изменил настройки, и список теперь сортируется по непривычному полю. В управляемых формах порядок задаётся через меню «Ещё → Настроить список»: на вкладке «Сортировка» можно добавить нужное поле, выбрать направление (по возрастанию или по убыванию) и выстроить несколько уровней сортировки.
Если разобраться в накопившихся настройках сложно, проще вернуть стандартное состояние: «Ещё → Установить стандартные настройки». Это сбросит не только сортировку, но и отборы с группировками, поэтому при наличии важных отборов сначала запомните или запишите их условия.
Дополнительно проверьте «Ещё → Изменить форму»: иногда сама форма была доработана, и сортировка зашита в её настройках. В типовых конфигурациях без доработок достаточно стандартного сброса.
- 1Откройте проблемный список под тем пользователем, у которого нарушен порядок
- 2Перейдите: Ещё → Настроить список → вкладка «Сортировка»
- 3Удалите лишние поля сортировки или задайте нужное поле и направление
- 4Если настройки запутаны — выполните «Ещё → Установить стандартные настройки»
- 5Закройте и заново откройте форму, проверьте порядок записей
Нарушенный порядок кодов справочников и номеров документов
Коды справочников и номера документов 1С присваивает автоматически, ориентируясь на максимальное существующее значение. Если кто-то вручную изменил код, удалил элементы или данные загружались обменом, автонумерация может «сбиться»: новые элементы получают коды, нарушающие ожидаемый порядок, а сортировка по коду выглядит хаотично.
Учитывайте особенность строковых кодов: «10» при сортировке как строка стоит раньше «2», потому что сравнение идёт посимвольно. Поэтому в типовых конфигурациях коды имеют фиксированную длину с лидирующими нулями. Если нули потеряны (например, после загрузки из Excel), сортировка по коду станет «неправильной» хотя формально данные целы.
Для исправления используйте обработку перенумерации объектов (в типовых конфигурациях на базе БСП она доступна в разделе «Администрирование → Обслуживание» либо как универсальная обработка «Перенумерация объектов»). Перед запуском обязательно сделайте резервную копию: перенумерация изменяет данные массово, и откатить её вручную затруднительно.
Сортировка в отчётах и динамических списках
В отчётах на СКД (системе компоновки данных) порядок строк задаётся отдельно от списка. Откройте «Ещё → Изменить вариант» (или кнопку настроек отчёта) и перейдите на вкладку «Сортировка»: добавьте поле, по которому нужно упорядочить строки, и укажите направление. Если поле сортировки отсутствует в списке доступных — его сначала нужно добавить в выбранные поля отчёта.
В динамических списках, которые разработчик задал с произвольным запросом, пользовательская сортировка может быть ограничена: если в запросе уже есть секция УПОРЯДОЧИТЬ, настройки пользователя могут игнорироваться или конфликтовать. В этом случае исправление требует изменения запроса в конфигураторе — это задача для специалиста, а не для пользователя.
Если отчёт выводит строки в разном порядке при одинаковых настройках, проверьте, не сортируется ли он по полю с неуникальными значениями. Добавьте вторым уровнем сортировки уникальное поле (например, ссылку или код) — порядок станет стабильным.
Если причина в индексах и структуре базы
Когда порядок записей нарушен системно — списки и отчёты у всех пользователей показывают данные вразнобой, а настройки сортировки не помогают, — возможно повреждение индексов информационной базы. Такое бывает после аварийного завершения работы, отключения электричества или сбоев диска, особенно в файловых базах.
Штатное средство восстановления — утилита тестирования и исправления: для файловой базы запустите конфигуратор в монопольном режиме, затем «Администрирование → Тестирование и исправление», отметьте проверку логической и ссылочной целостности, а также реиндексацию таблиц. Перед запуском обязательно создайте копию базы (выгрузку в dt или копию файла 1Cv8.1CD).
Для клиент-серверных баз (MS SQL, PostgreSQL) реиндексацию и проверку целостности выполняют средствами СУБД по регламенту администратора. Самостоятельные действия на сервере БД без опыта могут привести к потере данных — привлекайте администратора или специалиста по 1С.
Как выбрать действие
Типичные ошибки при исправлении сортировки
Распространённая ошибка — исправлять порядок ручным переименованием элементов или правкой кодов по одному, когда проблема массовая. Это долго и порождает новые рассинхронизации, особенно если по справочнику идут обмены. Массовые проблемы решаются перенумерацией или настройкой, а не ручной правкой.
Вторая ошибка — запуск тестирования и исправления с включёнными опциями удаления объектов с битой ссылкой без анализа последствий. Такие операции могут удалить данные, которые на самом деле восстановимы. Сначала выполняйте только проверку без исправления и изучайте отчёт о найденных ошибках.
Третья ошибка — ожидать, что сортировка списка изменит порядок в печатных формах и отчётах. Это независимые механизмы: порядок в каждом месте настраивается отдельно.
Как проверить, что порядок восстановлен
После исправления откройте список заново и убедитесь, что порядок соответствует ожиданиям: наименования по алфавиту, документы по дате, коды по возрастанию. Проверьте также под другим пользователем — если у него свои настройки, у него порядок может отличаться, и это нормально.
После перенумерации создайте новый элемент справочника или документ и убедитесь, что ему присвоился ожидаемый следующий код или номер. После тестирования и исправления просмотрите отчёт об ошибках и убедитесь, что критичных сообщений не осталось.
Как проверить результат
Записи идут по выбранному полю в заданном направлении
Порядок меняется случайным образом при обновлении
Новый элемент получает следующий ожидаемый код
Код присваивается с пропусками или дублируется
У всех порядок одинаковый и предсказуемый
У части пользователей список по-прежнему «перемешан»
Строки в отчётах упорядочены стабильно
Порядок в отчёте отличается от запуска к запуску
Что важно запомнить
Локальный сбой сортировки лечится сбросом настроек формы, нарушенная нумерация — обработкой перенумерации, порядок в отчётах — настройкой вкладки «Сортировка», а системные сбои — тестированием и исправлением базы. Любые массовые изменения и ремонт базы выполняйте только после создания резервной копии.
Частые вопросы
Почему список контрагентов вдруг перестал быть по алфавиту?
Чаще всего кто-то щёлкнул по заголовку другой колонки или изменил настройки списка. Откройте «Ещё → Настроить список → Сортировка» и верните сортировку по наименованию, либо выполните «Ещё → Установить стандартные настройки».
Можно ли исправить порядок кодов без перенумерации всех элементов?
Да, если проблема точечная — отредактируйте коды вручную у нескольких элементов. Но при массовом нарушении ручная правка дольше и рискованнее: после неё автонумерация всё равно может работать некорректно, пока не будет выровнен максимальный код.
Почему сортировка по коду ставит код 10 раньше кода 2?
Код справочника — строка, а строки сравниваются посимвольно: «1» меньше «2». Чтобы порядок был числовым, используются коды фиксированной длины с лидирующими нулями (000001, 000002, 000010). Восстановить нули помогает перенумерация объектов.
Настройки сортировки не сохраняются после закрытия формы — что делать?
Проверьте, не отключено ли сохранение пользовательских настроек для этой формы разработчиком, и нет ли ошибок прав доступа. Также попробуйте очистить локальный кэш настроек пользователя через «Администрирование → Пользователи и права» либо удалив настройки формы в меню «Ещё».
Опасно ли запускать тестирование и исправление базы?
Сама проверка в режиме «только тестирование» безопасна — она ничего не меняет. Риск представляют режимы исправления и удаления объектов: запускайте их только на копии или после выгрузки базы и в монопольном режиме, внимательно анализируя отчёт об ошибках.
Порядок в отчёте меняется при каждом формировании — это сбой базы?
Не обязательно. Если сортировка задана по полю с неуникальными значениями, порядок строк внутри одинаковых значений не гарантирован. Добавьте вторым уровнем сортировки уникальное поле — и порядок станет стабильным без всякого ремонта базы.