Имя: Пароль:
1C
1C 7.7
v7: Как узнать форму элемента? (1С 7.7) ☑
0 zaklana
 
15.09.14
✎
17:01
В глобальную предопределенную процедуру передается элемент спр-ка из формы списка. Как узнать форму списка справочника? Нужно ее обновить непосредственно из процедуры. Форм списка много. Из всех может вызываться эта глобальная процедура.
1 welwel
 
15.09.14
✎
17:02
Передавать контекст при вызове глоб. процедуры
2 lavalit
 
15.09.14
✎
17:16
(0) А зачем обновлять форму списка, когда список обновляется автоматически, когда если появился новый элемент справочника?
3 zaklana
 
15.09.14
✎
17:17
В том-то и дело, что не обновляется
4 lavalit
 
15.09.14
✎
17:17
какая конфига?
5 zaklana
 
15.09.14
✎
17:19
Контекст тоже не могу передать, так как процедура предопределенная, вызывается сама, ПриУдаленииЭлемента(Элем, Режим)
6 Fedor-1971
 
15.09.14
✎
17:20
(5) а как же ты вызываешь процедуру из глобального модуля?
7 zaklana
 
15.09.14
✎
17:20
я отменяю ее действие, чтобы не помечались подчиненные элементы справочника, вставляю свое удаление владельца, но пометка не появляется пока не обновится форма
8 zaklana
 
15.09.14
✎
17:20
пользователи будут недоумевать
9 zaklana
 
15.09.14
✎
17:21
(6)  сама вызывается
10 lavalit
 
15.09.14
✎
17:21
Режим какой? Если 1 то непосредственное удаление, что не несть хорошо, а если 0 то пометка на удаление. Что в Вашем случае?
11 zaklana
 
15.09.14
✎
17:22
(4) конфигурация Торговля и склад 7.7
12 zaklana
 
15.09.14
✎
17:23
(10) пометка
13 Fedor-1971
 
15.09.14
✎
17:27
(9) что значит сама? где-то же есть вызов процедуры глобального модуля из данной формы, соответственно туда-же и возвращаемся из глоб.модуля. Не хочешь менять процедуру в глобальном модуле, добавь обновление формы сразу после вызова оной.
14 zaklana
 
15.09.14
✎
17:32
(13) процедура предопределенная, ее не вызывают обычно, она на событие реагирует.
15 lavalit
 
15.09.14
✎
17:32
А изначально откуда удаляете элемент? из самого списка? или это какая то обработка?
16 akaBrr
 
15.09.14
✎
17:33
(14)сколько проходит времени между нажатием кнопки и появлением пометки в списке?
17 lavalit
 
15.09.14
✎
17:34
(16) практически сразу
18 zaklana
 
15.09.14
✎
17:34
(15) из формы списка справочника Номенклатура кнопочкой "Delete". Таких форм много. Из любой можно удалить элемент.
19 lavalit
 
15.09.14
✎
17:36
попробуйте
Форма.Обновить();
20 lavalit
 
15.09.14
✎
17:36
Обновится текущая форма
21 zaklana
 
15.09.14
✎
17:36
Мне нужно, чтобы появилась или исчезла визуальная пометка удаления - "крестик". Такое происходит, но только после обновления  формы списка.
22 zaklana
 
15.09.14
✎
17:38
(19) попробую конечно, но по-моему будет ошибка
23 zaklana
 
15.09.14
✎
17:39
(19) Форма<<?>>.Обновить();
{Глобальный модуль(10317)}: Переменная не определена (Форма)
24 lavalit
 
15.09.14
✎
17:40
не в глобальном, а в текущем
25 mastodont
 
15.09.14
✎
17:42
(3) (21) может стоит разобраться почему не появляется пометка удаления, хотя должна?
26 zaklana
 
15.09.14
✎
17:43
(24) а где там? там нет реакции на это событие
27 zaklana
 
15.09.14
✎
17:44
(25) это ясно, потому, что в ПриУдаленииЭлемента(Элем, Режим) СтатусВозврата(0) и действие ее отменяется
28 Ёпрст
 
гуру
15.09.14
✎
17:47
(0) если нет религиозных убеждений против вк, то всё можно сделать с помощью формекса
29 lavalit
 
15.09.14
✎
17:47
Ну да.... локально нет... то бишь надо отловить нажатие кнопы "дел"
30 palpetrovich
 
15.09.14
✎
17:48
(7) я не очень понял, надо что-бы владелец удалился, а  подчиненные элементы остались?
31 VladZ
 
15.09.14
✎
17:49
(0) Чо?
32 zaklana
 
15.09.14
✎
17:50
(30) да, пометился на удаление
33 mastodont
 
15.09.14
✎
17:51
(27) можешь поподробнее рассказать?
Ты возвращаешь 0. т.е элемент не удалился. но ты программно что-то там удаляешь и результат виден в форме только после обновления. так?
34 zaklana
 
15.09.14
✎
17:52
(33) Да
35 mastodont
 
15.09.14
✎
17:53
(34) тогда приведи код. может что и придумаем.
36 palpetrovich
 
15.09.14
✎
17:53
(34) а что "да"? если "элемент не удалился" какую метку на нем ты хочешь увидеть?
37 mastodont
 
15.09.14
✎
17:54
(36) он же в (7) объяснил
38 palpetrovich
 
15.09.14
✎
17:56
(37) я как раз  смысл (7) и не понимаю. Зачем такое? ...навредить?
39 Ёпрст
 
гуру
15.09.14
✎
17:56
(7) ну-ну.. подчиненные всё равно пометятся при этом..
40 Ёпрст
 
гуру
15.09.14
✎
17:56
всегда
41 Ёпрст
 
гуру
15.09.14
✎
17:57
так что, всё в топку.
42 akaBrr
 
15.09.14
✎
17:58
Вообще в (7) логика странная, помечать владельца если помечается подчиненный элемент, но сам подчиненный не помечать, но пометку показать. Бред.
43 mastodont
 
15.09.14
✎
18:00
(42) извини, но кажется ты что-то придумал. там в (7) такого не написано...
44 lavalit
 
15.09.14
✎
18:01
Ну вот может быть как вариант.. не использовать СтатусВозврата() который все ипортит, а пометить уж как пометится со всеми подчиненными, а потом перебрать все подчиненные и снять с них пометку... тогда все "хозяева" останутся с пометками... Хотя конечно, удалить такой элемент по любому не получится .. система не дасть...
45 mastodont
 
15.09.14
✎
18:01
(42) он хочет пометить группу, но не помечать подчиненные элементы.
Зачем - это уже другой вопрос.
46 lavalit
 
15.09.14
✎
18:02
(45) не группу а Элемент справочника но без подчиненных элементов
47 mastodont
 
15.09.14
✎
18:02
(44) это зло. например, какой-то из подчиненных был помече до этого...
48 lavalit
 
15.09.14
✎
18:02
(47) ))) про это не говорили)))
49 lavalit
 
15.09.14
✎
18:04
(47) тогда приждется делатьмассив исмотреть что было что не было помечено))) ну и далее решать что с этим делать дальше... Да уж иногда простенькое желание тянет за собой много телодвижений))))
50 Ёпрст
 
гуру
15.09.14
✎
18:05
(7) >>>>чтобы не помечались подчиненные элементы справочника, вставляю свое удаление владельца,

при программной установке пометки на удаления элемента владельца. автоматом поставится пометка на все подчиненные элементы..
если че.
51 mastodont
 
15.09.14
✎
18:06
(49) во-во. только с опытом приходит понимание того, про что забыли сказать...
52 lavalit
 
15.09.14
✎
18:11
Да... жестокая тема.. на первый взгляд совершенно бессмысленная убить владельца оставив при этом иждивенцев... скорее всего автор недоговаривает зачем это надо... какой такой тайный смысл в этом... И может случится так, что решение лежит совсем в другой области....
53 lavalit
 
15.09.14
✎
18:14
Если есть формекс то может попробовать отловить нажматие кнопы "дел" и дальше уж чего нибудь замутить... на крайняк там есть доступ к контексту и лежит оно в глобальнике
ПриНажатииКнопкиКлавиатуры(Конт,Код,Alt,Shift,Ctrl,Символ,ФСО)
54 lavalit
 
15.09.14
✎
18:16
Синтаксис:
Процедура ПриНажатииКнопкиКлавиатуры(<Контекст>,<КодКлавиши>,<Alt>,<Shift>,<Ctrl>,<Символ>,<ФСО>)
КонецПроцедуры
Назначение:
Предопределенная процедура при нажатии кнопки клавиатуры.
Пареметры:
<Контекст> - контекст формы
<КодКлавиши> - код нажатой кнопки клавиатуры.
<Alt> - флаг нажатия кнопки <Alt>.
<Shift> - флаг нажатия кнопки <Shift>.
<Ctrl> - флаг нажатия кнопки <Ctrl>.
<Символ> - символ нажатой кнопки в формате ASCII.
<ФСО> - флаг стандартной обработки. Изначально равен 1. Если в теле процедуры сбросить
значение в 0, то стандартная обработка события не вызывается.
Пример:
Процедура ПриНажатииКнопкиКлавиатуры(конт, код, _а, _ш, _к)
        Предупреждение(Нажата кнопка клавиатуры.);
КонецПроцедуры
ФСО ставить в 0 и Тогда глобальная ПриУдаленииЭлемента() вообще не запустится
55 lavalit
 
15.09.14
✎
18:16
НУ эт не как готовое решение а как мысль))