Коллеги, вопрос родился неожиданно :(

Есть переписанный Документооборот рус+ анг, и вроде не было проблем, всех устраивало решение на 2-х языках. Но, как обычно Заказчик любит преподносить сюрпризы.

Напомню рус/анг наименование объекта в Документообороте реализовано так:

```1c
    Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;
    Для каждого КлючИЗнач из Данные Цикл
    Представление = КлючИЗнач.Значение;
    КонецЦикла;

    ра_ОбщегоНазначения.ОбработатьПустоеПредставление(Представление);

    КонецПроцедуры

    Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;
    Если ТекущийЯзык() = Метаданные.Языки.Английский Тогда
    Поля.Добавить("NaimenovanieEn");
    Иначе
    Поля.Добавить("Наименование");
    КонецЕсли;

    КонецПроцедуры
```

Как видно определяется по выбранному текущему языку.

Заказчик хочет ещё вносить данные по другому критерию, типа 3 наименования на АНГЛИЙСКОМ на разные зависящие от критерия типа МЕСТОПОЛОЖЕНИЕ / ПРЕДПРИЯТИЕ / ПРОЕКТ, т.е. некоторое подобие "диалектов".

Если кто-то реализовывал, подкиньте идей. Самое главное что это должно отрабатывать в форме списка, а в каждой строке списка может быть своё значения реквизита для определения "диалекта".

ЗЫ: Уточнение, остался пока один реквизит из трёх, как пример: орг1 - Table, орг2 - Desk, орг3 - Platen.
---
Шайтанама :)

Решение есть таки:

ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)

Описание:
Возникает на сервере перед стандартным формированием списка при вводе по строке, автоподборе текста и быстром выборе, а также при выполнении метода ПолучитьДанныеВыбора.
---
ну как видится...
1. самое быстрое и простое решение - уже есть процедура ОбработкаПолученияПолейПредставления() и в ней отключена СтандартнаяОбработка - добавляете туда новые условия и возможно получится желаемое
2. не самое быстрое, но может быть правильное решение - завести регистр соответствий реквизитов и "диалектов" в зависимости от условия и определять нужный "диалект" по нему

ЗЫ не претендует на варианты к исполнению, т.к. с такими задачами не сталкивался и это просто мысли вслух...
---
2. не самое быстрое, но может быть правильное решение - завести регистр соответствий реквизитов и "диалектов" в зависимости от условия и определять нужный "диалект" по нему - реализовано

1. самое быстрое и простое решение - уже есть процедура ОбработкаПолученияПолейПредставления() и в ней отключена СтандартнаяОбработка - добавляете туда новые условия и возможно получится желаемое -
                    а. не смог передать поле с ключём в ОбработкаПолученияПредставления, Данные имеют тип строка.
                    б. тк данные в регистре, не могу установить полем представления в функции ОбработкаПолученияПолейПредставления, возможно надо создавать табличные части объектов
---
а) в ОбработкаПолученияПредставления() в Данные можно передавать структуру, что позволит и имя поля передать и ключ
б) тут мало вводных, чтобы что-то посоветовать, возможно и стоит создавать реквизиты
---
Пятница :(
У меня уже "мозг за разум зашёл".

Буду писать с самого начала, может у самого что прояснится в башке :)

1. Есть документ ПриходМатериалов, в котором указана организация Получатель - она же ключ.
2. При подборе материала в списке выбора НЕОБХОДИМО отразить наименование "диалект" на основании ключа. Можно принять в каждом документе только одна номенклатура.
3. Отчет по поступлениям (СКД), построенный по документам поступления должен отображать номенклатуру в отчете с учетом "диалекта" на основании ключа. Получается, что для каждой строки может быть свой ключ.

ВОПРОСЫ
1. Могу ли я добавить в ОбработкуПолученияПолейПредставления поле которого нет в справочнике Номенклатура, или его нужно обязательно создать?
2. Каким образом можно заполнить передаваемые данные из другого объекта? И вообще возможно ли это?
---
1. нельзя, действие применимо к объекту или ссылке, значит поле должно быть у объекта
2. через регистр соответствий, я не сильно понял тему, но могу предположить такую структуру ОбъектВладелец-КлючСвязи-ПредставлениеВДиалекте
---
а что мешает создать столько элементов в справочнике, сколько языков использовалось и настроить соответствия через регистр сведений, это же проще...
---
Отчеты по обеспечению материалами :(
---
а если в лоб и по тупому?
в справочник внести столько наименований, сколько нужно отображений на разных языках и тупо отображать нужный реквизит, как при подборе, так и в отчетах и документах
---
не только наименования, характеристики, перечисления и т.п.
Проще же сделать риб на другом языке с той же конфигурацией и описать соответствия элементов при загрузке одноразово.
---
К сожалению не проще, стоимость поддержки резко возрастает.
Учитывая наличие системы НСИ, где собственно и админится Номенклатура, и удаленный доступ на web интерфейс самой системы, риб как-то оченно сложно будет сопровождать.
---
Хотя топик о документообороте, но во многих типовых есть единицы измерения и аналоги, которыми мало кто пользуется по той же причине.
---
Шайтанама :)

Решение есть таки:

ОбработкаПолученияДанныхВыбора(ДанныеВыбора, Параметры, СтандартнаяОбработка)

Описание:
Возникает на сервере перед стандартным формированием списка при вводе по строке, автоподборе текста и быстром выборе, а также при выполнении метода ПолучитьДанныеВыбора.