tormozit / RDT1C

Подсистема "Инструменты разработчика" для платформы 1С 8
http://devtool1c.ucoz.ru
88 stars 9 forks source link

Поддержка украинского языка системы #439

Closed marv-ua closed 1 year ago

marv-ua commented 1 year ago

Сейчас если клиент запущен с языком системы ua - многие функции не работают. Да пишется предупреждение что язык системы не русский и не английский и некоторые функции не будут работать, но было бы удобно если украинский тоже поддерживался. С чем связано такое ограничение?

tormozit commented 1 year ago

Нужно подробнее описать проблему. В какой момент и какое конкретно сообщение выводится? Нужна техническая информация. В документации подсистемы заявлена поддержка украинского языка только интерфейса конфигурации.
Языки системы поддерживаются полностью только русский и английский. Что опять же в документации описано. Но вроде бы и на других языках подавляющее большинство функций будет работать. Полной поддержки этих языков нет, т.к. тестировать на них мне сложно в виду отсутствия понимания этих языков.

marv-ua commented 1 year ago

Тех информация: Платформа: 8.3.19.1529 Режим БД: клиент-серверный Конфигурация. Название: Business automation software for accounting (2.1.16.1) Конфигурация. Основной режим запуска: Керована прикладна програма Конфигурация. Вариант встроенного языка: Русский Конфигурация. Режим управления блокировкой данных: Управляемый Конфигурация. Режим совместимости: Версия8_3_12 Конфигурация. Режим использования синхронных вызовов: Использовать Конфигурация. Версия БСП: 300 Инструменты разработчика. Версия: Расширение 6.73.1e Инструменты разработчика. Инструмент: Прочее Инструменты разработчика. Перехват клавиатурного ввода: Ні Инструменты разработчика. Объекты на сервере: Так Инструменты разработчика. Асинхронность запрещена: Ні Инструменты разработчика. Разрешены имитаторы: Так Расширения. HF () Расширения. МониторингОбменаБСП (21.01.06) Расширения. БлокировкаУдобнее (1.2) Расширения. ЗапуститьСеансПользователя (2.0) Расширения. ИнструментыРазработчикаTormozit (6.73.1e) Клиент. Приложение: Звичайна прикладна програма 64б Клиент. Проверка модальных вызовов: Ні Клиент. Язык интерфейса конфигурации: ru Клиент. Язык интерфейса системы: uk Клиент. Отладка разрешена: Ні Клиент. Постоянный кэш метаданных: Так Клиент. ОС: Майкрософт Windows Server 2019 Standard 64-разрядная Русский Клиент. ОС от имени администратора: Ні Клиент. ОС выполнение BAT: Так Клиент. ОС Текущая кодовая страница: 866 Клиент. ОС пинг сервера: 0мс Сервер. ОС: Майкрософт Windows Server 2019 Standard 64-bit Русский Сервер. Процесс: 64б Сервер. Отладка: tcp

При старте системы в сообщениях: Язык системы сеанса 1С (параметр /L) не является русским или английским. Корректная работа подсистемы "Инструменты разработчика" невозможна

при запуске почти любого инструмента в сообщениях: В модуле "Обработка.ирПлатформа.Форма.ОПодсистеме" обработчик события "ВнешнееСобытие" не является экспортным В модуле "Обработка.ирПлатформа.Форма.ОПодсистеме" обработчик события "ОбработкаОповещения" не является экспортным

на что влияет: в некоторых инструментах не работают функции: замечал в "обработке объектов", при сохранении табличного документа. Пример: при запуске инструмента "Подбор и обработка объекта" image произвольный алгоритм: image подробно: У формы {Обработка.ирПодборИОбработкаОбъектов.Форма.ПроизвольныйАлгоритм(1)} не обнаружен экспортный метод ВыполнитьОбработкуЗавершение {ИнструментыРазработчикаTormozit ОбщийМодуль.ирКлиент.Модуль(14834)}: ВызватьИсключение "У формы " + СсылкаНаМодульКонфигурацииЛкс(СлужебныеДанные.ИмяФормы) + " не обнаружен экспортный метод " + ОписаниеЗадания.ОбработчикЗавершения; {ИнструментыРазработчикаTormozit ОбщийМодуль.ирОбщий.Модуль(21539)}: Результат = ирКлиент.ЗапуститьИлиОтменитьФоновоеЗаданиеФормыЛкс(ЭтаФормаИлиОбработка, ОписаниеЗадания, Перезапустить, ОшибкаСериализации); {ИнструментыРазработчикаTormozit Обработка.ирПодборИОбработкаОбъектов.МодульОбъекта(67)}: РезультатЗадания = ирОбщий.ВыполнитьЗаданиеФормыЛкс("ВыполнитьГрупповуюОбработку", ПараметрыЗадания, ФормаОбработки, "ОбработкаОбъектов", "Обработка объектов " + ПараметрыЗадания.ИмяОбработки, {ИнструментыРазработчикаTormozit Обработка.ирПодборИОбработкаОбъектов.Форма.ПроизвольныйАлгоритм.Форма(268)}: ВыполнитьЗаданиеГрупповойОбработки(ЭтаФорма, Кнопка); {ИнструментыРазработчикаTormozit Обработка.ирПодборИОбработкаОбъектов.Форма.ПроизвольныйАлгоритм.Форма(236)}: вВыполнитьОбработку(Кнопка);

tormozit commented 1 year ago

Выполни на украинском языке системы код Справочники.ТипВсеСсылки(1); и сообщи текст ошибки. Аналогично нужен текст ошибки для Метаданные.HTTPСервисы = 1;

tormozit commented 1 year ago

Создал задачу на улучшение поддержки украинского языка системы https://www.hostedredmine.com/issues/962873 . Тексты ошибок уже подсказали в украинском чате.

79vlad commented 1 year ago

Привет По украинской локализации ИР, поделюсь основными траблами, когда на сервере 1С, платформа установлена с основным языком "Украинский": При обращении по литералам, платформа ожидает литерал именно на украинском языке. Пример, для понимания, на что необходимо обратить внимание: "ДовідникПосилання" <> "СправочникСсылка" (все проверки на типы значений); "ТаблицяЗначень" <> "ТаблицаЗначений" (на этом явно споткнется в консоле запросов при установке значений параметров запроса); Обращения к событиям - это уже описали выше

Ранее (в фоновых заданиях, которые отрабатывают "на сервере"), спотыкался на проверке булево: "Хибність" <> "Ложь" (Это был первый опыт (ещё в 2013-м), когда админ установил сервер в украинской локализации и у нас все обмены упали, долго не могли понять в чем трабла, т.к. при ручном запуске с рабочего места прогера - все работало, а в фоновом - крошилось)

tormozit commented 1 year ago

@79vlad нужен более конкретный пример ошибки с именами типов. Возможно ты путаешь представления типов, которые действительно выводятся на языке системы, и имена типов, которые вводятся и отображаются (в отладчике) на русском или английском языках в зависимости от варианта встроенного языка.

tormozit commented 1 year ago

Реализовано в 6.74

marv-ua commented 1 year ago

Платформа: 8.3.19.1529 Режим БД: файловый Конфигурация. Название: МММ сервис (23.04.27.002) Конфигурация. Основной режим запуска: Керована прикладна програма Конфигурация. Вариант встроенного языка: Русский Конфигурация. Режим управления блокировкой данных: Управляемый Конфигурация. Режим совместимости: Версия8_3_17 Конфигурация. Режим использования синхронных вызовов: Использовать Конфигурация. Версия БСП: 301 Конфигурация. Использовать обычные формы в управляемом приложении: Ні Инструменты разработчика. Версия: Расширение 6.74.1e Инструменты разработчика. Инструмент: Прочее Инструменты разработчика. Перехват клавиатурного ввода: Так Инструменты разработчика. Объекты на сервере: Так Инструменты разработчика. Асинхронность запрещена: Ні Инструменты разработчика. Разрешены имитаторы: Так Расширения. ИнструментыРазработчикаTormozit (6.74.1e) Расширения. InfostartToolkitPROF (2023.1.04) Клиент. Приложение: Керована прикладна програма 64б Клиент. Проверка модальных вызовов: Ні Клиент. Язык интерфейса конфигурации: ru Клиент. Язык интерфейса системы: uk Клиент. Отладка разрешена: Так Клиент. Постоянный кэш метаданных: Так Клиент. ОС: Майкрософт Windows 11 Pro 64-разрядная Русский Клиент. ОС от имени администратора: Ні Клиент. ОС выполнение BAT: Так Клиент. ОС ╥хъє∙р  ъюфютр  ёЄЁрэшЎр: 866

в редакторе объекта БД выбираю Таблицу РС (любой) - получаю ошибку. image

image как будто бесконечная рекурсия

tormozit commented 1 year ago

Удалил твое сообщение с текстами ошибок, т.к. оно высокое и тексты я уже получил в украинском чате, о чем писал выше. Проверь успешность операций

  1. Выполнить код "ф=1" в консоли кода через фоновое задание
  2. Вычисли в консоли кода ирКэш.ТаблицаВсехТаблицБДЛкс()

Установи точку останова на начале метода ирОбщий.ОбъектБДПоКлючуЛкс и повтори выбор таблицы регистра сведений в редакторе объекта БД. Нажимай F5 пока не увидишь в стеке цикл вызовов, либо программа аварийно завершится. Если увидишь цикл, то покажи его.

marv-ua commented 1 year ago
  1. Выполнить код "ф=1" в консоли кода через фоновое задание

без ошибок

2. ирКэш.ТаблицаВсехТаблицБДЛкс()

без ошибок

image

marv-ua commented 1 year ago

справедливости ради: с /L ru тоже самое база фаловая

marv-ua commented 1 year ago

документы, справочники - все ок прошелся по всем объектам которые есть в конфиге - все ок кроме регистров сведений

tormozit commented 1 year ago

с /L ru тоже самое

В таком случае сделай отдельную заявку и обязательно укажи техническую информацию, чтобы не превращать эту в свалку.

tormozit commented 1 year ago

Получается в целом все работает?

marv-ua commented 1 year ago

Да, не натыкался на ошибки. Закрываю, в случае чего будем в общем порядке регистрировать ошибки