Стандартная свертка базы 1С:Розница не работает? Тогда вам сюда

07.09.22

База данных - Свертка базы

В публикации рассмотрен механизм свертки базы в один клик или по расписанию на начало предыдущего месяца.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Стандартная свертка базы 1С:Розница не работает? Тогда вам сюда.:
.epf 7,16Kb
33 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

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

Если 1С:Розница используется как кассовая программа, то есть учет ведется в вышестоящей товароучетной системе (например, 1С:Управление торговлей), то свертку можно проводить почаще. Например, раз в месяц, оставляя документы за последний месяц.

Приложенная обработка производит следующие операции:

- удаляет непосредственно все документы ЧекККМ, а также все документы движений в регистры ТоварыНаСкладах, ЦеныНоменклатуры, БонусныеБаллы датой до начала предыдущего месяца (если запускаем 05.09.2022, то удаляются документы до 01.08.2022 00:00:00);

 

 

- формирует документ начальных остатков Корректировка регистров только по регистрам ТоварыНаСкладах, ЦеныНоменклатуры, БонусныеБаллы датой за секунду до начала предыдущего месяца (если запускаем 05.09.2022, то Корректировка регистров с датой 31.07.2022 23:59:59);

 

 

- создает лог-файл в папке C:\temp.

 

 

Внимание! Действия обработки необратимы! В обработке используется непосредственное удаление документов. Копия базы обязательна перед использованием!

Тестировалось на платформе 1С версии 8.3.21.1302, демо-базе конфигурации 1С:Розница версии 2.3.11.44. Код модуля объекта обработки представлен ниже.


#Область ПрограммныйИнтерфейс

Функция СведенияОВнешнейОбработке() Экспорт
	
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
	
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
	ПараметрыРегистрации.Версия = "22.09.05";
	
	Разрешение = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеКаталогаВременныхФайлов(Истина, Истина, "Обработка использует временное хранилище.");
	ПараметрыРегистрации.Разрешения.Добавить(Разрешение);
	
	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление = НСтр("ru = 'Свертка базы'");
	НоваяКоманда.Идентификатор = "СверткаБазы";
	НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
	НоваяКоманда.ПоказыватьОповещение = Истина;
	
	Возврат ПараметрыРегистрации;
	
КонецФункции 

Функция ВыполнитьКоманду(Идентификатор, ПараметрыКоманды) Экспорт
	
	Если Идентификатор = "СверткаБазы" Тогда  
		
		СтруктураПараметров = Новый Структура;
		СтруктураПараметров.Вставить("ДатаСвертки", НачалоМесяца(ДобавитьМесяц(ТекущаяДата(), -1)));
		СтруктураПараметров.Вставить("ТолькоПосчитать", Ложь);
		СтруктураПараметров.Вставить("ОтправлятьВТелеграм", Ложь);
		СтруктураПараметров.Вставить("IDПользователяТелеграм", "0"); 
		СоздатьКаталог("C:\temp");
		СтруктураПараметров.Вставить("ПутьКЛогФайлу", "C:\temp\log1c.txt");
		
		СверткаБазы(СтруктураПараметров);
	КонецЕсли;
	
КонецФункции

#КонецОбласти


// Основные процедуры и функции
Процедура СверткаБазы(СтруктураПараметров, Параметр2 = Неопределено) Экспорт
	
	УстановитьДатуСверткиУзлов(СтруктураПараметров.ДатаСвертки);
	
	КорректировкаРегистровСсылка = СформироватьНачальныеОстаткиВажныхРегистров(СтруктураПараметров.ДатаСвертки);
	ЗаписатьЛог("Ввод начальных остатков.",,,СтруктураПараметров.ПутьКЛогФайлу);
	ЗаписатьЛог(Строка(КорректировкаРегистровСсылка), СтруктураПараметров.ОтправлятьВТелеграм, СтруктураПараметров.IDПользователяТелеграм, СтруктураПараметров.ПутьКЛогФайлу);
	
	Запрос = Новый Запрос;
	Запрос.Текст = ПолучитьТекстЗапроса(); 
	
	Запрос.УстановитьПараметр("ДатаСвертки", СтруктураПараметров.ДатаСвертки - 1);
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	ЗаписатьЛог("Кол-во: " + ВыборкаДетальныеЗаписи.Количество(),,,СтруктураПараметров.ПутьКЛогФайлу);
	Если СтруктураПараметров.ТолькоПосчитать Тогда
		Возврат;
	КонецЕсли;
	
	КоличествоУдаленныхДокументов = 0;
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		ЗаписатьЛог("Удалено документов " + КоличествоУдаленныхДокументов + " из " + ВыборкаДетальныеЗаписи.Количество()
			,,,СтруктураПараметров.ПутьКЛогФайлу);

		ТекущийОбъект = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект();
		
		Если ТекущийОбъект = Неопределено Тогда  
			УдалитьДвиженияВажныхРегистров(ВыборкаДетальныеЗаписи.Ссылка); 
			КоличествоУдаленныхДокументов = КоличествоУдаленныхДокументов + 1;
			Продолжить;
		КонецЕсли;   
		
		Если ТипЗнч(ТекущийОбъект) = Тип("ДокументОбъект.КорректировкаРегистров") И 
			ТекущийОбъект.Дата = СтруктураПараметров.ДатаСвертки-1 И 
			ТекущийОбъект.Комментарий = "Свертка" Тогда  
			Продолжить;	
		КонецЕсли; 
		
		ЗаписатьЛог(Строка(ВыборкаДетальныеЗаписи.Ссылка),,,СтруктураПараметров.ПутьКЛогФайлу); 
		
		Попытка 
			
			Для каждого НаборДвижений из ТекущийОбъект.Движения Цикл 
				НаборДвижений.Прочитать();
				Если НаборДвижений.Количество() > 0 Тогда
					НаборДвижений.Очистить();
					НаборДвижений.ОбменДанными.Загрузка = Истина; 
					НаборДвижений.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
					НаборДвижений.Записать();	 
				КонецЕсли;
			КонецЦикла;  
			ТекущийОбъект.ОбменДанными.Загрузка = Истина;
			ТекущийОбъект.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
			ТекущийОбъект.Удалить();
			КоличествоУдаленныхДокументов = КоличествоУдаленныхДокументов + 1;
			
		Исключение
			
			ЗаписатьЛог("====================",,,СтруктураПараметров.ПутьКЛогФайлу);
			ЗаписатьЛог("Ошибка! " + Строка(ВыборкаДетальныеЗаписи.Ссылка),,, СтруктураПараметров.ПутьКЛогФайлу);
			ЗаписатьЛог(ОписаниеОшибки(), СтруктураПараметров.ОтправлятьВТелеграм, СтруктураПараметров.IDПользователяТелеграм, СтруктураПараметров.ПутьКЛогФайлу);
			ЗаписатьЛог("====================",,,СтруктураПараметров.ПутьКЛогФайлу);
			
		КонецПопытки;
		
	КонецЦикла;
	
КонецПроцедуры

Функция ПолучитьТекстЗапроса();
	Возврат "ВЫБРАТЬ
	|	ЧекККМ.Ссылка КАК Ссылка,
	|	ЧекККМ.Дата КАК Период
	|ПОМЕСТИТЬ Документы
	|ИЗ
	|	Документ.ЧекККМ КАК ЧекККМ
	|ГДЕ
	|	ЧекККМ.Дата <= &ДатаСвертки
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ТоварыНаСкладахОбороты.Регистратор,
	|	ТоварыНаСкладахОбороты.Период
	|ИЗ
	|	РегистрНакопления.ТоварыНаСкладах.Обороты(, &ДатаСвертки, Регистратор, ) КАК ТоварыНаСкладахОбороты
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	БонусныеБаллыОбороты.Регистратор,
	|	БонусныеБаллыОбороты.Период
	|ИЗ
	|	РегистрНакопления.БонусныеБаллы.Обороты(, &ДатаСвертки, Регистратор, ) КАК БонусныеБаллыОбороты
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ЦеныНоменклатуры.Регистратор,
	|	ЦеныНоменклатуры.Период
	|ИЗ
	|	РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
	|ГДЕ
	|	ЦеныНоменклатуры.Период <= &ДатаСвертки
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	Документы.Ссылка КАК Ссылка,
	|	Документы.Период КАК Период
	|ИЗ
	|	Документы КАК Документы
	|
	|УПОРЯДОЧИТЬ ПО
	|	Документы.Период";
КонецФункции

Процедура УстановитьДатуСверткиУзлов(ДатаСвертки)
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ПоМагазину.Ссылка КАК Ссылка
	|ИЗ
	|	ПланОбмена.ПоМагазину КАК ПоМагазину
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ПоРабочемуМесту.Ссылка
	|ИЗ
	|	ПланОбмена.ПоРабочемуМесту КАК ПоРабочемуМесту";
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		УзелОбъект = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект();
		УзелОбъект.ОбменДанными.Загрузка = Истина;
		УзелОбъект.ДатаНачалаВыгрузкиДокументов = ДатаСвертки;
		УзелОбъект.Записать();
	КонецЦикла;
	
КонецПроцедуры

Функция СформироватьНачальныеОстаткиВажныхРегистров(ДатаСвертки)
	
	ДатаНачальныхОстатков = ДатаСвертки - 1;
	
	Если НачальныеОстаткиСозданыРанее(ДатаНачальныхОстатков) Тогда
		Возврат "Начальные остатки созданы ранее!";
	КонецЕсли;
	
	КорректировкаРегистровОбъект = Документы.КорректировкаРегистров.СоздатьДокумент(); 
	КорректировкаРегистровОбъект.Ответственный = Пользователи.ТекущийПользователь();
	КорректировкаРегистровОбъект.Дата = ДатаНачальныхОстатков;
	КорректировкаРегистровОбъект.ОбменДанными.Загрузка = Истина;
	КорректировкаРегистровОбъект.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
	НоваяСтрокаТаблицыРегистров = КорректировкаРегистровОбъект.ТаблицаРегистров.Добавить();
	НоваяСтрокаТаблицыРегистров.Имя = "БонусныеБаллы";
	НоваяСтрокаТаблицыРегистров = КорректировкаРегистровОбъект.ТаблицаРегистров.Добавить();
	НоваяСтрокаТаблицыРегистров.Имя = "ЦеныНоменклатуры";
	НоваяСтрокаТаблицыРегистров = КорректировкаРегистровОбъект.ТаблицаРегистров.Добавить();
	НоваяСтрокаТаблицыРегистров.Имя = "ТоварыНаСкладах";
	КорректировкаРегистровОбъект.Комментарий = "Свертка"; // не менять
	КорректировкаРегистровОбъект.Записать(); 
	
	// Бонусы
	НаборЗаписейБонусы = РегистрыНакопления.БонусныеБаллы.СоздатьНаборЗаписей();
	НаборЗаписейБонусы.Отбор.Регистратор.Установить(КорректировкаРегистровОбъект.Ссылка);
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	БонусныеБаллыОстатки.ДисконтнаяКарта КАК ДисконтнаяКарта,
	|	БонусныеБаллыОстатки.БонуснаяПрограммаЛояльности КАК БонуснаяПрограммаЛояльности,
	|	БонусныеБаллыОстатки.НачисленоОстаток КАК Начислено,
	|	БонусныеБаллыОстатки.КСписаниюОстаток КАК КСписанию
	|ИЗ
	|	РегистрНакопления.БонусныеБаллы.Остатки(&ДатаСвертки, ) КАК БонусныеБаллыОстатки";
	Запрос.УстановитьПараметр("ДатаСвертки", ДатаСвертки);
	
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		НоваяЗапись = НаборЗаписейБонусы.Добавить();
		ЗаполнитьЗначенияСвойств(НоваяЗапись, ВыборкаДетальныеЗаписи);
		Если НоваяЗапись.Начислено < 0 Тогда 
			НоваяЗапись.ВидДвижения = ВидДвиженияНакопления.Расход;
			НоваяЗапись.Начислено = -НоваяЗапись.Начислено;
		КонецЕсли;
		НоваяЗапись.Период = ДатаНачальныхОстатков;
		НоваяЗапись.Регистратор = КорректировкаРегистровОбъект.Ссылка;
	КонецЦикла; 
	НаборЗаписейБонусы.ОбменДанными.Загрузка = Истина;
	НаборЗаписейБонусы.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
	НаборЗаписейБонусы.Записать();
	
	
	// Цены номенклатуры
	НаборЗаписейЦены = РегистрыСведений.ЦеныНоменклатуры.СоздатьНаборЗаписей();
	НаборЗаписейЦены.Отбор.Регистратор.Установить(КорректировкаРегистровОбъект.Ссылка);
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены,
	|	ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура,
	|	ЦеныНоменклатурыСрезПоследних.Характеристика КАК Характеристика,
	|	ЦеныНоменклатурыСрезПоследних.Цена КАК Цена,
	|	ЦеныНоменклатурыСрезПоследних.Упаковка КАК Упаковка,
	|	ЦеныНоменклатурыСрезПоследних.Валюта КАК Валюта
	|ИЗ
	|	РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаСвертки, ) КАК ЦеныНоменклатурыСрезПоследних";
	
	Запрос.УстановитьПараметр("ДатаСвертки", ДатаСвертки);
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		НоваяЗапись = НаборЗаписейЦены.Добавить();
		ЗаполнитьЗначенияСвойств(НоваяЗапись, ВыборкаДетальныеЗаписи);
		НоваяЗапись.Период = ДатаНачальныхОстатков;
		НоваяЗапись.Регистратор = КорректировкаРегистровОбъект.Ссылка;
	КонецЦикла;
	НаборЗаписейЦены.ОбменДанными.Загрузка = Истина;
	НаборЗаписейЦены.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
	НаборЗаписейЦены.Записать();
	
	
	// Товары на складах
	НаборЗаписейТовары = РегистрыНакопления.ТоварыНаСкладах.СоздатьНаборЗаписей();
	НаборЗаписейТовары.Отбор.Регистратор.Установить(КорректировкаРегистровОбъект.Ссылка);
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ТоварыНаСкладахОстатки.Склад КАК Склад,
	|	ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
	|	ТоварыНаСкладахОстатки.Характеристика КАК Характеристика,
	|	ТоварыНаСкладахОстатки.КоличествоОстаток КАК Количество
	|ИЗ
	|	РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаСвертки, ) КАК ТоварыНаСкладахОстатки";
	
	Запрос.УстановитьПараметр("ДатаСвертки", ДатаСвертки);
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		НоваяЗапись = НаборЗаписейТовары.Добавить();
		ЗаполнитьЗначенияСвойств(НоваяЗапись, ВыборкаДетальныеЗаписи);
		Если НоваяЗапись.Количество < 0 Тогда 
			НоваяЗапись.ВидДвижения = ВидДвиженияНакопления.Расход;
			НоваяЗапись.Количество = -НоваяЗапись.Количество;
		КонецЕсли;
		НоваяЗапись.Период = ДатаНачальныхОстатков;
		НоваяЗапись.Регистратор = КорректировкаРегистровОбъект.Ссылка;
	КонецЦикла;
	
	НаборЗаписейТовары.ОбменДанными.Загрузка = Истина;
	НаборЗаписейТовары.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
	НаборЗаписейТовары.Записать();
	
	
	Возврат КорректировкаРегистровОбъект.Ссылка; 
КонецФункции

Функция НачальныеОстаткиСозданыРанее(ДатаНачальныхОстатков)
	Результат = Ложь;
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	КорректировкаРегистров.Ссылка КАК Ссылка
	|ИЗ
	|	Документ.КорректировкаРегистров КАК КорректировкаРегистров
	|ГДЕ
	|	КорректировкаРегистров.Дата = &ДатаНачальныхОстатков
	|	И КорректировкаРегистров.Комментарий ПОДОБНО &Комментарий";
	
	Запрос.УстановитьПараметр("ДатаНачальныхОстатков", ДатаНачальныхОстатков);
	Запрос.УстановитьПараметр("Комментарий", "Свертка");
	
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Если ВыборкаДетальныеЗаписи.Следующий() Тогда
		Результат = Истина;
	КонецЕсли;
	
	Возврат Результат;
КонецФункции

Процедура УдалитьДвиженияВажныхРегистров(Ссылка)
	
	Попытка
		НаборЗаписейБонусы = РегистрыНакопления.БонусныеБаллы.СоздатьНаборЗаписей();
		НаборЗаписейБонусы.Отбор.Регистратор.Установить(Ссылка);
		НаборЗаписейБонусы.ОбменДанными.Загрузка = Истина;
		НаборЗаписейБонусы.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
		НаборЗаписейБонусы.Записать(); 
	Исключение
	КонецПопытки;
	
	Попытка
		НаборЗаписейЦены = РегистрыСведений.ЦеныНоменклатуры.СоздатьНаборЗаписей();
		НаборЗаписейЦены.Отбор.Регистратор.Установить(Ссылка);
		НаборЗаписейЦены.ОбменДанными.Загрузка = Истина;
		НаборЗаписейЦены.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
		НаборЗаписейЦены.Записать();
	Исключение
	КонецПопытки;
	
	Попытка
		НаборЗаписейТовары = РегистрыНакопления.ТоварыНаСкладах.СоздатьНаборЗаписей();
		НаборЗаписейТовары.Отбор.Регистратор.Установить(Ссылка);
		НаборЗаписейТовары.ОбменДанными.Загрузка = Истина;
		НаборЗаписейТовары.ДополнительныеСвойства.Вставить("ОтключитьМеханизмРегистрацииОбъектов");
		НаборЗаписейТовары.Записать();
	Исключение
	КонецПопытки;
	
КонецПроцедуры

// Вспомогательные процедуры и функции
Процедура ЗаписатьЛог(Строка, ОтправитьВТелеграм = Ложь, IDПользователяТелеграм = "", ПутьКЛогФайлу)
	СтрокаКЗаписи = Строка(ТекущаяДата()) + ": " + Строка; 
	
	Если ОтправитьВТелеграм Тогда
		ОтправитьВТелеграм(СтрокаКЗаписи, IDПользователяТелеграм);		
	КонецЕсли;
	
	Файл = Новый ЗаписьТекста(ПутьКЛогФайлу,,,Истина);
	Файл.ЗаписатьСтроку(СтрокаКЗаписи);
	Файл.Закрыть();
	
	Сообщить(СтрокаКЗаписи);
КонецПроцедуры

Процедура ОтправитьВТелеграм(СтрокаКЗаписи, IDПользователяТелеграм);
// отправка в телеграм
КонецПроцедуры

 

Вступайте в нашу телеграмм-группу Инфостарт

свертка чистка базы удаление документы размер розница

См. также

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

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    38218    215    111    

203

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

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

6000 руб.

22.05.2024    4859    27    10    

36

Свертка базы Программист 1С v8.3 1С:Управление торговлей 10 Россия Управленческий учет Абонемент ($m)

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

3 стартмани

13.12.2024    1344    3    Farpost    2    

1

Свертка базы Программист Бухгалтер 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Абонемент ($m)

Правила переноса остатков из конфигурации Бухгалтерия 3.0 в конфигурацию Бухгалтерия 3.0. Правила могут быть полезны для свертки рабочей базы документами "Ввод начальных остатков" или для перехода из типовой Бухгалтерии в отраслевую конфигурацию, основанную на ней, или для перехода с УСН на ОСНО.

2 стартмани

26.09.2024    2651    98    kumi2012    46    

6

Свертка базы Инструментарий разработчика Программист 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет НДС Абонемент ($m)

Представлена рабочая обработка для перехода на учет партий в учете запасов (не универсальная). Дополнительно расписана технология работы с документом ОперацияБух и с аналитиками учета (основная цель).

2 стартмани

19.08.2024    1851    4    RustIG    5    

4

Свертка базы Программист 1С v8.3 1С:Управление торговлей 10 Управленческий учет Абонемент ($m)

Представлена обработка для свертки УТ 10.3 по новой концепции - когда сворачиваем "подокументно", а не "целиком и сразу по всем регистрам".

2 стартмани

03.04.2024    4390    24    RustIG    19    

19

Свертка базы Программист 1С v8.3 1С:Управление торговлей 10 Управленческий учет Абонемент ($m)

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

2 стартмани

27.03.2024    1554    10    RustIG    0    

4

Свертка базы Программист Бухгалтер 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Абонемент ($m)

Обработка обращается к остаткам по счету 41.1 на дату, что выбрал пользователь, пробегается по ним и заполняет документ "Операция, введенная вручную".

1 стартмани

18.03.2024    1722    17    config    3    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Vital451 59 09.09.22 08:38 Сейчас в теме
А в реальных условиях работала ? С РИБами ?
2. niki295 30 07.10.22 20:24 Сейчас в теме
Тоже интересует данный вопрос
3. vasilievil 580 09.10.22 17:04 Сейчас в теме
Да, работала в реальных условиях с РИБами.
4. Stason13 25.10.22 12:20 Сейчас в теме
Сколько по времени занимает эта свертка?
5. Kopitsa.k 24 02.01.23 00:34 Сейчас в теме
Обработка без какого либо интерфейса, хотя логи можно было бы выводить на саму форму а не в файл, со ссылками на документы. Изначально даже впал в ступор когда при скачивании получил тот же код что и в описании, без всяких форм. Потом прочила детальнее описание и понял задумку.
Сейчас буду тестировать
6. ssn5810 26.06.23 21:19 Сейчас в теме
А форму с выбором даты свертки напряжно было сделать ?
Для отправки сообщения требуется регистрация/авторизация