Имя: Пароль:
1C
1C 7.7
v7: Спозиционироваться на нужную запись в форме списка справочника
0 Злопчинский
 
09.02.19
14:03
Туплю...
Форма списка справочника. Жмакаем кнопку под списком. Что-то делаем. Имеем ссылку на элемент справочника.
Как установить курсор на этот элемент (по ссылке)..?
1 SleepyHead
 
гуру
09.02.19
14:39
АктивизироватьОбъект(Ссылка на элемент справочника)

В СП написано, что это для формы подбора, но у меня всегда работало и в форме списка справочника.
2 palsergeich
 
09.02.19
14:54
(1) Форма выбора от формы списка отличается одним булевым флагом по факту. Ну на который завязано появление команды в командном интерфейсе и поведение при закрытии.
3 Злопчинский
 
09.02.19
15:04
(1) ээээ! такой вариант приводит к Открытию формы элемента! а мне всего лишь надо поставить курсор
4 Злопчинский
 
09.02.19
15:05
.. я конечно туплю, но не настолько чтобы не порыться малость. Порылся.. сабж получающийся - в (3)
5 2S
 
09.02.19
15:09
не оно?
Активизировать(<?>,);
Синтаксис:
Активизировать(<ИмяРеквизита>,<Режим>)
Назначение:
Активизировать для редактирования поле диалога.
Параметры:
<ИмяРеквизита> - необязательный параметр. Строка с именем поля диалога, которое нужно активизировать. Пустое имя элемента диалога используется для активизации всей формы.
<Режим> -  необязательный параметр. Имеет смысл только для строк списков. Число: 1 - войти в режим редактирования, 0 - не входить. Значение по умолчанию - 1.
Замечание:
Метод  Активизировать может быть вызван из другого (внешнего) модуля, если в нем известен контекст формы, в которой нужно активизировать элемент диалога. Доступ к методу возможен только в контексте Модуля формы.
6 Злопчинский
 
09.02.19
15:12
разобрался...
хм.. как интересно..

если вот такая последовательность действий
//
Активизировать("ДокОснование"); //ставим курсор в текущую колонку нужную
АктивизироватьОбъект(нужныйОбъект);
//

то открывается форма элемента
а если
//
АктивизироватьОбъект(нужныйОбъект);
//

то просто куроср становится на нужной строке...
7 Злопчинский
 
09.02.19
15:13
у меня первый вариант был - открывлась форма.
как только заремил
Активизировать("ДокОснование");
- стало "норм"
8 Злопчинский
 
09.02.19
15:14
тогда усложним задачу:
- спозиционировать курсор на нужном элементе списка и на нужной колонке списка...
?
9 SleepyHead
 
гуру
09.02.19
15:15
(7) Ну я сразу написал, как надо делать.

У меня всегда получалось без открытия формы.
10 Злопчинский
 
09.02.19
15:17
(9) ну так я вот и "тупил" - вроде тоже работало..
.
но вот если до АктивизироватьОбъект() или после поставить
Активизировать(ИмяРеквизитаСправочникаКолонкаВСписке);
.
то открывается форма...
11 SleepyHead
 
гуру
09.02.19
15:22
(8)

https://forum.infostart.ru/forum9/topic37920/

вроде как через Sendkeys только или Formex
12 Злопчинский
 
09.02.19
15:44
Активизировать("ДокОснование",0);
АктивизироватьОбъект(НужныйОбъект);

- от так норм.
спсб!
вопрос закрыт
13 Злопчинский
 
09.02.19
15:46
.. причем сам по себе
Активизировать("докоснование");
- что соответсует по умолчанию второму параметру с значением 1 - никакого режима редактирования не вызывает...
14 ДенисЧ
 
09.02.19
16:30
Мда... 8ка разжижает мозги?
15 NorthWind
 
09.02.19
16:52
Какие-то вопросы у меня по этому АктивизироватьСтроку () были... Что-то связанное с тем, что после его отработки текущий элемент контекста не сразу меняется. Т.е. обращаещься к реквизитам справочника, которые должны стать текущими - а там не то. Причем не всегда, а время от времени.