Имя: Пароль:
1C
1С v8
Проверка на группу (ошибка)
0 Kostik2013
 
21.07.13
18:18
Всем добрый день!Подскажите пожалуйста что не так,вылетает ошибка
(не кидайтесь тапками) 1С:Предприятие 8.2 (8.2.15.310) Торговля для ЧП

{Обработка.ЯТутБыл.Форма.Форма.Форма(33)}: Поле объекта не обнаружено (Родитель)Если НЕ Справочники.Номенклатура.Родитель.ЭтоГруппа () Тогда


Процедура КнопкаВыполнитьНажатие(Кнопка)
   Комментарий = Комментарий;
   
   Заполнение (Комментарий);
   
   Сообщить ("Готово!");    
КонецПроцедуры

&НаСервере
Функция Заполнение (Комментарий)
   Номенклатура = Неопределено;
   
   Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |    Номенклатура.Ссылка,
   |    Номенклатура.Родитель,
   |    Номенклатура.Наименование,
   |    Номенклатура.Комментарий
   |ИЗ
   |    Справочник.Номенклатура КАК Номенклатура";
   
   Выборка= Запрос.Выполнить().Выбрать();
   Пока Выборка.Следующий() Цикл
               
       Если НЕ Справочники.Номенклатура.Родитель.ЭтоГруппа () Тогда
            Продолжить;
       КонецЕсли;
       
           Номенклатура = Выборка.Ссылка.ПолучитьОбъект();
           Номенклатура.Комментарий = "Я тут был";
           Номенклатура.Записать();
       КонецЦикла;
   
КонецФункции
1 shuhard
 
21.07.13
18:20
(0)[Справочники.Номенклатура.Родитель.ЭтоГруппа ()]
да, такой код не допустим, ибо бессмысленен
2 Живой Ископаемый
 
21.07.13
18:20
а давайте заведем секцию "МистоОтлачик"?
3 shuhard
 
21.07.13
18:25
(2) с ботом "а шли бы все в сад" ?
4 Wobland
 
21.07.13
18:28
такие проверки отсекаются на уровне запроса у нормальных людей
5 Mitriy
 
21.07.13
18:29
"ВЫБРАТЬ
   |    Номенклатура.Ссылка,
   |    Номенклатура.Родитель,
   |    Номенклатура.Наименование,
   |    Номенклатура.Комментарий
   |ГДЕ Не Номенклатура.ЭтоГруппа
   |ИЗ
   |    Справочник.Номенклатура КАК Номенклатура";
6 Mitriy
 
21.07.13
18:29
ГДЕ ниже ИЗ...
7 Kostik2013
 
21.07.13
18:31
Так?
ГДЕ
   Номенклатура.Родитель = &Группа
8 Wobland
 
21.07.13
18:34
(7) нет
9 Kostik2013
 
21.07.13
18:55
(5) пробовал,не хочет так
10 Wobland
 
21.07.13
19:15
(9) неудачник
11 Kostik2013
 
21.07.13
19:30
(10) тебе бы только об...рать
12 Kostik2013
 
21.07.13
19:31
Все получилось!
   |ИЗ
   |    Справочник.Номенклатура КАК Номенклатура
   |Где
   |  (Номенклатура.ЭтоГруппа = ЛОЖЬ) ";
13 Wobland
 
21.07.13
19:37
(11) врёшь
14 EvgeniuXP
 
21.07.13
19:46
|  (Номенклатура.ЭтоГруппа = ЛОЖЬ) ";

только строчку замени на:

|  (НЕ Номенклатура.ЭтоГруппа) ";
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший