Перенос данных из устаревших конфигураций на платформе 1С:Предприятие 7.7 в современные редакции на платформе 1С:Предприятие 8.3 — задача, с которой до сих пор сталкиваются многие специалисты. Особенно часто возникает необходимость разового или выборочного переноса за определенный период по конкретному расчетному счету, когда запускать полный перенос всей базы нецелесообразно и рискованно.
В этой статье мы подробно и по шагам разберем три наиболее эффективных практических метода переноса банковских выписок из «1С:Бухгалтерии 7.7» в «1С:Бухгалтерию 8» (редакция 3.0). Мы проанализируем технические нюансы каждого способа, рассмотрим подводные камни, связанные с различием в архитектуре баз данных, и научимся минимизировать ручной труд при сопоставлении контрагентов и договоров.
Когда нам требуется перенести только банковские документы, самым простым и логичным решением является использование универсального текстового формата обмена 1CClientBankExchange. Этот стандарт поддерживается всеми банками и всеми версиями 1С уже более двадцати лет. Прелесть метода заключается в том, что нам не нужно настраивать правила конвертации данных или писать сложные обработки — обе программы уже умеют работать с этим форматом «из коробки».
Вариант А. Загрузка напрямую из личного кабинета банка
Если у организации сохранился доступ к системе интернет-банкинга для нужного расчетного счета, нам вообще не понадобится выгружать что-либо из старой «семерки». Давайте выполним следующие действия:
kl_to_1c.txt).Вариант Б. Выгрузка файла «Клиент-Банка» из программы 1С:Бухгалтерия 7.7
Если доступа к банк-клиенту уже нет (например, расчетный счет закрыт несколько лет назад, а архивные данные нужны в новой базе), мы можем сформировать аналогичный файл выгрузки прямо из старой программы 1С 7.7. Разберем этот процесс по шагам:
C:\Temp\1c_to_kl.txt).Windows (ANSI).После успешного завершения процесса мы получим структурированный текстовый файл. Давайте посмотрим на пример технической структуры такого файла, чтобы понимать, какие данные передаются:
1CClientBankExchange
ВерсияФормата=1.02
Кодировка=Windows
Отправитель=БухгалтерияПредприятия
Получатель=Банк
ДатаНачала=01.01.2023
ДатаКонца=31.01.2023
РасчСчет=40702810900000001234
СекцияРасчСчет
НачальныйОстаток=150250.00
ВсегоПоступило=45000.00
ВсегоСписано=30000.00
КонечныйОстаток=165250.00
КонецРасчСчет
СекцияДокумент=Платежное поручение
Номер=145
Дата=15.01.2023
Сумма=15000.00
ПлательщикСчет=40702810900000001234
ПлательщикИНН=7701020304
ПолучательСчет=40702810500000005678
ПолучательИНН=7705060708
НазначениеПлатежа=Оплата за информационные услуги по договору № 12 от 10.01.2023. Без НДС.
КонецДокумента
Теперь нам остается только загрузить этот файл в «1С:Бухгалтерию 8.3» через стандартный журнал банковских выписок. Новая платформа сама распознает секции документов, автоматически сопоставит контрагентов по ИНН/КПП, найдет нужные расчетные счета и создаст документы Поступление на расчетный счет и Списание с расчетного счета.
Если вариант с Клиент-Банком по каким-то причинам не подходит (например, в выписках 1С 7.7 были вручную скорректированы бухгалтерские счета или субконто, которые обязательно нужно перенести в неизменном виде), мы можем воспользоваться механизмом XML-конвертации. В дистрибутив «1С:Бухгалтерии 8» уже встроены готовые правила перехода с версии 7.7. Наша задача — использовать их точечно, отключив все лишние объекты.
Давайте разберем по шагам, как настроить выборочную выгрузку:
C:\Users\[Имя_Пользователя]\AppData\Roaming\1C\1Cv8\tmplts\1c\Accounting\[Номер_Текущего_Релиза]\Convert).V77Exp.ert — внешняя обработка выгрузки для платформы 7.7;Acc_Acc8.xml — актуальные правила конвертации данных.ExtForms). Запустим «семерку» в монопольном режиме, выберем в меню Файл -> Открыть и запустим обработку V77Exp.ert.Acc_Acc8.xml. В поле «Имя файла данных» укажем путь, куда запишется готовая выгрузка (например, v77_out.xml).СтрокаВыпискиПриход, СтрокаВыпискиРасход или обобщенный документ Выписка).Бывают ситуации, когда базы данных 1С 7.7 имеют повреждения структуры, из-за чего стандартные выгрузки аварийно завершают работу, выдавая ошибки формата. В этом случае идеальным промежуточным буфером выступит обычный табличный документ.
Давайте проанализируем, как реализовать этот алгоритм:
51 за нужный период, установив фильтр по субконто «Банковские счета».ЗагрузкаДанныхИзТабличногоДокумента.ПоступлениеНаРасчетныйСчет или СписаниеСРасчетногоСчет).ИНН.При любом способе переноса данных между столь разными платформами мы неизбежно столкнемся с архитектурными различиями систем. Давайте заранее разберем ключевые моменты, чтобы избежать ошибок в учете:
Выписка), внутри табличной части которого содержались все операции по приходу и расходу. В «1С:Бухгалтерии 8.3» такой сущности нет. Каждое поступление денег — это отдельный документ Поступление на расчетный счет, а каждое списание — документ Списание с расчетного счета. При переносе через Клиент-Банк или правила обмена система сама корректно разложит строки старой выписки на отдельные документы в новой базе.ИНН и КПП. Платформа 8.3 при загрузке будет искать совпадения именно по этим полям. Если ИНН совпадет, документ привяжется к уже существующему контрагенту в новой базе. Если ИНН заполнен не был, система создаст дублирующую карточку, что приведет к путанице во взаиморасчетах.Договоры на счетах расчетов 60, 62, 76). Если в выгружаемом файле информация о договоре отсутствует или база не сможет сопоставить его название, система автоматически создаст для контрагента технический договор с наименованием «Основной договор» или оставит поле пустым.Статьи движения денежных средств) и выполнить групповое перепроведение документов за перенесенный период. Это позволит сформировать правильные проводки на счетах бухгалтерского и налогового учета.