Нужна помощь

  • Автор темы Voldemar
  • Дата начала
V

Voldemar

Помогите пожалуйста не опытному пользователю.
Создается 3х уровневый справочник (К примеру перечень машиин)
Каталог - Производитель (Хонда, Мазда, ВАЗ);
Подкаталог - Тип кузова (седан, хетчбэк)
И наименование конкретной модели (СIVIC 5D)

Как сделать так, чтобы при заполнении журнала, в название конкретной модели не нужно было вбивать заново Производителя и Тип, Но при выборе у меня получалась полная строка : =Хонда Хетчбек CIVIC 5D. Т.Е. Названия каталога и подкаталога должны добавляться к модели при ее выборе!
Зарание благодарен всем!
 
V

vbs

ПолноеНазваниеМодели = Модель.Родитель.Родитель.Наименование+" "+Модель.Родитель.Наименование+" "+Модель.Наименование - если в справочнике ВСЕГДА 3 уровня

Зарание - слово плохое
 
V

Voldemar

Я понял, что совсем нихрена не понимаю и явно не верно поставил вопрос.Давайте, если можно по факту - ПринтСкрин прилогается.

Мы имеем:

- Поле ввода "ВидТехники" подчиненное справочнику "СписокТехники"

- В справочнике каталог "Принтер", подкаталог "SAMSUNG" и собственно конретная модель "ML-1640"

НУЖНО чтобы при выборе "ML-1640" в Поле ввода отображалось Все - "Принтер SAMSUNG ML-1640" Как мне этого добиться. если можно по подробнее!
 

Вложения

  • Untitled_1.jpg
    Untitled_1.jpg
    98,7 КБ · Просмотры: 463
V

vbs

Если речь о справочнике, добавляешь в форму списка колонку типа "текст" и для нее в закладке "дополнительно"
прописываешь :
Модель.Родитель.Родитель.Наименование+" "+Модель.Родитель.Наименование+" "+Модель.Наименование
где Модель - элемент низшего уровня справочника "СписокТехники"
по подробнее - слово плохое
 
V

vitfil

Вставлю свои 5 рубликов...
Я бы повесил колонку, для которой прописал бы функцию:
Код:
Функция ПолучитьНужноеНаименование()
Если ТекущийЭлемент().Выбран() = 0 Тогда
Возврат "";
КонецЕсли;
Если ТекущийЭлемент().ЭтоГруппа() = 1 Тогда
Возврат ТекущийЭлемент().Наименование;
КонецЕсли;
ТекЭлем = ТекущийЭлемент();
Стр = СокрЛП(ТекЭлем.Наименование);
Пока ПустоеЗначение(ТекЭлем.Родитель) = 0 Цикл
ТекЭлем = ТекЭлем.Родитель;
Стр = СокрЛП(ТекЭлем.Наименование) + " " + Стр;
КонецЦикла;
Возврат Стр;
КонецФункции

Вот что-то где-то так... И мне будет совершенно монопенисуально, на каком уровне находится элемент.
 
V

Voldemar

Может я опять что то не понимаю или не правильно объясняю. но мне нужно чтобы полноя строка была не в самом журнале, а в Документе (в поле "Вид Техники")после выбора из журнала.
 
H

Hryv

в форме документа в таблице сделай поле и заполняй как vitfil посоветовал
только надо переделать примерно так
Код:
Функция ПолучитьНужноеНаименование()
ТекЭлем = Номенклатура; // или как там реквизит в документе называется
Если ПустоеЗначение(ТекЭлем) = 1 Тогда
Возврат "";
КонецЕсли;
Стр = СокрЛП(ТекЭлем.Наименование);
Пока ПустоеЗначение(ТекЭлем.Родитель) = 0 Цикл
ТекЭлем = ТекЭлем.Родитель;
Стр = СокрЛП(ТекЭлем.Наименование) + " " + Стр;
КонецЦикла;
Возврат Стр;
КонецФункции
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!