В 1с нет функции удаление помеченных объектов
Чтобы удалить объект из системы 1С, следует поочередно выполнить два действия:
- установить пометку на нужный объект;
- непосредственно осуществить удаление.
С одной стороны, это не очень удобно. Но если упростить процедуру удаления объектов, в будущем неизбежно нарушение учета, так как некоторые объекты используются одновременно в нескольких документах.
Именно для того, чтобы избежать системных ошибок, в программе реализовано обязательное действие установки пометки на удаление. После того, как нужная отметка будет установлена, система автоматически показывает пользователю все документы, в которых присутствуют помеченные объекты. Это дает возможность при необходимости отредактировать список на удаление.
Удаление объектов в 1C 8.3
Для того, чтобы понять, как происходит удаление, можно рассмотреть конкретный пример осуществления данной процедуры в системе 1С 8.3. Для этого пользователю нужно пройти несколько этапов:
В первую очередь, стоит выделить объект, который нужно удалить. Для этого достаточно кликнуть по нему правой клавишей мыши. В появившемся списке нужно выбрать «Пометить на удаление / Снять пометку».
Далее нужно подтвердить действие.
Таким же образом нужно отметить все объекты, которые необходимо удалить. Потом можно просмотреть весь список на удаление – каждый из них будет отмечен красным крестом.
На этом этапе нужно посетить меню «Администрирование» и выбрать пункт «Удаление помеченных объектов» в подменю «Сервис».
Если такого пункта нет, то нужно выбрать пункт «Обслуживание»
Открывается новое меню «Обслуживание». В этом окне нужно выбрать подпункт «Удаление помеченных объектов» и кликнуть на него.
Далее нужно выбрать те объекты, которые необходимо удалить и нажать кнопку «Удалить выбранные». Или нажать кнопку «Удалить все». В этом случае удалятся все помеченные на удаление объекты в базе.
Когда удаление завершится, в окне будет показано сколько объектов было удалено, и в списке будут показаны все объекты, которые не удалось удалить.
Если необходимо удалить оставшиеся в списке объекты, нужно выполнить некоторые действия. Для того, чтобы узнать, почему не удалось удалить объект, нужно нажать на него, и справа появится список других объектов, с которыми необходимо что-то сделать для корректного удаления. Для этого нужно нажать кнопку «Выберите действие» и выбрать необходимую манипуляцию.
После того, как все необходимые действия были выбраны, нужно нажать «Повторить удаление»
После того, как удаление объектов завершится, достаточно просто закрыть окошко с отображением информации об этом.
Удаление объектов в 1C 8.2
Выше есть описание процедуры удаления объектов из системы 1С 8.3, но для тех, кто работает в 1С 8.2, понадобится другая инструкция, так как между версиями есть существенные отличия.
Все действия выполняются поэтапно, и только после предварительной установки пометки на удаление.
Первым делом нужно кликнуть на выбранный объект правой клавишей мыши и нажать «Установить пометку удаления».
Все отмеченные объекты выделены снова красным крестом.
В верхнем меню есть вкладка «Операции», необходимо кликнуть на нее и выбрать пункт Удаление.
После этого надо подтвердить операцию.
На этом этапе важно проверить все выбранные объекты на предмет использования их в других документах.
Обновил сегодня 1С до редакции 2.0.28.3. И теперь пропала функция "Непосредственное удаление", и даже Shift+Del не удаляет. Все права установлены!
Непосредственное удаление разрешает флаг "Интеррактивное удаление", установка которого влечет автоматическую установку флага "Удаление". Установка флага "Удаление" разрешает установить флажки "Интеррактивное удаление" и "Интеррактивное удаление помеченных". Снятие флага флага "Удаление" автоматически сбрасывает флажки "Интеррактивное удаление" и "Интеррактивное удаление помеченных". Таким образом, для непосредственного удаления необходимо установить флаг "Интеррактивное удаление" для соответствующего объекта метаданных в выбранной роли. При этом, флаг "Удаление" установится автоматически.
Обновил сегодня 1С до редакции 2.0.28.3. И теперь пропала функция "Непосредственное удаление", и даже Shift+Del не удаляет. Все права установлены!
На сколько я понял, обновлена была конфигурация, а не платформа. Обновление конфигурации на данную функцию не влияет. Смотрите настройки.
Обновил сегодня 1С до редакции 2.0.28.3. И теперь пропала функция "Непосредственное удаление", и даже Shift+Del не удаляет. Все права установлены!
Непосредственное удаление разрешает флаг "Интеррактивное удаление", установка которого влечет автоматическую установку флага "Удаление". Установка флага "Удаление" разрешает установить флажки "Интеррактивное удаление" и "Интеррактивное удаление помеченных". Снятие флага флага "Удаление" автоматически сбрасывает флажки "Интеррактивное удаление" и "Интеррактивное удаление помеченных". Таким образом, для непосредственного удаления необходимо установить флаг "Интеррактивное удаление" для соответствующего объекта метаданных в выбранной роли. При этом, флаг "Удаление" установится автоматически.
Наверно 1с-цам надоело нытье про непосредственное удаление данных без проверки вот они и прикрыли лавочку :). Хотя если честно еще не обновлялся и не смотрелНаверно 1с-цам надоело нытье про непосредственное удаление данных без проверки вот они и прикрыли лавочку :). Хотя если честно еще не обновлялся и не смотрел
На сколько я понял, обновлена была конфигурация, а не платформа. Обновление конфигурации на данную функцию не влияет.
Напиши внешнюю обработку.
Я не давно в 1С. И даже понять и не имею как это сделать, на инфостарте ее нет, где может быть не знаешь?
Наверно 1с-цам надоело нытье про непосредственное удаление данных без проверки вот они и прикрыли лавочку :). Хотя если честно еще не обновлялся и не смотрел
Вполне возможно, но эта функция крайне необходима!
Значит не полные права. открой "Роли"-Твоя роль-правой кнопкой "открыть права" и посмотри у желаемого удалить тобой объекта стоит ли кнопка "Удаление" не "Интерактивное удаление", а "Удаление"Значит не полные права. открой "Роли"-Твоя роль-правой кнопкой "открыть права" и посмотри у желаемого удалить тобой объекта стоит ли кнопка "Удаление" не "Интерактивное удаление", а "Удаление"
Непосредственное удаление разрешает флаг "Интеррактивное удаление", установка которого влечет автоматическую установку флага "Удаление". Установка флага "Удаление" разрешает установить флажки "Интеррактивное удаление" и "Интеррактивное удаление помеченных". Снятие флага флага "Удаление" автоматически сбрасывает флажки "Интеррактивное удаление" и "Интеррактивное удаление помеченных". Таким образом, для непосредственного удаления необходимо установить флаг "Интеррактивное удаление" для соответствующего объекта метаданных в выбранной роли. При этом, флаг "Удаление" установится автоматически.
(20) я еще раз говорю - не проблема написать обработку по удалению. Хотелось бы разобраться .
Т.е. - я в расширении создала новую подсистему. Никаких ролей пока нет.
Все объекты (справочники, регистры, перечисления )- входят в эту подсистему
Подсистема эта в программе - показывается отдельным пунктом (с объектами, входящими в подсистему)
и в рабочей базе показываются отдельным значком
Программно - моей обработкой все объекты, помеченные на удаление - удаляются.
Но если я ввожу из основной конфигурации Роль - Полные права, у меня из программы значок расширения уходит и ничего не удаляется.
(25)А в роль объекты из расширения вы добавляете? Если просто заимствовать роль из основной, то эта роль о объектах расширения ничего не знает (27)Ну, это какая то магия в лице моего дилетанства. Без ролей - сейчас все удалилось встроенными стандартными механизмами. Надо как то с ролями разбираться. (28)Полагаю механизм следующий Если нет ролей в расширении то действует ваша роль из основной конфигурации. Если вы добавили роль в расширение заимствуя из основной то новые объекты в расширении вам надо добавить в новую роль и эту роль сделать доступной. Думаю что заимствование роли из основной не имеет смысла, так как в нее добавить возможно не получится. Надо проверять.ЗЫ сам я сейчас ухожу от расширения перевожу все что наваял в основную конфу. ;) особенно формы документов. Максимум что - это отладка программного создания затем код переношу в основную. (29)Да, буду разбираться с ролями, понадобится. Я уже писала - конфу не откроют, это точно. вот поэтому хочу сейчас в расширении реализовать. Странная ситуация. Попробуйте выполнить последовательность действий: Убедится что у вас полные права, почистить кеш, любой неудаляемый объект снять с пометки и обратно поставить и проверить удалиться ли он. Обновить релиз базы, платформы(если она старая), сделать тестирование и исправление базы. (16) Вообще странно. Я вообще убрала роли из расширения. Т.е. у меня вообще сейчас в расширении нет ролей и прав. Программно - все удаляет. (22)получается роли в расширении как-то перебивали ваши роли. Но учитывая что вы работаете с конфой, то и роли у вас максимальные, которые ничем не перебить. (22)а причем тут роли в расширении? расширение в режиме предприятия прозрачно для основной конфигурации, если вы зашли с полными правами, то и объекты расширения вам будут доступны с полными правами.
Давайте определимся с терминами - программное удаление означает что вы написали код Такойто объект - удалить и выполнили его?
Или что то другое. А из встроенного механизма объекты не удаляются?
Понятно - что выборка пошла по всем помеченным на удаление.
Ничего странного. Стандартная обработка удаления помеченных работает с помощью объекта Метаданные конфигурации. А объекты из расширения в коллекцию Метаданные конфигурации как раз и не входят. Как и в прочие служебные ТипВсеСсылки()
Данная коллизия по обещаниям будет разрешена только в 8.3. 20 .
(33)Ну, это какая то магия в лице моего дилетанства. Без ролей - сейчас все удалилось встроенными стандартными механизмами. Надо как то с ролями разбираться. Тогда почему? Все замечательно удалялось пару лет. А теперь с какого-то перестало. Данные . не могут быть зафиксированы1С:Предприятие 8.3 (8.3.17.2306) 64 бита.
При удалении элемента справочника из расширения. Ошибка именно про "Справочники.ТипВсеСсылки()"
Причем раньше точно все спокойно работало. Зачем добавили.
Очевидно же, что для удобства работы :(
(36) Для решения данной проблемы в расширение надо добавить общий модуль "СтандартныеПодсистемыПовтИсп" с текстом:
&Вместо("ОписаниеТипаВсеСсылки")
Функция ОписаниеТипаВсеСсылки()
Результат = ПродолжитьВызов();
МассивДобавляемыхТипов = Новый Массив;
МассивДобавляемыхТипов.Добавить(Тип("СправочникСсылка.[НаименованиеСправочникаИзРасширения]"));
МассивДобавляемыхТипов.Добавить(Тип("ДокументСсылка.[НаименованиеДокументаИзРасширения]"));
. (перечислить все ссылочные типы данных из расширения)
Возврат Новый ОписаниеТипов(Результат, МассивДобавляемыхТипов);
При работе с базой 1с 8.3 ЗУП обработка по удалению помеченных объектов помогает поддерживать чистоту в базе. Механизм хорош тем, что пока мы не удалили поставленные на удаление объекты, всегда можно снять пометку и продолжить работу с объектом (документом, справочником).
Удаление документов в 1С 8.3 ЗУП
Иногда в 1С 8.3 ЗУП необходимо пометить на удаление и удалить объект (документ, справочник), который был введен по ошибке или по какой-то другой причине. Для таких ситуаций в программе разработан алгоритм действий по удалению. Разберем его по шагам на примере удаления документа.
Шаг 1. Пометка объекта на удаление
Пометим на удаление документ.
Шаг 2. Запуск обработки по удалению
В разделе Администрирование откроем обработку Удаление помеченных объектов .
Если обработка не видна в разделе, то выведем ее. Для этого в разделе Администрирование нажмем на значок шестеренки и вызовем форму Настройки навигации .
В разделе См.также найдем и добавим обработку в Выбранные команды .
Если требуется, чтобы обработка располагалась в разделе в первых рядах, то выделим ее в таблице Выбранных команд .
По команде Переместить в группу отправим в Важное .
В результате обработку Удаление помеченных объектов можно будет сразу увидеть в разделе Администрирование .
Шаг 3. Запуск процедуры удаления в обработке
В обработке отобразится список помеченных на удаление объектов в 1С ЗУП. Оставим флажки на нужных для окончательного удаления объектах и запустим команду Удалить выбранные .
Шаг 4. Контроль связи удаляемого объекта с другими объектами и повторное удаление
При удалении в 1С 8.3 ЗУП контролируется не связан ли удаляемый объект с другими объектами базы и выдается список.
Со связанным объектом можно указать какие действия необходимо произвести.
В нашем пример, хотя и предлагается удалить записи в связанном с Приемом на работу регистре сведений Перерасчет зарплаты , но сделать это непосредственно из обработки не получится. Придется открыть сервис Перерасчетов ( Зарплата – Перерасчеты ) и там удалить лишнюю запись.
После этого возвратиться в обработку и повторить удаление объекта.
Документ будет удален из 1с 8.3 ЗУП.
Мы успешно разобрали как сделать удаление документов с помощью обработки Удаление помеченных объектов в 1С 8.3 ЗУП.
См. также:
Если Вы еще не подписаны:
Активировать демо-доступ бесплатно →
или
Оформить подписку на Рубрикатор →
После оформления подписки вам станут доступны все материалы по 1С:ЗУП, записи поддерживающих эфиров и вы сможете задавать любые вопросы по 1С.
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Похожие публикации
-
Рассмотрим как подключать, обновлять, отключать и удалять расширения в ЗУП.Из настроек расчета зарплаты (Настройка – Расчет зарплаты) убрана настройка...
Карточка публикации
Данную публикацию можно обсудить в комментариях ниже.Обратите внимание! В комментариях наши кураторы не отвечают на вопросы по программам 1С и законодательству.
Задать вопрос нашим специалистам можно по ссылке >>
Вы можете задать еще вопросов
Доступ к форме "Задать вопрос" возможен только при оформлении полной подписки на БухЭксперт8
Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявкуНажимая кнопку "Задать вопрос", я соглашаюсь с
регламентом БухЭксперт8.ру >>
Спасибо! Тема сложная, Марина Аркадьевна рассказала очень доходчиво, разобрано много подводных камней. Большое спасибо Марине Аркадьевне и всему коллективу.
Екатерина Николаевна Н. (Санкт-Петербург, Санкт-Петербург)Содержание
Вы можете задать еще вопросов
Доступ к форме "Задать вопрос" возможен только при оформлении полной подписки на БухЭксперт8
Вы можете оформить заявку от имени Юр. или Физ. лица Оформить заявкуНажимая кнопку "Задать вопрос", я соглашаюсь с
регламентом БухЭксперт8.ру >>
Сама по себе система 1С лишена опции удаления объектов любого типа из хранилища. Исключение – через пометку на удаление. Как вариант, допускалось внесение настроек в роль пользователя, благодаря чему можно было удалять объекты из памяти без соответствующей пометки. Логично, что внесение подобных настроек – весьма рискованно, так как возникает большая вероятность случайного удаления важных документов или отчетов. К тому же даже такие рискованные настройки не дают возможности удалять все типы объектов (без пометки на удаление).
Пометка на удаление объектов в 1С
Пользователи системы 1С часто задаются вопросом, почему необходимо удалять объекты из памяти через специальную пометку.
Есть две важные причины, обосновывающие подобное положение дел:
- Не исключены ситуации, когда решение об удалении было поспешным и ошибочным. Сняв пометку, пользователь получает возможность восстановить файлы в полном объеме. Интерактивное удаление исключает возможность восстановления.
- Структура системы 1С такова, что может быть определенное количество ссылок, связывающих между собой ряд документов. В таком случае прямое удаление любого объекта, на который или из которого идет определенный линк, приведет к весьма неприятным последствиям. В первую очередь речь идет о «битых ссылках», которые провоцируют ошибки работы системы и со временем вызывают ее полное «падение».
Иными словами, отсутствие возможности прямого удаления объектов используется для защиты, в первую очередь, данных предприятия.
Виды удаления
Пользователи системы 1С могут выбрать один из двух методов для удаления объектов:
- Интерактивное или прямое удаление – проверка целостности имеющихся ссылок не происходит.
- Через пометку на удаление – в таком случае происходит контроль над сохранением целостности ссылок.
Отдельно стоит акцентировать внимание на самом понятии ссылочной целостности в 1С. Для большей ясности сначала стоит понять значение выражения «битая ссылка» — это линк, указывающий на несуществующий или неактивный объект памяти. Контроль ссылочной целостности исключает возможность удаления объекта, пока он задействован в ссылочной структуре. И это главное предназначение пометки на удаление – защитить от удаления файл, на который ссылаются другие файлы.
Виды удаления и восстановление удаленных объектов в 1С
Восстановить объект, который был удален из платформы 1С можно только на этапе установки пометки на удаление. Во всех остальных случаях происходит физическое удаление информации, и возобновить ее уже не представляется возможным.
Первый способ
Данный способ годится только для информационных баз с включенной возможностью изменения ИБ.
Главный недостаток интерактивного удаления – отсутствие контроля ссылочной целостности, что в будущем имеет просто фатальные последствия.
На этом этапе нужно выполнить копирование роли «Полные права». Сделать это можно при помощи клавиши F9. В результате появляется еще одна активная роль с наименованием «Полные права 1». Закрепить действие кликом на клавишу «ОК».
Дальнейшие действия направлены на сохранение конфигурации базы данных. Сделать это можно одним из двух способов:
- щелчком по иконке в виде синего бочонка;
- нажатием клавиши F7.
Статус данных можно проверить по изменению активности иконки с бочонком – когда она станет неактивной, сохранение выполнено.
Итог – создание роли с правами на интерактивное удаление объектов из 1С.
Теперь следует вернуться в Конфигуратор и активировать вкладку Администрирование – Пользователи.
Из выпадающего списка пользователей нужно выбрать того, кому будет присвоена функция интерактивного удаления в 1С. Откройте Свойства (F7 или «карандашик») – вкладка Прочие – «Полные права 1». Обязательно установите галочку активности и подтвердите действие кнопкой «Ок».
Теперь для выполнения нужной задачи достаточно войти в систему под именем пользователя, которому присвоены все права на совершение данного действия. Само удаление происходит через комбинацию клавиш SHIFT + DEL.
Второй способ
Рассмотрим вариант более безопасного удаления объектов. Начинается процесс с открытия нужной базы данных, выбора пункта меню Операции – Удаление …:
При использовании системы 1С с управляемым интерфейсом сначала нужно кликнуть на Администрирование, затем Сервис - Удаление …
Пользователи, которые не досконально знают меню платформы 1С, могут испытывать сложности с самостоятельным поиском в интерфейсе ссылок на мастер удаления помеченных объектов 1С. Тогда можно воспользоваться цепочкой Операции – Обработка – Удаление помеченных объектов, для приложений с обычными формами.
И Функции для технического специалиста - Удаление помеченных объектов, для приложений с управляемыми формами. Если пункт меню Функции для технического специалиста не отображается, его необходимо включить в настройках – включить режим технического специалиста.
После выполнения указанных действий активируется окно, в котором будут показаны все файлы, отмеченные на удаление. Важно установить галочки напротив всех объектов, которые действительно нужно удалить. Предпочтительно – выбрать все. Так как соответствующие отметки должны быть установлены только возле данных, которые уже не будут использоваться и не представляют собой никакой ценности.
Далее, нажав кнопку Удалить все или Удалить выбранные в случае если удаляемые объекты связаны с другими объектами, мы получим список связанных объектов:
Будут предложены возможные действия со связанными объектами. Необходимо выбрать действия для каждого связанного объекта и нажать «Повторить удаление» - удалятся помеченные объекты на удаление, и будут произведены указанные действия со связанными объектами. Операцию удаления будет завершена.
Во избежание системных ошибок важно своевременно удалять все отмеченные файлы на удаление.
Читайте также: