|
v7: ФормаСписка справочника: повесить две формулы на один элемент | ☑ | ||
---|---|---|---|---|
0
Zhuravlik
19.03.13
✎
09:24
|
Добрый день. Есть форма списка, в ней есть строковый реквизит, и реквизит справочника (тип "число"). В конфигураторе установлен режим редактирования "Обоими" способами.
Хочу отображать отредактированное наименование в этот строковый реквизит, и по щелчку на нем выполнять какое-либо действие (напр. открыть элемент), а по щелчку на реквизит - редактировать его в списке. С ОбработкаВыбораСтроки - не могу открывать *строку* на редактирование (т.е. редактировать реквизит в списке). Без "ОбработкаВыбораСтроки" - не получается одновременно отображать наименование в текстовом реквизите, и обрабатывать событие по щелчку на нем. Есть ли горячая клавиша для редактирования строки (ток не ентер конечно:) )? Или как это программно вызвать? |
|||
1
Zhuravlik
19.03.13
✎
09:35
|
SHIFT + ENTER - горячие клавиши, сращу не заметил в подсказке.
Как вот их еще эмулировать... |
|||
2
1Сергей
19.03.13
✎
09:38
|
Кто-нибудь понял?
|
|||
3
Масянька
19.03.13
✎
09:38
|
(2) Честно - нет.
|
|||
4
Ёпрст
19.03.13
✎
09:41
|
(0)
Процедура ПриНачалеРедактированияСтроки() Сообщить(Форма.ТекущаяКолонка()); //твои действия + СтатусВозврата(0) если надо КонецПроцедуры |
|||
5
Zhuravlik
19.03.13
✎
09:42
|
(2)(3) Нужно редактировать строку в форме списка по щелчку, с включенным "ОбработкаВыбораСтроки". Пробую эмулировать SHIFT+ENTER, но вот так:
гСервис.ЭмулироватьКлавиатуру("{SHIFT}"); гСервис.ЭмулироватьКлавиатуру("{ENTER}" ,1); Строка открывается на редактирование, и тут же на редактирование закрывается. Т.е. как будто два раза нажали энтер на реквизите формы списка. |
|||
6
Zhuravlik
19.03.13
✎
09:43
|
(4) С ОбработкаВыбораСтроки(1) - не работает.
|
|||
7
Ёпрст
19.03.13
✎
09:44
|
(6) она тебе не нужна
|
|||
8
Ёпрст
19.03.13
✎
09:46
|
если уж очень хочется, то так:
Процедура ПриВыбореСтроки() Активизировать(Форма.ТекущаяКолонка(),1); КонецПроцедуры Форма.ОбработкаВыбораСтроки(1); |
|||
9
Zhuravlik
19.03.13
✎
09:49
|
(8) Попробую, но вот так уже взлетело:
гСервис.ЭмулироватьКлавиатуру("+{ENTER}"); |
|||
10
Zhuravlik
19.03.13
✎
09:50
|
(8) Получилось) Спасибо.
|
|||
11
Zhuravlik
19.03.13
✎
10:00
|
(4) Да, так лучше. Не думал, что это работает с строковым реквизитом, у него же доступность (0).
|
|||
12
Zhuravlik
19.03.13
✎
11:21
|
А подскажите пожалуйста, как открывать форму нового элемента при инсерте, с заданием текущего родителя?
Делаю так: Процедура ПриВводеСтроки() Если Уровень() = 1 Тогда ОткрытьФорму("Элемент._ТТН_Направления",,,1); Иначе ОткрытьФорму("Элемент._ТТН_Направления",,Родитель); КонецЕсли; СтатусВозврата(0); Возврат; КонецПроцедуры Но если в текущей группе нет элементов, то значение "Родитель" - пустое. |
|||
13
Zhuravlik
19.03.13
✎
11:22
|
+ Справочник двухуровневый (может быть только один уровень групп)
|
|||
14
Ёпрст
19.03.13
✎
11:22
|
(12)
ОткрытьФорму("Элемент._ТТН_Направления",,ИспользоватьРодителя()); |
|||
15
Zhuravlik
19.03.13
✎
11:24
|
(14) Спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |