В стандартной поставке конфигурации "Бухгалтерия предприятия, редакция 3.0" предусмотрена типовая процедура свертки базы, однако, она не всем подходит в силу тех или иных причин. Например, в базе после свертки все равно можно встретить неактуальные, помеченные на удаление документы и справочники, да и само удаление помеченных объектов после свертки может занять длительное время, которое не всегда есть.
Гораздо проще и логичнее выглядит свертка базы путём создания пустой базы данных и перегрузки в неё остатков из рабочей.
Для данной свертки и предназначены правила из вложения.
Правила обмена разработаны в конфигурации Конвертация данных ред. 2.1, а выгрузка данных происходит через типовую обработку "Универсальный обмен данными в формате XML":
Перед выгрузкой нужно указать на какую дату и по какой организации выгрузить данные:
Правила неспроста названы "лёгкими", т.к. они переносят только документы ввода начальных остатков со всеми необходимыми справочниками и регистр сведений "Учетная политика":
Данные правила также могут использоваться при переходе с типовой Бухгалтерии на какое-нибудь отраслевое решение, основанное на ней, например, при переходе с конфигурации Бухгалтерия на конфигурацию Управление Холдингом.
Во вложении к публикации также находится файл со списком запросов, которые необходимы для сбора остатков по счетам бухгалтерского учета, данный файл будет полезен тем разработчикам, которые пишут собственные правила выгрузки остатков из бухгалтерских баз. Список запросов можно открыть, используя типовую "Консоль запросов":
Правила тестировались на релизе Бухгалтерии 3.0.65.91 на платформе 8.3.12.1529
Для работы на других релизах рекомендуется после загрузки правил в Конвертацию данных обновить описание конфигурации.
UPD от 26.02.2024:
- В запросе для выгрузки остатков по материалам добавлена проверка на то, что КоличествоОстаток может быть равным 0
- Из правил обмена удален реквизит "ИПИспользуетТрудНаемныхРаботников" справочника "Организации", т.к. данный реквизит в более поздних версиях бухгалтерии удален, что могло приводить к ошибкам при выгрузке данных
UPD от 21.03.2024:
- При выгрузке номенклатуры на релизах старше 3.0.67.xx, нужно в ПКО "Номенклатура" исправить источник и приемник для поля "Ставка НДС" на "УдалитьСтавкаНДС". Связано это с переименованием реквизита в более поздних релизах бухгалтерии.
- Правила обмена обновлены с учетом удаления этих реквизитов
Обновил описание конфигурации до актуальной для меня версии БП 3.0.67.43.
После проверки правил исправил названия реквизитов, которые были переименованы.
(ИПИспользуетТрудНаемныхРаботников, ПредъявляетНДС, СтавкаНДС)
Загружаются и проводятся документы «ВводНачальныхОстатков» кроме «Расчеты с персоналом по оплате труда»
Выдает следующие ошибки:
Дата движений документа должна быть не ранее 2000 года
Не удалось сформировать документ «Ведомость в банк». Вероятно документ ранее уже был записан в информационной базе.
Ошибка записи объекта
ТипОбъекта = Ввод остатков
Объект = Ввод остатков 0000-000011 от 31.12.2018 23:59:59
ОписаниеОшибки = Ошибка при вызове метода контекста (Записать): В данной транзакции уже происходили ошибки!
ПозицияМодуля = ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(6101)
КодСообщения = 26
По даблклику на ошибке заводит новый документ «Ведомость в банк»
Вторую ошибку очевидно выдает процедура СформироватьВедомости(Отказ) из модуля объекта документа «ВводНачальныхОстатков»
сравнил: она не поменялась с версии 3.0.65.91
Хотел посмотреть в отладчике, штатная обработка «Универсальный обмен» не дает сделать отладку обработчиков из внешней обработки,
http://forum.infostart.ru/forum15/topic195031/message2005672/#message2005672
пишет: Внешняя обработка отладки, загружаемая из файла на диске, не поддерживается.
Отредактировал код обработки как в этом сообщении
Попытался использовать отладку обработчиков загрузки — не прерывается на выставленных точках останова.
В самой обработке «»Универсальный обмен» при отладке перед попытками записи у документа «ВводНачальныхОстатков» в ТЧ «Расчеты с персоналом по оплате труда» уже стоит:
«Ошибка получения представления значения: В данной транзакции уже происходили ошибки!»
использовать транзакции включил, чтобы базу не засорять при попытках загрузки.
Подскажите, пожалуйста, как исправить, или в каком направлении копать (на дату движений жалуется в начале)
(1)
Добрый день.
Отключите в настройках учета признак «Учет заработной платы ведется в этой информационной базе», тогда документ по вводу остатков по счету 70 проведётся
(2)
Получилось, спасибо!
теперь падает на следующем вводе остатков «Расчеты с подотчетными лицами»
ранее на данных простой базы все проводилось(документ внутри был пустой), на других вылетает с ошибкой:
Ошибка при записи документа
ИмяПКО = ВводНачальныхОстатков
ТипОбъекта = Ввод остатков
Объект = Ввод остатков от 31.12.2018 23:59:59
ОписаниеОшибки = Ошибка при вызове метода контекста (Записать): Запись не верна! Значение поля «Расчетный документ» не может быть пустым! (Регистр накопления: Прочие расчеты; Номер строки: 1)
ПозицияМодуля = ВнешняяОбработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8767)
КодСообщения = 25
(3)
Судя по описанию ошибки у вас УСН?
Для УСН прийдется доработать правила обмена в тех ПВД, где нужно выгружать доп. сведения для УСН.
Вобщем, берите напильник и готовьтесь к правкам …
Не перегружается система налогообложения
Похоже ошибки в приоритетах выгрузки/загрузки, при проведении документов остатков учетная политика еще не подгружена (ну и система налогообложения отсутствует как таковая)
Ну и устарело уже 😉 Готовьтесь к правкам связанным с НДС …
Ошибки на выгрузке
Остатки_НДС76
Показать
Куча подобных:
Неверная с/ф — СЧЕТ:76.АВ Контрагент:XXX НДС:29 745,76 СчетФактураВыданныйПолученный: СчетФактура:
(5) собственно правила на то и названы «лёгкими», у всех свой учёт и свои напильники 🙂 редко, если не никогда, какие правила обмена можно взять и они сразу будут работать на вашей конфигурации.
Ну что я могу сказать, жалко, что нет moneyback’a. Совсем не вижу связи между словами «легкие» и «напильник».
Добрый день. Мы удалили документы в базе и начали вести новую базу. Хотим перенести остатки по 10 счету. Если мы воспользуемся вашей обработкой, номенклатура сопоставится?
(8) добрый день.
Это не обработка, а правила обмена. Номенклатура в этих правилах ищется либо по УИД, либо по наименованию, если не находится то создается
(9)Ну в принципе если включить поиск по коду, то должно работать?
(10) Да, должно
И еще такой вопрос.
Нам нужно основное перенести материалы и ОС. В документе ввода остатков есть данные о партиях (НДС). как будут они сформированы: документы ручного учета, или перенесутся именно те документы по которым эти материалы пришли?
(12) Остатки по материалам в части НДС выгрузятся только, если в исходной базе включен «Раздельный учет НДС». Будут сформированы документы ручного учета.
Добрый день. При выгрузке остатков по материалам,возникает ошибка при вызове метода контекста (Выполнить):Ошибка выполнения
запроса:Ошибка при выполнении операции над данными:Ошибка SQL:деление на 0:Деление на 0 значения типа Numeric. А так же при выгрузке остатков Остатки_ НДС76: Значение не является значением объектного типа (Авансы). Возможно ли эти ошибки поправить?
(14) Добрый день.
Посмотрите обработчики по выгрузке остатков, возможно, по алгоритму сможете найти в каком месте возникает ошибка и поправить это.
Процедуру по выгрузке остатков по материалам можно найти на закладке Алгоритмы в КД.
Процедуру по выгрузке остатков по НДС76 в правиле выгрузки «Остатки_НДС76»
По материалам, возможно, у вас есть остатки с нулевым количеством?
Спасибо за ответ. Еще вопрос, почему при выгрузке 60 и 62 счетов не используется ПР? Остатки по этим счетам перебрасываются не правильно.
(16) В таблице «РасчетыСКонтрагентами» документа ВводНачальныхОстатков есть только Сумма и СуммаНУ.
Если они отличаются, то документ при проведении сам поставит разницу как СуммуПР в проводку
Добрый день.По материалам у нас ,действительно ,есть остатки с нулевым количеством. Как поправить Алгоритм, не могу разобраться, не поможете ? Спасибо
(18) Добрый день.
В запросе алгоритма есть поле «цена», которое вычисляется как СуммаОстаток/КоличествоОстаток, добавьте туда условие, что КоличествоОстаток <> 0. Должно получится что-то вроде «Выбор когда Не КоличествоОстаток = 0 Тогда СуммаОстаток/КоличествоОстаток Иначе СуммаОстаток Конец КАК Цена»
Большое спасибо за ответы. «Забросала » Вас вопросами. После выгрузки остатков по 60 не редактируется сумма НУ, документ Ввод Начальных Остатков редактируется только по суммам БУ?
(20)сумма ну в пользовательском режиме не редактируется. Только через редактор реквизитов, например
Добрый день. После выгрузки 60-62 сч. в док. ввод начальных остатков в третьем субконто создается ДокументРасчетовСКонтрагентами на дату остатков, а нужна реальная дата документа расчета. Где поправить. Спасибо.
(22) В ПКО «ДокументРасчетовСКонтрагентом» затереть обработчик ПКС
Большое спасибо. Вопрос не по Вашей обработке: в БП есть обработка Свертка информационной базы ,при которой происходит формирование документов ввода остатков на определенную дату и удаление документов, которые не используются, но объем базы не уменьшается, к сожалению. Может можно выгрузить при помощи обработки ВыгрузкаЗагрузкаДанных сформированные док.остатков в чистую базу. Сверткой базы занимаюсь впервые, не знаю как лучше сделать.
(24)я не пользовался типовой сверткой, но думаю, что после нее можно запустить удаление помеченных, большинство документов должно удалится
Все документы ввод остатков — пустые. С чем связано?
При наличии косячного ведения учета, например остатки по 10 счету только по одному ресурсу, например сумма без количества, сваливается по ошибке деления на ноль. Не пойдет. Пускай исправления делаются в базе приемнике.
По Остатки_НДС76 : если есть остатки по 76.АВ с пустым субконто счет-фактура, то сваливается по ошибке. Ну раз уже используете левое соединение, так хотя бы надо использовать конструкцию EстьNULL или переопределять значение когда NULL.
Что это за
?
А если NULL?
Ну или потом уже при обращении к результату запроса проверять. Или вовсе внутреннее соединение использовать нужно.
Добрый день.
Релиз 3.0.67.43.
При выгрузке ОС и материалов ошибки.
Ошибки во вложении.
(29) добрый день, по всей видимости у вас есть остатки с нулевым количеством. Я завтра постараюсь доработать этот момент в правилах и выложу новую версию.
Если нужно прямо срочно, то посмотрите выше по комментариям я писал как это можно исправить самостоятельно
Дело в том, что мы тоже подумали что это из за остатков без количества. И убрали такие остатки (списали стоимость проводкой Д91 К10) и по отчету, на дату переноса нет таких позиций. Но ошибка все равно появляется.
(31) Может осталась вторая ошибка? В справочнике «Организации» есть реквизит «ИПИспользуетТрудНаемныхРабочитников»? На каком релизе перенос делали? Обновитесь до 3.0.65.91.
(31) Добрый день. Обновил правила обмена, теперь в запросе по материалам присутствует проверка на возможное деление на ноль.
Также удалил из правил реквизит, которого нет в вашем релизе бухгалтерии.
Это должно помочь.
Остатки по счёту 10.11.1(спец.одежда в эксплуатации) выгружаются этими правилами ?
(34) Добрый день, нет, остатки по счету 10.11.1 не выгружаются.
Добрый день!
У меня при выгрузке выходят ошибка с номенклатурой и её ставкой, ставка указана, а что при выгрузке не хватает не понимаю:
(36) Соответственно не выгружаются остатки по: Товары, Материалы, Остатки 60, Остатки по забалансовым счетам. Могу предположить это как то связано с новой ставкой НДС в 20 процентов?
Попробовал ещё сделать выгрузки на других базах (Бухгалтерия предприятия, редакция 3.0 (3.0.68.66)) везде проблема со ставкой НДС.
(36) Добрый день. В последних релизах «1С: Бухгалтерии» переименовали реквизит «СтавкаНДС» на «УдалитьСтавкаНДС». Поправьте в правилах обмена ПКС «Номенклатура», ПКО «Ставка НДС» на:
(37) ответ выше)
(38) Для «Особо одаренных» править правила обмена нужно через какую версию Конвертации «Конвертация данных, редакция 3.0 (3.0.5.3)»?
Сейчас придётся ещё разбираться с этой Конвертацией 🙁
(38) Антон, спасибо за работающий вариант правил!
Добрый день. Подскажите, пожалуйста: сделал все, как на скриншоте
(38) , ошибка осталась. Что можно сделать?
(38) Разобралась..Удалила реквизит в самом XML. Пришлось удалить еще и реквизит «ПредъявляетНДС» по той же причине
Большое спасибо за обработку! у меня ОС более 500 штук, думала поседею пока их руками загружу, но 5 минут и Вашей обработкой перенесла все ))))
Подскажите, пожалуйста, почему при переносе данных из одной БП в другую в документе «Ввод остатков» например по 10 счету не переносится «Партия» или документ расчетов? Т.е. все поля нужно заполнять в ручную и документ расчетов с контрагентами нужно вводить в ручном режиме?
(45) Добрый день, а в базе откуда осуществляется перенос остатки ведутся в разрезе «Склад/Партия»? Выполните запрос, который выгружает остатки по 10-му счету в базе откуда выгружаются данные, посмотрите есть ли в результате склады и партии
Добрый день! В настройка выставлен учет в разрезе Партия/склады, все документы перевёл ещё раз. Результат тот же 🙁
А здорово, в целом. А как шаблон — вообще супер.
Мои личные придирки:
Не хватает, конечно, из коробки (бесплатной обработки, лол) 45 с субсчетами, 57.03. Достаточно ходовые счета, как по мне. Но они вполне себе загрузились по алгоритму «ВыгрузитьОстаткиПростыхСчетов»
С партиями не очень понятно. Зачем брать их из раздельного учета? Есть же субконто на 4110 счетах. Да и далеко не во всех организациях ведется раздельный учет. Проблема у (47) связана именно с этим. Но, опять таки, несколько строк переписать в правилах и всё встает на свои места.
+ в обработке Вы зашили явно, что субконто2 на 41 и 10 счетах — склад. Аналитика по складу может не вестись (что в бухашках норма), на втором субконто может быть партия 😉 Соответственно 41/10 счета идеально перенесутся только при том виде учета, который ведется у Вас в базах, а именно:
Ведется учет в разрезе складов и партий, а не только партий
Ведется раздельный учет по НДС
Параметры учета и учетная политика не выгрузились (3.0.70.61), но это прямо вообще ерунда. Оно может быть и лучше даже. Пусть бухи еще раз подумают и сделают как положено.
Антон, а не думали тупо все остатки загонять бух. справкой? Там и морочиться особо не придется.
Это праздный интерес, сам пока глубоко не ковырялся, взял за каркас Вашу обработку и допилил.
del. написал выше
(48) Добрый день. Спасибо большое за адекватную критику!
На счет остатков по счетам с партиями и складами, действительно, как появится свободное время перепишу правила выгрузки, чтобы они учитывали настройки базы, от куда выгружаются данные такие, как «Раздельный учет НДС» и «Вести учет по складам»
Поддерживается ли повторная загрузка данных в одну и ту же базу, после корректировки правил? Или нужно каждый раз пустую базу создавать?
(51) Добрый день, да, поддерживается, документы ввода остатков ищутся при загрузке
Добрый день! Счета 41 — е и 10 — е переносятся по складам и партиям? У меня они не заполнились.