Имя: Пароль:
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) Стандартные реквизиты вполне себе доступны. Для реквизитов нужно поставить галочки в настройке динамического списка в колонке "использовать всегда" (вроде так колонка называется) иначе они доступны только, когда колонки видны на экране (вроде так).
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн