Добавляет элемент избранного в коллекцию.
Синтаксис
Добавить(<Элемент>)Полное описание, параметры и ограничения
ИзбранноеРаботыПользователя.Добавить (UserWorkFavorites.Add)
ИзбранноеРаботыПользователя (UserWorkFavorites)
Добавить (Add)
Доступен, начиная с версии 8.2.
Синтаксис:
Добавить(<Элемент>)
Параметры:
<Элемент> (необязательный)
Тип: ЭлементИзбранногоРаботыПользователя.
Добавляемый элемент избранного.
Возвращаемое значение:
Тип: ЭлементИзбранногоРаботыПользователя.
Описание:
Добавляет элемент избранного в коллекцию.
Доступность:
Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Удалить один пункт и очистить только собственный черновик
Удаляем по индексу, проверяем сдвиг оставшегося элемента, затем очищаем созданную в упражнении коллекцию.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте отдельную учебную базу. В серверном общем модуле УчебныеЗадачи создайте процедуру ВыполнитьПример() Экспорт и вставьте в неё код одного урока. Вызовите её из серверного обработчика собственной учебной обработки.
Каждый урок создаёт новую коллекцию в памяти. Код не загружает и не сохраняет избранное пользователя, не заменяет план ГлобальныйПоиск, не запускает поиск, не открывает ссылку и не читает рабочие документы.
Для трёх уроков избранного создайте в собственной учебной конфигурации два пустых справочника УчебныеКниги и УчебныеАвторы. Учебные ссылки относятся к спискам этих объектов; записи справочников для упражнения не нужны. Право СохранениеДанныхПользователя требуется для использования избранного по справке платформы.
Черновик = Новый ИзбранноеРаботыПользователя;
Книги = Черновик.Добавить();
Книги.Представление = "Учебные книги";
Книги.НавигационнаяСсылка = "e1cib/list/Справочник.УчебныеКниги";
Авторы = Черновик.Добавить();
Авторы.Представление = "Учебные авторы";
Авторы.НавигационнаяСсылка = "e1cib/list/Справочник.УчебныеАвторы";
Если Черновик.Количество() = 2 Тогда
Черновик.Удалить(0);
КонецЕсли;
Сообщить(Черновик.Количество() = 1);
Если Черновик.Количество() = 1 Тогда
Сообщить(Черновик.Получить(0).Представление = "Учебные авторы");
КонецЕсли;
Черновик.Очистить();
Сообщить(Черновик.Количество() = 0);Разбор по шагам
Удалить у ИзбранноеРаботыПользователя принимает индекс. Не передаём туда элемент другого типа и не выдаём это за универсальную сигнатуру всех коллекций.
После удаления первого пункта Авторы становятся элементом 0. Проверка количества защищает последующее получение.
Очистить действует на данную коллекцию. Здесь она создана через Новый, поэтому очищается только собственный учебный черновик.
В коде нет ХранилищеСистемныхНастроек.Сохранить: удаление из черновика не доказывает изменение пользовательской панели.
Как проверить результат
Три контрольных Истина: остался один пункт, это Авторы, после очистки количество 0.
Сохранённое избранное пользователя осталось прежним; код не загружал и не сохранял его.
Ожидаемый результат
Разобран жизненный цикл собственной коллекции без массового удаления пользовательских настроек.
На что обратить внимание
Не подменяйте Черновик значением загруженного рабочего избранного для тренировки Очистить.
Удалить по индексу и удалить по объекту поддерживаются не каждой коллекцией. Проверяйте именно её справку.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.
Поставить важный пункт в начало собственного избранного
Показываем вставку, нулевой индекс и проверку состава прежде, чем читать элемент по номеру.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте отдельную учебную базу. В серверном общем модуле УчебныеЗадачи создайте процедуру ВыполнитьПример() Экспорт и вставьте в неё код одного урока. Вызовите её из серверного обработчика собственной учебной обработки.
Каждый урок создаёт новую коллекцию в памяти. Код не загружает и не сохраняет избранное пользователя, не заменяет план ГлобальныйПоиск, не запускает поиск, не открывает ссылку и не читает рабочие документы.
Для трёх уроков избранного создайте в собственной учебной конфигурации два пустых справочника УчебныеКниги и УчебныеАвторы. Учебные ссылки относятся к спискам этих объектов; записи справочников для упражнения не нужны. Право СохранениеДанныхПользователя требуется для использования избранного по справке платформы.
Черновик = Новый ИзбранноеРаботыПользователя;
Авторы = Черновик.Добавить();
Авторы.Представление = "Учебные авторы";
Авторы.НавигационнаяСсылка = "e1cib/list/Справочник.УчебныеАвторы";
Книги = Новый ЭлементИзбранногоРаботыПользователя;
Книги.Представление = "Учебные книги";
Книги.НавигационнаяСсылка = "e1cib/list/Справочник.УчебныеКниги";
Книги.Важное = Истина;
Черновик.Вставить(0, Книги);
Сообщить(Черновик.Количество() = 2);
Сообщить(Черновик.Индекс(Книги) = 0);
Сообщить(Черновик.Индекс(Авторы) = 1);
Если Черновик.Количество() > 0 Тогда
Первый = Черновик.Получить(0);
Сообщить(Первый.Представление = "Учебные книги");
Сообщить(Первый.Важное);
КонецЕсли;Разбор по шагам
В коллекции сначала один пункт Авторов. Вставить(0, Книги) добавляет Книги перед ним, а не заменяет Авторов.
Индекс начинается с нуля. После вставки прежний элемент переходит с 0 на 1; сохранённый старый числовой индекс мог бы указывать уже не на тот пункт.
Индекс получает положение переданного объекта, Получить возвращает объект по положению. Это две разные операции.
Перед Получить(0) есть проверка количества. Такой же принцип нужен при работе с произвольным загруженным избранным.
Как проверить результат
Все пять логических проверок дают Истина.
Первым в черновике стал список книг; список авторов сохранился вторым. Настройки текущего пользователя не записываются.
Ожидаемый результат
Пункт перемещён в начало черновика с явной проверкой индексов и содержимого.
На что обратить внимание
Не смешивайте индекс 0 и количество 1.
Не обращайтесь к старому индексу после вставок или удалений без повторного определения позиции.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.