1с удалить сопоставление объекта

Обновлено: 07.07.2024

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

Пометка на удаление объектов в 1С

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

Есть две важные причины, обосновывающие подобное положение дел:

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

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

Виды удаления

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

  • Интерактивное или прямое удаление – проверка целостности имеющихся ссылок не происходит.
  • Через пометку на удаление – в таком случае происходит контроль над сохранением целостности ссылок.

Отдельно стоит акцентировать внимание на самом понятии ссылочной целостности в 1С. Для большей ясности сначала стоит понять значение выражения «битая ссылка» — это линк, указывающий на несуществующий или неактивный объект памяти. Контроль ссылочной целостности исключает возможность удаления объекта, пока он задействован в ссылочной структуре. И это главное предназначение пометки на удаление – защитить от удаления файл, на который ссылаются другие файлы.

Виды удаления и восстановление удаленных объектов в 1С

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

Первый способ

Данный способ годится только для информационных баз с включенной возможностью изменения ИБ.

Как удалить объект из системы 1С?

Как удалить объект из системы 1С?

Главный недостаток интерактивного удаления – отсутствие контроля ссылочной целостности, что в будущем имеет просто фатальные последствия.

Как удалить объект из системы 1С?

На этом этапе нужно выполнить копирование роли «Полные права». Сделать это можно при помощи клавиши F9. В результате появляется еще одна активная роль с наименованием «Полные права 1». Закрепить действие кликом на клавишу «ОК».

Дальнейшие действия направлены на сохранение конфигурации базы данных. Сделать это можно одним из двух способов:

  • щелчком по иконке в виде синего бочонка;
  • нажатием клавиши F7.

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

Итог – создание роли с правами на интерактивное удаление объектов из 1С.

Как удалить объект из системы 1С?

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

Как удалить объект из системы 1С?

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

Как удалить объект из системы 1С?

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

Второй способ

Рассмотрим вариант более безопасного удаления объектов. Начинается процесс с открытия нужной базы данных, выбора пункта меню Операции – Удаление …:

Как удалить объект из системы 1С?

При использовании системы 1С с управляемым интерфейсом сначала нужно кликнуть на Администрирование, затем Сервис - Удаление …

Как удалить объект из системы 1С?

Пользователи, которые не досконально знают меню платформы 1С, могут испытывать сложности с самостоятельным поиском в интерфейсе ссылок на мастер удаления помеченных объектов 1С. Тогда можно воспользоваться цепочкой Операции – Обработка – Удаление помеченных объектов, для приложений с обычными формами.

Как удалить объект из системы 1С?

Как удалить объект из системы 1С?

И Функции для технического специалиста - Удаление помеченных объектов, для приложений с управляемыми формами. Если пункт меню Функции для технического специалиста не отображается, его необходимо включить в настройках – включить режим технического специалиста.

Как удалить объект из системы 1С?

Как удалить объект из системы 1С?

Как удалить объект из системы 1С?

Как удалить объект из системы 1С?

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

Как удалить объект из системы 1С?

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

Как удалить объект из системы 1С?

Будут предложены возможные действия со связанными объектами. Необходимо выбрать действия для каждого связанного объекта и нажать «Повторить удаление» - удалятся помеченные объекты на удаление, и будут произведены указанные действия со связанными объектами. Операцию удаления будет завершена.

Как удалить объект из системы 1С?

Во избежание системных ошибок важно своевременно удалять все отмеченные файлы на удаление.

Особенности сравнения и объединения конфигураций в режиме обновления

Для сопоставления объектов при объединении конфигурации в 1С:Предприятии 8 используются свойство "Имя" объекта метаданных и его внутренний идентификатор. Однако в различных вариантах сравнения алгоритм сопоставления объектов разный. Прежде чем подробно описать различные варианты, сначала опишем правила изменения внутреннего идентификатора. Идентификатор в пределах одной конфигурации никогда не изменяется. Идентификатор не изменяется при выгрузке конфигурации в cf или dt файлы (включая файлы поставки cf и обновления cfu ). Идентификатор не изменяется при использовании механизма групповой разработки (в процессе перемещений между конфигурацией и хранилищем). Идентификатор всегда изменяется при копировании объекта, в том числе в процессе объединения конфигураций. Поясним на примере. Создаем новую конфигурацию. Выполняем команду " Конфигурация - Сравнить, объединить с конфигурацией из файла. ". Программа обнаружит что текущая конфигурация пустая и предложит выполнить полную загрузку (аналогично команде " Конфигурация - Загрузить конфигурацию из файла "). Если согласится на предложенный вариант, то в результате все объекты сохранят свои идентификаторы. Если же отказаться и выполнить обычное объединение, то все объекты идентификаторы поменяют, хотя логически получатся две одинаковые конфигурации.

Теперь рассмотрим алгоритмы сопоставления объектов. Существуют три варианта.

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

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

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

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

Влияние сопоставления объектов на скорость сравнения конфигураций

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

  1. Среди сопоставленных объектов нет пар с различными идентификаторами.
  2. Среди несопоставленных объектов нет возможных пар с одинаковыми идентификаторами.

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

Замечания по методике использования механизма

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

Удаление объектов поставщика

Рассмотрим варианты удаления объекта поставщика.

Удаление пользователем

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

Удаление поставщиком

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

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

значок удаления в 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с объектов помеченных на удаление очень Вам помогла, и ответила на все Ваши вопросы.

Из этой статьи вы узнаете, как в удалить в 1С объект при помощи программного кода, а также как поставить пометку на удаление.

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

Программное удаление справочника в 1С

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

Реквизит управляемой формы 1С

И при выполнении команды формы обработки, будем удалять этот экземпляр справочника.

В этом коде удаление экземпляра справочника я производил в серверном контексте. Сначала при помощи метода ПолучитьОбъект() из ссылки был получен экземпляр объекта справочника, а потом этот экземпляр удален при помощи метода Удалить(). В реквизит Контрагент управляемой формы я записал пустую ссылку, чтобы отображение ссылки удаленного объекта не вводило в заблуждение.

Замечу, что программное удаление произошло при таких правах на объект.

Права на справочник 1С

Право «Интерактивное удаление» снято, то есть мы не можем непосредственно удалять экземпляр этого объекта, но мы можем удалить его программно (благодаря установленному праву Удалить).

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

Программное удаление документа в 1С

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

Реквизит управляемой формы 1С

А при выполнении команды документ будет удаляться.

Как и в случае справочника, программное удаление документа стало возможным благодаря установленному праву «Удалить».

Права на документ 1С

Пометка на удаление программно в 1С

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

Для документов он имеет следующий синтаксис: УстановитьПометкуУдаления(<ПометкаУдаления>), где параметр ПометкаУдаления имеет тип булево.

Переделаем предыдущий пример: на форме разместим две команды.

Команды на управляемой форме

Одна команда будет устанавливать пометку на удаление у документа в реквизите, вторая снимать.

В этом коде, в процедуре УстановитьНаСервере() мы устанавливаем пометку на удаление, передав в метод УстановитьПометкуУдаления параметр Истина, а в процедуре СнятьНаСервере() снимаем пометку, передав Ложь.

Для объектов справочников метод УстановитьПометкуУдаления имеет следующий синтаксис:

Параметр ВключаяПодчиненные имеет тип Булево, и если установлено Истина, то будут помечены на удаление подчиненные элементы (если справочник иерархический), а также все объекты подчиненного справочника (если есть).

Продемонстрируем работу второго параметра: на форму поместим реквизит с типом булево, реквизит с типом ссылка на справочник Контрагенты , и сделаем две команды: установить и снять.

Реквизиты и команды на управляемой форме 1С

В обработчиках команд будем устанавливать и снимать пометку на удаление.

У справочника Контрагенты включим иерархию.

Иерархия справочника в 1С

И также сделаем подчиненный справочник.

Если мы установим пометку для группы с флажком подчиненные.

Пометка на удаление в 1С

То будет помечена группа и все входящие в неё объекты.

Пометка на удаление в 1С

А без установленного флага Подчиненные будет помечена только группа.

Пометка на удаление в 1С

Тоже самое с объектами из подчиненного справочника. При установленном флаге Подчиненные.

Пометка на удаление в 1С

Будет помечен на удаление и сам элемент справочника, и объекты подчиненного ему справочника.

Пометка на удаление в 1С

А иначе, будет помечен только сам элемент.

Пометка на удаление в 1С

Программировать в 1С за 11 шагов

  1. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  2. Научитесь понимать архитектуру 1С;
  3. Станете писать код на языке 1С;
  4. Освоите основные приемы программирования;
  5. Закрепите полученные знания при помощи задачника.

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

Основы разработки в 1С такси

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


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

можно оплатить вручную:

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

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

Механизм сравнения и объединения конфигураций обеспечивает сравнение:

  1. общих свойств объектов прикладного решения (справочников, документов и т.д.);
  2. отдельных реквизитов, табличных частей объектов прикладного решения;
  3. форм (сравниваются тексты модулей, тексты описаний и макеты).

Все результаты сравнения можно просмотреть в детальном виде.

Вызов механизма сравнения и объединения конфигураций осуществляется с помощью меню "Конфигурация":

Вызов механизма сравнения и объединения конфигураций

Установка соответствия объектов в 1С

При запуске режима сравнения система анализирует сравниваемые конфигурации и устанавливает соответствие между их объектами, исходя из имен:

Установка соответствия объектов в 1С

При объединении можно установить режим объединения для каждого объекта конфигурации.

В случаях, когда

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

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

Сначала отменяем автоматические соответствия:


Затем устанавливаем вручную:


Сравнение конфигураций 1С

Алгоритмы сопоставления объектов сравниваемых конфигураций:

  • Сравнение произвольных конфигураций:
    1. Выполняется сопоставление по имени объекта.
    2. Если для каких-то объектов пару найти не удалось, выполняется сопоставление по идентификатору.
  • Сравнение родственных конфигураций. Имеются ввиду конфигурации, про которые можно точно утверждать, что они являются различными версиями одной и той же конфигурации (примеры - сравнение основной конфигурации с конфигурацией базы данных или с конфигурацией хранилища).
    1. Выполняется сопоставление только по идентификатору объекта. Имя объекта не используется.
  • Сравнение с конфигурацией поставщика.
    1. Выполняется сопоставление по идентификаторам, но при этом идентификаторы не обязательно должны быть одинаковы.

Его особенность связана с наличием двух вариантов поддержки:

  1. с включенной возможностью изменений;
  2. без возможности изменений.

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

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

В качестве сравниваемых конфигураций могут выступать:

  • основная конфигурация;
  • конфигурация базы данных;
  • конфигурация, сохраненная во внешнем файле;
  • конфигурация поставщика.

Таким образом, например, возможно сравнение двух конфигураций, сохраненных во внешних файлах, или сравнение основной конфигурации с конфигурацией поставщика.

Сравнение и объединение конфигураций 1С

Результат сравнения конфигураций отображается в специальном окне. При этом разработчик имеет возможность настроить состав информации, отображаемой в этом окне и установить отображение:

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

настройка состава информации о сравниваемых конфигурациях

Для каждого отличающегося объекта можно просмотреть детальную информацию об отличиях.

Кроме того, информация об отличиях может быть получена в виде отчета (текстовый или табличный документ).



Объединение конфигураций 1С

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


Установка режима объединения конфигураций возможна:

  • для всей конфигурации в целом;
  • для каждого элемента прикладного решения в отдельности.


Особенности сравнения (объединения) конфигураций 1С:

  1. При объединении с приоритетом загружаемой конфигурации текст модулей, измененный в основной конфигурации, будет закомментирован, а текст из загружаемой конфигурации будет добавлен.
  2. При выполнении сравнения, объединения с конфигурацией из файла, в режиме "Взять из файла" измененный объект будет замещен полностью.


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

Сравнение конфигураций 1С на разных языка

  • новые всегда добавляются;
  • совпадающие по именам заменяются, если приоритет у загружаемой, иначе не изменяются.


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

Сохранение (загрузка) настроек объединения конфигураций

Настройки объединения конфигураций (или настройки обновления конфигурации на поддержке) можно:

  • сохранять в xml файл;
  • загружать из xml файла;
  • добавлять из xml файла.
Рисунок "Сохранение (загрузка) настроек объединения конфигураций"

Сохранение (загрузка) настроек объединения конфигураций

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

Использование для сравнения и объединения модулей конфигурации 1С внешней программы

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

В конфигураторе 1С:Предприятия уже содержатся параметры командной строки для запуска самых распространённых программ:

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

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

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

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