1с очистить файл перед записью
Код 1C v 8.х
Создаем переменную НаборЗаписей как набор записей регистра сведений. Поскольку мы не прочитали данные из регистра – в этот момент это пустой набор записей.
Записываем новый набор записей (пустой) с замещением всех предыдущих записей (по умолчанию параметр Замещать метода Записать() имеет значение Истина).
Данную технологию можно применять только для регистров сведений с независимым режимом записи.
Добавление, изменение, удаление записей регистра сведений
Регистр сведений в 1С Предприятии, предназначен для хранения периодической или не периодической информации в разрезе измерений. Данные в другие типы регистров могут быть записаны только с использованием "Документа регистратора". А в Регистр сведений данные могут быть записаны как с "Регистратором" так и без него.
Выбрать записи из регистра сведений
Используя метод "Выбрать" можно установить отборы и задать период для выбора записей, а также задать сортировку записей.
Добавить, изменить, удалить запись
Менеджер записи позволяет добавлять, изменять, удалять запись регистра сведений не подчиненного регистратору.
Добавить, изменить, удалить набор записей
Через набор записей регистра сведений можно добавить или изменить сразу несколько записей. Набор записей позволяет устанавливать отборы.
Очистить регистр сведений
Полностью очистить регистр сведений можно несколькими способами.
Один из самых простых способов — это удалить регистр сведений из дерева метаданных, а затем заново его создать. В таком варианте перед удалением
необходимо запомнить или записать структуру данных и настройки регистра, чтобы потом создать аналогичный.
Если необходимо удалить все записи регистра сведений программно, то можно воспользоваться пустым набором записей.
Комментарии (0)
Очистка регистра сведений в 1С 8.3
Очень часто в 1С требуется удалить большое количество записей регистра сведений. Можно делать это вручную, но, согласитесь, когда количество записей более 1000, это достаточно проблематично.
Как удалить записи регистра сведений
Удалить все записи в регистре сведений можно с помощью двух строчек кода:
Таким образом, первой строчкой кода мы создаем пустой набор записей. Второй строчкой записываем его вместо всех существующих записей. Как результат, получаем пустой регистр сведений.
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания — попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Другие статьи по 1С:
Меня волнует следующий вопрос - в чем разница и схожесть двух методов Записать и Очистить.
Хочу обсудить с форумчанами следующие нюансы.
Рассмотрим применение этих методов в процедуре ОбработкаПроведения.
1. Если установлено свойство документа как Автоматически удалять старые движения (как-то так, 1с не под рукой, пишу с телефона) , то не указав данные методы, все равно будет корректно вноситься записи в регистры. Верно?
2. Если вручную требуется удалять старые движения, то в чем разница какой метод использлвать в рамках текущей транзакции? Что Очистить, что Записать "обнуляет" записи для текущей транзакции, а при ее откате все отменяется и возвращается в исходное состояние. Другое дело, если бы мы завершили бы транзакцию, то Записать() стерла бы записи в регистры, а Очистить() очистила бы записи только для транзакции, но по ее завершении регистры бы остались в прежнем состоянии. Верно?
Пример применения методов:
(1) Все комментарии не читал, просто скажу следующее
Первое: Очистить() - никак не отражается на СУБД и никак с Записать() не связана. Это стандартная команда, как и у любой коллекции в памяти. Вызывается исключительно по необходимости, если в какой-то момент нужны гарантии того, что коллекция в памяти пустая. Тоже самое, как Очистить() у табличной части. Если после этого запишем, то запишется пустая табличная часть. Особенность только в том, что набор записей регистра всегда изначально пустой и для перезаписи старого набора его нужно вычитывать явно.
Второе Нужно четко разграничивать явную работу с набором записей и неявную работу через коллекцию наборов записей документа. При явной работе с конкретным набором записей разницы никакой нет. Что явно вызывается для набора записей то и будет происходить. Все ньюансы относятся к работе целиком с коллекцией наборов записей документа - явной или неявной. Так, на неявную работу Движения.Записать() уже влияют и признаки удаления движений, и выборочная запись наборов с признаком "Записывать". Это все для того, чтобы гарантировать единообразный порядок записи наборов.
1) Если у набора стоит свойство Записывать = Истина, то набор будет записан сразу после выполнения кода "КонецПроцедуры" обработки проведения модуля объекта. Если "Удалять движения автоматически при отмене проведения", то будет ЗАМЕНЕН хранящийся набор записей, который будет получен с отбором по регистратору.
2) Не совсем понял вопрос. На набор движений транзакции всегда нужно накладывать отбор. Метод Очистить() очищает набор движений не тот что в БД, а только тот набор, который формируется в транзакции. Этот метод применяется в основном только после чтения (методом Прочитать()) набора движений транзакции с установленным отбором.
(3) Glebis,
1. а мне казалось, что запись будет в момент исполнения метода движения Записать(). А при отмене транзакции (Например, отказ = истина) в момент исполнения КонецПроцедуры записи в регистре будут возвращены в исходное состояние.
2. Например, делаем записи:
В данном примере, Если "Удалять движения автоматически при отмене проведения" установлен в свойствах, нужен ли метод Записпть() до формирования записей?
(5) timeforlive, перед началом формирования движений используйте метод очистить. Движения могут быть автоматически прочитаны и если не очистить, то будут дубли в регистре.
Если логика проведения требует контроля остатков по факту проведения (новый режим контроля остатков), тогда используйте Движения.Записать(), а не конкретное движение регистра. Так запишутся только движения помеченные записывать=истина. И не будет повторной записи по окончании обработчик проведения.
Для данного примера:
Чтобы записать движения те, у которых установлен флаг "Записывать" в Истина, после чего этот флаг будет снят.
(10) На экзамене по платформе сказали, что записать() надо использовать всегда, а Чистов в своем видео использует только при оперативном проведении
(20) Спасибо за информацию. Думаю - надо посмотреть в документации ИТС про требования к отраслевому Решению - как оно на практики то правильно, хех.
Чтобы применить "Очистить", нужно вначале прочитать набор записей,
Если использовать "Записать" для набора записей то все зависит от параметра Записать(Замещать), если он истина то новый набор заместит текущий, Аналог очистить.
Иначе новые записи будут добавляться к старому набору, если перед этим был применен метод "Прочитать" иначе также как и при установке по умолчанию новое затрет старое.
А еще, если не стоит Удалять Автоматически - то есть процедура "Обработка удаления проведения" где и прописывается что делать при отмене проведения.
1) Принудительная запись набора транзакции методом Записать() не рекомендуется жёлтой библией (уровень 1С совместимо, по моему), т.к. набор будет записывать дважды: методом Записать(), и при Записывать = Истина и "Записывать движения" = "Записывать Выбранные" в конце процедуры ОбработкаПроведения. Есть смысл этого метода только для нового метода проверки остатков и ооочень редко для формирования одинаковой последовательности записей наборов в регистры, что предотвратит возможную взаимоблокировку при конкуренции транзакций.
2) В такой форме без отбора сотрутся ВСЕ записи регистра. Метод Записать() вообще незачем использовать, набора и так запишется. Записывать = истина по умолчанию. Если "Удалять движения автоматически при отмене проведения", то платформы ПЕРЕД записью для каждого подчинённого регистра сделает примерно следующее:
(7) Glebis, про 2 пункту совсем не верно.
ВСЕ записи точно не сотрутся.
При "Удалять движения автоматически при отмене проведения" ничего "такого" не сделает.
Пустой набор перед обработчиком проведения записывается только в режиме "Удалять автоматически".
Да, виноват, не написал что пустой набор пишется только при отмене проведения (в т.ч. при перепроведении).
Мое мнение - для того, чтобы очистить движения (в транзакции) для предотвращения дублей при записи, следует использовать метод Очистить() .
А метод Записать() следует использовать только для прямого его назначения - записи движения в регистр (в том числе пустые движения, т.е. с целью очистить движения в БД).
(12) hroa, вы правы. (13) spacecraft, в случае перепроведения метод Очистить() не спасет от дублей, т.к. в БД есть записи документа, который мы перепроводим. То есть, нужно:
После чего получить результат запроса, в котором обращаемся к регистру "Остатки". Если метод Записать() не применить, то будут считаны движения настоящего документа.
А метод Очистить() использовать в случае, когда явно был прочитан набор записей (методом "Прочитать"), как правильно заметил (4) vkozak.
(16) spacecraft, отнюдь, в книге "приемы программирования" про Записать так и говорится. Буду за компом, найду и зацитирую.
за ссылку спасибо, читал, потому и возникли вопросы и разногласия касптельно настоящей темы
(16) spacecraft, метод Очистить() очищает полученные записи регистра. Получить их можно явно (см. выше) и не явно, когда система сама считывает в след. случаях:
1. свойство Удаление Движений установлено как Не удалять движения;
2. при открытии УФ, если на ней размещено поле с движениями
3. установлен флаг ИсползоватьВсегда в УФ для Движений
4. при открытии обычных форм (всегда)
Записывать()
Очистить()
Записать()
Запрос.Выполнить
Движения.Р.Добавит()
// если 1 из нескольких, то
Дижения.Р.Записать()
// если по всем реоистрам, то
Движения.Записать()
Дубли в регистре и анализ актуальных данные без учета движений самого документа это совсем разные вещи. Для анализа данных в регистре рекомендуется новый способ проведения.
Ну и Движения.Р.Записать() рекомендуется делать только в особых случаях. Как правило лучше совсем этого избегать.
Записывать - Указываем, что набор записей в БД запишется после метода записать.
Очистить - очищаем набор записей. (вдруг что-то считали)
Записать - записываем набор записей (в нашем случае пустой)
Данные конструкция нужна для того чтобы при проведение предыдущие движения Регистра не влияли на логику проведения.
Шаблон создаётся с помощью установочного комплекта (дистрибутива). Такой дистрибутив есть на диске, идущем в комплекте с программой. Свежий можно получить у обслуживающего франча или в самой 1С, на линии консультаций.
Как удалить все документы (очистить базу) в 1С 8.3?
Как обнулить 1с
Часто возникает необходимость создать ещё одну базу данных. При этом, нужна база данных такая же как у вас уже есть (бухгалтерия, торговля и т.п.) только пустая (без данных, но с полным функционалом). Условно, создание новой базы можно разбить на несколько вариантов:
- Создание базы данных из шаблона.
- Создание базы данных из конфигурационного файла (с расширением *.cf).
- Создание пустой базы данных, используя другую базу данных.
Рассмотрим несколько случаев в которых можно это сделать.
Создание базы данных из шаблона
Этот способ самый простой. Программа 1С все делает за пользователя. Опишем его предельно кратко и ясно:
- Открываем список Ваших информационных баз (запускаем ярлык 1С).
- Нажимаем кнопку "Добавить".
- Оставляем переключатель в положении "Создание новой информационной базы", нажимаем "Далее".
- Указываем, что хотим создать базу из шаблона. Разворачиваем дерево с доступными шаблонами и выбираем нужный. Шаблон определяет тип базы: Бухгалтерия предприятия, Управление Торговлей, Зарплата и т.п. Нажимаем "Далее".
- Указываем как база данных будет называться в списке, нажимаем "Далее". *
- Указываем каталог, в который хотим поместить базу данных, или оставляем по-умолчанию. ** Нажимаем "Далее".
- Оставляем переключатели в положении "Выбирать автоматически" и нажимаем "Готово".
* — в данной статье рассматривается самый простой (файл-серверный) вариант создания базы. При создании базы данных на сервере 1С:Предприятие в режиме "клиент-сервер", лучше обратиться к специалисту. Поэтому в п. 5 мы оставляем переключатель в положении "на данном компьютере или в локальной сети".
** — Конечно, можно оставить все по-умолчанию, однако, не очень надежно хранить вашу базу данных в папке "Мои документы" или в целом на системном диске (диск C:\). Если есть такая возможность, рекомендуем создать папку специально для хранения Вашей информационной базы не на диске C:\. В этом случае путь может выглядеть, например, так: "E:\Базы_1С\Бухгалтерия_Ромашка\".
Рассмотренный способ очень прост, однако имеет ряд недостатков. Если не обновлять шаблоны конфигураций постоянно, то по прошествии нескольких периодов, таким способом можно будет создать только устаревшую версию базы данных. Либо шаблоны конфигураций могут просто отсутствовать. Поэтому мы рекомендуем воспользоваться Вам способом, рассмотренным в следующем разделе.
Создание базы данных из файла конфигурации (*.cf)
Файл конфигурации — это файл, определяющий, какой будет база данных: Бухгалтерия предприятия, Управление торговлей, Зарплата и Управление персоналом и т.д. Можно сказать, это "рыба" будущей базы данных. Сразу стоит сказать, что если у Вас нет файла конфигурации, его можно легко выгрузить из другой базы данных. Об этом подробно будет написано в последнем разделе этой статьи.
Итак, прежде всего нам нужно создать папку, в которой мы будем хранить нашу новую базу данных.
- Создаете в любом месте на компьютере пустую папку. Хорошо продумайте название и место расположения папки. Желательно, чтобы это был не системный диск (не диск C:\).
- В списке информационных баз (даже если там пока нет ни одной базы) нажмите на кнопку "Добавить".
- Отвечая на вопросы помощника добавления новой базы, пройдите все пункты:
- Выберите пункт "Создание новой базы", нажмите "Далее".
- Далее переключите "точку" на пункт "Создание информационной базы без конфигурации для разработки. ". Нажмите далее.
- Укажите как база будет называться. Нажмите далее.
- Нажмите на кнопку выбора ". " и укажите папку, которую Вы создали в п. 1. Причем в диалоге выбора, который откроется, необходимо войти в нужную папку и только потом нажать на кнопку "Открыть". В результате в поле "путь" должен прописаться путь к указанной папке.
- Нажимаете кнопку "Далее".
- Оставляя все по-умолчанию, нажимаете на кнопку "Готово".
- Итак, мы создали пустую базу без конфигурации в нашей папке.
Сейчас созданная база не имеет ни данных, ни какой-либо функциональности. Т.е. она бесполезна. 🙂 Чтобы эта функциональность у базы появилась, нужно загрузить в неё Конфигурационный файл (с расширением *.cf). Сделать это тоже очень просто:
- Заходите в созданную пустую базу в режиме "конфигуратор": для этого в списке информационных баз становитесь на нужную и нажимаете на кнопку "Конфигуратор".
- В открывшемся окне выбираете меню "Конфигурация" — "Открыть конфигурацию" (Если пункт меню недоступен, значит конфигурация уже открыта).
- Далее выбираете меню "Конфигурация" — "Загрузить конфигурацию из файла" и выбираете файл с расширением *.cf
- Далее на все вопросы отвечаете положительно, на все соглашаетесь. Готово!
После того как закончатся все процедуры загрузки и сохранения, запускайте базу данных в обычном режиме и начинайте работу. Таким образом мы сделали пустую базу 1С 8 без данных, но с полной функциональностью.
Создание базы данных, используя другую базу данных
Если перед Вами стоит задача создать базу данных такую же, как у Вас уже есть, но пустую. Вам понадобится Конфигурационный файл (с расширением *.cf), выгруженный из имеющейся базы. Сделать это очень просто. Для этого:
- Заходите в имеющуюся базу в режиме "конфигуратор": для этого в списке информационных баз становитесь на нужную и нажимаете на кнопку "Конфигуратор".
- В открывшемся окне выбираете меню "Конфигурация" — "Открыть конфигурацию" (Если пункт меню недоступен, значит конфигурация уже открыта).
- Далее выбираете пункт меню "Конфигурация" — "Сохранить конфигурацию в файл".
- Выбираете место, куда будет сохранен файл конфигурации и задаете ему имя. Например, переходите на рабочий стол и указываете "Конфигурация_Бухгалтерии.cf". Нажимаете "Сохранить".
* Очистка информационной базы от данных
На практике часто возникает необходимость очистить какую-либо базу от данных полностью. Пусть формулировка задачи не вводит Вас в заблуждение! В этом случае просто создайте новую пустую базу на основании существующей, как описано в предыдущих разделах, а старую можете удалить или поместить в архив.
Из этой статьи вы узнаете, как в удалить в 1С объект при помощи программного кода, а также как поставить пометку на удаление.
В предыдущей статье, я рассказывал, как интерактивно удалить в 1С объект, и что для этого нужно настроить в правах конфигурации:
Программное удаление справочника в 1С
Для того чтобы программно удалить экземпляр справочника в 1С, необходимо воспользоваться методом Удалить объекта справочника. Для демонстрации разберу пример: разместим на форме обработки реквизит с ссылкой на справочник Контрагенты.
И при выполнении команды формы обработки, будем удалять этот экземпляр справочника.
В этом коде удаление экземпляра справочника я производил в серверном контексте. Сначала при помощи метода ПолучитьОбъект() из ссылки был получен экземпляр объекта справочника, а потом этот экземпляр удален при помощи метода Удалить(). В реквизит Контрагент управляемой формы я записал пустую ссылку, чтобы отображение ссылки удаленного объекта не вводило в заблуждение.
Замечу, что программное удаление произошло при таких правах на объект.
Право «Интерактивное удаление» снято, то есть мы не можем непосредственно удалять экземпляр этого объекта, но мы можем удалить его программно (благодаря установленному праву Удалить).
Замечу, что при программном удалении объекта контроль ссылочной целостности не происходит! Поэтом не следует злоупотреблять этой возможностью!
Программное удаление документа в 1С
Документ программным способом удаляется также, как и справочник: нужно воспользоваться методом Удалить() экземпляра объекта документа. Например, на форме этой обработки я размещу реквизит с ссылкой на документ.
А при выполнении команды документ будет удаляться.
Как и в случае справочника, программное удаление документа стало возможным благодаря установленному праву «Удалить».
Пометка на удаление программно в 1С
Для того, чтобы программно пометить на удаление объект необходимо воспользоваться методом объекта УстановитьПометкуУдаления.
Для документов он имеет следующий синтаксис: УстановитьПометкуУдаления(), где параметр ПометкаУдаления имеет тип булево.
Если — Истина, то пометка будет установлена, если Ложь – пометка будет снята.
Переделаем предыдущий пример: на форме разместим две команды.
Одна команда будет устанавливать пометку на удаление у документа в реквизите, вторая снимать.
В этом коде, в процедуре УстановитьНаСервере() мы устанавливаем пометку на удаление, передав в метод УстановитьПометкуУдаления параметр Истина, а в процедуре СнятьНаСервере() снимаем пометку, передав Ложь.
Для объектов справочников метод УстановитьПометкуУдаления имеет следующий синтаксис:
Параметр ВключаяПодчиненные имеет тип Булево, и если установлено Истина, то будут помечены на удаление подчиненные элементы (если справочник иерархический), а также все объекты подчиненного справочника (если есть).
Продемонстрируем работу второго параметра: на форму поместим реквизит с типом булево, реквизит с типом ссылка на справочник Контрагенты , и сделаем две команды: установить и снять.
В обработчиках команд будем устанавливать и снимать пометку на удаление.
У справочника Контрагенты включим иерархию.
И также сделаем подчиненный справочник.
Если мы установим пометку для группы с флажком подчиненные.
То будет помечена группа и все входящие в неё объекты.
А без установленного флага Подчиненные будет помечена только группа.
Тоже самое с объектами из подчиненного справочника. При установленном флаге Подчиненные.
Будет помечен на удаление и сам элемент справочника, и объекты подчиненного ему справочника.
А иначе, будет помечен только сам элемент.
Более подробно и основательно начальные вопросы программирования в 1С есть вы можете изучить в
Книга «Программировать в 1С за 11 шагов»
Изучайте программирование в 1С в месте с моей книгой «Программировать в 1С за 11 шагов»
Книга написана понятным и простым языком — для новичка.
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Научитесь понимать архитектуру 1С;
- Станете писать код на языке 1С;
- Освоите основные приемы программирования;
- Закрепите полученные знания при помощи задачника.
О том как разрабатывать под управляемым приложением 1С, читайте в книге Книга «Основы разработки в 1С: Такси»
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
- Очень доступный и понятный язык изложения
- Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
- Поймете идеологию управляемого приложения 1С
- Узнаете, как разрабатывать управляемое приложение;
- Научитесь разрабатывать управляемые формы 1С;
- Сможете работать с основными и нужными элементами управляемых форм
- Программирование под управляемым приложением станет понятным
Промо-код на скидку в 15% — 48PVXHeYu
Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog
Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму.
Очень часто нужно очистить базу от всех существующих документов. Чаще всего такое бывает, когда предприятие меняет юридическое лицо. Справочники при этом нужно оставить, а документы удалить. Рассмотрим как с помощью простой обработки можно пометить на удаление все документы в 1С 8.3.
Внимание! Перед запуском обработки обязательно сделайте резервную копию базы данных 1С. Данные изменения необратимы.
Удаление всех документов 1С для пользователей
После того как копия сделана, необходимо скачать специальную обработку — Удаление всех документов в 1С 8.3. Она универсальна и подойдет для любых конфигураций 1С на базе 8.2 и 8.3.
Для открытия обработки выберите пункт главного меню «Файл — Открыть»:
Где нужно выбрать путь к скачанной обработке на Вашем жестком диске.
После открытия обработка выглядит очень просто:
Получите 267 видеоуроков по 1С бесплатно:
Когда выполнение завершено, можно убедиться, что документы помечены на удаление, зайдя в любой журнал документов:
Для программистов
Обработка работает очень просто: она перебирает все виды документов, а затем обходит все документы конкретного типа.
Иногда возникает ситуация, когда из программы надо удалить все документы, очистить базу, оставив одни справочники. Сделать это можно несколькими способами. Рассмотрим их все, чтобы определить, какой будет удобен именно вам. В любом случае, удаление документов из базы начинается с проставления пометок на удаление. Это несложное действие, но если у вас все же возникнут вопросы, обращайтесь за консультацией по программе 1С к нашим специалистам – мы с радостью вам поможем.
Удаление документов в журнале документов
Если нам надо удалить все счета, как пометить на удаление сразу группу документов? Зайдем в журнал документов «Счета покупателям».
Выделить все документы в журнале, можно нажав комбинацию клавиш «Ctrl+A». Затем или нажав правой кнопкой мышки, или в кнопке «Еще» выбрать команду «Пометить на удаление/Снять пометку». Также можно это сделать, нажав кнопку «Del» на клавиатуре.
Документы помечены на удаление. При этом если в журнале мы установим отбор (по дате, контрагенту), то выделятся только те документы, которые отобразятся в отборе.
Установка пометки на удаление с помощью обработки «Универсальный подбор и обработка объектов»
Еще один способ пометить на удаление все документы – с помощью обработки, доступной на диске ИТС или на сайте 1С (используя поиск) – УниверсальныеПодборИОбработка.epf. Работает она, правда, лишь при запуске программы в режиме обычного приложения. Для управляемого приложения есть аналогичная обработка, найти ее можно поиском на страничках разработчика.
Чтобы открыть нашу базу в обычном режиме, зайдем в Конфигуратор и откроем пункт меню «Сервис-Параметры». Установим переключатель запуска приложения в «Толстый клиент (обычное приложение)». Нажимаем кнопку «Применить».
Перейти к нашей базе в обычном режиме можно, запустив ее через меню «Сервис» — «1С:Предприятие», или используя комбинацию клавиш «Ctrl+F5».
В окне нашей программы через меню «Файл» — «Открыть» (или кнопку на панели инструментов) открываем нашу обработку.
В ней мы задаем объект поиска, в нашем случае – документы, которые мы хотим удалить. Но действия с ними происходят поочередно, т.е. выбрать мы можем только один объект для обработки. Если надо мы можем установить отбор для документов (например, ограничить группу документов датой).
Посмотрим ее действие на примере документов «Счет покупателю». Предположим, нам надо удалить из информационной базы все введенные документы этого вида. Установим документ «Счет покупателю» в поле «Объект поиска» и сделаем отбор, нажав кнопку «Найти объекты». В списке нам отобразятся все найденные документы.
Перейдем на закладку «Обработки». Из списка доступных обработок выберем «Пометка на удаление», используя стрелку, перенесем ее в правое окно. Нажмем кнопку «Выполнить».
Аналогичные действия проделываем с другими ненужными документами.
Запустим 1С в обычном режиме работы и проверим наш результат. Документы «Счета покупателям» помечены на удаление.
После установки пометки на удаление на все документы, которые нужно удалить, идем в пункт меню «Администрирование» и запускаем процедуру «Удаление помеченных объектов», установив режим «Автоматическое удаление всех помеченных объектов», и нажимаем «Удалить». После проведения контроля ссылочной целостности, документы будут удалены.
Удаление всех документов из программы без контроля ссылочной целостности
Этот способ хорошо использовать, когда надо очистить полностью информационную базу от всех документов. Сделать это можно с помощью обработки «Универсальный обмен данными в формате XML». Найти ее можно в разделе «Все функции»-«Обработки».
Эта обработка предназначена для обмена данными, но в ней имеется закладка «Удаление данных». Хотя разработчики предупреждают, что использовать ее не рекомендуется, т.к. может нарушиться ссылочная целостность информации, ею мы воспользуемся, т.к. нам она нужна именно для полной очистки информационной базы. Устанавливаем галочку, что удалять мы будем все документы.
При значительном объеме данных эта процедура может занять очень длительное время. Поэтому рекомендуется выполнять удаление по частям.
Работая в программах 1С, рекомендуется периодически удалять помеченные объекты. Накапливаясь в программе, они приводят к увеличению информационной базы, снижается быстродействие программы, появляются недочеты в работе пользователя. Ошибки могут возникнуть, если пользователь случайно выберет помеченный на удаление объект, что часто бывает при копировании документов, создании дублей записей и потом установки пометки на удаление на одну из них и т.п. При установлении даты запрета редактирования на определенную дату будет проблемно удалить такие объекты. Поэтому необходимо вовремя освобождать программу от ненужной информации самостоятельно или осуществлять данные действия силами специалистов в рамках сопровождения 1С 8.3.
Решение проблемы, при удалении очень большого количества документов. (250 000) штук!
Когда SQl «выжрал» всю память и свободное место на диске?
Иногда возникает ситуация, когда нужно удалить большое количество документов (например, 250 000!).
И как вы не стараетесь, сервер SQL «съедает»
сперва всю оперативную память, а затем и все место на диске (например, диске С:).
Если у вас возникали подобные ситуации, то вот способ, который поможет вам с этой проблемой.
Решается запуском VBS скрипта.
Что он делает, создает подключение через COM к информационной базе, (клиент серверный вариант работы), запускает внешнюю обработку и вызывает экспортную процедуру.
При этом вам не надо запускать 1С — ку !
Обработка (модуль объекта):
Чтоб сделать экспортную процедуру код пишем в модуле объекта обработки.
Читайте также:
- Как выглядит бог в реальной жизни фото на небесах без фотошопа живой
- Большой набор программ для управления взаимодействием всех компонентов компьютера в процессе работы
- Не работает none fl studio
- Как посчитать количество ячеек с одинаковым значением в excel
- Как применить кривые только к одному слою в фотошопе