1с интерактивное удаление что это

Обновлено: 05.07.2024

Интерактивные - по сути, это интерфейсные права из формы списка (или формы элемента). Т.е. запретили интерактивное добавление - всё, из формы списка добавить нельзя элемент. Но обработкой, к примеру - пожалуйста.

Я бы выделял два типа прав - права на форму и права на объект. Опишу своими словами, если что не так, коллеги поправят :)

Права на объект.
Это ограничения, которые накладываются на сам объект в базе данных во время его изменения (создание, изменение, удаление) или чтения именно в физической таблице.
Пример:
- создаём элемент справочника,
- читаем элемент справочника,
- перезаписываем элемент справочника,
- удаляем его,
- используя обработку, неявно изменяем элемент справочника
- используя документ, неявно изменяем элемент справочника.

Во всех этих случаях идет проверка на ограничения на уровне объекта. Можно еще привести пример, если бы мы написали какой-нить код в модуле объекта в соответствующих процедурах (ПередЗаписью, ПередУдалением), то получили бы как раз ограничения на уровне объекта. Ну, кроме чтения.

Именно на этих принципах построена, в целом, работа ролей (в неинтерактивной их части).

Права на форму (интерфейс).
Это все т.н. интерактивные права, плюс права типа "просмотр", "редактирование" и т.п. В 1С на уровне платформы они полноценно реализованы только в управляемом приложении в 8.2 я так понимаю. В 8.1 - это такая недореализация наверно, поскольку, к примеру, убрать видимость элементов управления форм мы не можем, вообще на элементы формы мы повлиять не можем.

Подобный функционал многие реализуют уже непосредственно в конфигурациях. К примеру, регистр, туда заносим все элементы нужных форм и при их открытии проверяем - такие-то элементы выключить, такие-то вообще скрыть, такие-то поля редактировать не давать и пр. и пр.

[В моей рабочей базе примерно так и сделано :) ]

Про запросы и РЛС.
Платформа 1С даёт возможность влиять на ограничения на уровне объектов через запросы. Т.е., скажем, запрещать редактировать не всех контрагентов, а только по какому-нить признаку. И это ограничение будет работать абсолютно из всех мест базы и для любых способов. Это как раз и есть РЛС, работает механизм именно на объектном уровне. Аналогично и на чтение, и на удаление, и на добавление.

Простой способ отличить объектные права от интерфейсных - возможность написать ограничение РЛС.

Еще интересный пример - в своё время во вКонтакте профиль человека был заблокирован для просмотра, но по прямой ссылке иногда галереи фото были доступны. Т.е. ограничения на уровне интерфейса есть, а на уровне объекта - нет :).

Система прав доступа позволяет описывать наборы прав, соответствующие должностям пользователей или виду деятельности. Структура прав определяется конкретным прикладным решением.

Кроме этого, для объектов, хранящихся в базе данных (справочники, документы, регистры и т. д.) могут быть определены права доступа к отдельным полям и записям. Например, пользователь может оперировать документами (накладными, счетами и т. д.) определенных контрагентов и не иметь доступа к аналогичным документам других контрагентов.

Для реализации ограничения прав доступа в прикладных решениях предназначены специальные объекты конфигурации — Роли. Подробнее.

Интерактивные и основные права

Все права, поддерживаемые системой «1С:Предприятие 8», можно разделить на две большие группы: основные и интерактивные. Основные права описывают действия, выполняемые над элементами данных системы или над всей системой в целом, и проверяются всегда, независимо от способа обращения к данным. Интерактивные права описывают действия, которые могут быть выполнены пользователем интерактивно. Соответственно проверяются они только при выполнении интерактивных операций стандартными способами, причем в клиент-серверном варианте все проверки прав (кроме интерактивных) выполняются на сервере.

Основные и интерактивные права взаимосвязаны. Например, существует основное право Удаление, которому соответствуют два интерактивных права: Интерактивное удаление и Интерактивное удаление помеченных. Если пользователю запрещено Удаление, то и все интерактивные «удаления» также будут запрещены для него. В то же время, если пользователю разрешено Интерактивное удаление помеченных, это значит, что Удаление ему также разрешается.

Кроме того, основные права могут зависеть друг от друга. В результате образуются довольно сложные цепочки взаимосвязей, которые отслеживаются системой автоматически: как только разработчик снимает разрешение на какое-либо право, система сама снимает разрешения на все права, которые зависят от этого права. И наоборот, при установке какого-либо права разработчиком, система сама устанавливает все права, от которых это право зависит.

Например, для того, чтобы пользователь имел право Итерактивное удаление помеченных, ему необходимо обладать интерактивными правом Редактирование. Это право, в свою очередь, требует наличия интерактивного права Просмотр.

Право Интерактивное удаление помеченных требует наличия основного права Удаление. Интерактивное право Редактирование требует наличия основного права Изменение. Интерактивное право Просмотр требует наличия основного права Чтение.

Кроме этого основные права Изменение и Удаление требуют наличия основного права Чтение.

Ограничение доступа к данным на уровне записей и полей

Среди действий над объектами, хранящимися в базе данных (справочниками, документами и т. д.), есть действия, отвечающие за чтение или изменение информации, хранящейся в базе данных. К таким действиям относятся:
  • чтение — получение записей или их фрагментов из таблицы базы данных;
  • добавление — добавление новых записей без изменения существующих;
  • изменение — изменение существующих записей;
  • удаление — удаление некоторых записей без внесения изменений в оставшиеся.

Для этих действий в процессе настройки ролей могут быть заданы дополнительные условия на данные (ограничение доступа к данным). В этом случае над конкретным объектом, хранимым в базе данных, может быть выполнено запрошенное действие только в том случае, если ограничение доступа к данным для данных этого объекта принимает значение «истина». Аналогичные условия могут быть заданы и для таблиц базы данных, не имеющих объектной природы (регистров).

Система прав доступа

Для объектных таблиц и регистров сведений могут быть заданы разные ограничения для различных полей таблицы, что позволяет определять ограничения не только на уровне записей базы данных, но и на уровне отдельных ее полей:

Система прав доступа

Для регистров накопления, бухгалтерского учета и расчета условия позволяют разграничить доступ по значениям измерений (для регистров бухгалтерского учета по балансовым измерениям), а для объектных данных и регистров сведений условия позволяют разграничивать доступ к данным по любым полям.

Условия ограничения можно ввести вручную или создать с помощью конструктора ограничений доступа к данным.

Параметры сеанса

Параметры сеанса представляют собой объекты прикладного решения, которые предназначены для использования в ограничениях доступа к данным для текущего сеанса (но могут применяться и для других целей). Их значения сохраняются в течение данного сеанса «1С:Предприятия 8». Использование параметров сеанса позволяет снизить время доступа к данным при ограничении доступа на уровне записей и полей. Подробнее.

Выполнение на сервере без проверки прав

Привилегированные модули

Существует возможность назначения привилегированных модулей. В такие модули могут быть перенесены операции, использующие данные, на которые у текущего пользователя нет прав.

Например, пользователю могут быть назначены права, позволяющие создавать новый документ. Однако никаких прав на регистр, в котором этот документ создает движения при проведении, пользователю не дано. В такой ситуации процедура проведения документа может быть вынесена в привилегированный модуль, который выполняется на сервере без проверки прав. В результате, несмотря на то, что соответствующий регистр для пользователя недоступен, пользователь все же сможет проводить созданные им документы.

Привилегированный режим исполнения программного кода

Привилегированный режим исполнения кода, аналогичный режиму работы кода привилегированных модулей, можно включить/выключить средствами встроенного языка. Для этого в глобальном контексте предусмотрена процедура УстановитьПривилегированныйРежим (), а также функция ПривилегированныйРежим (), которая позволяет определить, включен привилегированный режим, или нет.

Использование привилегированного режима позволяет, во-первых, ускорить работу, так как не будут накладываться ограничения на доступ к данным, а во-вторых, позволяет выполнять операции с данными от лица пользователей, которым эти данные недоступны.

Привилегированный режим рекомендуется использовать тогда, когда с логической точки зрения нужно отключить проверку прав, или когда можно отключить проверку прав, чтобы ускорить работу. Допустимо использовать привилегированный режим тогда, когда работа с данными от лица некоторого пользователя не нарушает установленные для этого пользователя права доступа.

Возможность непосредственного удаления объектов без пометки на удаление и контроля ссылочной целостности

В 1С:Предприятии 8 существует механизм контроля ссылочной целостности, предусматривающий выполнение удаления объектов в два этапа: пометку на удаление и удаление с контролем ссылочной целостности. Однако этот механизм является сервисным и не должен использоваться всегда в обязательном порядке.

Само по себе наличие ссылок на несуществующие объекты не является ошибкой с точки зрения платформы. Например, даже при использовании механизма контроля ссылочной целостности для объектов базы данных ссылки на удаленные объекты могут быть получены из сохраненных значений настроек отчетов.

Средства встроенного языка позволяют как пометить на удаление объект, так и удалить его непосредственно без контроля ссылочной целостности. Соответственно, и для интерактивной работы пользователя предусмотрена как возможность пометки объекта на удаление, так и возможность непосредственного удаления объекта.

Для избежания ошибок стандартное действие, вызываемое в списках по клавише Del, выполняет пометку на удаление, а для непосредственного удаления используется комбинация клавиш Shift+Del.

Для того чтобы запретить конечному пользователю возможность непосредственного удаления, следует отключать право "Интерактивное удаление" для соответствующих объектов конфигурации. Следует учитывать, что по умолчанию данное право, как и все остальные права, разрешено.

Таким образом, возможность непосредственного удаления (без контроля ссылочной целостности) должна определяться разработчиком конфигурации при настройке ролей и администратором при назначении ролей пользователям. В большинстве случаев имеет смысл запрещать пользователям интерактивное удаление и обеспечить, таким образом, использование механизма контроля ссылочной целостности. Однако в некоторых случаях непосредственное удаление может быть полезно. Например, для сотрудников, выполняющих первоначальное наполнение информационной базы до начала использования системы, или для объектов, на которые не создается ссылок в других объектах конфигурации.

значок удаления в 1с

Система 1с предприятие изначально не предполагает прямое удаление каких-либо объектов из базы данных, например элементов справочников, документов, отчетов и т.д. Конечно все же можно настроить роль пользователя таким образом чтобы он сразу удалял из 1с какой-нибудь объект, без пометки на удаление , но делать этого крайне не рекомендуется. Также хотим отметить тот факт, что если даже у пользователя роль настроена на прямое удаление объектов (интерактивное удаление), все равно это не позволит удалять ему некоторые объекты в предприятии 1с, и сделать это можно будет только через пометку на удаление .

Для чего сделана пометка на удаление объектов в 1с

Давайте ответим с Вами на вопрос "Зачем сделана эта пометка для удаления?", ведь быстрее удалить объект из 1с сразу. Сделано это по нескольким причинам:

  1. Есть вероятность того, что пользователь впоследствии передумает и захочет вернуть удаленный объект, когда стоит пометка ее достаточно снять, при интерактивном удалении восстановить данные нельзя .
  2. В 1с один объект, например документ, может ссылаться на множество других объектов в системе (справочники, константы, другие документы и т.д.), и одновременно также на этот объект (в нашем случае документ), могут ссылаться множество других объектов. Если бы в системе 1с предприятие было разрешено прямое удаление объектов из базы данных, то это привело бы к ужасным последствиям, так как сразу же бы начали появляться объекты с "битыми ссылками", а это потеря данных, и не правильное функционирование базы данных, которое рано или поздно приведет к краху базы и практически полной потери Ваших данных!

Два вида удаления в 1с , понятие контроля ссылочной целостности в 1с

В программе объекты 1с можно удалить двумя способами:

  1. С помощью интерактивного удаления (прямое удаление без контроля ссылочной целостности)
  2. Через пометку на удаление (удаление с контролем ссылочной целостности)

Давайте рассмотри что такое ссылочная целостность в 1с. Но для того чтобы нам с вами ответить на этот вопрос мы должны знать что такое "битые" ссылки в 1с. Для тех кто не знает, битые ссылки в 1с это ссылки которые указывают на не используемую область памяти, то есть по сути указывают в никуда. Теперь давайте возьмем для примера любой документ в системе 1с предприятие. В нем находится множествои различных реквизитов. Эти реквизиты могут быть как простыми (примитивные типы такие как число, дата, булево), так могут быть и объектными (такие как ссылки на другие объекты системы, например различные справочники, перечисления и т.д.) Так вот контроль ссылочной целостности в 1с как раз и означает тот факт, что объект не будет удален из системы 1с до тех пор, пока на него ссылаются какие-либо другие объекты системы. Как раз пометка на удаление объектов 1с позволяет сохранить механизм ссылочной целостности в 1с, так как обработка удаления помеченных объектов не даст удалить объект пока на него ссылаются другие объекты.

Как восстановить удаленные объекты в 1с? Что происходит с объектами после их удаления из 1с?

Подобные вопросы нам задают многие люди, и ответ тут один, физическое удаления данных из 1с (с помощью способов описанных ниже) приводит к ПОЛНОМУ УНИЧТОЖЕНИЮ ФАЙЛА ИЗ БАЗЫ! Восстановление удаленных файлов из базы не возможно.

Мы всегда готовы оказать Вам своевременную помощь в обновлении системы 1С 8.3 .

Интерактивное удаление в 1с

Итак мы уже обсуждали с Вами то, что интерактивное удаление в 1с происходит без контроля ссылочной целостности, а это чревато очень плохими последствиями для системы, рекомендуется пользоваться таким удалением только с целью отладки. Чтобы включить интерактивное удаление 1с нам нужно для начала зайти в конфигуратор, распахнуть веточку Общие ---> Роли и выделить роль "Полные права".

заходим в конфигуратор и создаем роль для интерактивного удаления объектов из 1с

Теперь нажмем клавишу F9 , у нас копируется роль "ПолныеПрава" и появится еще одна "ПолныеПрава1". Откроем ее двойным щелчком мыши. Появится окно свойств роли, нажмем кнопку "Действия" ---> "Установить все права". После этого нажмем ОК. Теперь сохраним конфигурацию базы данных, для этого нажмем на синенький бочонок в левом верхнем углу, или нажмем клавишу F7. Если бочонок стал неактивным значит конфигурация сохранилась. Мы создали роль с правами на интерактивное удаление объектов из 1с .

настройка прав в кофигураторе для удаления объектов 1с напрямую

Теперь в конфигураторе откроем вкладку Администрирование ---> Пользователи.

выбираем список пользователей для которых возможна настройка интерактивного удаления 1с

Откроется список пользователей, выберите пользователя под которым Вы хотите включить интерактивное удаление 1с объектов и нажмите карандашик или F2. Откроется окно свойств пользователя, перейдите на вторую вкладку "Прочие". Там найдите ту роль которую мы с Вами копировали, в моем случае это "ПолныеПрава1", ставим галочку и жмем OK.

применяем роль и выбираем пользователя чтобы можно было интерактивно удалять объекты из 1с

После этого запускайте 1с предприятие, выбирайте того пользователя которому установили новую роль. Теперь Вы можете удалять объекты напрямую, чтобы удалить объект выберите его и нажмите сочетание клавиш SHIFT + DEL, система спросит уверены ли вы в удалении, при положительном ответе объект будет удален из системы.

Удаление объектов 1с через пометку на удаление или как удалить объекты в 1с ?

Теперь давайте рассмотрим с Вами вопрос "Как удалить объекты в 1с ?". Итак, открываем нужную нам базу данных в 1с предприятии. На скриншоте показана "Бухгалтерия государственного учреждения", щелкаем в меню по вкладке "Операции" ---> " Удаление помеченных объектов ".

выбираем из меню пункт 1с удаление , обычный интерфейс

Если у Вас управляемый интерфейс, как например в "Бухгалтерии предприятия ред. 3.0", то там Вам нужно перейти на вкладку "Администрирование", там Вы увидите подгруппу "Сервис", и уже в ней нужно выбрать " Удаление помеченных объектов ".

выбираем 1с удаление объектов , главное окно программы, управляемый интерфейс

Альтернативный способ открытия помощника удаления объектов в 1С 8.2 и 1С 8.3

А вообще если Вы не можете найти у себя в конфигурации кнопочку с помощью которой можно вызвать мастера удаления помеченных объектов 1с , то в 1С 8.2 открыть его можно следующим способом, данный способ подходит для любой конфигурации, ниже на скриншотах видно какие действия необходимо выполнить в 1С 8.2. Открываем дерево всех обработок которые находятся в системе и выбираем " Удаление помеченных объектов ".

заходим в меню с обработками

выбор из списка обработок ту которая удалит объекты из 1с

Если же Вы работаете на платформе 1С 8.3 и у Вас конфигурация с управляемым интерфейсом, то Вам необходимо включить кнопку "Все функции", как это сделать смотрите здесь.

Начало поиска помеченных на удаление объектов в 1с

Перед нами появится окно которое изображено ниже, в нем будут отражены все объекты помеченные на удаление в системе . Отмечаем галочками те которые хотим удалить, вообще их желательно удалять все, ведь они помечены на удаление, а значит они больше не нужны в системе. После того как отметили все необходимое нажимаем "Контроль".

отмечаем те объекты которые хотим удалить из 1с

Системе потребуется какое то время чтобы выполнить данную задачу, чуть позже Вы увидите окно которое изображено ниже. Обратите внимание у Вас могут быть объекты как с зелеными галочками так и с красными.

зеленые и красные галочки которые сообщают о возможности удаления объектов 1с из системы

Зеленые означают то, что объект можно удалить, красные соответственно что нет. Объект отмеченный красной галочкой нельзя удалить, так как на него ссылаются другие объекты системы, в окошке расположенном ниже Вы увидите те объекты которые ссылаются на него, и прежде чем удалить объект отмеченный красной галочкой, Вам нужно убрать ссылки на этот объект у других объектов. Что это означает на практике?

Необходимость своевременного удаления помеченных на удаление объектов в 1с . Как удалить объекты помеченные красными галочками ?

Рассмотрим пример на конфигурации "Бухгалтерии предприятия". У нас есть документ "Принятие к учету ОС", в нем соответственно указывается основное средство (например компьютер) и множество других параметров, но они нас в данный момент не интересуют. Если мы захотим удалить это ОС из нашей базы данных, то без дополнительных действий у нас ничего не выйдет. Наше ОС (компьютер) будет помечено красной галочкой при попытки его удаления. Почему? А ведь наш документ "Принятие к учету ОС" имеет ссылку на то ОС которое мы сейчас хотим удалить! Когда мы щелкнем на него в списке объектов , то увидим все объекты которые ссылаются на наше ОС, и прежде чем удалить это ОС, нам нужно сначала зайти во все эти объекты и удалить ссылки. В нашем случае это означает что нужно отменить проведение документа "Принятие к учету ОС", и удалить это ОС из документа, после чего записать документ. Теперь документ более не ссылается на наше ОС, и мы можем его удалить. Из всего этого следует одно правило, удалять объекты помеченные на удаление в 1с нужно своевременно ! Иначе потом избавиться от них может быть очень и очень проблематичным делом, ввиду того что между объектами будет большое количество ссылок. Кстати своевременное удаление объектов из 1с также имеет несколько очевидных плюсов:

  1. Увеличивается производительность системы
  2. Уменьшается вероятность ошибок пользователей
  3. Уменьшается размер вашей базы данных
  4. Не возникает "захламленности интерфейса", когда в системе имеется много помеченных на удаление объектов, проведенных документов, а также не проведенных.

В нашей компании Вы всегда получите первоклассное обслуживание программы 1С по очень приятным ценам!

Завершение удаления помеченных объектов в 1с

Теперь давайте удалим объекты до конца. Нажимаем кнопку "Удалить". Система удалит все объекты которые были отмечены зелеными галочками.

видим только те объекты которые могут быть успешно удалены из 1с

Останутся только те которые помечены красными галочками, нажимаем "Закрыть", на этом процесс удаления объектов из 1с завершен. Если у Вас что-то не получилось мы готовы подключиться к Вашей 1с удалённо и помочь решить Ваши задачи.

видим те объекты которые не удалились из 1с

1с удаление помеченных объектов, подробная видео-инструкция про удаление объектов 1с

Кто-то любит читать, а кто предпочитает смотреть. Именно для тех кто предпочитает смотреть мы сняли очень интересное видео которое содержит даже больше интересной информации по сравнению со статьей:

  • Рассказываем для чего нужна пометка на удаление в 1с
  • Показываем на примере как удалить в 1с объекты
  • Даются полезные практические советы
  • Показываем как удалять в 1с объекты помеченные красными галочками
  • Также приводится много другой полезной информации

Мы надеемся что наша статья про удаление в 1с объектов помеченных на удаление очень Вам помогла, и ответила на все Ваши вопросы.

Читайте также: