Правила обмена для свертки БП 3.0 -> БП 3.0 (3.0.43.241) , БП 2.0 -> БП 2.0 (2.0.64.33) документами ВводНачальныхОстатков / Ночной перенос остатков

Опубликовал Джон До (jdo) в раздел Обработки - Свертка базы

Правила обмена и шаблон внешней обработки для ночного переноса остатков в документы ВводНачальныхОстатков (свертка базы) для бухгалтерия предприятия 2.0 (БП).
Задача: ежесуточно ночью переносить из старой базы новые остатки (после исправлений) и документы изменённые за период с начала года из старой в новую базу данных, обе из которых находятся на поддержке без возможности изменений.

Приближается закрытие периода и сдача бухгалтерской отчетности за год. До меня на этом месте работал один «внедренец» после которого мне досталось «тяжёлое наследство»: тормозная УПП, переделанная из УТ 10 и Бухгалтерия 8.2. При этом они очень долго жили не зная друг о друге ничего, естевственно их внутренние ID объектов тоже были «незнакомы». Поиск и синхронизация велись по полям поиска, которые очень часто дублировались. Приходилось выслушивать «нелицеприятные высказывания» от милых дам, лезть и исправлять косяки «врукопашную» (как? - наречие, пишем слитно), что генерировало маленький стресс, прерывало построение логической цепочки текущей разработки и резко снижало производительность труда Наконец-то появился повод (переход на 8.3) отличная возможность отсечь все ошибки предыдущих периодов, свернуть базу и «начать с чистого листа». Перековыряв сайт Инфостарт я нашёл несколько обработок по решению данной проблемы. Все обработки хороши, но у каждой свои недостатки:

  1. Обработка от Alex_E - это внешняя обработка формирующая документы ВводНачальныхОстатков (ВНО) на основании остатков по регистрам бухгалтерии в рабочей базе с последующим переносом их в новую базу с помощью правил обмена., доработанная из обработки с диска ИТС «СверткаБазы.epf» Не хотелось бы «светить» такую работу в текущей базе данных (БД) , поэтому приходилось делать копию текущей (БД) и заниматься этим вопросом в ней, не нагружая рабочую БД. Процесс не автоматический (процесс без участия человека), а хорошо автоматизированный (процесс с участием человека).  Требуется постоянные нажатия красивых кнопок и контроля процесса.  Можно было бы добится полной автоматизации, если бы не проблемы с переносом счетов 76.АВ и 76.ВА (раздел учета «НДС по авансам (счета 76.АВ, 76.ВА)»). Хотелось бы больше т.н. «статдартных» подходов/решений, и всё «в одном флаконе».
  2. Отличные правила от new_user. Привычное решение, но ВНО только для раздела «Основные средства и доходные вложения (счета 01, 02, 03, 010)», остальные счета документами "Бухгалтерская справка". Но ведь документ ВНО формирует движения не только по регистрам бухгалтерии (плану счетов), но и по регистрам накопления (а ведь ещё нужны и регистры сведений и т.п.), а как же они?
  3. К моему глубокому сожалению правила от 1С (Обработка "Выгрузка данных из 1С:Бухгалтерии ред.1.6" от 22.02.2012) выдают ошибки т.к. метаданные БП 1.6 и БП 2.0 различны.

Предлагаемое мой решение это переписанные для БП 2.0 правила от 1С, которые формируют документы ВНО, перенося как остатки по регистрам бухгалтерии (остатки по счетам), так и остатки по регистрам накопления (НДСПредъявленный, НДСВыставленный, НДСПоРеализации0 и т.п.). Это привычное прикладное решение (Обычно говорят «стандартное» решение, но если оно стандартное, то где его регистрационный номер, хотя бы от фирмы разработчика? Может кто предложит другой, более близкий по смыслу синоним?).

При решении данной задачи я столкнулся с проблемой: как назначить задание у находящейся на поддержке и закрытой от изменений  БД.  Подсказку решения этой проблемы я нашёл у wiranata, продолжаю работать по его следующему предложению. Понимая как этому «обеду» нужна хорошая «ложка», выкладываю свои наработки.

PS. Пока переношу в основном обработкой «Универсальный обмен данными в формате XML (2.1.7)».

Изменения и дополнения:
  2015-05-22   - изменена свёртка авансов. Теперь используются ссылки на реальный документы вместо документа-заглушки «ДокуметРучнойУчёт».
  2014-02-08   - добавлено распроведение старых и проведение вновь созданных документов ВводНачальныхОстатков (ВНО).

 

Публикация ссылается на:
  2013-08-09  - свертка БП 2.0 документами Ввод начальных остатков
  2013-02-21  - правила обмена данными для переноса остатков БП (2.0.27.8) --> БП (2.0.44.5)
  2012-12-17  - свертка БП 2.0 операциями
  2012-08-28  - регистрация объектов для автоматического обмена
  2012-08-28  - автоматизация обмена между базами используя обработку «Универсальный обмен данными в формате XML»

Скачать файлы

Наименование Файл Версия Размер
x-bp30-bp30-trim.zip
.zip 864,96Kb
11.06.16
34
.zip 1 864,96Kb 34 Скачать
x-bp20-bp20-trim.zip
.zip 580,74Kb
11.06.16
82
.zip 580,74Kb 82 Скачать

См. также

Комментарии
1. Игорь Фелькер (Brawler) 294 05.02.14 09:28 Сейчас в теме
Наконец-то появился повод (переход на 8.3)

я так полагаю речь идет о БП 3.0

Если я не ошибаюсь, то в БП 3.0 есть штатное средство сворачивания базы данных, так что сначала нужно на БП 3.0 перейти и там свернуть базу. Переход на БП 3.0 один в один можно сказать тянет данные, так как происходит "простое" обновление базы данных со всей ее подноготной.
2. Джон До (jdo) 94 05.02.14 10:09 Сейчас в теме
(1) Brawler, Нет речь идёт о БП 2.0 до конвертации в 3.0. А "подноготной" - насколько я понял это ошибки прошлых периодов? Главная цель этой разработки, кроме свёртки (уменьшение размера, увеличение производительности) базы данных (БД) это "ампутировать" ошибки прошлых периодов.
А вы пробовали эту "штатную" свертку? Сворачивает всё документами ОперацияБух, при этом регистры не затрагиваются и, соответственно, не корректируются. (да и кто о них кроме программистов знает). План счетов идёт и ладно, а то что в регистрах накопления бардак, ну так это пусть при сдаче налогов программисты разбираются, ищут ошибки прошлых периодов и формируют по ним (а главное по взаимосвязям НДС выставленный, предъявленный реализация0, оплачен и насколько и по каким счет-фактурам) корректировки, и как потом эти ошибки прошлых периодов искать, а кроме поиска ведь их ещё и поправить регистры бухгалтерии надо (при этом желательно не забыть найти и поправить регистры накопления). А в моём случае всё правит бухгалтер, при этом параллельно правятся и регистры накопления. Ну и, соответственно, складывается мнение либо программа "хреновая" (что вряд ли "..ведь все на 1С работают, и у них всё хорошо.."), либо их программист 1С "бестолковый" (что скорей всего) и нужно искать другого.
Единственный эффект от "штатной" свертки 3.0 - это возможность удалить документы прошлых периодов, да и то не всегда.
То-то "франчи" порадуются. Им ведь тоже кушать надо, ну а "фикси" пойдут себе искать новую работу.
Подождём отчётного периода и вспомним о нашем разговоре. Я предпочитаю не ждать (профилактика всегда дешевле лечения /в нашем случае "ампутации" программиста 1С/).
Realyzer; +1 Ответить
3. Ольга Теплова (YalanchidiO) 20 05.02.14 13:25 Сейчас в теме
Правила очень помогли =) спасибо, плюсик =)
4. Ольга Теплова (YalanchidiO) 20 05.02.14 13:28 Сейчас в теме
Правда выгружала и загружала универсальным обменом, так как Ваша обработка начинала выгрузку и потом сообщала мне, что выгружено 0 объектов, а выгрузка из обработки свертки брала Ваш период и говорила, что дата остатков не может быть меньше, чем дата начала выгрузки)
5. Джон До (jdo) 94 05.02.14 14:02 Сейчас в теме
(4) YalanchidiO, Сам пока шаблон не превратил в обработку в основном ручками переношу с помощь «Универсальный обмен данными в формате XML (2.1.7)».
6. Виктор Плюхов (pvv123) 08.02.14 12:19 Сейчас в теме
Во всех сформированных ВНО по счетам расчетов с контрагентами не заполнен договор контрагента.
Также договор не указан и в сформированных "Документ расчетов с контрагентом(ручной учет)".

7. Джон До (jdo) 94 08.02.14 13:29 Сейчас в теме
(6) pvv123, А в остатках базы предыдущего периода есть договора? У меня тоже было такое, при ручной корректировке бухгалтера не заполняли второе субконто. Пришлось вызывать и "тыкать" ... в книжку пальчик. Если в старых остатках их нет, то и в новых им взяться "неоткуда", хотя можно будет конечно в процедуре "ПослеЗагрузкиОбъекта" поставить "ОсновнойДоговор" контрагента (если он заполнен конечно), но там появятся другие трудности в виде "не схлопывающегося второго субконто". У меня в пяти фирмах, по докладу коллеги, остатки перенеслись "отлично". Недавно допилил распроведение старых остатков и проведение вновь созданных (Не удаляю для того, чтобы было с чем сравнить и, в крайнем случае, восстановить). Уже неделю как никаких замечаний. В новом релизе это уже есть. В понедельник специально акцентирую внимание на договорах при взаиморасчётах с контрагентами.
8. Виктор Плюхов (pvv123) 14.02.14 05:48 Сейчас в теме
(7) jdo, Только в рассылке ИС увидел обновление. Свою задачу решил с помощью другой обработки. В исходной базе договора в остатках указаны.
9. Джон До (jdo) 94 28.02.14 14:01 Сейчас в теме
(4) YalanchidiO, Спасибо за плюсик. Очень приятно.
10. Иван Булхов (Touh_Of_soul)) 22.04.14 11:49 Сейчас в теме
Из БП 2.0.58.4 в БП 2.0.58.4 перенесёт он остатки и справочники? (можно ей перенести только остатки по 41 счёту и справочники?) Заранее спасибо..
11. Джон До (jdo) 94 25.04.14 17:02 Сейчас в теме
(10) Touh_Of_soul), ну конечно, можно переносить отдельно по разным счетам.
12. Иван Булхов (Touh_Of_soul)) 30.04.14 12:10 Сейчас в теме
(11) jdo, Спасибо большое.. Качаю..
13. Иван Федоров (_linker) 04.12.14 14:48 Сейчас в теме
Я правильно понимаю, что после переноса остается лишь провести все документы ввода начальных остатков (например, групповой обработкой справочников и документов), а остальные перенесенные документы остаются непроведенными для истории?
14. Ronin (Ronin) 62 06.07.15 06:34 Сейчас в теме
Доброе время суток.
А что делает Ваша обработка?
Открывает окно с двумя кнопками "Выгрузить" и "Загрузить", при нажатии на "Выгрузить" пишет выгружено 0 объектов, при нажатии "Загрузить", вообще ни чего не происходит!
15. Джон До (jdo) 94 06.07.15 15:57 Сейчас в теме
(14) Ronin, попробуй использовать обработку универсальный обмен (V8Exchan82.epf) из комплекта "Конвертация данных 2.0". Это заготовка для "ночного обмена".
16. Евгений Малыгин (dvigenie-np) 14.09.15 10:11 Сейчас в теме
Добрый день. У меня почему то не переносятся договора контрагентов... Отдельно пытаюсь их перенести- пишет выгружено 0 элементов.
17. Лидия Леонтьева (llg_44) 24 10.06.16 17:30 Сейчас в теме
Добрый день! Спасибо, отличная идея. На актуальных БП 2.0 будет работать? Скачала. Получила кучу ошибок.
Например, вот эта:
Объект = Принятие к учету ОС 00000000001 от 01.10.2012 0:00:00 (Принятие к учету ОС)
СвойствоПриемника = Комментарий (Строка)
Обработчик = ПередВыгрузкойСвойства
ОписаниеОшибки = Ошибка компиляции при вычислении выражения или выполнении фрагмента кода: {(1,52)}: Переменная не определена (Парметры)
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8933)
КодСообщения = 55

Нет, естественно, понимаю, что нужно поработать, прежде чем что-то получить.
У меня база источник настроена в пользовательском режиме в плане счетов. И ни одна обработка не сворачивает по всем субсчетам Основные средства, только конечный субсчет. А пользователи насоздавали на 01, 02 счетах.. Хотела передать их так как есть в исходном виде.
Правила корректирую, но столько время угрохала.
Есть какие-то предложения? подскажите пожалуйста.
18. Джон До (jdo) 94 10.06.16 17:49 Сейчас в теме
(17) llg_мой косяк, сознаюсь. Пропустил букву "а", вместо "Парметры", нужно "Параметры". Отрыл текстовым редактором, и заменил Парметры на Параметры (всего 1 раз). Как бы усё.
19. Dmitriy Nayanov (nayd) 28.08.16 21:06 Сейчас в теме
Спасибо огромнейшее. Помогает при переносе остатков из ПРОФ в КОРП версию.

Хочу сообщить о небольшой неточности. Еле обнаружил.
В ПВД "Остатки_Материалы" в конце, где собираются входящие данные сначала идет строка
ВходящиеДанные.НоменклатураНаСкладе		 	= ТаблицаДанных;

тут все нормально
А несколькими строками ниже:
ВходящиеДанные.НоменклатураНаСкладе			= Новый ТаблицаЗначений;

В результате пусто выгружается.

Это и при выгрузке основных таблиц, и при выгрузке таблиц ошибок.
20. Dmitriy Nayanov (nayd) 28.08.16 22:25 Сейчас в теме
По тем же остаткам по материалам.

В ПКО "ВводНачальныхОстатковНаДату" после загрузки написан код:
КоллекцияОбъектов = Объект.МПЗПриобретенные;

нужно заменить на:
КоллекцияОбъектов = Объект.НоменклатураНаСкладе;


и еще с партиями негусто - они пустые при переносе, и ввод начальных остатков не проводится без указания партии, хотя партионный учет не включен.
21. Dmitriy Nayanov (nayd) 29.08.16 00:33 Сейчас в теме
И в нескольких местах ругалось Метод объекта не обнаружен (ПрименениеУСН)
Если я правильно понимаю, это из-за того, что в общем модуле НалоговыйУчетУСН нет функции ПрименениеУСН

PS: ничего, что я пишу об ошибках?
22. Джон До (jdo) 94 31.08.16 13:02 Сейчас в теме
(21) nayd, спасибо большое, появится окно обязательно подправлю. А не уточнишь это для какой версии 2.0, 3.0 или для обоих?
23. Cyborg Cyborg (cyborg55) 24 31.08.16 18:34 Сейчас в теме
Переношу остатки с 3.0.43.241. Очень много ошибок. Просто выгрузки не дает делать. Постоянно приходится исправлять через КД.
24. Cyborg Cyborg (cyborg55) 24 31.08.16 18:43 Сейчас в теме
Перенес только справочники.
25. Алексей Ермилов (Alex_E) 1531 31.08.16 18:46 Сейчас в теме
26. Cyborg Cyborg (cyborg55) 24 31.08.16 18:47 Сейчас в теме
(21) nayd, У вас остальные счета нормально перенеслись? Не могли бы скинуть ваши исправленные правила на airatcs@gmail.com. Спасибо.
27. Cyborg Cyborg (cyborg55) 24 31.08.16 18:54 Сейчас в теме
(25) Alex_E, Спасибо. Завтра попробую. Результат напишу.
28. Алексей Ермилов (Alex_E) 1531 31.08.16 18:56 Сейчас в теме
(27) cyborg55, Хокей - мне интересно)))
29. Джон До (jdo) 94 05.09.16 17:42 Сейчас в теме
(23) cyborg55, действительно, я уже давно не актуализировал 3.0, недоработка однако. В ближайшие выходные исправлюсь.
30. Константин C (konst2k6) 12.01.17 07:22 Сейчас в теме
(29) Добрый день! Есть релиз 3.0.44.200. Есть задача: перетащить справочники, причем с удалением помеченных элементов, в чистую базу. Возможно ли это сделать этими правилами? Что нужно сделать чтобы довести правила до моего релиза? Насколько я понял нужно сделать сравнительный анализ конфиг и вычленить/добавить лишние/недостающие правила так? Как быть с удалением? Дописать обработчики в правила? Там в основном разница в ЕГАИС и ЭДО, которые у меня не используются.
31. Джон До (jdo) 94 12.01.17 13:05 Сейчас в теме
(30) Нужно выгрузит описание МД для вашей версии БП, загрузить правила с указанием вашей конфигурации. Потом зайти в режим редактирования правил, нажать линзоцу у конфигурации и нажать кнопку "Загрузить описание конфигурации". Все неиспользуемы ПКО, ПКС, ПКЗ пометятся красным и добавятся новые ПКО, ПКС, ПКС для новых объектов. Потом надо удалить помеченные. В ПВД указать только справчники, остальные пометить галкой не выгружать и моно работать.
32. Константин C (konst2k6) 16.01.17 09:15 Сейчас в теме
(31) Подскажите еще момент пожалуйста. Пытаюсь удалять помеченные красным правила. Контроль не дает этого сделать из-за зависимых элементов в справочнике "Правила конвертации значений". Возможно ли хоть как-то облегчить поиск таких элементов? Или только руками искать можно?
33. Виктор Шишов (vshish) 77 16.01.17 09:57 Сейчас в теме
После контроля можно перейти на объект
Правда я в обычных формах пользуюсь, чаще альтернативными обработками поиск и удаление помеченных объектов.
1. с диска ИТС
2. из инструментов разработчика
34. Константин C (konst2k6) 16.01.17 11:33 Сейчас в теме
отмечаю на удаление неиспользуемое ПКО. захожу в операции - удаление помеченных объектов. нажимаю контроль. получается такая вот каша на скриншоте видно. кода тыкаю ссылку на удаляемый объект ничего не происходит. почему он не отмечает зависимые элементы? это моя ошибка или глюк? версия КД 2.1.8.2
Прикрепленные файлы:
35. Джон До (jdo) 94 16.01.17 14:59 Сейчас в теме
(34) Кстати я тоже пользую УдалениеПомеченныхОбъектов.epf. Потом перехожу в список и помечаю на удаление зависимый
объект ПКО или ПВД. Мне кажется это глюк плтаформы, Всё должно работать, у меня работает на 8.2.19.130 (а может вирус?)
Прикрепленные файлы:
УдалениеПомеченныхОбъектов.epf
36. Константин C (konst2k6) 18.01.17 09:30 Сейчас в теме
(35) спасибо. разобрался. правила почистил. выгружается вроде. теперь такой вопрос если отметить на выгрузку все справочники, то после загрузке в приемнике перестают открываться справочники. с ошибкой задвоенности объектов метаданных. если выгружать только основные справочники, вроде номенклатуры, контрагентов и т.д. то загружается нормально и затем открывается без ошибок. что я делаю не так? :)
37. Джон До (jdo) 94 18.01.17 13:43 Сейчас в теме
(36) У тебя задваиваются коды справочников, которые для системы должны быть уникальные. Для справочников на которые ругается система попробуй снять галку в ПКС Код и установить галку в ПКО "Автоматически генерировать номер или код, если он не задан". Тогда система сама будет генерировать коды и не будет ругани на задвоение.
38. Константин C (konst2k6) 03.02.17 12:38 Сейчас в теме
со справочниками разобрался. теперь беда с остатками. насколько я смог понять изменился код общих модулей в конфигурации по сравнению с той, для которой писались правила. так?
39. Джон До (jdo) 94 03.02.17 23:36 Сейчас в теме
(38) Ты молодец. Над чем воюешь? Конечно идёт динамика. Приходится пользоваться командой "Выполнить" и вызывать функции в зависимость от версии БП.
40. Константин C (konst2k6) 04.02.17 23:13 Сейчас в теме
Мне нужно научиться переносить "остатки" между идентичными базами. Причем универсальные обработки мне не подходят по ряду причин. :(
41. Джон До (jdo) 94 06.02.17 22:21 Сейчас в теме
(40) Ну если универсальные не подходят такие как Универсальный обмен данными, то чем же я могу помочь. Я был бы рад, конечно, но не знаю как .. :-) Подскажи, с удовольствием подставлю плечо.
42. Константин C (konst2k6) 08.02.17 12:30 Сейчас в теме
(41) пытаюсь вывести остатки раздела учета денежных средств спотыкается в алгоритме ВыгрузитьОстаткиПростыхСчетов на строке:
ПрименениеУСН = НалоговыйУчетУСН.ПрименениеУСН(ТекОрганизация, ДатаНачала);

Говорит что метод "ПрименениеУСН" не обнаружен. Пока не получается сообразить куда копать. :(
43. Джон До (jdo) 94 08.02.17 14:18 Сейчас в теме
(42) Находишь строку "ПрименениеУСН", где она спотыкается (Видно этой функции уже нет или она изменена) и делаешь:
ПрименениеУСН = Ложь;
Стр = "ПрименениеУСН = НалоговыйУчетУСН.ПрименениеУСН(ТекОрганизация, ДатаНачала);";
Попытка
         Выполнить(Стр);
Исключение
КонецПопытки;
...Показать Скрыть
Оставьте свое сообщение