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

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

 

 

 

 

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

  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 не будет опубликован. Обязательные поля помечены *