Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Обычные формы, язык внешней обработки          
MK-61 Подменю пользователя
сообщение 08.07.22, 13:50
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 7
Спасибо сказали: 2 раз
Рейтинг: 2

Есть внешняя обработка. Написана на русском языке. Открываю её в базе, где языком пользователя выбран украинский. При таком открытии все надписи во внешней обработке становятся пустыми, т.к. не заполнены строки на украинском языке. В связи с этим есть два вопроса:
1. Возможно ли автоматически скопировать текст с надписей на русском в надписи на украинском, чтобы вручную не заполнять поля на укр. языке?
2. Возможно ли в самой обработке где-нибудь в ПриОткрытии указать, что она не мультиязычная, а одноязычная. Чтобы при открытии в базе на другом языке текст надписей все равно отображался, без необходимости дописывать все надписи на других языках?
Спасибо.

Moloko Подменю пользователя
сообщение 09.07.22, 11:07
Сообщение #2

Говорящий
***
Группа: Пользователи
Сообщений: 93
Спасибо сказали: 20 раз
Рейтинг: 18

MK-61 @ Вчера, 13:50 * ,
Конфигуратор - Правка - Редактирование текстов интерфейса. Встроенный сервис поможет вам перевести тексты форм и модулей на любой язык. Но с лёту не получится, знаю по собственному опыту.

zay Подменю пользователя
сообщение 12.07.22, 18:12
Сообщение #3

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 162
Из: Киев
Спасибо сказали: 130 раз
Рейтинг: 135.8

MK-61 @ 08.07.22, 14:50 * ,
  1. Нет
  2. И да и нет

Насколько я понял вы хотите сделать все просто, одной строкой. Как сделать одной строкой не знаю, можно написать процедуру. Обходим в цикле все элементы формы и в зависимости от типа элемента меняем заголовок
Как-то так:
Для каждого ЭлементФормы из ЭтаФорма.ЭлементыФормы Цикл

    ТипЭлемента = ТипЗнч(ЭлементФормы);

    Если (ТипЭлемента=Тип("Надпись") ИЛИ ТипЭлемента=Тип("Кнопка")) Тогда
        
        ЭлементФормы.Заголовок = НСтр("ru='"+ЭлементФормы.Заголовок+"';uk='"+ЭлементФормы.Заголовок+"'");
        
    ИначеЕсли (ТипЭлемента=Тип("КоманднаяПанель")) Тогда
    
        КоллекцияКнопокКоманднойПанели = ЭлементФормы.Кнопки;
        
        Для каждого Кнопка из КоллекцияКнопокКоманднойПанели Цикл
            
            Если Кнопка.ТипКнопки = ТипКнопкиКоманднойПанели.Действие Тогда
            
                Кнопка.Заголовок = НСтр("ru='"+Кнопка.Заголовок+"';uk='"+Кнопка.Заголовок+"'");
                
            ИначеЕсли Кнопка.ТипКнопки = ТипКнопкиКоманднойПанели.Подменю Тогда
                
                Для каждого КнопкаПоменю из Кнопка.Кнопки Цикл
                    
                    Если КнопкаПоменю.ТипКнопки = ТипКнопкиКоманднойПанели.Действие Тогда
                    
                        КнопкаПоменю.Заголовок = НСтр("ru='"+КнопкаПоменю.Заголовок+"';uk='"+КнопкаПоменю.Заголовок+"'");
                        
                    КонецЕсли;
                    
                КонецЦикла;
                
            КонецЕсли;
            
        КонецЦикла;
        
    КонецЕсли;
    
КонецЦикла;


Сообщение отредактировал zay - 12.07.22, 18:15

Спасибо сказали: pony95,

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 28.03.24, 19:35
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!