Универсальная свертка базы данных на платформе 7.7 (для любой конфигурации)
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Данная конфигурация является доработанной и исправленной версией свертки базы //infostart.ru/public/65228/
В комплект входит:
чистая база (скопировать через конфигуратор в нужную базу), в которую, в свою очередь, входят:
1. Документ переноса последних периодических реквизитов справочников
2. Документ переноса остатков по регистрам и бух. счетам
3. Обработка "ПутеводительСвертки" . В ней прописаны процедуры создания вышеперечисленных документов, процедуры удаления документов, удаления истории периодических реквизитов. В диалоге этой обработки все просто и понятно. Кнопки запуска процедур расположены согласно порядку, которому необходимо придерживаться, при свертке. Также написаны некоторые полезные советы, которые помогли разрабочику.
Чем отличается от свертки, указанной в ссылке:
1. Добавлен документ переноса периодических реквизитов. Т.к., если реквизит установлен документом, то, соответственно, при пометке на удаление документа, история исчезает.
2. Создание документов происходит при помощи процедуры (рассчитываютя итоги раз, а потом только распихиваются по документам, созданным автоматически)
3. Документов по переносу остатков все же создается много, а не один, как писал Санек. Если создавать один документ, то в нем будет много строк, если их меньше 9999, то разницы нет, а если больше, то нумерация лишних будет заменена на "0" самой 1с (видно 9999 - это максимум). Но и это не главное. Проведение документа переноса регистров с количеством строк 9999 можно ждать часами, а если база под SQL, то журнал транзакции разрастется до неимоверных размеров. Я выбрал оптимальное количество строк для документов - 3000, может есть и более приемлимое число, но проверено с данным количеством строк и все документы проводились отлично. Для бухгалтерских счетов может можно было использовать и все 9999 строк, но писал одинаково для регистров и бух. счетов.
4. При создании документа по переносу бух. счетов, а также при его проведении, не были учтены валютные счета и остатки по валютам
5. При проведении документа по переносу бух. счетов каждая проводка заканчивалась Операция.Записать(), хотя можно записать один раз в конце обработки проведения.
6. При проведении документа по переносу бух. счетов не была учтена ситуация, когда количество на счету по дебету, а сумма по кредиту (сам в шоке, но бывает и такое)
7. Все шаги свертки базы сведены к одной обработке, в которой все расписано по шагам
P.S. Санек, спасибо за идею
В новой версии (от 11.12.2011) исправлено:
1. При пометке на удаление документов, период удаления брался из пункта 4 (удаление периодических реквизитов), теперь период будет начинаться с первого созданного документа до даты свертки
2. При удалении периодических реквизитов, последнее периодическое значение оставлялось, теперь удаляются все за указанный период (с даты указанной пользователем до даты свртки)
3. При открытии документа СверткаБазы, переключатель "Регистры" и "Бух. итоги" не устанавливался в нужном месте
В новой версии (от 11.12.2011) добавлено:
1. Возможность переносить всю историю изменения периодичкских реквизитов
2. Перед пометкой на удаление документов можно указать перечень документов, которые не будут удалятся, отметив их галочками в списке.
Установка:
Базу, которую необходимо сворачивать, открыть в режиме Конфигуратор. Меню -> Конфигруация -> ОбъединениеКонфигураций, указать файл, распакованный из скачанного архива. Снять все галочки, кроме
1. Документы.СверткаБазы, Документы.ВводНачальныхПериодическихЗначений
2. Журналы.Свертка, Журналы.ВводНачальныхПериодическихЗначений (необходимо, если не объеденяли с предыдуще скачанной конфигурацией)
3. Обработки.ПутеводительСвертки
В версии от 20.12.2011 исправлено:
1. Округление сумм, при переносе остатков по бух. счетам
Установка:
Базу, которую необходимо сворачивать, открыть в режиме Конфигуратор. Меню -> Конфигруация -> ОбъединениеКонфигураций, указать файл, распакованный из скачанного архива. Снять все галочки, кроме
1. Документы.СверткаБазы, Документы.ВводНачальныхПериодическихЗначений
2. Журналы.Свертка, Журналы.ВводНачальныхПериодическихЗначений (необходимо, если не объеденяли с предыдуще скачанной конфигурацией)
3. Обработки.ПутеводительСвертки
В версии от 23.02.2012 учтено:
Разделитель учета по своим юридическим лицам
В версии от 15.05.2012 учтено:
Возможность перенести остатки по счетам с количеством субконто до 5 включительно
В версии от 15.05.2012 исправлено:
Проведение документа свертки шло очень долго.
Вступайте в нашу телеграмм-группу Инфостарт
См. также
Свертка базы Чистка данных Перенос данных 1C Системный администратор Разработчик 1С:Предприятие 7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Абонемент ($m)
Приводится порядок действий для создания новой информационной базы на основе имеющейся файл-серверной "Торговля и Склад" ред.9.2, для учёта с нуля. В новую базу выполняется перенос справочников и остатков номенклатуры. Журналы документов, данные регистров, долги контрагентов, партии очищаются.
1 стартмани
14.01.2022 9137 6 etmarket 3
Свертка базы Разработчик Бухгалтер Бухгалтерский учет 7.7 1С:Бухгалтерия 2.0 Россия Бухгалтерский учет Абонемент ($m)
Имеется база 7.7, которую хочется свернуть. Но в процессе свертки могут съехать остатки. Для проверки нужно сравнить остатки на дату свертки.
1 стартмани
20.06.2016 20068 2 pentanom 1
Свертка базы Разработчик Оперативный учет 7.7 1С:Торговля и склад 7.7 Управленческий учет Абонемент ($m)
Хотя большинство пользователей перешло на 1С 8ХХ, но есть еще очень много торговых организаций до сих пор эксплуатирующих 1С 77 ТиС. И пока еще не собираются переходить на новую платформу, а свертку делать надо. Есть много решений, я решил поделиться своим. Основное отличие: 1. Универсальность 2. Быстрота 3. Свертку можно делать на любую дату (не обязательно на начало года)
1 стартмани
15.11.2014 34300 136 Marik 28
Свертка базы Чистка данных Бухгалтер Оперативный учет 7.7 Бухгалтерский учет 7.7 Расчет 7.7 Бухгалтерский учет Абонемент ($m)
Удаляет проводки(корреспонденцию) по выбранным счетам за выбранный период. Работает с забалансовыми счетами. Выбор условия соответствия вхождения счетов в корреспонденцию (и / или).
1 стартмани
06.01.2014 21366 11 by_1Cnik 8
Свертка базы Системный администратор Оперативный учет 7.7 1С:Торговля и склад 7.7 Россия Абонемент ($m)
По статье "Зачем в 1С нужно периодически пересчитывать итоги по регистрам?" http://infostart.ru/public/177171/ Обработка для 7.7, файловая, только для специалистов. Никаких гарантий и возмещений. Работает только в разделенном режиме (прямой запрос VFP). После выполнения - в обязательном порядке ТиИ (только упаковка), После ТиИ в обязательном порядке - принудительно переиндексировать. Родственная разработка для SQL: http://infostart.ru/public/177579/
8 стартмани
28.03.2013 75481 102 CheBurator 14
Свертка базы Чистка данных Системный администратор Разработчик Оперативный учет 7.7 1С:Торговля и склад 7.7 Россия Абонемент ($m)
Берем 2 базы старую и новую, новая это точная копия старой, только с подчищенными файлами d*.dbf, r*.dbf Запускаем в старой обработку, ждем 15 минут и радуемся! Только не забудьте в новой провести ручками документы (операции - проведение документов) Сворачивает остатки по фирмам и складам в усредненной себестоимости(считает по принципу отчета остатки ТМЦ), делает вводы остатков в базе к которой коннектимся И сворачивает всю дебиторскую и кредиторскую задолженность по Фирмам без детализации кредДокумент. Обновление от 12.02.13 появилась возможность сворачивать дебиторку в разрезе кред документа+переносит долги по комиссионерам. Не знаю как вам, а на мой взгляд более простого и работоспособного я тут просто не нашел!!!
1 стартмани
02.01.2013 26063 186 zoeh 8
Свертка базы Перенос данных 1C Разработчик 1С:Предприятие 7.7 1C77 Розничная и сетевая торговля (FMCG) Россия Абонемент ($m)
Обработка предназначена для переноса данных из Рарус 2.5 магазина на платформе 7.7 в Розницу ред. 1 на платформе 8.2. Перенос осуществляется с помощью OLE. Переносимые данные: Номенклатура(ед., штрих-коды), Документ ввода остатков и цены номенклатуры (после закрытия торгового периода).
1 стартмани
08.10.2012 24164 48 pervanax 5
Свертка базы Разработчик Оперативный учет 7.7 1С:Торговля и склад 7.7 Россия Управленческий учет Абонемент ($m)
Свертка данных на определенную дату, без изменения в конфигурации.
1 стартмани
03.09.2012 22217 158 Tarlich 6
я для себя вносил некоторые добавление
пункт "1. Создание документов переноса периодических реквизитов, справочников", добавил возможность сворачивать периодические реквизиты не на их дату, а на дату светрки. очень помогает для розницы.
пункт "4. Пометка на удаление документов с даты первого созданного документа до даты свертки включительно", добавил Док.ОбратныйПорядок(1); и для визуализации(а сколько еще ждать?)
Пока Док.ПолучитьДокумент() = 1 Цикл
.......
Состояние(Док.ДатаДок);
КонецЦикла;
Задача: свернуть базу по 31.12.2006 г.
Платформа 7.70.027
Шаги:
1. обновился до 516 релиза
2. Установка (цитирую автора обработки):
Базу, которую необходимо сворачивать, открыть в режиме Конфигуратор. Меню -> Конфигруация -> ОбъединениеКонфигураций, указать файл, распакованный из скачанного архива. Снять все галочки, кроме
- Документы.СверткаБазы, Документы.ВводНачальныхПериодическихЗначений
- Журналы.Свертка, Журналы.ВводНачальныхПериодическихЗначений (необходимо, если не объеденяли с предыдуще скачанной конфигурацией)
- Обработки.ПутеводительСвертки
3. последовал совету serpent (104)
пункт "4. Пометка на удаление документов с даты первого созданного документа до даты свертки включительно", добавил Док.ОбратныйПорядок(1); и для визуализации(а сколько еще ждать?)
Пока Док.ПолучитьДокумент() = 1 Цикл
.......
Состояние(Док.ДатаДок);
КонецЦикла;
4. (цитирую автора обработки) п.4. «Перед пометкой на удаление рекомендуется закомментировать все процедуры ОбработкаУдаленияПроведения() в документах и ПриУдаленииДокумента() в Глобальном модуле. Так будет гораздо быстрее. Потом не забудьте вернуть процедуры на место.»
мои действия: содержимое ПриУдаленииДокумента() в Глобальном модуле закомментил (там всего одна строка), а вот ОбработкаУдаленияПроведения() в документах не стал т.к. не знаю о каких документах идет речь
5. Сменил рабочую дату (Сервис > Параметры > вкладка Общие) на дату свертки
6. Точку актуальности (как советовал lisroverpc (34)) менять не стал. (если все же будете менять, то в монопольном режиме зайдите Операции/Управление оперативными итогами
поставьте дату актуальности итогов на необходимую вам и нажмите кнопку установить справа.)
Приступаю 02:50AM
1 – поехали - ок
2 – поехали – ок
3 – поехали – ок
4 – поехали – в сущности, идет нормально в соотношении «час реального времени – год в 1С» (AMD Athlon x 2 (2.2 gHz)/3G RAM). Иногда выдает ошибку «проведение документа нельзя отменить задним числом» и «рекомендуется перепровести документ». При этом работа самой обработки продолжается.
Сейчас 4:58АМ. Количество обработанных документов в строке состояния не видно. Видно, что начало периода было в мае 2003, а сейчас обрабатываются документы за июнь 2005.
Все. Я пошел спать. После отпишусь как все прошло.
итак продолжим
кнопка 4 - поехали
начало 02:56:14
в процессе раз 50 вышло
"Проведение документа нельзя отменить задним числом!" и
"Рекомендуется перепровести документ начисления зарплаты за текущий месяц."
закончили 07:22:55
Всего пометили на удаление: 12775
кнопка 5 - поехали - ок
копка 6 - поехали (лог)
Начали Удалить периодические реквизиты 10:30:49
Кончили Удалить периодические реквизиты 10:30:53
Начали проводить документы по переносу периодических реквизитов в 10:30:56
Закончили в 10:31:05
Начали проводить документы по переносу остатков по регистрам в 10:31:05
Закончили в 10:31:42
Начали проводить документы по переносу остатков по бух. счетам в 10:31:42
Закончили в 10:40:47
Вроде все. Окончено
6. удаляю все отмеченные доки
(из 12775 можно было удалить только 12 111)
7. делаю тестирование и сжатие
Проверяю оборотно-сальдовую ведомость на 1 квартал 2007 года
пропали начальные сальдо по счетам.
придется вводить начальные остатки вручную.
В остальном все замечательно.
удалены все проводки за 3 года
на все про все (с сжатием таблиц) ушло около 5 часов
Логически мысля, свертка базы это когда делается срез на какую то конкретную дату, до которой удаляются ВСЕ проводки и движения. Но для сохранения итоговой суммы, создается документ в котором вводятся начальные остатки на эту дату.
например, если у нас на счету 20 т.р. накопительно набравшихся в течении какого-то периода от разных контрагентов, то в результате свертки создается (на дату свертки) документ "ввод начальных остатков" на сумму 20 т.р.?
я предполагал что все происходит именно так. Удаляется история - сохраняется сумма.
но потратив 2 суток на разные вариации (см. выше (123) и (124) ) я всегда прихожу к одному и тому же.
движения удаляются - начальные остатки не создаются.
просьба помочь.
Убедительная просьба не язвить и не писать в стиле " а самому догадаться слабо", "гугль в помощь" и пр. стрелкопереводчество, чем часто грешат люди ради рейтинга количества сообщений в форуме.
я прошу просто и доступно объяснить, что такое свертка
и почему в результате ее (используя данную обработку) не создается начальное сальдо на дату свертки.
заранее большое спасибо!
1. Удаление_документов_2.ert частично встроена в мою обработку ПутеводительСвертки (пометка на удаление документов и удаление значений периодических реквизитов). Добавлять не надо
2. Контрольные цифры выдают общие цифры по Регистру и Бух. счетам, поэтому, если не сошлось по какому-то одному счету, вам она ничего не даст. Мое мнение: добавлять ее не надо, надо развернуть старую копию и сверять цифры по бух. счетам стандартным отчетом Оборотно-сальдовая ведомость на одну и ту же дату, а по Регистрам можно воспользоваться или написанными в вашей конфигурации отчетами или любыми универсальными. (есть пакет универсальных отчетов по справочникам, документам, регистрам "Unireps")
DECLARE @datex char (20)
SET @datex='20140101'
--Помечаем на удаление все документы с датой < '@datex'
--UPDATE _1sjourn SET ismark=1,closed=4 WHERE (DATE_TIME_IDDOC < @datex)
-- удаляем все проводки
--DELETE _1sentry WHERE (DATE_TIME_DOCID < @datex)
-- и операции
--DELETE _1soper WHERE (DATE_TIME_DOCID < @datex)
--Удаляем ненужные периодические реквизиты
--DELETE FR OM _1SCONST WHERE
--objid <> ' 0 ' AND date < @datex
-- Удаляем ссылки между подчиненными и документами и значения граф отбора
--DELETE FR OM _1scrdoc WH ERE (CHILD_DATE_TIME_IDDOC < @datex)
--Чистим движения по регистрам, задать дату!
exec sp_MSforeachtable
@command1 = N'DELETE RA FROM ? RA INNER JOIN _1SJOURN AS JO on RA.IDDOC = JO.IDDOC WH ERE JO.DATE_TIME_IDDOC < ''20140101''',
--@command1 = N'PRINT ''?''',
@whereand = N'AND xtype = ''U'' AND o.name LIKE ''RA%'''
--Чистим остатки по регистрам.
--exec sp_MSforeachtable
--@command1 = N'TRUNCATE TABLE ?',
--@whereand = N'AND xtype = ''U'' AND o.name LIKE ''RG%'''
--Чистим остатки бух итогов
--truncate table dbo._1SACCSEL
--truncate table dbo._1SBKTTL
--truncate table dbo._1SBKTTLC
--truncate table dbo._1SSBSEL ПоказатьВ первой строке char (20) заменить на char(20), тэг код некорректно отработал
ежели чукча не писатель а читатель :)
помогите, люди добрые! :)
2. все очень грамотно свернулось.
сворачивал, периодические и регистры.
все перенеслось корректно, начальные остатки встали нормально.
3. единственное, пришлось переносить ТА на самый первый документ (после формирования доков переноса регистров)
т.к. отмена проведения задним числом.. очень долгая :(
ЗЫ: чистил период с 2003 по 2009 год
удалено 2706289 документов :)
удалялось почти 15 часов :)
Спасибо, попробуем.
UPD. Отладка осложняется необходимостью каждый раз после "вылета" переиндексировать базу. Сделал тестирование и исправление на всякий, не помогло.
UPD. Кстати, насколько я могу судить, грозит мне это только тем, что при следующей свёртке базы через несколько лет (если до таковой база на 7.7 доживёт) нумерация документов свёртки продолжится, а не начнётся с начала. Я код не копал, но если там нет каких-либо счётчиков, привязанных к номерам документов, то ничего страшного в этом мне не видится. В крайнем случае при следующей свёртке разберу код и исправлю.
Кстати, обрезалось быстрее, чем оригинал и остатки по валюте не поплыли, за это +, но остатки поплыли чуть-чуть на смешные суммы типа 30 рублей или 9 рублей или 1.5 рублей.. В любом случае, спасибо..
Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: 1cv7.exe
Версия приложения: 7.70.0.27
Штамп времени приложения: 4573fcb7
Имя модуля с ошибкой: BASIC.DLL
Версия модуля с ошибкой: 7.70.0.27
Строка 292 формы обработки ПутеводительСвертки приводит к ошибке
ДокСвертка.Записать();
Если честно, то я в замешательстве, права на новые объекты метаданных в конфиге дал сразу же, но судя по всему дело не в них.
Свернул один месяц. Делал так:
ставлю рабочую дату в программе, 01.02.08
ставлю дату в обработке, 01.02.08
делаю 1. перенос всей истории с 01.01.01 по 01.02.08
делаю 2.
делаю 3.
делаю 4.
делаю 5. с 01.02.08 по 01.02.08
делаю 6.
все отрабатывает без ошибок.
меняю рабочую дату в программе
смотрю ОСВ с 01.02.08 по текущий момент, сальдо на начало периода по нулям... в резервной копии, соотв. значения есть.
и если выбрать с 01.01.01 по текущий момент, тоже счета ползут...
что я делаю не так, подскажите?
upd. сделал все заново. ползут остатки в комплексной 512.
хххххххххххххххххххххххххххххххххххххххххххххххх
Период не открыт! :СверткаБазы 1 (31.12.09)
хххххххххххххххххххххххххххххххххххххххххххххххххх
Что я сделал не так!. Плис, Помоги. Буду очень признателень
"1. Добавлен документ переноса периодических реквизитов"
- это хорошо :)
"3. ...Если создавать один документ, то в нем будет много строк"
- много строк совсем не мешает.
"4. ..не были учтены валютные счета"
- уже учтены
"6. ..когда количество на счету по дебету, а сумма по кредиту"
- теоретически так не бывает
"7. Все шаги свертки базы сведены к одной обработке"
- стало только сложнее а не легче
230 строка закомментирована.
кто будет пользоваться, обратите внимание.
Лучше сразу поправить, иначе дойдете до второго пункта,
потом придется менять конфигурацию и начинать снова.
Но все равно спасибо за обработку. :)
Сворачивал обширную ТиС 7.7 на ДБФ.
Объем базы ~4Г
(выгрузка 220МБ)
При установке пришлось закомментировать строку создания объекта "Операция" и поменял периодичность документа СверткаБазы на "По всем данного вида".
Сворачивал за 3 года с 01.01.08 по 31.12.10
2й пункт отработал с 31го по 7е 8 дней не хило, на параллельном ПК стандартная свертка работает до сих пор, хотя там запустил на 2 года (08-09).
В целом все остатки на 01.01.11 сошлись в свернутой базе и в копии. Обработка сработала на ура, спасибо.
Выгрузка стала весить 103МБ
Но есть и небольшие замечания:
- не стоит проверка на наличие даты свертки, можно случайно запустить до победного...
- в строке статуса я б выводил информацию за какой месяц на данный момент распроводятся документы, иначе непонятно то ли просто висит то ли работает;
И самое неприятное, хотя, возможно я не понимаю всего процесса, все документы помеченные на удаление прописанный ссылкой в документе СверткаБазы в итоге их невозможно удалить стандартными средствами. Сейчас у меня в базе невозможно удалить порядка 400000 элементов Oo... Хотя они и помечены на удаление
Я к сожалению, с бухгалтерией не работал уже очень давно, не могу сказать про нее точно что к чему.
WRAP.ERT это Свертка бухгалтерских итогов - стандартная, кажется.
Запускай не ее, а эту. И не забудь сделать предварительно копию базы...
в теории это невозможно, я до сих пор не понимаю при чем тут wrap.ert его надо запускать параллельно к этой обработке????
нарисуй во врапе цикл, если ошибка при записи то увеличить номер на единицу, и так до тех пор пока не проведется.
{C:\PROGRAM FILES\1CV77\1SBUD61\EXTFORMS\WRAP.ERT(423)}: Номер не уникальный!
Попробуй вместо использования стандартных обработки, установи приведенную в этой теме, и сверни ею. На ТиС она отработала лучше чем родная.
Не удается найти счет по коду 105.07. Не выполнена конвертация для номенклатуры "ГСМ" (код 000000000006)
Не удается найти счет по коду 105061. Не выполнена конвертация для номенклатуры "Канц товары" (код 000000000001)
Не удается найти счет по коду 106.04.1.01. Не выполнена конвертация для номенклатуры "конц.товары" (код 000000000003)
Не удается найти счет по коду 105.06.1. Не выполнена конвертация для номенклатуры "спорт инвентарь" (код 000000000004)
Не удается найти счет по коду 105.04.1. Не выполнена конвертация для номенклатуры "Строй атериалы" (код 000000000002)
Не удается найти счет по коду 105.06. Не выполнена конвертация для номенклатуры "хоз расход" (код 000000000005)
Не удается записать Операция 0000000001. Номер не уникальный!олько вот после открытия программы в режиме предприятие выдает ощибка такая:Он конвертировать данные тоже не дает.
Ну и вызывает некоторое неудобство - после свертки размер базы увеличился с 400 метров до 750...
Путем удаления этих документов и непосредственного их удаления из конфигурации стало меньше, но как-то это странно. Ни у кого вопросов по размерам базы после свертки н возникало? ТиС.
А в остальном все хорошо, спасибо.
а с помеченными на удаление документами - да ничего с ними не сделаешь, до следующей свертки...
Вероятно лучшее решение, чтобы избавится от всех хвостов, это создать чистую базу и в нее перенести текущие остатки, но тогда теряется удобство аналитики, за предыдущий период, для нас это год. Хотя на горизонте маячит переход на 8ку...
(102) nasta_2004,
----------------------
1)В базе (ТиС) из 322 тыс.документов удалилась половина, 166 тыс.осталось. Ссылки в справочник.Партии на док.Поступление аж с 2008 года.
2)Документы свертка создавались быстро.
3)Документы помечались на удаление 6 суток.
Видимо действительно что-то не закрыто.
--------------------
сделала чистую базу со справочниками и попыталась выгрузить документ Свертка (их получилось 65 штук), 2 документа выгружались сутки. Загружать не стала пока.
------------------------------
Как корректно очистить справочник.Партии, тогда за них не будут цепляться документы ПоступлениеТМЦ в Свертке?
Потом набрел на эту обработку. Нужно, правда заметить, что надо:
1) для торговой конфигурации в документе "СверткаБазы" снять галочку "Бухгалтерский учет".
2) также добавить в модуль обаботки "ПутеводительСвертки" обработку исключения при попытке создания объекта "Операция" - в этом месте для торговой конфигурации программа 1С вылетает с ошибкой обращения к памяти;
3) и в третьих - желательно в процедуре ПометкаНаУдаление() реализовать использование транзакций. Выигрыш - где-то около 30% времени на исполнение процедуры при счетчике в 200 документов;
4) а это уже просто маленькое замечание - очень много опечаток в текстах интерфейса обработки.
Но это все мелочи. Решение - супер. То что у меня за 28 часов так и не получилось - эта обработка сделала меньше чем за час.
Всем, кто приложился к созданию и улучшению этой свертки - БОЛЬШАЯ БЛАГОДАРНОСТЬ.
ПОДТВЕРЖДАЮ!
upd. релиз до этого был 465... сейчас - 515.. кста, у кого траблы с обновлением - обращайтесь, помогу, чем смогу. мне вот интересно, чойта автор не отписывается уже который день в теме? если кто-нибудь обновлял комплексную, отпишитесь, как прошло..
По результату отпишусь...
1. Как понимаю, все документы прошлого периода (до даты свертки) помечаются на удаление. Но удалить их штатным способом не получится - есть ведь ссылки, на сам док свертки в частности... Вообще мне нужно перенести все остатки в новую базу. Есть МОД, перенос справочников и документов думаю осуществить именно им. Сами помеченные документы, которые попали в документ Свертка, переносить не надо. Проводить документы Свертки буду уже в новой базе (хотя, может быть, стОит провести их в текущей базе и потом перенести документы с движениями - вопрос...) Как в этом случае будет проводиться без самих документов? Будут пустые ссылки в движениях документа Свертки или как?
2. Не хотелось бы тянуть в новую базу все справочники партий. Как думаете, нужно ли в случае переноса в новую базу переносить справочники партий? В партиях ведь не будет ссылок на документы движения, т.к. они помечены на удаление и не будут переноситься? Будут ли корректны движения регистра ПартииНаличие, например, который испольуется практически во всём товародвижении? Хотя, скорее всего, партии, которые попадут в документ свертки и нужны в новой базе...
Развейте сомнения, плизззз...
Помечено на удаление около 200 тыс. документов. Список документов, которые не помечать на удаление не составляли - непонятно, зачем они могут понадобиться и хотелось проверить время пометки всех документов.
Пока вопросы предыдужего поста остаются...
Подскажите пожалуйста, номер версии ТИСа как нибудь влияет на свертку базы? У меня релиз ТИСа 941, необходимо перенести данные в Комплексную 8, а переносить данные за несколько лет не представляется разумным. Хочу свернуть базу перед переносом, стандартными средствами не дождался завершения свертки.
Нужно либо снять галку бухгалтерский учет перед объединением конфигураций, либо после объединения, что-нибудь поправить в конфигураторе и вернуть обратно в этом документе и сохранить конфигурацию.
А то галка принадлежности к бухучету переносится, а компоненты нет. и 1с крашится.
У меня вопрос к знатокам, пункт №4 уже делается 4 часа, но не видно что вообще происходит, программа не реагирует.
Вот
Свертка шла около 30 часов. Удаление файлов помеченных на удаление прошло без сбоев и без сообщений. Тестирование и исправление прерывается на пункте №3, с ошибкой "Порядок сортировки,установленный для базы данных, отличается от системного". Прилагается
Подскажите пожалуйста куда копать.
P.S.: погуглил, нашел решение проблемы.
Если просто Заполнить, то при проведении была ошибка : что значение не представляет агрегатный объект.
Насколько я поняла в одной из строк не удается прочитать Поле1 и сопоставить с элементом справочника.
Видимо воспринимает как тип значения строка.
1. Комментировать надо для быстрейшей пометки на удаление
2. У вас партии удаляются вообще? а какже последующая их история?
3. Если они помечаются на удаление, то их можно разом все пометить на удаление, и потом, при удалении помеченных объектов удалятся только те партии, которых уже не было на остатках на момент свертки. Ежели партии на остатках просто накапливаются и не закрываются, то какой смысл их помечать.
Так что, если разобраться, обработка не совсем универсальная. Есть случаи, когда некоторые шаги могут отличаться.
У меня база 2,5 года, с 2-х часов вчерашнего дня помечаются на удаление документы, но это и немудренно - документооборот безумно огромный. Типовая свертка вообще наверное была бы неделю. Но это сложно проверить, ибо после целого дня всяких анализов, она обязательно выскакивает с ошибкой, ибо нетиповая база.
думаю, знаю в чем проблема: бухия не хранит суммовые остатки в разрезе складов (только количество), поэтому при заполнении полей док-та "Свертка" суммовые поля остаются пустыми
видимо та же картина с субчетами счета 10
в моем случае склад используется только один, поэтому возможно будет достаточно просто доработать чтобы остатки по субсчетам счета 41 снимались без учета места хранения; у кого ведется учет на нескольких складах - тут автору придется думать, т.к. я не первый кто заметил этот недочет
Логика текущей:
1. идет перебор метаданных справочников - ок;
2. для текущего идентификатора справочника создается список периодических реквизитов - ок;
3. если есть периодические реквизиты, то создается объект текущего справочника - ок;
4. если справочник является подчиненным (имеет владельца), то создается объект владельца;
4.1 делается выборка элементов владельца;
4.2 для каждого выбранного элемента владельца делается выборка подчиненных элементов текущего;
ИМХО:
если один справочник с большим количеством элементов (назовем его "BigRef") имеет несколько подчиненных спр. с периодическими реквизитами (назовем их ParentExt_BigRef), то при переборе метаданных каждый ParentExt_BigRef откроет выборку по большому справочнику.
А в целом обработчик достойный. Автору респект.
Спасибо за обработку. Такое вопрос , уже поднимался ранее: обработка сворачивает остатки по счету 10, 41 и 43 только по кол-ву , суммы отсутствуют. Можно конечно суммы ручками прописать, это реально по материалам, но товаров более 3000 позиций. Что посоветуете? Не хотелось бы повторно запускать свертку..
Также не советую чистить периодические реквизиты созданные вручную, лучше не запускать этот пункт
Стандартными средствами ну оооочень долго.
Один из файлов базы RG1130.dbf превысил размер 2 гигабайта.
Тестирование и исправление никак не завершалось, неделю гонял.
Скажите, можно не протестированную базу сворачивать или всё же лучше завершить тестирование?
Спец мне сказал что предельный размер файла 2 гигабайта (RG1130.dbf), а на форуме пишут и 5 и 10 гигабайт.
Получиться оживить эту базу?
После выгрузки данных в конфигураторе в файл и обратной загрузке размер файла RG1130.dbf уменьшился до 1 гигабайта.
Может быть что выгрузка-загрузка почстила в файле какие-то сбойные записи?
Но есть проблема в ней и она проявляется в том, что если на счете есть количественный учет и при этом суммового остатка нет а количественный есть на момент свертки то этот счет не попадает в запрос бухгалтерских итогов. Пришлось передавать нужные счета (10.11.х) в качестве параметра метода ВыполнитьЗапрос(..) и свертывать их отдельно.
Та же ситуация возникает и в стандартном отчете Оборотно-сальдовая ведомость - не показывает счета вообще если нет суммового остатка но есть количественный.
Ещё есть орфографическая ошибка в слове Запоскать в второй группе элементов :)
Решения видимо не будет?
Заранее благодарен.
ЗЫ все комменты не читал, может это уже и обсуждалось...
Если вы сворачиваете этой обработкой базу второй год подряд то после окончания свертки вы с удивлением обнаружите что периодические реквизиты справочников до даты свертки отсутствуют! Это возникает потому что на этапе 1. Создание документов переноса периодических реквизитов справочников обработка ищет уже существующие документы ВводНачальныхПериодическихРеквизитов и если они есть то перезаполняет их новыми данными НЕ ИЗМЕНЯЯ ИХ ДАТУ. Таким образом документы ВводНачальныхПериодическихРеквизитов окажутся за год до даты свертки(или там где у вас была прошлая свертка), будут помечены на удаление и успешно удалены.
Для исправления ошибки необходимо в обработке в процедуре ПереносПериодРеквизитов() после строки 131 вставить ДокНач1.ДатаДок = ДатаСвертки;
Полный фрагмент как должно быть:
Если ДокНач.НайтиПоНомеру(ии) = 0 Тогда
ДокНач1.Новый();
ДокНач1.ДатаДок = ДатаСвертки;
ДокНач1.Записать();
Иначе
ДокНач1.НайтиДокумент(ДокНач.ТекущийДокумент());
ДокНач1.УдалитьСтроки();
ДокНач1.ДатаДок = ДатаСвертки; //Нужно вставить эту строку
ДокНач1.Записать();
КонецЕсли;
ПоказатьИли предварительно удалить документы ввода периодических реквизитов.
Если уже свернули и обнаружили этот косяк, как я. То рекомендую выполнить следующее. В исходной не свернутой базе запустить обработку Универсал 2.7 и выгрузить документы ВводНачальныхПериодическихРеквизитов в свернутую базу.
А так обработка замечательная пользуюсь уже второй год. Сворачивал SQL базы более 10 гб. Размер конечно не особо уменьшается но документов становится поменьше. Хотя на следующий год буду переносить данные в чистую конфигурацию.
Но... Из помеченных на удаление документов удалилась только половина. А размер базы стал в 2 раза больше... (((
Откуда такой странный эффект - непонятно.
Но увеличение размера базы после свертки - сводит на нет все проделанные усилия...
Ошибка.
БИ2.ИспользоватьСубконто(БИСчет.ВидСубконто(чСбк))
{E:\1C_BASE\WIZARD\ПУТЕВОДИТЕЛЬСВЕРТКА.ERT(410)}: Повторное использование вида субконто "Сотрудники" в запросе!
Комплексная 478
Свертка некорректно обрабатывает кедитовое сальдо по счетам при проведении документа.
Для корректной работы требуется в процедуре ОбработкаБИ()
строку 15
Если (Поле6<>0) или (Поле7<>0) Тогда
заменить на строку
Если (Число(Поле6)<>0) или (Число(Поле7)<>0) Тогда
Далее, если в плане счетов в результате обновлений появляются счета с дублирующимися субконто (пример Комплексаная, счет 72) надо очистить посе дублирующегося субконто в плане счетов, этого достаточно для корретной работы - документ СверткаБазы править не обязательно.
Все получилось, только в конфигураторе пришлось у документа "СверткаБазы" снять галочку "Оперативный учет" так конфигурация "Бухгалтерский учет", иначе не проводился этот документ, писал "Период не открыт", а выполнить открытие периода не удавалось по причине не доступности кнопок, в форме открытия периода.
Как я понял, нужно пропустить п.5 и потом снять с проведения ввод началных период. значений
Рейтинг: 198
Вы можете заказать платную консультацию или разработку у автора. Будет создан приватный заказ на «Бирже заказов» для автора.
№ 100646
Создание 05.12.11 02:22
Обновление 15.05.12 13:28
Просмотры 85766
Загрузки 1682
Рейтинг
198
Комментарии 231
Код открыт Не указано
Рубрики Свертка базы
Тип файла Конфигурация (md, cf)
Платформа
Оперативный учет 7.7
,
Бухгалтерский учет 7.7
Конфигурация 1C77
Операционная система Не имеет значения
Страна Россия
Отрасль Не имеет значения
Налоги Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)