Доброе время.
Собственно столкнулся с проблемой:
Платформа 8.3.5.1088.
Конфигурация УТ 11.1.6.26 (управляемые формы).
В справочнике "Номенклатура" в форме списка есть поле ввода для быстрого отбора.
Так вот - при вводе значения в это поле выполняется "сохранение" введенного значения, и в следующий раз при вводе похожего значения появляется выпадающий список с ранее вводимыми вариантами. Этот список, я так понял, хранится для каждого пользователя. Кроме того, хранится он не в кеше, т.к. после восстановления БД из бекапа этот список все ровно остается.
Так вот вопрос - как очистить историю (полностью весь список)? Уже пол-дня воюю с этим вопросом, и как-то без успехов.
Собственно столкнулся с проблемой:
Платформа 8.3.5.1088.
Конфигурация УТ 11.1.6.26 (управляемые формы).
В справочнике "Номенклатура" в форме списка есть поле ввода для быстрого отбора.
Так вот - при вводе значения в это поле выполняется "сохранение" введенного значения, и в следующий раз при вводе похожего значения появляется выпадающий список с ранее вводимыми вариантами. Этот список, я так понял, хранится для каждого пользователя. Кроме того, хранится он не в кеше, т.к. после восстановления БД из бекапа этот список все ровно остается.
Так вот вопрос - как очистить историю (полностью весь список)? Уже пол-дня воюю с этим вопросом, и как-то без успехов.
По теме из базы знаний
- Согласование документов 1С:Документооборот и 1С:Консолидация из Outlook 2010-2013 без запуска 1С (с исходниками)
- [Общий модуль] Динамическое формирование интерфейса
- Интеграция 1С с маркетплейсами Ozon и Wildberries для УТ10.3, КА 1.1, УПП 1.3
- История одного обновления, или доработки, взывающие к механизму "расширений"
- Заполнение ТТН в 1С:Управление торговлей 11.5
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(4)
СПАСИБО :) Нашел... SQL - сила :)
Может кому будет полезно:
Ну или еще более полезный вариант:
СПАСИБО :) Нашел... SQL - сила :)
Может кому будет полезно:
Выборка = ХранилищеОбщихНастроек.Выбрать(Новый Структура("КлючОбъекта", "ИсторияПоискаНоменклатуры"));
Пока Выборка.Следующий() Цикл
...
КонецЦикла;
Ну или еще более полезный вариант:
&НаСервере
Процедура ОчиститьИстоиюВвода()
ЭтаФорма.Элементы.СтрокаПоискаНоменклатура.СписокВыбора.Очистить();
СпискиВыбораКлиентСервер.Сохранить("ИсторияПоискаНоменклатуры", ЭтаФорма.Элементы.СтрокаПоискаНоменклатура.СписокВыбора);
КонецПроцедуры
Показать
Сам столкнулся с данной проблемой. У поля ввода установил признак "История выбора при вводе" - "Не использовать"
Для документооборота помогло следущее:
&НаСервере
Процедура УдалитьИсториюВыбора()
Выборка = Справочники.Пользователи.Выбрать();
Пока Выборка.Следующий() цикл
ХранилищеСистемныхНастроек.Удалить("ИсторияВыбора", , Выборка.Наименование);
КонецЦикла;
КонецПроцедуры
(8)
запустил, но история осталась( куда копнуть еще надо?
&НаСервере
Процедура УдалитьИсториюВыбора()
Выборка = Справочники.Пользователи.Выбрать();
Пока Выборка.Следующий() цикл
ХранилищеСистемныхНастроек.Удалить("ИсторияВыбора", , Выборка.Наименование);
КонецЦикла;
КонецПроцедуры
Процедура УдалитьИсториюВыбора()
Выборка = Справочники.Пользователи.Выбрать();
Пока Выборка.Следующий() цикл
ХранилищеСистемныхНастроек.Удалить("ИсторияВыбора", , Выборка.Наименование);
КонецЦикла;
КонецПроцедуры
запустил, но история осталась( куда копнуть еще надо?
(17) чутка изменил код. Может кому пригодится
Выборка = Справочники.Пользователи.Выбрать();
Пока Выборка.Следующий() цикл
ПользовательИБ = ПользователиИнформационнойБазы.НайтиПоУникальномуИдентификатору(Выборка.ИдентификаторПользователяИБ);
Если ПользовательИБ <> Неопределено Тогда
ХранилищеСистемныхНастроек.Удалить("ИсторияВыбора", , ПользовательИБ.Имя);
КонецЕсли;
КонецЦикла;
У меня задача несколько другая. Мне надо в истории поиска заменить просто название номенклатуры на строку другого формата, например "Артикул/Наименование". Дело в том, что выбор часто идет между номенклатурами одинакового наименования, но разных артикулов (автомагазин), поэтому в истории получается куча одинаковых строк, неразличимых между собой.
Поэтому думал может есть возможность при открытии формы или изменении элемента просматривать историю выбора и корректировать ее в указанном формате...
Поэтому думал может есть возможность при открытии формы или изменении элемента просматривать историю выбора и корректировать ее в указанном формате...
Переопределение стандартного представления имеете в виду? Дело в том, что у меня ТЧ содержит поля Артикул и Номенклатура. Артикул не редактируется и подставляется в зависимости от выбранной номенклатуры. И если переопределить представление номенклатуры с Наименования на, к примеру, (Артикул) Наименование ТЧ будет смотреться неудобно, с дублирующейся информацией. А артикул отдельным полем нужен.
(12) Еще посмотрите процедуры в модуле менеджера номенклатуры: "ОбработкаПолученияПредставления" и "ОбработкаПолученияПолейПредставления" там можно переопределить представление в зависимости от источника. Возможно имеет смысл в документе/ах отказаться от колонке артикул и выводить артикул в представлении номенклатуры.
А есть возможность отловить событие выбора из списка истории выбора? То есть, к примеру, по кнопке Добавить открывается форма подбора документов, где реализована логика выдачи предупреждения при попытке подбора документа с определенным статусом. А при выборе этого же документа из истории подбора - логику эту как организовать? Событие какое при выборе из истории происходит? ПриИзменении?
По моему нарушен порядок передаваемых реквизитов. Первый параметр это ключ объекта, а второй ключ настроек. Если надо удалить у всех пользователей, то можно просто не передавать третий параметр.
//++ удаляет у всех пользователей без ограничений, МеханизмСохраненияПоследнихВыбранныхЗначений
ХранилищеСистемныхНастроек.Удалить(, "МеханизмСохраненияПоследнихВыбранныхЗначений", );
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот