НАЧАЛО >> Оглавление >> Общее описание >> История изменений >> Что нового в проекте I128 >> Версия 2026.2.6 >> [I128-2698] Символ № выводится отдельным номером в таблице номеров журнала📄 Скачать в DOCX
| Тип | Версия | Статус | Приоритет | Исполнитель |
|---|---|---|---|---|
| ⚙️ Исправление ошибок | 2026.2.6 | 🔘 Завершено |
Средний | Ilya Mikhaylenko |
Компоненты: Нет
Завершено: 06.08.2026 12:42
Проблема:
В полном просмотре общего описания журнала таблица номеров строилась по словарю I=. Если в словарь попадал служебный префикс номера №, он мог отображаться в таблице как отдельный номер. Переход по такому значению открывал пустой результат поиска.
Решение:
В таблице и дереве номеров журнала нормализуется только видимая подпись номера: ведущий символ № удаляется, а пустые значения после нормализации не выводятся. Поисковые ключи связанных записей сохраняются исходными, поэтому переходы к существующим номерам не меняются.
Технические подробности:
Исправлены modules/J/Formats/JNJTable.pft128 и modules/J/Actions/GetNJTreeNode.inc. Проверка термина словаря I= стала префиксной, год и номер отделяются от хвоста термина без замены внутри шифра общего описания. Help обновлён для версии 2026.2.5.
I128-2698 исправляет отображение служебного символа № в таблице номеров полного просмотра общего описания журнала. Целевая ветка PR: release/2026.2; ветка создана от текущей origin/release/2026.2, зависимостей нет.
Куда смотреть:
?id=EC/ShowFull&irbDb=<БД>&mfn=<MFN записи J> -> блок Записей номеров в Каталоге. Было: термин словаря I= с ведущим № мог отображаться как отдельный номер и вести к пустому результату поиска. Стало: ведущий № удаляется из видимой подписи номера, а пустая после нормализации подпись не выводится.J/GetNJTreeNode с irbDb=IBIS, shj=У1415, node=1990 возвращает узлы Номер 1, Номер 2 и сохраняет Номер ПОДШИВКА № 1; node=1990/1 возвращает только Номер 1. Проверка выполнена на существующих терминах NJ в IBIS, потому что самой записи J для этого шифра в локальной IBIS нет.№ -> пусто, № 1 -> 1, 1 -> 1, Подшивка № 1 -> Подшивка № 1.?id=Help/Show&m=Help/GeneralDescription/WhatsNew/I128/2026.2.5 и карточка ?id=Help/Show&m=Help/GeneralDescription/WhatsNew/I128/TaskInfo/I128-2698/README.Изменения по файлам:
modules/J/Formats/JNJTable.pft128
I= к текущему шифру журнала стала префиксной, без случайных совпадений по подстроке.modules/J/Actions/GetNJTreeNode.inc
1990 не матчится с 19901, а 1990/1 находит точный номер.modules/Help/Help/GeneralDescription/WhatsNew/I128/2026.2.5.md
J в разделе Исправление ошибок.I128-2698.modules/Help/Help/GeneralDescription/WhatsNew/I128/TaskInfo/I128-2698/README.md
modules/Help/Help/GeneralDescription/WhatsNew/I128/TaskInfo/I128-2698/meta.json
I128-2698 для 2026.2.5.
Дополнение после review:№ в таблице номеров: она снова вызывает WIrbis.irbisLinkMonitor.fireEvent('irbislink', ...) для перехода к конкретному номеру."I=<полный ключ>" и экранируется для HTML/JS, поэтому шифр с пробелами не разваливает переход.Разрешение текущих конфликтов подготовлено в PR #1359 (merge/release-2026.2-to-develop-pr1358 -> develop, commit 169484ec3bf1bde29110dd8cd22cf7f5b3fae057). Обе исходные ветки защищены от прямого push; отдельный PR сохраняет направление переноса release → develop. После принятия #1359 следует повторно проверить этот PR на новые изменения релизной ветки.
Перенос всех изменений из release/2026.2, которые ещё не входят в develop.
PR создан после merge #1353: I128-2785: SocketProxy отправляет внутренние HTTPS-запросы на порт 80.
Пока этот PR открыт, последующие изменения release/2026.2 входят в него автоматически. Перед merge требуется проверить полный diff и пройти обычное review.
Перенос накопленных исправлений release/2026.2 в develop с разрешением конфликтов PR #1358.
Обе исходные ветки защищены от прямого push. Отдельная ветка содержит merge текущего release/2026.2 (e402d81e4d2a59c87254ea3bd62fbd805d6bd332) в текущий develop (df8b1a8ee2d35e0cc0c5e776d64cb71f115013e4). Новые функции develop не переносятся обратно в релизную линию. Для принятия изменений используется обычное review; PR #1358 пока остается открытым.
Разрешение конфликтов:
^, в том числе после редактирования повторений через F3. Отложенная синхронизация отменяется перед сохранением.modules/he3/tests/editor_commands_smoke.js. Существующий тест журнала статистики сохраняет путь tools/PagesStatJournalSelfTest.php.Проверки:
await Irbis.he3.testEditorCommands(). Серверное сохранение подменено; пользовательские БД не изменялись.При принятии сохранить merge-коммит и родителя release/2026.2 в истории develop (merge commit или fast-forward).
После принятия этого PR нужно повторно проверить #1358: если в release не появились новые изменения, его перенос будет полностью выполнен. Автоматизация последующих переносов release → develop не изменялась.