Добрый день, коллеги! Из файловой системы, переехали на сервер Linux server x86 postgresql Платфома 1С 8.3.13.1690; 8.3.13.1513 УПП для Украины 1.3.55.1. Не работает поиск по букве і в поиске контрагентов и номенклатуре, но буква є, ї работает нормально. При работе с postgresql 9.6. проблема наблюдается как на linux так и windows клиентах. При работе с файловой базой данная проблема отсутствует как на windows так и на Linux. Раньше в контейнере была версия 8.3.13.1513, локализация укр. В другом (тестовом) контейнере установлена версия 1С 8.3.13.1690, postgresql 13 - ошибка осталась та же. При выгрузке базы на локальный ПК - все работает как в Linux так и Windows. Просьба помочь!
PS. Windows Server не предлагать!
MSs @ 30.10.21, 15:18
, подозреваю, что локально Линукс не совсем такой же, что на сервере. Даже не в плане версии, а в плане настроек. Может в операционной системе в контейнере не хватает какого-то пакета локализации. Или в Постгре не хватает какого-то языка или настройки не такие. Я бы в первую очередь сравнил настройки Постгре.
Vofka @ 01.11.21, 11:03
,
Спасибо за наводку. Запустили в отдельном контейнере, поставили 1С, развернули УПП 1.3.55.1, создали новую базу. Там поиск по букве і, и других работает. то есть с локализацией все хорошо. Заливаем из dt нашу рабочую - нет. Как ее пролечить?
MSs, гляньте что в пункте 2 https://pro1c.org.ua/index.php?s=&showtopic=7439&view=findpost&p=50570 написано. Может попробуйте там поставить русский (Украина) или что-то, где бы был намек на нашу локализацию.
Проверьте локализацию PosrgreSQL
SELECT name, setting, context FROM pg_settings WHERE name LIKE 'lc%';
Если lc_collate отличеется от uk_UA.UTF8
Нужно переиницилизировать кластер баз данных удалив предварительно существующий
#su - postgres
#initdb --locale = uk_UA.UTF8 --encoding = UTF8 /path/to_your/data/
Документация по initdb
https://pro1c.org.ua/redirect.php?https://www.postgresql.org/docs/13/app-initdb.html
Спасибо за ответы! Проверяли, все, что написали, и даже больше - толку 0. Резвернули базу на виртуальной винде - все работает.
Создали новую, чисткую базу, конф 1.3.55.1 - все работает. Выгружаем в контейнер dt существующей базы - ситуация та же. Буква і не тянет из подбора.
Что удалось выяснить:
-dt рабочая
-платформа рабочая
-локаль рабочая
-старая конфигурация 1.3.55.1 не рабочая!
Теперь вопрос: что еще можно сделать?
ПС: обновления конфы не помогают.
MSs @ 14.11.21, 19:23
,
1. Если сверить по КодСимвола, один и тот же символ ищите (на всякий случай спрашиваю)? Проверьте кодом, прям вставьте проверку при обработке поиска.
2. У самого на фирме связка Linux+Postgre, релизы платформы и postgreSQL повыше, у меня ищется по "i".
Предположения:
Когда на файловой Вы работаете не ощущается разница региональных настроек, т.к. не задействуется Postgre, у которого свои рег. настройки.
Т.е. на виндовых машинах, на которых ,я подозреваю, работают пользователи и соответственно запускается поиск установлены одни региональные настройки а на Postgre другие.
При загрузке из дт-а из файловой в postgre "i" (украинская) могла конвертануться в "i" (английскую), на "ї" такое не сработает.
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua