Метод очистить в 1с

Обновлено: 01.07.2024

Из этой статьи вы узнаете, как в удалить в 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С и как его почистить.

очистка временных файлов в 1С

Кеш 1С

Однако очень часто платформа 1С неправильно отрабатывает кеширование конфигурации, и в результате мы получаем неадекватное поведение конфигурации.

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

Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>

Получите понятные самоучители по 1С бесплатно:

Делается это следующим образом:

шаг 1

Каталог, где находится кеш 1С

Найти каталог, где хранятся временные файлы 1С, их можно увидеть в меню настройки в списке ИБ:

2 шаг

Мы получили адрес вроде

C:\Documents and Settings\username\Application Data\1C\1Cv82\tmplts\1c

Папки с кэшем расположены по адресу

C:\Documents and Settings\username\Application Data\1C\1Cv82\

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

Как выглядят папки с кешом

Все выделенные каталоги являются кешем БД 1С, их можно смело удалять. Перед удалением обязательно необходимо выйти из ИБ.

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

Можно делать и так, кеш очищается, однако временные файлы так и остаются на жестком диске.

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

Необходимо в дополнительных параметрах запуска (в списке баз кнопка Изменить, последняя закладка) прописать команду /ClearCache. Пример использования:

Атрибут ClearCash в свойствах базы

Видео по очистке кэша в программах 1С:

Другие статьи по 1С:

Поддержите нас, расскажите друзьям!

СПРОСИТЕ в комментариях!

ClearCache ключ работает только для чистки кэша тонкого клиента. Некоторые особо квалифицированные считают ClearCache программой! и требуют ее скачать .

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

If Exist %USERPROFILE%\AppData\Roaming\1C\1Cv82 (
rem Удаляем все файлы
Del /F /Q %USERPROFILE%\AppData\Roaming\1C\1Cv82\*.*
Del /F /Q %USERPROFILE%\AppData\Local\1C\1Cv82\*.*

Спасибо за ценнейший комментарий :))
Кстати, ищем авторов для новых статей!)))

Спасибо. Пригодился способ 3. А главное работает.

Спасибо. Все получилось по второму способу.

Спасибо за замечание, добавил 🙂

Удаление конфигурации из списка может привести к полному сбросу настрое торгового оборудования для конфигурации Розница 2.0. Привет от 1С!

Можно уточнить откуда информация и для какой версии УТ11 это актуально?
Из личного опыта: настройка подключаемого оборудования привязывается к рабочему месту (связка [компьютер]+[пользователь компьютера]), а к пользователю 1С не имеет никакого отношения. На кассе работают

10 кассиров, а торговое оборудование я настраивал только один раз (из под своей учётки 1С).

Забыл уточнить: настраивалось на УТ11.1 (11.1.9.55).

ОЧЕНЬ верное и полезное замечание !

Неистово плюсую. Чистка кэша убивает настройки подключаемого оборудования.

не чиста кэша, а удаление какого-то там файлика (который dhjlt живёт в каталоге App). И не сбраывает настройки, а делает их недоступными (в файлике хранится строка, вроде GUID, а при сносе файла и последующей загрузке создаётся файл с новой такой строкой, не похожей на предыдущую). Лечение такой мелочи у специалиста занимает 10-15 минут. Но, конечно, не надо до такого доводить.

не совсем так, см. выше

А как-нибудь можно параметр ClearCache записать в файл списка информационных баз v8i?

Сам нашел посмотрев в %AppData%\1C\1CEStart\ibases.v8i
Нужно прописать
AdditionalParameters=/ClearCache

Огромное спасибо. Способ 1 очень пригодился.

Легче всего найти кэш через поиск файлов(Ctrl+F).
В настройках поиска ставим искать в скрытых и системных файлах и ставим на поиск файл: 1cv8.pfl.

Попробуйте найти так: системный диск(где Windows установлена):\Пользователи (или Users)\Нужный пользователь\AppData\Local\1c

Для ускорения работы 1С сделайте RAM-диск (диск в системе, который на самом деле находится в оперативной памяти) и присвойте букву R

В автозапуск всем пользователям поставить следующий скрипт ram_disk.bat

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