Очистка базы средствами SQL (от 8.1 до 8.3)

10.08.17

База данных - Чистка данных

Быстрая очистка базы 1С средствами SQL. Область применения: Любая конфигурация 1С

Скачать файлы

Наименование Файл Версия Размер
Очистка базы SQL для 8.3
.epf 35,11Kb
787
.epf 2.0.1.3 35,11Kb 787 Скачать
Очистка базы SQL для 8.2 (1.3.10)
.epf 32,42Kb
630
.epf 1.3.10 32,42Kb 630 Скачать
Очистка базы SQL для 8.1
.epf 25,98Kb
111
.epf 25,98Kb 111 Скачать

Помните, что манипулирование данными посредством SQL-запросов запрещено политикой фирмы 1С.

Итак, описание обработки.

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

1) Удалить документы:

 - Удалить все документы из базы, либо интересующий вас вид документов.

 - Удалить документы за определенный период

 - Удалить документы по Организации

2) Удалить справочники

3) Удалить регистры сведений

4) Удалить регистры накопления, регистры бухгалтерии, регистры расчета.

5) Очистить последовательность документов, бизнес-процессы, задачи

Обновление (03.04.2012) 

Обновлена обработка.

Добавлено удаление по определенному документу!!!. Вид документа можно выбирать, либо из списка документов, либо, если отмечено все, то самим выбирать вид документа при выборе.

Обновление (28.11.2012) 

Добавлена версия для платформы 1С 8.1

Обновление (13.12.2012) 

Добавлены дополнения к объектам метаданных выводимых на форме, а именно:

- Добавлено наименование таблицы в терминах СУБД (имя таблицы в SQL-сервере)

- Добавлен размер занимаемый таблицей в SQL-сервере

Обновление (23.10.2013) 

- Добавлено удаление элементов справочников с отбором по реквизитам удаляемого справочника

- Добавлено удаление записей регистров накопления за период

- Исправлены некоторые ошибки при работе

Обновление (18.11.2013) 

- Добавлено удаление документов "Только помеченные на удаление", т.е. удаление документов с признаком ПометкаУдаления = ИСТИНА

Обновление (09.02.2015) 

Небольшая доработка:

- Добавлена возможность  "Не ограничивать время ожидания выполнения команды SQL", понадобится тем, у кого большие объемы данных хранятся в регистрах и при попытке их удалить приходит ответ от сервера SQL "... время ожидания истекло ..."

Обновление (27.05.2016) 

Доработка:

- Добавлена возможность  "Не ограничивать время ожидания выполнения команды SQL" для всех объектов конфигурации, а не только для регистров накопления.

Обновление (06.06.2016) 

Доработка:

- Исправлена ошибка с удалением справочников.

- Добавлена возможность предварительно проверить соединение с SQL не выполняя каких-либо удалений.

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

Обновление (15.09.2016) 

Доработка:

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

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

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

Обновление (16.09.2016) 

Доработка:

- Добавлено удаление табличных частей справочников при удалении элементов справочников.

Обновление (07.02.2017) 

Доработка:

- Добавлена обработка для управляемых форм ( также для режима такси).

- Механизм отборов реализован через средства СКД

Ограничения в версии для управляемых форм:

      - На данный момент работает лишь удаление с произвольным отбором документов и справочников.

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

Обновление (16.03.2017) 

Доработка:

- Исправлена ошибка:  при выборе всех регистров сведений они не очищались сразу.

Обновление (28.03.2017) 

Доработка:

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

Обновление (30.03.2017) 

Доработка:

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

Обновление (10.08.2017) 

Доработка:

- Исправлена ошибка:  при удалении регистров бухгалтерии за период, не удалялись данные из таблиц.

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

Очистка базы средствами SQL

См. также

Удаление данных с отбором и построением дерева ссылок в базах 1С 8.1-8.3 УТ 10.3./11, БП 2/3, ЗУП 2.5/3, КА 1.1/2, УНФ 1.6/3.0

Чистка данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 1С:Управление торговлей 10 1С:Управление торговлей 11 Платные (руб)

Данные обработки помогут Вам легко и, главное быстро, выполнить удаление любых данных в Ваших базах 1С на платформах 8.1-8.3. Обработки помогут легко просмотреть связи ссылок в виде дерева, выбрать что удалять, а что нет, используя любые отборы. Это позволит уменьшить объем лишней и не нужной информации в справочниках и документах, планах видов характеристик и др. объектах и облегчит работу с данными пользователям и Вам. Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. (Обновление от 04.10.2023, версия 4.2)

9600 руб.

22.02.2013    135907    248    144    

418

Универсальное выборочное удаление данных из базы 1С (любые конфигурации на упр.формах: БП 3.0, УТ 11, КА 2, ERP, УНФ, ЗУП 3, Розница и т.д.)

Чистка данных Платформа 1С v8.3 Управляемые формы 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

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

3350 руб.

28.11.2019    24308    46    16    

58

SALE! 10%

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

Чистка данных Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Позволяет удалить организации из любых программ на управляемых формах (БП 3.0, УТ 11, КА 2, ERP 2, ЗУП 3.0, УНФ, Розница 2.0 и пр.). Главное требование - программа должна содержать справочник "Организации". Реализован самый быстрый алгоритм непосредственного удаления объектов. Работает даже на базах большого размера. Для ускорения работы алгоритма не запускается проверка контроля ссылочной целостности. Проверку учета можно запустить отдельно с помощью дополнительной обработки. Необходимо перед удалением самостоятельно проверить базу на наличие перекрестных ссылок разных организаций в одном документе. Эту дополнительную обработку проверки перекрестных ссылок по запросу предоставляем бесплатно нашим покупателям.

3980 3582 руб.

16.03.2015    113696    181    75    

217

Замена Номенклатуры+Характеристики

Чистка данных Логистика, склад и ТМЦ Платформа 1С v8.3 План видов характеристик 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Настраиваемая обработка, позволяющая заменить пару: Номенклатура+Характеристика в документах, их движениях и независимых регистрах сведений. Без перепроведения. Поможет, если вы по каким-то причинам решили отказаться от характеристик

3600 руб.

04.08.2015    41106    88    70    

49

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

Чистка данных Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

2400 руб.

23.08.2021    9255    15    3    

20

Очистка дублей в синхронизированных базах (УТ, БП, РТ, УНФ)

Чистка данных Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

3960 руб.

27.06.2018    18804    10    3    

15

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

Чистка данных Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

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

1200 руб.

21.01.2022    7122    5    6    

9

Очистка кэша 1С. Исполнитель

Чистка данных Инструментарий разработчика Платформа 1С v8.3 Абонемент ($m)

Очередная вариативная очистка кэша 1С с помощью Исполнителя 3.0.2.2.

1 стартмани

25.10.2023    4529    4    SerVer1C    25    

22
Вознаграждение за ответ
Показать полностью
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
99. asved.ru 36 10.06.15 11:08 Сейчас в теме
1) Режим разделения данных понимает?
2) Процесс транзакционный? Что будет, если в середине процесса возникнет исключение?
3) При полной очистке таблицы - delete from или truncate table?
100. leoff 05.08.15 12:42 Сейчас в теме
Добрый день, приобрели Вашу разработку, воспользовались.
Нет ли возможности удаления Регистров Бухгалтерии за период.
У нас после удаления документов, почему то остались движения (проводки) по регистру бухгалтерии. ТиИ не спасло. Проводки на месте.
101. leoff 05.08.15 12:50 Сейчас в теме
Ошибка при тестировании и исправлении.
Какие мысли?
Прикрепленные файлы:
102. isn 15 18.09.15 11:08 Сейчас в теме
Дорогие друзья, прошу прощения, это конечно против правил, но не могли бы Вы поделиться обработкой, на текущей момент с инфостарта скачать не могу. заранее премного благодарен откликнувшимся.
103. CaSH_2004 372 26.05.16 22:21 Сейчас в теме
(0) Уважаемый автор - обработка еще поддерживается? Пожелания и ошибки указаны год назад а результата не видно, жалко - нужная обработка но если не работает (например удаление по организациям) тогда нет смысла качать.
104. CaSH_2004 372 26.05.16 23:14 Сейчас в теме
Скачал - а куда деваться? Работу нужно работать...
Вот хочу поделится впечатлениями, может автор прочтет, но и другим нужно знать что же это за зверь.
Труд действительно колоссальный - за что огромное спасибо, жаль только как всегда есть косяки.

Про функционал:
Не все работает как заявлено:
Самое главное - удаление движений по документам просто не работает, например удаляю "Приходный ордер на товары" (_Document202) (размер таблицы SQL: 40 KB)
Все движения остаются на месте - в частности РН "Товары на складах", странно как у автора он работал (судя по его комментам) - просто Регистратор = <ссылка не найдена...>. Придется наверное прогонять потом и РН
И еще важное: при случайно попытался удалить документы с фильтром по организации которую не указал (бывают документы случайно записывают без организации - а что тут такого?), так вот выдало закономерную ошибку:
{ВнешняяОбработка.ОчисткаБазы.МодульОбъекта(891)}: Ошибка при вызове метода контекста (Execute)
			RecordSet = Connection.Execute(КомандаВыполненияSQL);
по причине:
Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][ODBC SQL Server Driver][SQL Server]Неправильный синтаксис около конструкции "=".

Но все же такое бывает что не указывают организацию - можно же случайно и затереть ее в паре миллионов документов нечаянно а потом захотеть их удалить - и что делать?

Про скорость:
Без замера действительно сложно, отмена проведений документов (с регистрами и все как полагается) в УТ 10.3 с кол-вом документов 3,75 млн. обычным способом у меня удаляло ~ 70 тыс./час, тут сложно сказать - замер отсутствует, но SQL и есть SQL - очень быстро, и быстрее наверное не будет :) Хотя вское бывает - вот тут Очистка базы средствами SQL (управляемое приложение) обещают еще быстрее, но там УФ,а у меня ОФ.

Про интерфейс:
Удивил, то ли автор больше SQL-щик, а не 1С-ник, но рисовать "псевдографику" в табличном интерфейсе - это по моему уже полный изврат :) (даже интересно как реализован - будет время посмотрю) , я сначала не поверил скриншоту - но действительно в одной колонке СпискаЗначений выводится 2 колонки при помощи пробелов и | - один вопрос ЗАЧЕММммм????
Наверно поэтому же нет и возможности сохранить настройки типовыми средствами, проверить подключение к SQL не производя никаких действий (ну не удалять же документ для проверки ?), вопросов лишних при выполнении действий тоже не требуется - ну нажал случайно не туда и бог с ним что удалятся все документы, нужно копию иметь и думать прежде чем жать :)

Так что просьба если автор не забросил эту обработку:
- починить удаление движений вместе с объектом
- добавить замер: начало и конец как общие так и в частности, а также сколько удалено объектов, с какой скоростью
- добавить тестирование подключения к SQL и вопрос на выполнение действия

Ну а если забросил, что-бы не пропадать такому добру, может дашь добро на допиливание и выкладывание с ссылкой на первоисточник? Без спроса как бы некрасиво.
105. CaSH_2004 372 26.05.16 23:26 Сейчас в теме
Что-то все висит на половине дела, вспомнил про галочку "Не ограничивать время ожидания выполнения команды SQL" - но она расположена на закладке "Регистры накопления, бухгалтерии" - так она и работает только при работе с ними? Или она влияет на работу с SQL всегда?
Через час руганулось:
{ВнешняяОбработка.ОчисткаБазы.МодульОбъекта(746)}: Ошибка при вызове метода контекста (Execute): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][ODBC SQL Server Driver]Истекло время ожидания запроса
106. Cobranet123 370 27.05.16 12:38 Сейчас в теме
(105) CaSH_2004,

Добрый день.
Обработка - да, на стадии поддержки. Только времени на поддержку мало было, сейчас времени побольше стало, продолжу допиливать ее.
По поводу галочки "Не ограничивать время ожидания выполнения команды", она срабатывала не верно, даже на той вкладке, и была только для регистров накопления, потому что как они считаются в конфигурациях самыми большими и объемными по хранящимся в них информации, поэтому и добавлял галочку эту только там, для других объекто конфигурации она не срабатывала.
Сейчас внес измненения и теперь галочка "Не ограничивать время ожидания выполнения команды" есть на всех страницах с удаляемыми объектами, и ее работа исправлена.
Можете проверить.
Спасибо за конструктивную критику в предыдущем посте, теперь возьмусь за исправление косяков и недостатков этой обработки. Спустя время, взгляд на обработку изменился и недостатки видятся больше чем в момент когда ее только создаешь ))
Выложил новую версию обработки 1.3.5, добро пожаловать на тестирование функционала по ограничению времени выполнения команды в SQL ))
107. CaSH_2004 372 27.05.16 18:30 Сейчас в теме
(106) Спасибо! Займусь обязательно, но я там в личку кинул предложения по оптимизации - жду ответа
108. CaSH_2004 372 28.05.16 11:37 Сейчас в теме
Протестировал основную ошибку - осталась: движения по удаляемым документам не удаляются!!!
Из пожеланий:
1. Форма чтобы разворачивалась
2. Сохранение реквизитов формы
3. Объекты в виде таблицы, а не списка
4. Вывод сообщений о начале/завершении выполнения обработки в целом и каждого объекта в частности с дублированием в файл - иногда вылетает SQL от нагрузки даже и ничего непонятно что удалилось то, да и смотреть сутки на зависшую обработку как-то неинтересно.
5. Написать в форме что номер версии изменился - с этим у вас прямо болезнь :)
109. CaSH_2004 372 29.05.16 01:40 Сейчас в теме
Я так понимаю обработка предназначена для быстрого удаления большого объема данных средствами SQL, вроде плюсов много, а вот у меня что то все уперлось в 2 проблемы из-за которых весь смысл использования (без переписки) ее теряется:
1. При удалении одного вида документов ~1 млн. вылетало сначала по таймауту - это полечили, стало теперь вылетать из-за переполнения журнала транзакций (ACTIVE_TRANSACTION), вроде это решается путем настройки самого SQL, но я в этом не силен да и заедую этим не я а штатный сисадмин которого еще поймать нужно. Пока решил путем дописания помесячного удаления
2. Движения удаляемых документов не удаляются

Вроде все можно исправить - но вот вопрос: а как все кто плюсовал пользуются ей? На 1-2 документах просто для проверки что можно? В боевом использовании она какая-то сырая, автор - без обид. Все что ли дописывают или я что-то не так делаю?
110. CaSH_2004 372 29.05.16 14:31 Сейчас в теме
А вот наконец то я понял - это ДЕМО версия! В режиме удаления определенного выбранного документа автор делает все необходимые действия по очистке всех связанных таблиц и тогда действительно все работает, но чтобы сделать групповую очистку - тут нужно либо все переписывать либо сидеть и караулить когда очистятся документы чтобы очистить регистры, а потом очистить и последовательности...
Мда-а-а-а, автоматизация зашкаливает. (0) Хоть бы написал что-ли как очищать правильно за период, хоть бы не тратил время на перелопачивание всей обработки :(

При таком ручном подходе остается вопрос глобальный - а как при групповой очистке удалять то регистры сведений по регистратору? На закладке РС - нет периода, на закладке РН - нет РС - замкнутый круг какой-то?
Или все лечат потом базы через ТиИ? Но это как-то коряво.

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

Еще раз изучил код удаления документа и есть подозрение (в SQL не силен) что движения удаляются не по ссылке, а по Дата+Номер:
КомандаВыполненияSQL = "SELECT _idRRef FR OM "+СтрокаСтруктуры.ИмяТаблицыХранения+" WHERE ([_Date_Time] = CONVERT(DATETIME, '"+СтрокаДаты+"', 102)) AND (_Number = '"+мДокумент.Номер+"')"+СтрокаПометки;

Если это так то это даже не ДЕМО-версия, а просто просто бето-версия какая-то а может и даже альфа :)
Может кто-то развеет мои подозрения? А то как то страшно даже на рабочей базе такие эксперименты ставить, на тестовой то уже устал играться 3-й день.
111. Cobranet123 370 29.05.16 17:02 Сейчас в теме
(110) CaSH_2004,
Добрый день.
Описание обработки идет в самом начале и если каждый понимает по своему описание, то поэтому и открыт код, для тех кому что-то не нравится. Вам никто не запрещает не использовать эту обработку и искать другую.
112. CaSH_2004 372 29.05.16 20:47 Сейчас в теме
(111) не обижайтесь. Я вроде говорил про явные недочеты обработки и то она явно не выполняет своего предназначения, а вы предлагаете ей не пользоваться - получается что вы с ними согласны? Тогда зачем ее выкладывать? Если показать как это делать - то это и есть бета-версия и спасибо за такой вариант, но можно было бы и четко сказать что удалять нужно не только документы, но и их движения и еще регистрацию - мне как 1С-ку это как-то не естественно.
Я наверное что-то пропустил, но не поленился и прочитал описание повторно, и все равно до меня не доходит, уточните - где в описании сказано что удалять документы НУЖНО в несколько этапов? То что это можно - и то понятно с трудом. А частичное удаление данных кому-то было когда то было нужно? Может только разве-что чтобы базу повредить. Где-то сказано что при удалении одного документа удаляются все его движения а при групповом удалении - нет?
113. CaSH_2004 372 29.05.16 20:51 Сейчас в теме
К тому же я задал несколько вполне конкретных вопросов - в ответ вы предлагаете не пользоваться обработкой, смешно :)
Если вы выкладываете свой труд на общее пользование то нужно же понимать что будет не только восторги, но и критика и отвечать на нее нужно конструктивно, с вашей стороны я же вижу какую-то детскую обиду. Печально. Я не хотел вас обидеть, а всего лишь указывал на недостатки разработки которые сильно мешают и даже в принципе не дают ей полноценно пользоваться.
114. Frew 31.05.16 23:10 Сейчас в теме
Здравствуйте, при очистке справочка любого справочника вылазит ошибка
{ВнешняяОбработка.ОчисткаБазы.МодульОбъекта(413)}: Значение не является значением объектного типа (Строки)
СтрокаТЗ = ТЗОбъектовИУсловий.Строки.Найти(ТекСтрока.ИмяТаблицы,"ИмяМетаданных");
115. Cobranet123 370 01.06.16 11:28 Сейчас в теме
(114) Frew,
Добрый день. Скорее всего не выбрали галочкой справочник в котором устанавливаете условие для удаления, Если есть возможность пришлите принтскрин того как отмечаете и что выбираете.
117. Cobranet123 370 06.06.16 07:15 Сейчас в теме
(116) Frew,
Добрый день.
Данная ошибка исправлена.
118. rodinyr 3 15.08.16 10:15 Сейчас в теме
А какой процедурой в обработке получаете список таблиц SQL&
119. Cobranet123 370 15.08.16 12:29 Сейчас в теме
(118) rodinyr,
Добрый день.
ПолучитьСтруктуруХраненияБазыДанных
120. vodorosl 71 14.09.16 13:18 Сейчас в теме
И кто из вас украл обработку у другого :) ??
При сравнении 1с-ка показывает что они полностью идентичны. http://infostart.ru/public/346488/
121. Cobranet123 370 14.09.16 14:30 Сейчас в теме
(120) forsagforsag,
На самом деле, я автор этой разработки (на днях выйдет новое обновление), а вот другая, написана как видно из описания на основе моей обработки.
122. vodorosl 71 15.09.16 13:00 Сейчас в теме
(121)
Про то что Вы автор верю :)
Там автор пишет что на основе вашей делал НО типа быстрее работает... НО Она идентична с Вашей. Скачал обе, загрузил одну в конфу и командой "Сравнить-обЪединить с обработкой из файла" привет - показывает что отличий нет :)))
123. vodorosl 71 15.09.16 13:01 Сейчас в теме
Есть проблема - удаляю один единственный справочник. На него ссылок нет. После удаления загружаю из копии то что удалил - индекс не уникален и все тут :(
124. vodorosl 71 15.09.16 13:04 Сейчас в теме
Стоп, приношу свои извинения - ссылки для скачки наверное перепутал :))
125. Cobranet123 370 15.09.16 14:20 Сейчас в теме
(124) forsagforsag,
Бывает. Вышла кстати новая версия сегодня, с новыми плюшками, так что милости прошу тестить ))
126. vodorosl 71 15.09.16 21:42 Сейчас в теме
(125)
Удаление таб/частей в справочниках есть?
Недочет в вашей обработке нашел - не рубит табчасти справочников и эти таблицы в скуле болтаются.
1 миллион элементов справочника грохнул, а представьте сколько там строк по этим табчастям...... :(
Пришлось все средствами скуля делать.
В описании добавьте что табчасти справочников не гу-гу, а то очень коряво получается.
127. Cobranet123 370 16.09.16 05:49 Сейчас в теме
(126) forsagforsag,
Зачем добавлять в описание?, я лучше изменю чтобы таб части справочников тоже удалялись. Просто за столько времени никто не высказался про это, поэтому и как то забыл про таб.части справочников. Сорри. Исправлю обязательно в ближайшее время!
129. vodorosl 71 16.09.16 16:27 Сейчас в теме
(127)
[ никто не высказался про это, поэтому и как то забыл про таб.части справочников]
Если не проверять оно не всплывает :)))) А так просто и не заметишь. Значит не проверяет никто.
128. Cobranet123 370 16.09.16 07:48 Сейчас в теме
(126) forsagforsag,
Выложил новую версию, в ней удаляются ссылки элементов справочников в таблицах SQL отвечающих за табличные части справочников.
NSHMU6; vodorosl; +2 Ответить
130. KroVladS 34 20.09.16 14:42 Сейчас в теме
(0)Cobranet123
Добавьте функционал КопироватьОтборВоВсеСтроки

Процедура КоманднаяПанельСписокДокументовКопироватьОтборВоВсеСтроки(Кнопка)
	
	СтрокиОтбора = ЭлементыФормы.СписокДокументов.ТекущиеДанные.Отбор;
	Если СтрокиОтбора.Количество() = 0 Тогда
		Предупреждение("Не задан отбр для копривания");
		Возврат;
	КонецЕсли;

	Для Каждого СтрокаДереваВыгрузки Из ЭлементыФормы.СписокДокументов.Значение.Строки Цикл	

		ПостроительОтчета.Текст = "ВЫБРАТЬ
		|	*
		|ИЗ
		|	" + СтрокаДереваВыгрузки.ИмяМетаданных;
		ПостроительОтчета.ЗаполнитьНастройки();
		СтрокаДереваВыгрузки.Отбор.УстановитьДоступныеПоля(ПостроительОтчета.ДоступныеПоля);

		Для Каждого СтрокаОтбора Из СтрокиОтбора Цикл
			ПредставлениеОтбора = СтрокаОтбора.Представление;		
			
			Если СтрокаДереваВыгрузки.Отбор.ПолучитьДоступныеПоля().Найти(ПредставлениеОтбора) <> Неопределено Тогда
				СтрокаДереваВыгрузки.Отбор.Добавить(ПредставлениеОтбора);
				ЗаполнитьЗначенияСвойств(СтрокаДереваВыгрузки.Отбор[ПредставлениеОтбора], СтрокаОтбора);				
			КонецЕсли;
		КонецЦикла;
	КонецЦикла;

КонецПроцедуры
Показать
131. KroVladS 34 21.09.16 10:38 Сейчас в теме
Обновление (15.09.2016)

Доработка:

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


на больших объёмах, при отборах НеРавно, вываливаеться с ошибкой "Недостаточно памяти".
Таблицы целиком нормально удаляет.
132. Cobranet123 370 21.09.16 11:07 Сейчас в теме
(131) KroVladS,
Хорошо, проверю.
133. KroVladS 34 21.09.16 12:09 Сейчас в теме
(132)
Предполагаю что проблема тут:
РезультатЗапросаТЗ = Запрос.Результат.Выгрузить(); 

может лучше на выборку переделать?

-----

А ещё лучше не удалять найденные строки по одной а сгенерировать в запросе на удаление в условие на основании отбора.
"DELETE FR OM "+ТекСтрока.ИмяТаблицыХранения+" WH ERE ["+ИмяПоляХраненияОтбора+"] " + ВидСравненияОтбора + " " + HexЗначенияОтбора;

Но это я так понимаю дюже долго делать.
134. Cobranet123 370 21.09.16 17:13 Сейчас в теме
(133) KroVladS,
А ещё лучше не удалять найденные строки по одной а сгенерировать в запросе на удаление в условие на основании отбора.

Вы совершенно правы, именно это я и планирую сделать следующим шагом, потому что на больших объемах средства 1С тормозят очень сильно, поэтому у меня как раз и есть такая мысль чтобы сразу в момент отбора формировать sql запрос на требуемое действие. Так что пока придется не так много сразу задавать для отбора, чтобы 1С смогла это переварить. Потому что реализация того, что я задумал, потребует какого-то времени.
135. KroVladS 34 26.09.16 12:45 Сейчас в теме
Ещё дополнения по быстрому удалению табличных частей

Убрать ветви выбора:
ИначеЕсли (Лев(ТекСтрока.Метаданные,Найти(ТекСтрока.Метаданные,".")-1) = "Документ") И (ТекСтрока.Назначение = "ТабличнаяЧасть") Тогда

И
ИначеЕсли ТекСтрока.Назначение = "РегистрацияИзменений" Тогда
//Очищаем таблицу регистрация изменений по ссылкам документов


вместо них удалять ТЧ через интер джойны до удаления документа, примерно так:

ИначеЕсли (Лев(ТекСтрока.Метаданные,Найти(ТекСтрока.Метаданные,".")-1) = "Документ") И (ТекСтрока.Назначение = "Основная") Тогда
	
	МассивТаблиц = Новый Массив;
	МассивТаблиц.Добавить(ТекСтрока.Метаданные);
	СтруктураБДТаблицы = ПолучитьСтруктуруХраненияБазыДанных(МассивТаблиц, Истина);
	СтруктураБДТаблицы.Сортировать("Назначение Убыв");
	
	Для Каждого СтрТаблицы Из СтруктураБДТаблицы Цикл
		
		Если СтрТаблицы.Назначение = "ТабличнаяЧасть" Тогда
			
			Промежуточный = Сред(СтрТаблицы.ИмяТаблицыХранения,2,СтрДлина(СтрТаблицы.ИмяТаблицыХранения));
			ИмяПоляТЗ = "_"+Сред(Промежуточный,1,Найти(Промежуточный,"_")-1)+"_IDRRef";
			
			КомандаВыполненияSQL = "DELETE FR OM "+СтрТаблицы.ИмяТаблицыХранения+
			" FR OM "+СтрТаблицы.ИмяТаблицыХранения+" AS TabTCH "+
			" INNER JOIN " + ТекСтрока.ИмяТаблицыХранения+" AS TabOSN "+
			" ON  TabTCH."+ИмяПоляТЗ+" = TabOSN._idRRef "+
			" WHERE TabOSN.["+ИмяПоляОрганизации+"] <> "+мОрганизация;
		
			Состояние("Обработка: " + СтрТаблицы.Метаданные + ", "+СтрТаблицы.Назначение);

		ИначеЕсли СтрТаблицы.Назначение = "РегистрацияИзменений" Тогда 
			
			ИмяПоляТЗ = "_IDRRef";
			
			КомандаВыполненияSQL = "DELETE FROM "+СтрТаблицы.ИмяТаблицыХранения+
			" FROM "+СтрТаблицы.ИмяТаблицыХранения+" AS TabTCH "+
			" INNER JOIN " + ТекСтрока.ИмяТаблицыХранения+" AS TabOSN "+
			" ON  TabTCH."+ИмяПоляТЗ+" = TabOSN._idRRef "+
			" WH ERE TabOSN.["+ИмяПоляОрганизации+"] <> "+мОрганизация;					

			Состояние("Обработка: " + СтрТаблицы.Метаданные + ", "+СтрТаблицы.Назначение);

		ИначеЕсли СтрТаблицы.Назначение = "Основная" Тогда
			
			КомандаВыполненияSQL = "DELETE FROM "+ТекСтрока.ИмяТаблицыХранения+" WH ERE ["+ИмяПоляОрганизации+"] <> "+мОрганизация;

			Состояние("Обработка: " + СтрТаблицы.Метаданные + ", "+СтрТаблицы.Назначение);
		КонецЕсли;
	
		Попытка	
			Connection.Execute(КомандаВыполненияSQL);
		Исключение				
			ПричинаОтказа = ОписаниеОшибки();
			Сообщить(Строка(ТекСтрока.Метаданные) + ПричинаОтказа);
			Сообщить(КомандаВыполненияSQL);
			Продолжить;
		КонецПопытки;
	КонецЦикла;						
Показать
136. Cobranet123 370 27.09.16 06:33 Сейчас в теме
(135) Спасибо за предложения, рассмотрю его и учту обязательно!
У вас видимо старая версия обработки, если есть еще такие поля как "мОрганизация" ))), но мысль вашу я понял, идея мне нравится, так думаю сократится большое число условий и циклов в коде.
139. Cobranet123 370 25.01.17 07:34 Сейчас в теме
(135)
Здравствуйте.
Попробовал сделать изменения для попытки удаления строк сразу из нескольких таблиц, но не получилось, у SQL ограничение, что командой Delete можно удалять только данные из одной таблицы, поэтому использование join в конструкции delete недопустимы.
Если есть у кого-то варианты как можно удалить сразу из нескольких таблиц одной командой - готов вас выслушать ))
149. KroVladS 34 17.02.17 16:42 Сейчас в теме
(139)
Попробовал сделать изменения для попытки удаления строк сразу из нескольких таблиц, но не получилось, у SQL ограничение, что командой Delete можно удалять только данные из одной таблицы, поэтому использование join в конструкции delete недопустимы.
Если есть у кого-то варианты как можно удалить сразу из нескольких таблиц одной командой - готов вас выслушать ))


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

"использование join в конструкции delete недопустимы" у меня всё работало :)
137. xten 47 06.10.16 22:25 Сейчас в теме
138. Cobranet123 370 07.10.16 05:52 Сейчас в теме
(137) xten,
Пока в разработке, в ближайшие месяц-два появится 100%!
140. Tarlich 115 02.02.17 18:27 Сейчас в теме
1 ) можно ли очистить журнал документов до определенной даты?
2 ) можно ли очистить табличные части документов до определенной даты без удаления движений данных документов?
141. Cobranet123 370 03.02.17 07:26 Сейчас в теме
(140)
1) Можно очистить до определенной даты, вам просто в отборе по нужному журналу документов необходимо выставить ограничение в дате < нужной даты, соответственно будет сформирована выборка на объекты журнала до определенной даты и затем будут удалены.
2) Очищать определенный табличные части у документов - такой возможности нету, да и не представляю зачем такое может пригодиться. В документах почистить определенные таб.части...
Движения хранятся в регистрах накопления, при удаленнии документов, все движения по регистрам остаются, но при этом теряются ссылки. Поэтому такое действие крайне не рекомендую делать...
И помните все действия лучше делать сначала на копии. Помните о сохранности данных...
142. vodorosl 71 03.02.17 10:08 Сейчас в теме
(141)""Очищать определенный табличные части у документов - такой возможности нету, да и не представляю зачем такое может пригодиться""
Например удаление типовыми средствами с проверкой ссылочной целостности.
База более 100 гиг, проверка не успевает за ночь.
В скуле напрямую почищены все табчасти - имеем:
1) Меньше база - быстрее удаление
2) Те документы, что не удалились и например в качестве докпартии висят теряют свои табчасти уменьшая базу.
143. Cobranet123 370 03.02.17 10:22 Сейчас в теме
(142)
Ну если только в этом случае, что документ является партией для другого....
Но при этом тогда у вас полностью ТИИ не пройдет..... (а именно тестирование ссылочной целостности)
144. vodorosl 71 03.02.17 11:00 Сейчас в теме
(143)По какой причине ТИИ не пройдет?
Еще документ является ДокРасчетов для другого, в УТ10.3 при ведении договоров по ДокРасчетов и свертке - очень актуально, когда бардачек с расчетами :)
145. vodorosl 71 03.02.17 11:03 Сейчас в теме
А, наверное понял. Вы имеете ввиду как писал пост (141) "можно ли очистить табличные части документов до определенной даты без удаления движений данных документов?"
тут да, даже разговор не завожу при таком раскладе :)) Только удалять движения.
146. Cobranet123 370 03.02.17 11:12 Сейчас в теме
(145)
Вообще да, именно в контексте поста 141 я и говорил ))
147. Cobranet123 370 07.02.17 08:58 Сейчас в теме
Урааа. Наконец то вышла версия для управляемых форм!!!

- Добавлена обработка для управляемых форм ( также для режима такси).

- Механизм отборов реализован через средства СКД

Ограничения в версии для управляемых форм:

- На данный момент работает лишь удаление с произвольным отбором документов и справочников.

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

Будет естественнно дорабатываться функционал!
Пробуем, тестируем, делимся впечатлениями от обработки на управляемых формах ))
148. lexi 1 17.02.17 15:31 Сейчас в теме
ДД!
Данная обработка для любых конфигураций? смогу ля ей воспользоваться в Документообороте?
150. Cobranet123 370 20.02.17 06:19 Сейчас в теме
(148)
Здравствуйте.
Да, обработка подходит для любых конфигураций и для документообора в том числе ))
151. bulpi 215 13.03.17 19:29 Сейчас в теме
Спасибо, помогло. Нашел 1 баг в версии для 8.2 : По умолчанию все флажки для регистров сведений включены, но при нажатии на кнопку "Очистить" ничего не происходит, хотя индикатор % чего-то показывает. А вот если снять все флажки, а потом выборочно поставить, то все работает.
152. Cobranet123 370 16.03.17 06:49 Сейчас в теме
(151)
Здравствуйте.
Ошибка исправлена, спасибо за замечание ))
153. bulpi 215 24.03.17 16:42 Сейчас в теме
Попробовал версию для 8.3 . Файл выложен какой-то недоделанный. Нет таблиц для регистров накопления и последовательностей.
И алгоритм в любом случае выходит на удаление по записям вместо TRUNCATE TABLE
154. Cobranet123 370 25.03.17 09:16 Сейчас в теме
(153) Если бы прочитали анонс последнего обновления обработки, то вопросов по поводу таблиц для регистров сведений, накоплений и прочее не появилось бы.
Я в анонсе предупреждал, что пока они не сделаны. Потому что не попадают под общую концепцию удаления данных из таблиц для документов и справочников...

А вот по поводу удаления всех записей вместо удаления целиком таблиц - это я обязательно проверю.

P.S. Спасибо что отписываетесь об ошибках и недочетах в обработке - это помогает совершенствовать ее.
155. Cobranet123 370 28.03.17 09:23 Сейчас в теме
(153)
Проверил, вы были правы, данная ошибка зафиксирована и исправлена. В публикации выложена новая версия.
156. bulpi 215 29.03.17 23:00 Сейчас в теме
И все же обработка для 8.3 требует доработки. У меня она вытерла шапки документов, но оставила табличные части.
157. Cobranet123 370 30.03.17 06:40 Сейчас в теме
(156)
Проверил, вы были правы. Ошибка исправлена и выложена новая версия обработки.
Спасибо за внимательность!
158. Batman 165 15.06.17 10:45 Сейчас в теме
Доброго времени суток
Скачивал версию на обычных формах, сегодня скачал версию на управляемых формах
В описании к обработке указано, что очищает регистры накопления.
В версии на обычных формах помню, что этот функционал был. В версии на управляемых формах - вижу, что закладка пустая.
Сценарий - очистил документы, обнаружил, что записи в регистрах накопления остались. Очень хочу их тоже очистить (чтобы не тратить время на "Тестирование и исправление")
Планируется ли "возвращение" этого функционала (или я что-то упускаю из виду)?
159. Cobranet123 370 15.06.17 11:27 Сейчас в теме
(158)
Добрый день.
В описании от (07.02.2017) указано, что данного функционала пока нету, но он будет конечно же добавлен.
Просто сейчас у меня проблемы с отображением всего списка регистров сведений/накопления связанных с отбором по произвольным реквизитам регистров, а просто вывести список регистров и дать лишь одну возможность очистить целиком регистр (через TRUNCATE TABLE) такое не интересно.... Если и делать, то делать сразу нормально. Ну мое мнение по крайней мере, поэтому пока и не выкладываю дальнейних обновлений обработки.
Я обязательно найду решение данной проблемы и обновления обработки на упр.формах обязательно будет!!!
160. Batman 165 15.06.17 14:38 Сейчас в теме
161. dmt 66 18.07.17 13:20 Сейчас в теме
Приветствую!
Скачал обработку. Версия 2.0.1.3.

Открываю в КА 1.1.
Вижу что могу удалить с отборами:
- документы
- справочники
- регистры сведений

А вот на закладке регистров накоплений пустота.

Что сделать, что бы появился список для отбора?
162. dmt 66 18.07.17 13:42 Сейчас в теме
Дочитал комментарии. Нужен дунгрейд.
163. mihanov 11 03.08.17 04:36 Сейчас в теме
Добрый день.
Скачал обработку "Очистка базы SQL для 8.2" в. 1.3.9.
Очистка регистров бухгалтерии за период не предусмотрена в обработке. Это планируется добавить?
164. Cobranet123 370 10.08.17 07:39 Сейчас в теме
(163)
Здравствуйте.
Спасибо за замечание. Ошибка исправлена в новой версии 1.3.10
165. mihanov 11 10.08.17 11:35 Сейчас в теме
Есть еще замечания к версии 1.3.9. Не помешал бы режим(флаг) типа "Не очищать таблицы регистрации изменений".
Например, я заранее знаю, что до даты свертки у меня нет никаких зарегистрированных изменений по регистру бухгалтерии.
Но обработка все равно будет собирать все регистраторы из СУБД, попадающие в период свертки для последующей их проверки(очистки) из таблицы регистрации изменений. И эта "не нужная" операция займет существенную часть общего времени выполнения (по моим оценкам - больше половины).

К тому же, есть подозрение, что собрать информацию о таких регистраторах будет гораздо быстрее средствами 1с по сравнению с текущим способом.
166. Cobranet123 370 10.08.17 13:14 Сейчас в теме
(165)
Ваше предложение услышал, подумаю.
А вот на счет быстрее средствами 1С, сомневаюсь, потому что даже если вы запросом соберете регистраторы, то вам нужно будет потом так и так обходить таблицу и преобразовывать в шестнадцатиричный вид ссылку, а это будет тоже самое время...
168. METAL 289 03.12.17 18:11 Сейчас в теме
А возможно ли как-то просмотреть текст запроса в SQL , который будет отправлен на выполнение, перед запуском? Есть такая возможность? Если нет - можно ли добавить?
170. Cobranet123 370 04.12.17 22:03 Сейчас в теме
(168)
Здравствуйте.
Такой возможности на данный момент нету. Не совсем понятно в таком случае становится, если вы удаляете данные сразу из нескольких таблиц, то обработка все равно по очереди будет все вычищать, вам каждый SQL запрос тогда показывать или как ? Или подряд что выполняется в данный момент, по типу Profiler'a SQL ?
172. METAL 289 05.12.17 15:53 Сейчас в теме
(170)
вам каждый SQL запрос тогда показывать или как

Когда писал сообщение, я думал, что после настроек в 1С формируется один большой запрос, который потом уже отправляется в SQL на выполнение
Теперь понятно, что запросов в некоторых случаях может быть много. И 1С порциями их отправляет в SQL
Ну а когда увидел что с моими отборами в SQL уходят запросы на удаление каждого документа отдельно - решил таки написать запрос в SQL самостоятельно, так как подокументно было в нашем случае неприемлемо медленно.
Что помогло бы - возможность с помощью Вашей обработки получить текст запроса SQL, а дальше его отправить на выполнение в MSSQL-студии самостоятельно.
Сценарий удаления такой: один вид документа со всеми его табличными частями. Отбор: дата меньше [параметр] ИЛИ определенный реквизит = Ложь (но можно и в 2 этапа, чтоб обойтись без ИЛИ, и был простой отбор, чтоб была возможность сформировать таки один запрос, а не подокументно)

Удалял в итоге так. Очистка основной таблицы документа. Потом очистка всех табличных частей, где отсутствует запись в основной таблице документа
Как-то так:
Скрипт для MSSQL-студии


В любом случае, хотелось бы как-то видеть что именно отправляется в SQL. Можно и как в Профайлере. Спасибо!
169. METAL 289 03.12.17 19:01 Сейчас в теме
Правильно ли понимаю, что при сложных отборах СКД - список документов в 1С получается одним запросом, но удаление на уровне SQL идёт подокументно по одному запросу SQL на каждый документ?
171. Cobranet123 370 04.12.17 22:03 Сейчас в теме
(169)
Да, вы совершенно верно поняли!
173. 7OH 69 19.12.17 23:20 Сейчас в теме
Скачал ))))
А почему вкладка с регистрами накопления пустая ???
174. Raybek 08.01.18 15:42 Сейчас в теме
Здравствуйте! Во первых спасибо за титанический труд!

А можно актуализировать все апдейты и для версии 8.1? Да-да есть и такие базы до сих пор:)))
175. user752800 08.01.18 18:07 Сейчас в теме
все таки хорошо переводить на файловую и с ней работать
176. squall84 24.01.18 19:02 Сейчас в теме
Это специально такой развод?
Заплатите 2 стартмани и получите фигню?
Обработка ведь не доделана. Зачем было ее выкладывать? Регистров накопления и последовательностей нет вообще. Проверял в конфигураторе - действительно эти страницы не написаны.
177. Cobranet123 370 25.01.18 06:10 Сейчас в теме
(176)
Прежчем чем скачать, необходимо читать описание к обработке и там черным по белому написано про это! Можете пожаловаться администрации сайта, что мол вот нехороший человек выложил недоделанную обработку надо бы его заблокировать за некачественный контент...
НУ смешно, ей богу, читать не хотим, зато когда скачаем сразу начинаем кричать...
178. squall84 28.01.18 16:03 Сейчас в теме
(177) Тыкните меня, пожалуйста носом, где черным по белому написано, что обработка 8.3. рассчитана на управляемые формы?
В заголовке это не указано в подписи к загрузкам это тоже не указано.
Так где тогда я это должен был прочитать?
У Вас вообще нигде не написано, какая обработка под какие формы написана.
179. Cobranet123 370 28.01.18 18:56 Сейчас в теме
(178)
Обновление (07.02.2017)

Доработка:

- Добавлена обработка для управляемых форм ( также для режима такси).

- Механизм отборов реализован через средства СКД

Ограничения в версии для управляемых форм:

- На данный момент работает лишь удаление с произвольным отбором документов и справочников.

Добавление удаления с произвольным отбором регистров сведений, накопления, бухгалтерии будет добавлено позже.
180. squall84 29.01.18 10:01 Сейчас в теме
(179)Это я видел и читал. Где тут написано, что добавлена обработка именно под 8.3?
Написано только, что добавлена обработка для управляемых форм и все. Куда добавлена? Хотя-бы в подписи к загрузкам подписали, что для 8.3. на управляемых формах.
Знал бы, скачал бы под 8.2.
181. Roman_SE 9 06.02.18 02:45 Сейчас в теме
У кого есть свежая версия? Поделитесь плиз, отваливается по таймауту на 24% и даж не пишет на каких документах... forekk6@gmail.com
182. Roman_SE 9 17.02.18 10:28 Сейчас в теме
Обработка конечно классная... но допустим об мои документы реализации и заказ покупателя она спотыкалась регулярно. Поднятие даже Command.timeout до 600 не давало эффекта. Просто она как-то шибко мудрено чистит документы, для SQL обработки у которой нет контроля целостности....

Эта обработка при удалении документов по дате (без даты там и обработка не нужна truncate и все) на каждый объект пытается по ссылкам выцепить табличные части и там удалять построчно, вобщем опять вместо запросов sql работает через 1с....

Например документ заказ покупателя имеет несколько табличных частей, в sql все это чистится буквально 4 запросами/
1 Запрос удаляем по _Period < '2016-01-01 00:00:00.000' все записи из основной таблицы.

Например так:
DECLARE @RowsDeleted INTEGER
DECLARE @RowsTo INTEGER
SET @RowsDeleted = 1
SET @RowsTo= 1

WHILE (@RowsDeleted > 0 and @RowsTo < 16000000)
BEGIN
DELETE TOP (200000) FROM _Document555 WHERE _Period < < '2016-01-01 00:00:00.000'
SET @RowsDeleted = @@ROWCOUNT
SET @Rowsto = (@Rowsto+@RowsDeleted)
WAITFOR DELAY '00:00:001' --чтоб можно было работать попутно
END

2. Сортируем по _IDRRef , берем первый(наименьший) и уже по нему удаляем в табличных частях значения все ниже чем refid.
3. Профит.
Допустим документ называется _Document134 , его табличные части будут тоже называться _Document134_VT****

Даже на миллионах записей это занимает несколько минут. Если шибко ссыкотно можно после провести ТИИ.

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

БЕКАПЫ!!!!
183. Roman_SE 9 17.02.18 11:47 Сейчас в теме
(182)
Сорри, конечно для документов _Date_Time, а не _Period!
184. Denois1333 19.03.18 10:49 Сейчас в теме
Здравствуйте, можете добавить отборы для регистров сведений?
185. bobylev1980 20 26.03.18 06:59 Сейчас в теме
Версия 1.3.10 для 8.2. Отсутствуют отборы по регистрам сведений и регистрам накоплений. Так и должно быть? Собственно качал обработку из-за
увиденных отборов на скриншотах, а тут такой облом.
186. Cobranet123 370 26.03.18 07:16 Сейчас в теме
(185)
Здравствуйте.
На скриншотах и нету отборов по регистрам! Внимательнее будьте пожалуйста при скачивании файлов.
187. bobylev1980 20 26.03.18 10:42 Сейчас в теме
(186) Здравствуйте, действительно нет, сам не знаю куда смотрел.
188. klimsrv 18 15.05.18 17:36 Сейчас в теме
ОчисткаБазыSQL(2.0.1.3)

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

Если удалять документы, и при отборе сделать такой отбор, что будет ни одного документа для удаления в выборке, то обработка сделает транкейт табличной части документа, так как в ТЗДвоичныхДанных ничего не будет после удаления документов.

Еще раз спасибо!
189. Stirlitz 16 07.07.18 10:53 Сейчас в теме
@Cobranet123
Уважаемый коллега, поясните, пожалуйста, в чем смысл такого кода:

ОчисткаБазыSQL(1.3.10), модуль, Процедура ОчиститьОбъектыНаУровнеSQL

Для Каждого ТекСтрока Из СтруктураБД Цикл
	//...
		Для Каждого ТекСтрока Из СтруктураБД Цикл
			//...
		КонецЦикла;
КонецЦикла;
190. user1023891 06.09.18 14:36 Сейчас в теме
Смысл в удалении такого вообще есть???
191. user1023891 06.09.18 14:38 Сейчас в теме
смысл таких обработок если они работают только на половину, либо выкладывать когда все готово, либо не позориться и не выкладывать...
192. Cobranet123 370 07.09.18 05:54 Сейчас в теме
(191)
Здравствуйте.
Спасибо за ваш комментарий.
Я вас услышал.
193. dap 13 17.09.18 16:49 Сейчас в теме
8.3.12.1595 х64
отключен режим совместимости.

Версия обработки для 8.2


1. Перед открытием падает с ошибкой в строке

СтруктураБД = ПолучитьСтруктуруХраненияБазыДанных(МассивИменМетаданных,Истина);

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


СписокДокументов.Добавить("РегистрРасчета." + ТекРегистр.Имя + "." + ТекПерерасчет.Имя, ТекПерерасчет.Синоним, Истина, БиблиотекаКартинок.РегистрРасчета);
МассивИменМетаданных.Добавить("РегистрРасчета." + ТекРегистр.Имя + "." + ТекПерерасчет.Имя);
194. Pilokarpios 38 28.12.18 11:11 Сейчас в теме
Вот учила меня бабушка камменты читать перед тем как качать, а я взял и скачал, а обработка не завершенная, регистры накоплений не удаляются.
195. Cobranet123 370 28.12.18 11:33 Сейчас в теме
(194)
Здравствуйте.
Согласен с вами, что плохо видимо учились у бабушки...
Во первых не здороваетесь, во-вторых нету точного понимания какую версию из обработок вы используете... как проверяли, какие условия задавали для удаления и т.д.
Поэтому извините, считаю пост неинформативным, а так, ради того "чтобы было".
196. digorec88 28.12.18 18:49 Сейчас в теме
197. digorec88 28.12.18 18:50 Сейчас в теме
(195) Вечер добрый. Скажите, а после удаления документов, нужно ли запускать процедуру сжатия БД в SQL Management Studio?
198. digorec88 28.12.18 18:54 Сейчас в теме
(195) Насколько я знаю физический размер после удаления остается неизменным до тех пор пока не сделать сжатие БД
199. Cobranet123 370 29.12.18 07:21 Сейчас в теме
(198)
Здравствуйте.
Да, желательно это сделать. Вообще лучше конечно в самом SQL это настроить в качестве ежедневного задания на ночь, для выполнения. Потому что в течении дня могут удаляться объекты не только вами, но и вашими сотрудниками кто работает с базой. А также на ночь настроить реиндексацию, но это уже разговор для другой темы....
Оставьте свое сообщение