Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Управление историей выбора поля

Управление историей выбора поля
Я
   Dwarrior
 
29.11.18 - 13:40
Здравствуйте!

Как очистить историю выбора номенклатуры у поля типа СправочникСсылка.Номенклатура? Это тот список ранее выбираемых значений, который появляется у поля ввода при входе в режим редактирования.

Гуглеж говорит, что за это отвечает ХранилищеСистемныхНастроек с ключом "ИсторияВыбора". Выполняем код:

История = ХранилищеСистемныхНастроек.Загрузить("ИсторияВыбора");

получаем переменную История с типом "НастройкиИсторииВыбора" и непониманием, что с ней делать - ни методов, ни свойств в отладчике, синтакс-помощнике и интернете.

А цель вообще такая - ограничить доступ юзеров к определенным позициям номенклатуры. Все сделано, но вот история выбора подло подсовывает запрещенные уже элементы:)

Помогите пожалуйста, кто сталкивался?
 
 
   Mort
 
1 - 29.11.18 - 13:51
А каким образом ограничен доступ юзеров к позициям? РЛС?
   segn
 
2 - 29.11.18 - 13:53
А еще пользователь может вводить наименование номенклатуры в поле ввода...
   DrWatson
 
3 - 29.11.18 - 14:00
Эта история, вроде как, готовый список, при его использовании проверок rls не происходит.
   Buster007
 
4 - 29.11.18 - 14:28
(3) проверял?)
   DrWatson
 
5 - 29.11.18 - 14:39
Нет, иначе не писал бы "вроде как". Исходил из наблюдений и замысла зачем этот список ввели (где-то рассказывали). А что, есть сведения, что при открытии списка перечитываются данные с проверкой rls?
   Buster007
 
6 - 29.11.18 - 14:45
если не накладывается, то это как-то странновато и похоже на баг
   DrWatson
 
7 - 29.11.18 - 14:54
Проверил. При показе списка не проверяется. Запрос делается при выборе элемента и если он перестал быть доступен, то выходит ошибка "Эти данные невозможно выбрать, так как они были ранее удалены".
Т.е. они будут показываться не только при недоступности из-за РЛС, но и при физическом удалении элемента.
   Dwarrior
 
8 - 29.11.18 - 15:10
(1) Самописно, в ОбработкеДанныхВыбора() и ФормаПодбора. Но не суть как.
(2) ОбработкеДанныхВыбора() модуля менеджера.

Все уже сделано, осталась история выбора, в ней вопрос. Как ее почистить
   Dwarrior
 
9 - 30.11.18 - 11:39
апну пожалуй
   Cyberhawk
 
10 - 30.11.18 - 11:42
Отключить историю выбора для реквизита. Обновить БД. Включить обратно.
 
 Рекламное место пустует
   Dwarrior
 
11 - 30.11.18 - 12:47
(10) Реквизитов много, во всех документах. Это же номенклатура
   Мыш
 
12 - 30.11.18 - 12:54
(11) Почисти хранилище системных настроек
   Dwarrior
 
13 - 30.11.18 - 13:27
(12) Хотелось бы избирательно почистить. Как?
   Мыш
 
14 - 30.11.18 - 13:33
ХранилищеСистемныхНастроек.Удалить("ИсторияВыбора", , <ИмяПользователя>);

Только так. У самого объекта "НастройкиИсторииВыбора" ни свойств ни методов действительно нет.

Либо предварительно сохранить разнообразные "НастройкиИсторииВыбора" и загружать их нужным пользователям. Но это извращение, имхо.
   DrWatson
 
15 - 30.11.18 - 13:35
(8) После выбора тоже нужно проверить значение самописно.
   Dwarrior
 
16 - 03.12.18 - 12:38
(14)  Да, так вот получилось очистить историю. Правда по всем полям всех типов данных, но пока это первый рабочий вариант
Спасибо.

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