Имя: Пароль:
1C
1С v8
Неправильно показывает отображает элементы справочника в других объектах!
, ,
0 MrKartez
 
15.07.14
16:28
Есть справочник - Номенклатура. В нем вся разбито на Две группы - Материалы и Услуги. В свою очередь они разбиваются еще на несколько. В менеджере был код, который к названию элемента справочника подставлял фразу(материал/услуга) В отчете мне не понравилось, что напротив групп она есть, захотел убрать. Вот сами обработки формирования представления:
Процедура ОбработкаПолученияПолейПредставления(Поля, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    Поля.Добавить("Наименование");
    Поля.Добавить("ВидНоменклатуры");
    Поля.Добавить("ЭтоГруппа");
КонецПроцедуры

Процедура ОбработкаПолученияПредставления(Данные, Представление, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    Если ЗначениеЗаполнено(Данные.ВидНоменклатуры) и Данные.ЭтоГруппа = Ложь Тогда
        Представление = Данные.Наименование + " ("+НРег(Данные.ВидНоменклатуры)+")";
    Иначе
        Представление = Данные.Наименование;
    КонецЕсли;
    
КонецПроцедуры


Проблема в том, что для Группы "Услуги" Значение ЭтоГруппа Стоит ЛОЖЬ!!!! В то время, как для вложенных в неё групп и элементов, которые вложены в эти группы значение стоит ИСТИНА! Что это за бред???
1 Wobland
 
15.07.14
16:29
>для Группы "Услуги" Значение ЭтоГруппа Стоит ЛОЖЬ
не для группы, а для элемента "услуги"
2 MrKartez
 
15.07.14
16:31
Там вообще нет такого элемента (1)
3 MrKartez
 
15.07.14
16:32
(1) И даже если б и был то не меняет того, что для вложенных элементов значение ЭтоГруппа тоже стоит в истине
4 Wobland
 
15.07.14
16:33
выбрать этогруппа из справочник.номенклатура где наименование подобно "%услуги%"
5 MrKartez
 
15.07.14
16:37
(4) Я не совсем понял,зачем мне тут нужно что-то выбирать

В первой обработке я так понял я формирую поля с данными, которые получаются напрямую из реквизита элемента. Просто называю поле в массиве по имени реквизита и в результате вытягиваются данные этого самого реквизита в этот массив. Наименование и ВидНоменклатуры вытягиваются верно. А вот ЭтоГруппа -  Чудит, хотя вроде реквизит стандартный, какие с него должны быть проблемы?!
6 Wobland
 
15.07.14
16:38
(5) я бы вглянул на результат запроса
7 Ymryn
 
15.07.14
16:48
(0) Я правильно понимаю, что вы считаете, что это группа, а 1С считает, что это элемент. Нам надо угадать, кто из вас двоих ошибается?
8 MrKartez
 
15.07.14
16:48
(6) Ссылка    Наименование    ЭтоГруппа    Родитель
Услуги (услуга) Услуги              Да    
Диагностика    Диагностика      Нет    Телевизоры (услуга)

Ну вот для примера
9 MrKartez
 
15.07.14
16:50
(7) Да,отладку точкой останова и он мне в переменной Данные.ЭтоГруппа для группы Услуга прям открытым текстом пишет, что это ЛОЖЬ
10 Ymryn
 
15.07.14
16:50
(9) а это точно группа? Может это элемент с аналогичным названием? Кода совпадают?
11 MrKartez
 
15.07.14
16:52
(10) Значение элемента    Тип элемента    Ключ    Значение
КлючИЗначение    КлючИЗначение    "Наименование"    "Услуги"
КлючИЗначение    КлючИЗначение    "ВидНоменклатуры"    Услуга
КлючИЗначение    КлючИЗначение    "ЭтоГруппа"    Ложь

Вот что находится в параметре Данные

Такого элемента в справочнике нет:D
12 acsent
 
15.07.14
16:52
В режиме обмена и не такое можно записать
13 Ymryn
 
15.07.14
16:55
(12) если верить СП, то
ЭтоГруппа (IsFolder)
Использование:

Только чтение.
Т.е даже режим обмена не должен позволять такую гадость.
14 MrKartez
 
16.07.14
09:01
(13) Бред какой-то. Он же возвращает мне Истина/Ложь хоть и не верно
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой