Имя: Пароль:
1C
1С v8
Как обратиться к реквизиту ЭтоГруппа из формы списка справочника?
0 qubasesx
 
18.06.13
14:22
Есть справочник Номенклатура, иерархия групп и элементов. Для него создана стандартная форма списка. Как сделать так, чтоб в пользовательском режиме при выборе очередного элемента выводилось сообщение, является ли этот элемент группой или элементом.
Дочитался=додумался только до этого:
1 –  поставил галочку   http://pikucha.ru/ibAGu
2 –  в модуле формы написал процедуру

&НаСервере
Процедура СписокПриАктивизацииСтроки(Элемент)
   Если Справочники.Номенклатура.ЭтоГруппа() = 1 Тогда Сообщить("");
   КонецЕсли
КонецПроцедуры

Как быть?
1 Волшебник
 
18.06.13
14:24
Используй событие Выбор у табличного поля
2 zak555
 
18.06.13
14:24
Объект.ЭтоГруппа
3 palpetrovich
 
18.06.13
14:25
"при выборе очередного элемента выводилось сообщение" - не побъют? :)
4 Базис
 
naïve
18.06.13
14:30
Вместо
  &НаСервере

пиши сразу
  &ГромкоДоложитьСерверу
5 MSII
 
18.06.13
14:31
(0) Сообщить("Это что, группа что-ли? " + Элементы.Список.ТекущиеДанные.ЭтоГруппа);
6 qubasesx
 
18.06.13
14:38
1  результата нет

2  попробовал
Объект.ЭтоГруппа
Объект.Номенклатура.ЭтоГруппа
Объект.Номенклатура.ТекущиеДанные.ЭтоГруппа
Объект.Номенклатура.ТекущаяСтрока.ЭтоГруппа

вообще ошибку выдаёт

3  отобьюсь

4  громко - понятие относительное
Доступность:
Сервер, толстый клиент, внешнее соединение

5  не пашет

Элементы.Список.ТекущиеДанные.ЭтоГруппа
7 qubasesx
 
18.06.13
14:44
товарищи, неужели никто не знает ответа? вроде вопрос-то простой.
8 НЕА123
 
18.06.13
14:45
(6)
выставь галку Использовать всегда у ЭтоГруппа у объекта.
9 qubasesx
 
18.06.13
14:48
8 - галка с самого начала была выставлена
10 Базис
 
naïve
18.06.13
14:49
Намекну ещё раз, что Сообщить() плохо работает на сервере. Быстро, но плохо.
11 qubasesx
 
18.06.13
14:51
радует, что ты не только юморист. ща попробую
12 MSII
 
18.06.13
14:51
(6) Не пашет трактор. В каком событии вызываешь код из (5), какая возникает ошибка?
13 qubasesx
 
18.06.13
14:53
(10) туплю. сообщить работает безотказно, а вот предупреждение работать не хочет

а ЭтоГруппа хочет работать только на сервере

так что твои намёки пока невдомёк
14 qubasesx
 
18.06.13
14:55
(12) СписокПриАктивизацииСтроки - то событие которое нужно, а ошибки не возникает, просто ничего не происходит
15 qubasesx
 
18.06.13
14:56
(12) так же как и Справочники.Номенклатура.ЭтоГруппа() = 1 ничего не происходит
16 MSII
 
18.06.13
14:58
(14) Код выглядит вот так?
&НаКлиенте
Процедура СписокПриАктивизацииСтроки(Элемент)
   Сообщить("Это группа? " + Элементы.Список.ТекущиеДанные.ЭтоГруппа);
   
КонецПроцедуры
17 qubasesx
 
18.06.13
15:07
MSII, твоя строчка работает, это я балда не убрал после неё скобки. Большое спасибо!
18 kosts
 
18.06.13
15:07
(15) >> Если Справочники.Номенклатура.ЭтоГруппа() = 1  Тогда <<
Где же оно будет работать, я например насчитал 3 ошибки...
19 qubasesx
 
18.06.13
15:08
(18) а компилятор ни одной ;) в чем ошибки?
20 kosts
 
18.06.13
15:13
- Метода ЭтоГруппа() нет, есть свойство ЭтоГруппа
- Свойство ЭтоГруппа возвращает тип булево, а не числовой.
- У менеджера справочника "Справочники.Номенклатура" нет ни метода ЭтоГруппа(), ни свойства ЭтоГруппа. (Есть такое свойство у ссылки и объекта справочника)...
21 kosts
 
18.06.13
15:14
(19) Компилятор 1С так глубоко не проверяет.
22 zladenuw
 
18.06.13
15:24
(20) ну вообще проверка булево работает и на 1 и 0. так что не ври
23 qubasesx
 
18.06.13
15:29
(20) - согласен
- пробовал и так и так, и безрезультатно
- спасибо, буду знать. синтакс-помощник по ЭтоГруппа ничего интересного не выдал, ещё и написал что выполняется на сервере. как я могу сам узнавать, имеется ли свойство у того или иного объекта, и в особенности - у менеджера
24 НЕА123
 
18.06.13
16:42
(23)
>синтакс-помощник по ЭтоГруппа ничего интересного не выдал

как это?
в СП не сказано что свойство элемента справочника и тип булево?

>ещё и написал что выполняется на сервере

Элементы.Список.ТекущиеДанные.Ссылка.ЭтоГруппа
где оно должно выполняться? на клиенте?
25 qubasesx
 
18.06.13
16:57
(24) > в СП не сказано что свойство элемента справочника и тип булево?

ну прямым текстом нет, но твой пендаль немного прояснил ситуацию

> Элементы.Список.ТекущиеДанные.Ссылка.ЭтоГруппа

очень сомневался, что к ЭтоГруппа можно обратиться через Элементы. Ведь я так понимаю Элементы это имеется ввиду элементы формы, а стандартные реквизиты там не присутствуют, поэтому я пытался через объекты или справочники. я вообще ещё слишком категориями delphi мыслю, там всё как-то логичнее

> где оно должно выполняться? на клиенте?

вот даже не представляю, как додуматься до ответа, как это определить. в СП подсказки есть или ещё где?
26 НЕА123
 
18.06.13
17:19
(25)
>Элементы это имеется ввиду элементы формы, а стандартные реквизиты там не присутствуют

да, все это не очевидно. но на какой строке курсор стоит - знает только элемент формы.

>вот даже не представляю, как додуматься до ответа, как это определить. в СП подсказки есть или ещё где?

тоже да, все не совсем понятно. на клиенте есть доступ к полям первого уровня. но это тоже, так, полу условно что-ли.
ПС
а вообще мыслишь адекватно.
27 kosts
 
18.06.13
18:03
(25) Стандартные реквизиты вполне себе доступны. Для реквизитов нужно поставить галочки в настройке динамического списка в колонке "использовать всегда" (вроде так колонка называется) иначе они доступны только, когда колонки видны на экране (вроде так).
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.