Восстановление бухгалтерских проводок из резервной базы данных в 1С: 7.7

29.03.17

Интеграция - Перенос данных 1C

Пример обработки, позволяющей восстановить (и не только) проводки из резервной базы данных после неосторожного массового изменения и проведения документов за (весьма) длительный период времени. Используется механизм OLE Automation.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Восстановление бухгалтерских проводок из резервной базы данных в 1С7.7:
.ert 237,00Kb
10
10 Скачать (1 SM) Купить за 1 850 руб.

Использование механизма OLE очень широко освещалось на этом ресурсе. Есть немало различных примеров его приложений. В частности, своей публикацией я не открою Америки. Но я решил по горячим следам выложить здесь обработку, избавившую от нервенной болезни нескольких уважаемых людей на уважаемом предприятии. Ибо... в своем неуемном стремлении достичь совершенства в учете, некоторые главные бухгалтеры иногда теряют осторожность и с попустительства таких же неосторожных программистов открывают документы за весьма длительный период времени на изменение. Что при этом случается, - не мне вам рассказывать. Все бухгалтерские итоги по плану счетов за годы (десятилетия) летят в тар-та-ра-ры.

Именно с такой ситуацией мне и пришлось недавно столкнуться. И речи не было о том, чтобы пытаться пригладить модули проведения документов за 15лет, чтобы они давали ожидаемые проводки (в различных периодах - отличающиеся). Предлагаемая здесь обработка довольно универсальна. Но решает весьма узкую задачу: из резервной базы данных извлекаются проводки документов и записываются в рабочую базу данных. На этом универсальность заканчивается. В процессе, - перед записью, - вы можете внести изменения в сами проводки. Кому-что требуется. Я только обозначил место в обработке, куда нужно втискивать эти дополнительные алгоритмы, удалив оттуда свой конкретный случай в массе не интересный.

Конфигурация, в которой мне пришлось решать эту задачу, эксплуатируется уже около 15 лет. Ее правили многие программисты, вносили множество изменений. И в ней осталось уже мало общего с типовой конфигурацией. Но я попытался аккуратно выделить все необходимые для обработки процедуры и функции. Часть из них должна быть размещена в глобальном модуле рабочей и резервной баз данных. Некоторые включил в состав внешней обработки. А есть и такие, которые (по моим ожиданиям) уже имеются и весьма давно в глобальном модуле конфигураций для бухгалтерского учета. Если я что-то упустил и у вас возникнут затруднения на сей счет (обработка не сработает), - пишите в комментариях. Я постараюсь выложить дополнительные алгоритмы.

Глобальный модуль показать/скрыть
Функция ПолучитьРеквизитыПроводок () Экспорт

	Сп = СоздатьОбъект("СписокЗначений")	;
	Для Инд = 1 По Метаданные.РеквизитПроводки() Цикл
		сп.ДобавитьЗначение(Метаданные.РеквизитПроводки(Инд).Идентификатор);
	КонецЦикла;
	Возврат сп;
	
КонецФункции



Функция ПолучитьПроводки (Док, СДополнением=0) Экспорт

	тбПроводки = СоздатьОбъект ("ТаблицаЗначений");
	тбПроводки.НоваяКолонка("ДтСчет", "Счет");
	тбПроводки.НоваяКолонка("ДтСубконто1");
	тбПроводки.НоваяКолонка("ДтСубконто2");
	тбПроводки.НоваяКолонка("ДтСубконто3");
	тбПроводки.НоваяКолонка("КтСчет", "Счет");
	тбПроводки.НоваяКолонка("КтСубконто1");
	тбПроводки.НоваяКолонка("КтСубконто2");
	тбПроводки.НоваяКолонка("КтСубконто3");
	тбПроводки.НоваяКолонка("Сумма");
	тбПроводки.НоваяКолонка("Валюта");
	тбПроводки.НоваяКолонка("ВалСумма");
	тбПроводки.НоваяКолонка("Количество");
	Если СДополнением = 1
	Тогда
		сп = ПолучитьРеквизитыПроводок ();
		КвоРеквизитов = сп.РазмерСписка();
		Если КвоРеквизитов <> 0
		Тогда
			Для Инд = 1 По КвоРеквизитов Цикл
				тбПроводки.НоваяКолонка(сп.ПолучитьЗначение(Инд));
			КонецЦикла;
		КонецЕсли;
		тбПроводки.НоваяКолонка("Пометка");
	КонецЕсли;

    Если (Док.Проведен() = 0) И (Док.Вид()<> "Операция")
    Тогда
		Возврат тбПроводки;
    КонецЕсли;

	
	Опер = Док.Операция;
	Опер.ВыбратьПроводки ();
	Пока Опер.ПолучитьПроводку () = 1 Цикл

		тбПроводки.НоваяСтрока();
		тбПроводки.ДтСчет = Опер.Дебет.Счет;
		тбПроводки.ДтСубконто1 = Опер.Дебет.Субконто(1);
		тбПроводки.ДтСубконто2 = Опер.Дебет.Субконто(2);
		тбПроводки.ДтСубконто3 = Опер.Дебет.Субконто(3);
		тбПроводки.КтСчет = Опер.Кредит.Счет;
		тбПроводки.КтСубконто1 = Опер.Кредит.Субконто(1);
		тбПроводки.КтСубконто2 = Опер.Кредит.Субконто(2);
		тбПроводки.КтСубконто3 = Опер.Кредит.Субконто(3);
		тбПроводки.Сумма = Опер.Сумма;
		тбПроводки.Валюта = Опер.Валюта;
		тбПроводки.ВалСумма = Опер.ВалСумма;
		тбПроводки.Количество = Опер.Количество;
		
		Если СДополнением = 1
		Тогда
			Если КвоРеквизитов <> 0
			Тогда
				Для Инд = 1 По КвоРеквизитов Цикл
					ИмяРеквизита = сп.ПолучитьЗначение(Инд);
					тбПроводки.УстановитьЗначение(тбПроводки.КоличествоСтрок(), ИмяРеквизита, Опер.ПолучитьАтрибут(ИмяРеквизита));
				КонецЦикла;
			КонецЕсли;
			тбПроводки.Пометка = 0;
		КонецЕсли;
	КонецЦикла;

	Возврат тбПроводки;

КонецФункции



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



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



Функция  СводныеПроводки (Док) Экспорт
	
	тб = ПолучитьПроводки(Док);
	тб.Свернуть("ДтСчет,КтСчет","Количество,Сумма");
	
	Возврат тб;
	
КонецФункции



//	Возвращает список объектов метаданных указанного типа
Функция глПолучитьСписокОбъектовМетаданных (ТипОбъекта) Экспорт
	сп = СоздатьОбъект("СписокЗначений");

	Если ТипОбъекта = "Константа"
	Тогда
		Для Инд = 1 По Метаданные.Константа() Цикл
			сп.ДобавитьЗначение(Нрег (Метаданные.Константа(Инд).ПолныйИдентификатор()), 
								Метаданные.Константа(Инд).Идентификатор);
		КонецЦикла;

	ИначеЕсли ТипОбъекта = "Справочник"
	Тогда
		Для Инд = 1 По Метаданные.Справочник() Цикл
			сп.ДобавитьЗначение(Нрег (Метаданные.Справочник(Инд).ПолныйИдентификатор()), 
								Метаданные.Справочник(Инд).Идентификатор);
		КонецЦикла;
		
	ИначеЕсли ТипОбъекта = "Документ"
	Тогда
		Для Инд = 1 По Метаданные.Документ() Цикл
			сп.ДобавитьЗначение(Нрег (Метаданные.Документ(Инд).ПолныйИдентификатор()), 
								Метаданные.Документ(Инд).Идентификатор);
		КонецЦикла;
		
	ИначеЕсли ТипОбъекта = "Перечисление"
	Тогда
		Для Инд = 1 По Метаданные.Перечисление() Цикл
			сп.ДобавитьЗначение(Нрег (Метаданные.Перечисление(Инд).ПолныйИдентификатор()), 
								Метаданные.Перечисление(Инд).Идентификатор);
		КонецЦикла;
		
	ИначеЕсли ТипОбъекта = "Отчет"
	Тогда
		Для Инд = 1 По Метаданные.Отчет() Цикл
			сп.ДобавитьЗначение(Нрег (Метаданные.Отчет(Инд).ПолныйИдентификатор()), 
								Метаданные.Отчет(Инд).Идентификатор);
		КонецЦикла;
		
	ИначеЕсли ТипОбъекта = "Обработка"
	Тогда
		Для Инд = 1 По Метаданные.Обработка() Цикл
			сп.ДобавитьЗначение(Нрег (Метаданные.Обработка(Инд).ПолныйИдентификатор()), 
								Метаданные.Обработка(Инд).Идентификатор);
		КонецЦикла;
		
	КонецЕсли;
	
	Возврат сп;
КонецФункции



Функция ПолучитьЦвет(Красный = 0,Зеленый = 0,Синий = 0) Экспорт
	// функция для формирования значения цвета из составляющих (RGB)
	Возврат Макс(0,Синий)*65536+Макс(0,Зеленый)*256+Макс(0,Красный);
КонецФункции


Функция глНЕ (Оп) Экспорт
	Если Оп = 0
	Тогда
	    Возврат 1;
	Иначе
	    Возврат 0;
	КонецЕсли;
КонецФункции



//	Устанавливает пометки элеметов списка
//  Если Пометка = -1 - инверсия текущих пометок
Процедура ПометитьСписокЗначений (сп, Пометка=1) Экспорт
	Для Инд = 1 По сп.РазмерСписка() Цикл
	    Если Пометка < 0
	    Тогда
			сп.Пометка(Инд, глНЕ(сп.Пометка(Инд)));
	    Иначе
			сп.Пометка(Инд, Пометка);
	    КонецЕсли;
	КонецЦикла;
КонецПроцедуры

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

Сравнить - по нажатию этой кнопки сравниваются проводки документов в рабочей и в резервной базах данных. Можно ограничиться сравнением сводных проводок, когда количество и сумма  сворачиваются по счетам Дт и Кт. В таком случае, показывается  результат этого сравнения  для несовпадающих документов. Но далеко не всегда сравнение сводных проводок извлекает полный перечень документов, требующих восстановления. В процессе, можно сформировать список "кривых" документов.

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

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

Три маленьких кнопки над списками: первая устанавливает все флажки, вторая - сбрасывает, третья - инвертирует. Не думаю, что картинки у вас будут такие же, если вообще будут.

См. также

Перенос данных 1C Программист Бухгалтер Платформа 1С v8.3 Оперативный учет 7.7 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Налоговый учет Управленческий учет Платные (руб)

Переносится из типовой конфигурации «Торговля и Склад», реакции 9.2 платформы «1С:Предприятие 7.7» в типовую конфигурацию «Бухгалтерия предприятия», редакции 3.0 платформы «1С: Предприятие 8.3» следующие документы и их операции (с соблюдением всех соответствующих проводок): Поступления товаров и услуг (в т.ч. комиссия), Реализации товаров и услуг (в т.ч. комиссия), ПКО и РКО, выписки банка, счета фактуры (выданные и полученный), Возвраты от покупателей и поставщику, Заявка Покупателя, Инвентаризация и другие (всего 28 видов документов, смотрите описание, приложенное к обработке)

11988 руб.

30.06.2014    65470    105    96    

113

Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Управленческий учет Платные (руб)

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

6000 руб.

18.05.2020    23658    64    39    

38

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v8.3 Оперативный учет 7.7 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 Бухгалтерский учет Управленческий учет Абонемент ($m)

Обработка и правила обмена данными для выгрузки документов и всех связанных с ними справочников из 1С7.7 ТиС 9.2 в 1С8.3 БП 3.0 через файл XML. В типовых конфигурациях уже есть такое решение. Это немного доработанные правила и сама обработка выгрузки, добавлена возможность устанавливать отбор по выгружаемым документам по Фирме, Контрагенту, Складу, Проекту, Автору, ЮрЛицу. А также это внешняя обработка, что даёт возможность адаптировать её под нетиповую ТиС. Обработка и правила тестировались на платформах: 1С: Предприятие 7.7 и 1С: Предприятие 8.3.18.1334. На типовых конфигурациях: «Торговля + склад», редакция 9.2 (7.70 1004) и «Бухгалтерия предприятия» редакция 3.0 (3.0.96.30).

1 стартмани

13.08.2021    9260    56    Kuzya_brаtsk    8    

11

Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 Платформа 1C v8.2 1С:Управление торговлей 10 1С:Комплексная 7.7 Россия Управленческий учет Платные (руб)

Начните вести учет в УТ 10.3! Перенесите все свои данные в УТ 10.3 в любом месяце года и продолжите вести учет! Программа перенесёт любое количество баз с документами и остатками в больших количествах. Обработка выгрузки выполнит проверку исходных данных и сформирует отчет о найденных ошибках в справочниках и документах. Партии переносятся с себестоимостью. Штрихкоды номенклатуры загружаются. Цена переносится. Автор консультирует.

8400 руб.

17.03.2021    16010    5    13    

6

Зарплата Перенос данных 1C Программист Бухгалтер Бухгалтерский учет 7.7 Сложные периодические расчеты 1С:Бухгалтерия 7.7 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Как известно, Бухгалтерия 7.7 не имеет штатной возможности для обмена с ЗУП 3.1. Данная разработка пригодится тем, кто перешел с ЗиК 2.3 на ЗУП 3.1, но вынужден по каким-то своим причинам оставаться на Бухгалтерии 7.7.

18000 руб.

29.09.2020    13851    2    0    

5

SALE! 10%

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Бухгалтерия 7.7 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0 | Продукт является развитием и исправлением ошибок стандартной обработки для выгрузки данных из 1С Бухгалтерии 7.7 в Бухгалтерию 3.0 | Перенос из 7.7 является сложным, и на рынке сложно найти специалистов 1С по "семерке" - сотрудники помогут вам выполнить переход в рамках техподдержки предлагаемого переноса данных!

55778 50200 руб.

26.05.2020    35129    10    73    

16

Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Конвертация данных Бесплатно (free)

При переходе на новую версию 1С в период параллельной эксплуатации может возникнуть необходимость обратной конвертации данных (по правилам КД версии 2.1) из 1С:Предприятие 8.3 в 1С:Предприятие 7.7 для переноса данных из 1С:Предприятие 8.3 в 7.7. Сделать это поможет следующая инструкция по КД2 о том, как создать новую конвертацию из 8.3 в 7.7, сохранить модуль и правила загрузки данных, сделать загрузку данных. КД2.

17.10.2019    15315    ksnik    0    

16

Загрузка и выгрузка в Excel Перенос данных 1C Программист Пользователь Платформа 1С v7.7 Платформа 1С v8.3 Конфигурации 1cv8 Конфигурации 1cv7 1С:ERP Управление предприятием 2 Абонемент ($m)

Описание технологии загрузки любых адресов из 1С 7.7 с разложением по ФИАС в современные конфигурации 1C 8.3 на примере ERP. Предлагаемый способ просто чудо, он гарантирует результат, он очень простой и качественный! Моя обработка является синтаксическим анализатором, который подставляет в строку грязного адреса выражение "Дом №" и "Корпус", благодаря чему грязные адреса 7.7 сами очень хорошо раскладываются по значимым полям ФИАС - заполняется область, город, улица, дом, корпус.. все раскладывается само с помощью встроенного механизма современных конфигураций 1С 8.3, который написали сами сотрудники фирмы 1С!

1 стартмани

16.08.2019    19669    18    ksnik    12    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. bullet030 3 30.03.17 10:37 Сейчас в теме
Бухгалтерский учет, редакция 4.5 (7,70,615)
Секция.Ячейка.ЦветФона (ПолучитьЦвет<<?>>(192, 255, 192));
Функция не обнаружена (ПолучитьЦвет)
Секция.Ячейка.ЦветФона (ПолучитьЦвет(192, 255, 192)<<?>>);
Неопознанный оператор
Секция.Ячейка.ЦветФона (ПолучитьЦвет(192, 255, 192))<<?>>;
Ожидается ключевое слово 'КонецПроцедуры' ('EndProcedure')
Секция<<?>>.Ячейка.Текст = "НомерСтр";
Переменная не определена (Секция)
Секция<<?>>.Ячейка.РамкаОбвести (3, 3, 3, 3);
Переменная не определена (Секция)
Таб<<?>>.ВывестиСекцию (Секция);
Переменная не определена (Таб)
Для НК=1 по тб<<?>>.КоличествоКолонок() Цикл
Переменная не определена (тб)
тб<<?>>.ПолучитьПараметрыКолонки(НК, , Дл, , Назв);
Переменная не определена (тб)
Секция<<?>>.Ячейка.Текст = Назв;
Переменная не определена (Секция)
Секция<<?>>.Ячейка.РамкаОбвести (3, 3, 3, 3);
Переменная не определена (Секция)
Таб<<?>>.ПрисоединитьСекцию (Секция);
Переменная не определена (Таб)
Для НС = 1 По тб<<?>>.КоличествоСтрок() Цикл
Переменная не определена (тб)
Секция = Таб<<?>>.ПолучитьСекцию("Ячейка|Значение");
Переменная не определена (Таб)
Если ИмеетсяПометка <<?>>= 1
Переменная не определена (ИмеетсяПометка)
Пометка = Число (тб<<?>>.ПолучитьЗначение(НС, "Пометка"));
Переменная не определена (тб)
Секция.Ячейка.ЦветФона (ПолучитьЦвет<<?>>(255, 192, 192));
Функция не обнаружена (ПолучитьЦвет)
Секция.Ячейка.ЦветФона (ПолучитьЦвет(255, 192, 192)<<?>>);
Неопознанный оператор
<<?>>КонецЕсли;
Ожидается ключевое слово 'КонецЦикла' ('EndDo')
КонецЕсли<<?>>;
Ожидается ключевое слово 'КонецЦикла' ('EndDo')
При проверке модуля обнаружены синтаксические ошибки!
Показать
2. romasna 325 30.03.17 10:45 Сейчас в теме
(1)Позволь узнать, ты не забыл добавить процедуры/функции в глобальный модуль? В их перечне есть функция ПолучитьЦвет(...).
3. bullet030 3 30.03.17 11:05 Сейчас в теме
(2)
ы не забыл добавить процедуры/функции в глобальный модуль
- зачем? где их взять?
Разве нельзя добавить все процедуры/функции в модуль обработки?
4. romasna 325 30.03.17 11:13 Сейчас в теме
Нет, все процедуры и функции я не могу включить в состав обработки. Есть жесткие ограничения (OLE). Часть из них все-равно будет в глобальном модуле (должна быть!). А их перечень я указал в статье. Нужно раскрыть ссылку в статье "Глобальный модуль показать/скрыть" и все процедуры/функции из открывшейся области перенести в глобальный модуль твоей конфигурации (рабочей и резервной баз данных). Естественно, если ты сам не программист, рекомендую эксперименты проводить на копиях БД.
5. bullet030 3 30.03.17 11:25 Сейчас в теме
Хорошо.
- Функция не обнаружена (глНЕ)
6. romasna 325 30.03.17 11:29 Сейчас в теме
(5)Спасибо за замечание. Добавил в конец глобального модуля в статье.
7. bullet030 3 30.03.17 16:17 Сейчас в теме
Ещё
по нажатию кнопки "Сравнить"
тбПроводки.НашаФирма = Опер.НашаФирма;
Поле агрегатного объекта не обнаружено (НашаФирма) Объект (Опер)
8. romasna 325 30.03.17 16:33 Сейчас в теме
(7)Моя обработка работает в комплексной конфигурации, в плане счетов есть разделитель учета. Судя по сообщению, у тебя разделителя учета нет. Везде, где найдешь "НашаФирма", - забей строки комментариями //. Например:
//тбПроводки.НашаФирма = Опер.НашаФирма;
Это касается и модуля обработки, и процедур глобального модуля.
9. romasna 325 30.03.17 17:17 Сейчас в теме
(7)Строго говоря, стоило бы посмотреть в конфигурации, есть ли разделитель учета. Потому что, если он все-таки имеется, но под другим именем, то "НашаФирма" следовало бы заменить на "ТвойРазделительУчета". Его можно найти в дереве конфигурации. Щелкни дважды мышаком в дереве по "Планы Счетов" и на выпавшей панели справа внизу реквизит "Разделитель учета". Значение его - это и есть ТвойРазделительУчета. Если разделитель не назначен, то достаточно ограничиться комментариями, как я писал в предыдущем сообщении.
10. romasna 325 31.03.17 13:53 Сейчас в теме
(7)Я допустил оплошность, не приняв во внимание, что состав доп.реквизитов проводок отличается в различных конфигурациях. Взвалил эту проблему на твою голову. Скачай обновленный файл обработки, замени процедуру глобального модуля ПолучитьПроводки. Не забудь перед ней вставить новую функцию ПолучитьРеквизитыПроводок.
Теперь можно использовать обработку в любой конфигурации без необходимости внесения изменений..
11. Afanasenkovv 17.07.18 18:46 Сейчас в теме
Испытал вашу обработку! релиз Бух7.7 644 релиз. Добавил все что надо в глмодуль, однако при сравнении не отражает сами проводки, при восстановлении выдает ошибку (в файле)
Прикрепленные файлы:
12. romasna 325 17.07.18 20:46 Сейчас в теме
(11)Сожалею об этом. Но чтобы выразить еще что-то , кроме сожаления, мне требовалось бы рассмотреть обе Ваши базы данных. К тому же, более чем за год, прошедший со времени написания обработки, я уже все подзабыл и требуется детальное рассмотрение самой обработки. Возможно, проблема с какой-то ручной операцией (при восстановлении из резервной БД). Можно попытаться восстановление проводить выборочно, шаг-за-шагом, по видам документов для выявления места, в котором глюк. Небольшими периодами. Выключить некоторые документы в списке "Кривые документы", - в сообщениях видно место затыка. В любом случае, разбираться с этим придется программисту. Прошу меня извинить, не понял Ваш статус...
Я не гарантирую восстановление проводок документов из резервной БД для ЛЮБЫХ, не ограниченных фантазией бухгалтеров, внесенных изменений. По крайней мере, состав документов и ручных операций не должен был измениться. В свое время, я восстанавливал с ее помощью проводки, изменившиеся после неосторожного пере-проведения документов в прошлых периодах, пять-десять лет назад. Они стали другие, итоги посыпались. Но сам набор документов и операций не менялся.
13. Afanasenkovv 17.07.18 22:53 Сейчас в теме
Спасибо за ответ! Начал разбираться с кодом, возникла необходимость)
14. user1240798 19.06.19 15:32 Сейчас в теме
Ищу бухгалтера для восстановления отчетности за 1-2 квартал 2019 на базе 1С 7.7. niko6607@mail.ru
Оставьте свое сообщение