Замена счетов в реквизитах справочников, документов и проводках операций

Иногда нужно везде поменять один счет на другой. (например когда пользователи наплодили субсчета и нужно их удалить).

 

 

 

 

Данная обработка по выбору (и/или):

  1. Обходит все справочники и если у них есть реквизит с типом «счет» меняет их на новые (если старый совпадает с парой замены)
  2. Обходит все документы и если у них есть реквизит с типом «счет» меняет их на новые (если старый совпадает с парой замены). Без перепроведения.
  3. Обходит все операции и меняет счета на новые (если старый совпадает с парой замены).

 

По просьбе пользователей добавлена обработка документов и/или операций за период дат. 

28/02/2012 Из пожеланий в комментариях реализовано:

 

  1. Добавлена функция записи в журнал
  2. Запись в журнал и вывод сообщений — добавлена возможность выбора («флажки» — «Записывать события в журнал» и «Выводить сообщения о изменениях»)
  3. Запрещено выбирать счет-группу для замены 

 

06/04/2012

Исправил «ляп» с объявлением функции — Спасибо shimaза его пост (23)

14/10/2014 (версия 4)

Добавлена опция «»Разобрать» валюту» — если на одном счете «свалены» валютные и невалютные операции (например, пользователь добавил счёту признак валютного учета) — разнесёт на два субсчёта (валютный и невалютный) 

 

30 Comments

  1. Арчибальд

    «Пара замены» — что за зверррр?

    Reply
  2. poppy

    С такой задачей нормально справляется обработка ReplVal.ert

    Reply
  3. Арчибальд

    (2) Не совсем. С операцией произвольного документа не работает.

    Автор, кстати, а что с субконто заменяемых счетов происходит?

    Reply
  4. KeeperKey

    Эээ.. при открытии рисует ошибку.

    глЗаписьЖурналаРегистрации<<?>>(«Замена счетов»,2,9, Таб.Док);

    {H:asecopy2007extformszamenaschetov.ert(126)}; Процедура не обнаружена(глЗаписьЖурналаРегистрации)

    Reply
  5. kame-lana

    (2)Только универсальная обработка требует перепроведения документов, чтобы счет заменился и в проводках! А от этого изменяется ОСВ!!! И универсальная в моем случае выполняла задачу более 4 часов!!! 😮

    (4) Ну, в модуле обработки я забанила эту строку, и все работает!

    Автору спасибо, справилась за 30 минут! И ОСВ тютелька в тютельку, что и до обработки :{}

    Reply
  6. Dnki

    Бахну плюсик — нужная штука. Только выскажусь:

    — Действительно, глЗаписьЖурналаРегистрации() надо убрать, у меня такой тоже нет. Или заменить стандартной командой. Или поместить процедуру прямо в обработку.

    — А каков смысл в галочках для отдельной обработки документов, проводок, справочников? Ни в коем разе нельзя обрабатывать проводки без документов и наоборот.

    — По тексту программы: зачем использовать ТЗ при обработке операций. Просто Опер.ВыбратьОпераци() и Опер.ВыбратьПроводки. Как с документами.

    И вот почему: на первом проходе в ТЗ записываются ВСЕ документы базы (а почему не в Список?). А это, братцы, может быть весьма…

    Reply
  7. flaks

    Спасибо Автору. Очень помогла обработка обработать базу в которой 17 организаций, сработала быстро и без ошибок

    Reply
  8. AnryMc

    (7) flaks, Спасибо автору можно выразить и «плюсиком», а не только коментарием 😉 (так бонус не только Вам за коментарий, но и автору) ;-))

    Reply
  9. AnryMc

    (7) flaks, Спасибо, за доброе слово.

    Reply
  10. aleksey51286

    спасибо, помогло))

    Reply
  11. AnryMc

    (1) Арчибальд, Спасибо! Ваш «+» пронял до слезы 😉

    09.09.2009 13:27:00 — 21.09.2011 08:41:57 = 64091697 секунд (или 1068194,95 минут, или 17803,2491666 часов, или 741,80 дней, или ПРИМЕРНО (базис 30) 24,72 месяца), т.е. чуть БОЛЬШЕ 2-х лет!!!

    ЭТО СЛУЧАЙНО НЕ РЕКОРД (НА САЙТЕ) ПО ВРЕМЕНИ ОЦЕНКИ??? 😉

    Reply
  12. Арчибальд

    (11) Ну, не попадалась она мне раньше…

    Главное, награда нашла героя. И не посмертно 😉

    Глянул у себя навскидку. 24.04.2009 — 25.08.2011.

    Reply
  13. jour

    а типовая — «групповая обработка документов и справочников» — чем плоха ?

    Reply
  14. AnryMc

    (13) jour,

    1)

    jour пишет:

    а типовая — «групповая обработка документов и справочников»

    это в 8-ке, а обработка для 7.7 (там только «обработка документов» и внешняя «Установка реквизитов объектов») и надо выбирать и обрабатывать все нужные типы документов и справочников отдельно и поштучно — геморрой…

    А в обработке всего три «галочки» (Справочники, документы, операции)

    2) Зачастую рядовому пользователю трудно пользоваться типовыми обработками, т.к. надо знать структуру базы и её терминологию (Например — «Родитель», «Владелец»). А здесь всё просто

    3) Хотя обработка писалась более 3-х лет назад, и может я неправильно помню, но «галочка» «в операциях» позволяет поменять счета в операциях документов, вопреки алгоритму их проведения

    4) Суммируя, предыдущие пункты — очень помогает например когда у счета появилось несколько субсчетов……….

    Reply
  15. qwed557

    а у меня вот что выдала ЗАМЕНАСЧЕТОВ.ERT(126)}: Выбранный счет является группой!(проводка 5, счет 69.1)

    что это значит?

    Reply
  16. AnryMc

    (15) qwed557,

    По всей видимости у счета 69.1 есть субсчета (например 69.1.1) надо выбирать счет самого нижнего уровня (у которого нет субсчетов)

    Reply
  17. wumka

    Спасибо!

    Очень помогло, когда надо было в большом кол-ве документов поменять только счета. Единственное пожелание: нельзя ли добавить период, чтобы при внесении изменений в док-ты и операции м.б. выбирать период, за который следует внести изменения.

    Reply
  18. AnryMc

    (17) wumka,

    Не смог отказать ;-).

    Даже 7.7 поставил…

    Добавил обработку за период дат для операций и документов

    Reply
  19. wumka

    (18)

    Спасибо огромное и за работу, и за Вашу внимательность!

    Reply
  20. Kometa

    И мне пригодилась! Спасибо!

    Тоже закомментировала строчку глЗаписьЖурналаРегистрации<<?>>(«Замена счетов»,2,9, Таб.Док);

    и добавила вывод строк в виде сообщения, в которых заменяется счет.

    Reply
  21. Ibrogim

    Очень помогла, учитывая что 7.7 уже почти забыл и писать самому тяжко

    Reply
  22. shima

    (21) Kometa,

    Тоже закомментировала строчку глЗаписьЖурналаРегистрации<<?>>(«Замена счетов»,2,9, Таб.Док);

    В теле модуля обработки есть нужная процедура, переместите ее из конца в начало. У автора просто такая процедура объявлена в глобальном модуле, вот и не выдает ошибку.

    Reply
  23. AnryMc

    (23) shima,

    Спасибо. Исправил.

    Видно совсем стал забывать 77, не учел что нужен порядок объявления. В 8.х — уже почти нормально. пиши где хочешь…

    Reply
  24. CheBurator

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

    Reply
  25. AnryMc

    (25) CheBurator,

    Хороший вопрос, но с 7.7 практически покончил

    Reply
  26. YuriFm

    Не помешала бы ещё не большая универсальность обработки (возможность исключения некоторых документов и справочников). И да! семерка уже редко где встречается.)

    Reply
  27. 1CSoft

    Полезная обработка.

    После неудачной реструктуризации плана счетов в Конфигураторе

    в режиме 1С:Предприятия появились счета с пометкой удаления,

    по которым имелись обороты.

    Без проблем перенес их на счета заданные в Конфигураторе,

    после чего смог их удалить.

    Reply
  28. adm1nb3k

    Еще бы добавить субконты.

    Reply
  29. eruil

    Есть еще стандартная обработка УниверсальныеПодборИОбработкаОбъектов.epf на ИТС.

    Reply
  30. Ibrogim

    (30) eruil,

    .epf

    Наводит на мысль о 8, а тут 7, кроме того там не раскрыта тема проводок.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *