|
Есть отсортированный динамический список справочника | ☑ | ||
---|---|---|---|---|
0
Гений 1С
гуру
11.05.21
✎
15:00
|
Как сделать, чтобы при изменении строки курсор перескакивал на следующую, а не оставался на текущей строке?
|
|||
1
Малыш Джон
11.05.21
✎
15:13
|
(0) Спозиционировать, не?
|
|||
2
Kassern
11.05.21
✎
15:15
|
(0) Элементы.ДС.ТекущаяСтрока=НужнаяСтрока
|
|||
3
Kassern
11.05.21
✎
15:16
|
(2) не знаю на счет динамического, но в обычно таблице такая тема работает
|
|||
4
Гений 1С
гуру
11.05.21
✎
15:44
|
(2) а как определить следующую строку?
|
|||
5
pechkin
11.05.21
✎
15:50
|
(3) в обычной таблице нужно идентификатор передавать, а не индекс
|
|||
6
Kassern
11.05.21
✎
15:55
|
(5) я в общих чертах расписал как спозиционироваться на нужной строке, какой там тип проще в СП глянуть. Давно этим не занимался.
(4) Запомнить идентификатор текущей строки и добавить к нему +1. Скорее всего так |
|||
7
pechkin
11.05.21
✎
15:56
|
(6) в дин списках нет идентификаторов
|
|||
8
Kassern
11.05.21
✎
16:18
|
(7) ну да ну да, а вы пробовали формировать динамический список произвольным запросом без указания основной таблицы? В этом случае решение будет очень простым: ТекущаяСтрока это будет число. Можно спокойно сделать +1 и присвоить текущей строке и будет вам следующая строка.
|
|||
9
RomanYS
11.05.21
✎
16:23
|
(8) Идентификаторы не обязаны идти по порядку. Они же должны сохраняться на время жизни формы
|
|||
10
BIP1
11.05.21
✎
17:17
|
(0) Через ПолучитьИсполняемуюСхемуКомпоновкиДанных() не вариант? Получаем ТЗ с данными текущего списка и, зная ссылку на элемент Элементы.Список.ТекущаяСтрока, получить следующую в ТЗ? Всё это &НаСервере, а не &НаКлиенте..
|
|||
11
mistеr
11.05.21
✎
17:38
|
(0) Слушай, ты в своем ламерстве опускаешься уже ниже плинтуса. Тебе даже лень внятно сформулировать название темы и вопрос. Совсем коллег не уважаешь. Не думал, что состоявшийся программист в то же время может быть ламером, однако вот.
По теме сказать нечего, извини, т.к. не понял постановку задачи. Что значит "при изменении строки"? |
|||
12
Fragster
гуру
11.05.21
✎
17:39
|
(4) может поможет https://infostart.ru/1c/articles/559370/
|
|||
13
BeerHelpsMeWin
11.05.21
✎
17:40
|
(9) У него же отсортированный список, т.е. существует какое-то поле, которое можно увеличит на условный 1. Ну или самому пронумеровать, как надо.
|
|||
14
BeerHelpsMeWin
11.05.21
✎
17:54
|
(11) редактирование динамических списков, как в фузине!
|
|||
15
RomanYS
11.05.21
✎
18:04
|
(13) отсортировал по другому полю, пользователь же будет ожидать что переход будет на следующую строку а не на ту которая раньше была следующей
|
|||
16
BeerHelpsMeWin
11.05.21
✎
18:09
|
(15) Логично. Ну что же, придется запретить сортировку по другим полям. /s
|
|||
17
RomanYS
11.05.21
✎
18:15
|
(16) )). В любом случае ДС справочника это неприменимо, там идентиифкатором является ссылка же
|
|||
18
Базис
naïve
11.05.21
✎
18:41
|
1. Сделай для глупых вопросов левый ник.
2. Sendkey на УФ не работает? |
|||
19
RomanYS
11.05.21
✎
18:45
|
(10) тяжеловато получится
(18) вроде работает &НаКлиенте Процедура СписокПриИзменении(Элемент) Shell= Новый COMОбъект("Wscript.Shell"); Shell.SendKeys("{DOWN}"); КонецПроцедуры |
|||
20
Ненавижу 1С
гуру
11.05.21
✎
18:49
|
(19) а теперь я в форме элемента нажимаю "сохранить" без закрытия формы.
|
|||
21
Cthulhu
11.05.21
✎
18:51
|
(0) см. https://forum.infostart.ru/forum9/topic73522/ комментарий 14 (martemp 11.05.16 13:08)
|
|||
22
RomanYS
11.05.21
✎
18:56
|
(20) на тестовой перехода не было - вроде так и нужно
|
|||
23
RomanYS
11.05.21
✎
18:58
|
+ (22) правда если записать, а потом закрыть без записи - перехода тоже нет
|
|||
24
BIP1
11.05.21
✎
19:00
|
(22) Если на форме элемента кликать мышкой "Записать и закрыть", то переход срабатывает. Если нажать Ctrl+Enter, то курсор не переходит на следующую строку.
|
|||
25
BIP1
11.05.21
✎
19:07
|
(24) ПодключитьОбработчикОжидания("КурсорВниз", 0.1, Истина) помогает:)
|
|||
26
RomanYS
11.05.21
✎
19:08
|
(22) на самом деле клавиша "нажалась", но применилось не к списку. Можно сказать удачное совпадение)
|
|||
27
BIP1
11.05.21
✎
19:10
|
(26) Событие списка ПриИзменении() же происходит, конечно
|
|||
28
BIP1
11.05.21
✎
19:23
|
(23) Через ПодключитьОбработчикОжидания() и ВводДоступен() можно извратиться, чтобы и такая ситуация отрабатывала:)
|
|||
29
RomanYS
11.05.21
✎
19:27
|
(28) ага, Геня в восторге должен быть от таких велосипедов))
&НаКлиенте Процедура СписокПриИзменении(Элемент) ПодключитьОбработчикОжидания("Сдвинуть", 0.3, Истина); КонецПроцедуры &НаКлиенте Процедура Сдвинуть() Если ВводДоступен() Тогда Shell= Новый COMОбъект("Wscript.Shell"); Shell.SendKeys("{DOWN}"); Иначе ПодключитьОбработчикОжидания("Сдвинуть", 0.3, Истина); КонецЕсли; КонецПроцедуры |
|||
30
BIP1
11.05.21
✎
19:33
|
(29) во-во:)
&НаКлиенте Процедура СписокПриИзменении(Элемент) ПодключитьОбработчикОжидания("КурсорВниз", 0.1, Истина) КонецПроцедуры &НаКлиенте Процедура КурсорВниз() Если НЕ ЭтаФорма.ВводДоступен() Тогда ПодключитьОбработчикОжидания("КурсорВниз", 0.1, Истина); Возврат КонецЕсли; Shell= Новый COMОбъект("Wscript.Shell"); Shell.SendKeys("{DOWN}") КонецПроцедуры |
|||
31
Kassern
12.05.21
✎
11:14
|
(29) (30) я думал до этого не дойдет))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |