Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Справочник. При открытии списка справочника, текущей должна быть последняя запись.

v7: Справочник. При открытии списка справочника, текущей должна быть последняя запись.
Я
   prochor
 
07.10.21 - 09:06
Добрый день.
Имеется объемный справочник. При окрытии формы списка справочника по умолчанию устанавливается на первую запись справочника. Менеджер хочет, чтобы при открытии устанавливалась последняя запись справочника.
Пробовал сдвигать конструкцией типа
    //переход к концу справочника
    Спр =СоздатьОбъект("Справочник."+Вид());
        Спр.ВыбратьЭлементы();
    Пока Спр.ПолучитьЭлемент() > 0 Цикл
        Тек = Спр.ТекущийЭлемент();
    КонецЦикла;
    НайтиЭлемент(Тек);

ругается на перепозиционирование в "НайтиЭлемент(Тек);".
Может, кто сталкивался?
   ДенисЧ
 
1 - 07.10.21 - 09:08
Сначала нужно определить понятие "последней записи"...
   Андрей_Андреич
 
2 - 07.10.21 - 09:10
Если использовать "ОткрытьПодбор", то там в параметрах есть объек, на котрый надо позиционироваться
   Bigbro
 
3 - 07.10.21 - 09:10
- используйте обратный порядок
- откажитесь от цикла, нужна только одна запись
   Василий Алибабаевич
 
4 - 07.10.21 - 09:10
(0)
1. "Последний элемент" само по себе сюр. В списке где может быть сортировка по коду или по наименованию
2. Установка активной строки выполняется при помощи АктивизироватьОбъект
   Sserj
 
5 - 07.10.21 - 09:11
Отправляй sendkey END после открытия :)
   prochor
 
6 - 07.10.21 - 09:40
(1) Среди реквизитов "Дата создания", по которой я устанавливаю сортировку.
Но менеджер хочет видеть при открытии именно на последней по дате создания записи, не двигать мышкой по линейке.
(3) - обратный порядок только для СоздатьОбъект
(4) - АктивизироватьОбъект - попробую
(5) - а можно поподробнее про sendkey? как написать команду, если не затруднит?
   prochor
 
7 - 07.10.21 - 09:45
//переход к концу справочника

    Спр =СоздатьОбъект("Справочник."+Вид());
        Спр.ВыбратьЭлементы();
    Пока Спр.ПолучитьЭлемент() > 0 Цикл
        Тек = Спр.ТекущийЭлемент();
    КонецЦикла;
    АктивизироватьОбъект(Тек);

то, что доктор приписал. Спасибо Василий Алибабаевич.
   Василий Алибабаевич
 
8 - 07.10.21 - 09:49
(7) Зачем перебор с начала веков? Совет из (3) не зашел?
   Ёпрст
 
9 - 07.10.21 - 09:51
(7) г..код жешь.
ну так хотя бы
  Спр =СоздатьОбъект("Справочник."+Вид());
  спр.ОбратныйПорядок(1);
  Спр.ВыбратьЭлементы();
  Если Спр.ПолучитьЭлемент() = 1 Тогда
    АктивизироватьОбъект(Спр.ТекущийЭлемент());
  КонецЕсли;
   Bigbro
 
10 - 07.10.21 - 09:56
пожалуйста)
   uno-group
 
11 - 07.10.21 - 10:24
Сервис = СоздатьОбъект("Сервис");
Сервис.SendKeys("END");
   uno-group
 
12 - 07.10.21 - 10:29
Если справочник многоуровневый то 9 будет сбоить. А вообще менеджеру по рукам надавать если зашел с уже заполненного поля то выполняется позиционирование на том, что уже заполненно. Если вдруг случайно строкой ошибся при выборе придется заново искать элемент. а менеджеру нажать 1 клавишу секунда времени.
   Харлампий Дымба
 
13 - 07.10.21 - 10:44
(9) спр.порядоккодов() ещё добавить... и Спр.ВыбратьЭлементы(0) с отключением иерархии...
   Злопчинский
 
14 - 07.10.21 - 12:29
все уже было в этом мире..
https://infostart.ru/1c/articles/20774/
   Злопчинский
 
15 - 07.10.21 - 12:30
у себя я сделал что при открытии позиционируется на тот элемент, на котором форма закрывалась.
   Sserj
 
16 - 07.10.21 - 12:58
(15) Ты помнится мучался с тем что отладчик семерошный в виндах новых фокус терял.
Так на всякий случай. В понедельник win11 вышла так вот в ней и отладчик без глюков работает и масштабирует 7-ку она на удивление приятно, ну только нужно в совместимости режим масштабирования "Приложение" поставить.
   Злопчинский
 
17 - 07.10.21 - 13:01
(16) ага, как же... мне проверяла по вин11 сказала хрен тебе а не вынь11, не подходит твой проц (на ноуте у меня): Intel(R) Core(TM) i7-6700HQ CPU
   Злопчинский
 
18 - 07.10.21 - 13:03
(16) в вынь10 если прибивать в процессах "диспетчер окон рабочего стола" - то тоже все норм по отладке, но он, блин, после прибития снова автостартует, а как отключить - я не нашел...
   Builder
 
19 - 07.10.21 - 13:04
(18) Вроде известная тема и решение есть давно. Там надо службу отключить одну, вроде как раз "диспетчер окон рабочего стола"
   Злопчинский
 
20 - 07.10.21 - 13:13
(19) да. только найти ее в службах мне не удается...
   Builder
 
21 - 07.10.21 - 13:20
(20) попробуй "Запустить программу в режиме совместимости с: Windows 7"
   Злопчинский
 
22 - 07.10.21 - 13:26
(21) пофиг, артефакты сохраняются
   uno-group
 
23 - 07.10.21 - 14:20
(17) странно вроде требования вполне вменяемые
Процессор    Не менее двух ядер с тактовой частотой не менее 1 гигагерца (ГГц)
ОЗУ    4 ГБ ОЗУ
Хранилище    Устройство хранения на 64 ГБ или больше
Системная прошивка    UEFI, с поддержкой безопасной загрузки.
TPM    Доверенный платформенный модуль (TPM) версия 2.0.
Видеоадаптер    Совместимый с DirectX 12 или более поздней версии с драйвером WDDM 2.0.
Дисплей    Дисплей высокой четкости (720p) с диагональю более 9 дюймов, 8 бит на цветовой канал.
Интернет-соединение    Для установки Windows 11 домашняя требуется учётная запись Майкрософт и подключение к Интернету.
   Злопчинский
 
24 - 07.10.21 - 14:32
(23) там если по ссылке пойти - там вполне конкретный перечень процев
   ДенисЧ
 
25 - 07.10.21 - 14:37
(17) А мне разрешила )))
Только я не буду обновлять...
   ДенисЧ
 
26 - 07.10.21 - 14:38
(24) У тебя TMP, наверное, нет...
   Злопчинский
 
27 - 07.10.21 - 17:19
(26) проверка написала что есть, ок.
   ptiz
 
28 - 07.10.21 - 17:21
(0) Завидую вашим менеджерам - заняться им больше нечем.
   uno-group
 
29 - 08.10.21 - 08:17
(24) Таки да младше 6 серии курят в сторонке. Как выйдет наверняка кто-то  озадачиться понижением безопасности и появится сборка которая будет работать на старых процах.


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.