0. stvorl 942 17.01.12 08:24 Сейчас в теме

Корректировка остатков регистров накопления (обычные и управляемые формы)

Внешняя обработка, предназначенная для удобного и быстрого исправления остатков регистров накопления (посредством автоматического ввода документов "Корректировки записей регистров", "Операция", содержащих движения, приводящие существующие остатки к желаемым). Позволяет корректировать и обнулять по аналитике и суммам остатки регистров учета товаров, партий, взаиморасчетов, налогового учета по НДС, РАУЗ, и др.

Перейти к публикации

Вознаграждение за ответ
Показать полностью
Комментарии
Избранное Подписка Сортировка: Древо
1. e-katerina 125 17.01.12 08:24 Сейчас в теме
Идея отличная. Сейчас проверим.
С ходу есть пожелание для обработки табличной части: неплохо бы добавить кнопку "исправление отрицательных остатков в 0" :)
2. wolfsoft 2420 18.01.12 14:23 Сейчас в теме
И где вы раньше были?... Уже свою написал :D
4. stvorl 942 18.01.12 20:21 Сейчас в теме
(2) wolfsoft,

Кто же знал что всем нужна такая обработка? :-)
15. wolfsoft 2420 25.01.12 12:30 Сейчас в теме
3. gull22 87 18.01.12 15:16 Сейчас в теме
Отличная штука для исправления РН. Мне понравилась.
Небольшая ложка дегтя. Если:
1. выбираю в качестве документа корректировки "Корректировка записи регитра" с пустым полем обработки (для создания нового документа)
2 использую обработку с отбором по фильтру
то при смене реквизита фильтра не нерезаполнялась табличная часть при нажатии на кнопку "Заполнить остатками". Приходится выходить из обработки и запускать ее по новой.
Если выбирать тип документа корректировки "Корректировка записей регитсра", создавать его, записывать пустым и выбирать в поле, то при перевыборе реквизита фильтра табличная часть перезаполнялась без проблем.
5. stvorl 942 18.01.12 20:24 Сейчас в теме
(3) gull22,
Не получилось воспроизвести. Если нетрудно, опишите по шагам подробнее, и укажите конфу.
Я исправлю и выложу.
14. gull22 87 24.01.12 12:06 Сейчас в теме
Скачал новый релиз обработки, проверил ситуацию. Все ОК, замечаний нет. Проверял на Комплексной автоматизации 1.1.16(5)
6. cdiamond 171 19.01.12 10:29 Сейчас в теме
Присоединяюсь к первому оратору, очень нужна кнопка исправления отрицательных остатков на 0.
7. stvorl 942 19.01.12 11:17 Сейчас в теме
(6) cdiamond, e-katerina

Согласен, полезно.
Добавлено, см. пункт "Обработка" в командной панели таблицы.
8. cdiamond 171 19.01.12 13:49 Сейчас в теме
(7)
Спасибо! Можно немного пояснить последовательность действий для обнуления отрицательных остатков?
1. Ставлю дату и время на момент требуемого обнуления.
2. Выбираю регистр, например партии товаров
3. Выбираю пустой документ корректировки или создаю новый.
4. ?
9. stvorl 942 19.01.12 13:57 Сейчас в теме
(8) cdiamond,


Спасибо! Можно немного пояснить последовательность действий для обнуления отрицательных остатков?
...
3. Выбираю пустой документ корректировки или создаю новый.
4. ?


4. Нажимаете кнопку "Заполнить", убеждаетесь что остатки попали в таблицу
5. Нажимаете "Обработать" -- "Обнулить отрицательные значения ресурсов..."
Отмечаете необходимые к обработке поля ресурсов (вы, например, можете пожелать обнулить количество, но не тронуть сумму, или наоборот)
6. Убеждаетесь, что в таблице обнулились отрицательные значения (нулевые ячейки выводятся пустыми).
7. Нажимаете "Выполнить".
8. Перезаполняете таблицу, чтобы прямо тут убедиться, что все стало хорошо (дабы не лазить по отчетам)
10. cdiamond 171 19.01.12 14:01 Сейчас в теме
(9)
Правильно ли я понял, что если наложить фильтр по остаткам, чтоб был > 0, сделать заполнение, то получим тот же самый результат? Что-то я ступил похоже :)
11. stvorl 942 19.01.12 14:21 Сейчас в теме
(10) cdiamond,

Не совсем. Надо наложить фильтр "ресурс1 < 0", затем сразу нажать "Выполнить" (это как будто мы заполнили таблицу, а потом удалили все строки, сказав что "нет у тебя остатков по данному отбору").
Просто надо иметь ввиду, что в таком варианте, система очистит не значения конкретных ресурсов, а уберет целые строки остатков, подпадающие под фильтр.

Просто это неочевидные и малопредсказуемые возможности, здесь целесообразно было сделать очевидную.

На самом деле у этой обработки, если манипулировать фильтром, масса неочевидных возможностей, которых я сам, как разработчик, даже не могу увидеть заранее.
35. Lukich66 82 27.02.12 15:06 Сейчас в теме
(11) приветствую Вас коллега.
Из Вашего Help:
Предназначена для корректировки остатков регистров накопления.
Выбирается регистр накопления, пользователем вводятся целевые остатки. Затем автоматизированно
заполняется документ корректировки записей регистров, таким образом, что остатки регистра накопления приводятся ко введенным целевым.

Но хочу высказать и свое мнение.
1."Остатки на конец секунды "- за 20 лет в бух и учете подобное встречаю впервые, поэтому смело выбираю 31.12.2011 и О! Ужас- время то 0:00:00- это проверка на трезвость или издевательство? (тогда уж извольте 23:59:59)
2.Выбираю РН ТоварыНаСкладах. Оч.бы не плохо- если бы работал "текстовый" поиск а то крутить Динаму...
3.Выбираю док "корректировка записей регистра",конкретно создаю новый - на тебе Дата и Время Дока совсем не из "Остатки на конец секунды"- первое замешательство!
Если я получаю данные на точку времени t1, то каким должно быть время дока коррекции (t2),на которое я произведу "корр.действия"- ладно едем дальше.
Вид движения-? А что "механизма" сама не сообразит , что делать( Авто,приход,расход)?
3.Отбор- оч.неплохо- единственное добавил бы интеллекта: если выбран только один склад или одна номенклатура,то эти колоночки в ТЧ можно и АвтоПрикрыть,при изменениях в отборе автоочистка ТЧ-это стандарт,иначе т.Катя накорректирует.
4.Варианты обработок достаточно скудны( видели ли как работает механизм установки цен в бух,торг -есть что перинять)+ обязательно бы добавил возможность "ВЫРАЖЕНИЯ"- чуднейший прием в UNIREPS82, и вообще раз "ДИФФЕРЕНЦИАЛЬНАЯ"-(если просто перевод- различная, а то что-то в интегралы бросило)- то можно бы и любой реквизит "бахнуть"- характеристики например.
5.От кнопки "ВНИМАНИЕ"-тихий восторг и мучительное обдумывание- а оно мне надо?
6.Кнопки "Очистить записи регистра" и "Очистить записи ВСЕХ регистров"- это явный подарок мальчишу-плохишу.
Сначала обрадовался-потом испугался- а вдруг никакой защиты от "дурака"- окончательно понял ,что придется смотреть код ( а что без Выполнить никак?)
----
И последнее. То ли я дурак, то ли лыжи не едут, а что если бы для простоты душевной если только цифры править то тупо доп.колонку КоличествоУстанавливаемое( или суммаУст- это от вариантов чего делать) и путем Результат=КоличествоУстанавливаемое-Количество и с приходом и расходом бы разобрались, а КолвоУстанавливаемое любая т.Маша поймет.
Вот на такой грустной ноте предстоит сегодня вечером её озадачить- наверняка не справится,чую?
44. higs 26.07.12 10:09 Сейчас в теме
Прочитал все комментарии. К (35) присоединяюсь. Добавить больше пока нечего, но, думаю, исправлений вряд ли дождаться, так что можно и самому поправить.
Спасибо!
SunShinne; +1 Ответить
13. aser86 23.01.12 13:41 Сейчас в теме
16. alekseineputin 27.01.12 11:09 Сейчас в теме
Плюсану обязательно,
надо скачать и сравнить подход автора со своим видением проблемы (читай, "покатаю на своей базе" :D )
17. Гость 27.01.12 12:06
Подскажите, обработка привязана к каким-то общим модулям конфигураций? Есть ли возможность использовать ее на ооочень сильно нетиповой конфигурации? Необходимый минимум объектов в конфигурации для применения?
И хотелось бы оценить вариант для 8.1. можно его как-то получить?
18. doronin70 28.01.12 11:54 Сейчас в теме
А как корректировать регистры расчета?
19. elena_77 31.01.12 11:42 Сейчас в теме
Полезная обработка. Обязятельно скачаю, чтобы воспользоваться.
20. elena_77 31.01.12 11:42 Сейчас в теме
21. hnya 31.01.12 16:19 Сейчас в теме
о, обработка, которая никогда не будет лишней. думала сама над тем, как ускорить процесс корректировки, а здесь уже готовое решение. спасибо, порадовали.
22. goodwin12 02.02.12 10:48 Сейчас в теме
Обработка не работает, остатки не правильно определяет, регистры не обнуляет. ЗУП 8.2
23. mdie 85 04.02.12 07:02 Сейчас в теме
Полезная вещь при различных переносах и обменах между 7.7 и 8.2, спасибо
24. WendyH 04.02.12 08:13 Сейчас в теме
Спасибо, но нужно указать для каких, всё-таки, конфигураций она подходит.
25. SSO 06.02.12 12:18 Сейчас в теме
Интересное решение. Помогла при исправлении остатков в регистре накопления "Зарплата за месяц сотрудников организации". Криво были перенесены остатки из 1с 7 ЗИК в Комплексную Автоматизацию 1.1. Спасибо.
26. Гость 08.02.12 10:27
{(1,13)}: Процедура или функция с указанным именем не определена (ДвиженияВДокумент_ПереносДанных)
Результат = <<?>>ДвиженияВДокумент_ПереносДанных(ДокументОбъект, ТаблицаДвижений, МетаданныеРегистра)


После того как нажимаю выполнить выходит вот эта ошибка...(((
27. Rino 08.02.12 12:26 Сейчас в теме
Интересное решение, Спасибо
28. yalo 08.02.12 13:25 Сейчас в теме
Часто приходилось править регистры накопления, написала подобную обработку. Очень нужная вещь.
29. goodman12 4 09.02.12 06:09 Сейчас в теме
Хорошая штука для своих целей. Но я думаю, не зря в штатных механизмах такой обработки нет, регистры накопления-то двигаются документами, а значит, если остатки вас не устраивают, нужно править документы и вести нормальный учет. Но это если правильно....а так, на поле боя вещь полезная :)
30. commo 10.02.12 14:02 Сейчас в теме
31. Jackman 13.02.12 01:12 Сейчас в теме
Не очень понятно как выводить регистр в ноль. Заполнять таблицу с остатками регистра и вручную обнулять ресурсы в ноль? Если да - может нужно добавить кнопку "Обнулить ресурсы", которая будет это делать автоматически?
32. Boudybuilder 60 13.02.12 01:38 Сейчас в теме
Полезная штука, ато у меня много минусов...
И щас не охота рыться и смотреть где да что...
33. Boudybuilder 60 13.02.12 01:39 Сейчас в теме
Будем качать , будем пробовать .
Но все таки регистры должны отображать реальность ...
34. unsimple 27 27.02.12 10:46 Сейчас в теме
Хорошая вещь. Пригодится. Спасибо
37. fin7 10.04.12 18:13 Сейчас в теме
Спасибо! Хорошая разработка. Пригодилась не раз
38. Kanareika13 18.04.12 10:19 Сейчас в теме
41. dark_kardinal 11 26.04.12 13:27 Сейчас в теме
А есть такая же для регистра Сведений? :)
42. kuz.mina 27.06.12 10:42 Сейчас в теме
Большое спасибо автору!
SunShinne; +1 Ответить
43. Iwan777 09.07.12 13:03 Сейчас в теме
Хорошая вещь. Пригодилась.
45. erina_valentina 89 21.09.12 10:28 Сейчас в теме
Спасибо за обработку! Очень пригодолась!
46. l-Rain 29.10.12 09:01 Сейчас в теме
Качаю, автору спасибо, плюс.
47. Vond 07.01.13 23:14 Сейчас в теме
что то не получается, выполняю по пунктам, получаемый документ корректировки пустой. Пришлось закоментарить 3 строки после // Допишем то, что нам нужно получить - со знаком плюс. Тогда документ заполнил то что надо - обнулил остатки регистра.
Конфигурация типовая УПП для Украины.
48. 2791 9 22.02.13 18:44 Сейчас в теме
(47) Vond,
У меня тоже в Конфигурация типовая УПП для Украины не работает "выполнить". Так же закоментировала 3 строки
49. DoctorRoza 04.04.13 16:01 Сейчас в теме
Спасибо! Пригодится для старенькой УПП 1.2
..
За
Выполнить("Результат = ДвиженияВДокумент_"+ИмяТипа+"(ДокументОбъект, ТаблицаДвижений, МетаданныеРегистра)");
поставил бы еще плюс, не знал про такой механизм! :)
50. SunShinne 616 13.10.13 15:10 Сейчас в теме
51. 27272 09.12.13 05:38 Сейчас в теме
А никто не пробовал, под УТ82 11.1 работать будет?
52. Tishu 3 22.01.14 04:16 Сейчас в теме
нет возможности в корректирующих движениях указывать реквизиты - тем самым не подходит для корректировки НДФЛ после переноса из 77
53. Tishu 3 25.01.14 23:23 Сейчас в теме
Добавил в обработку табличной части формы обнуление ресурсов и установку реквизитов регистра и применил в ЗУП после переноса большой базы ЗиК (2000 чел) для корректировки НДС к Зачету (обнуление ресурса), Взаиморасчеты (установка ресурса в значение остатков по расчетной ведомости до обнуления НДС к зачету) и НДС расчеты с бюджетом (установка реквизита обособленное подразделение и обнуление ресурсов). Использовать документ Возврат НДФЛ не получилось из-за бардака с НДФЛ удерженным и переплаченным в ЗиК. В итого очень помогло - руками такой объем корректировок выполнить не возможно. Ставлю +
54. dakarus 07.07.14 10:50 Сейчас в теме
С ут 11 я так понял не работает???
55. Infector 142 30.10.15 15:34 Сейчас в теме
Господа, а для регистров бухгалтерии такой штуки нет случаем? Вылез косяк пользователей с субконто, в итоге отрицательные суммы с положительными на 57.22 нужно схлопнуть. (итог нулевой)
61. stvorl 942 02.06.17 22:51 Сейчас в теме
Выложил обновление, и постарался учесть пожелания.
Спасибо за положительные отзывы и звезды за все это время.

Также опубликовал аналогичную обработку для корректировки регистров бухгалтерии, как просили в (55) - http://infostart.ru/public/630491
56. gaubiza 19.05.16 09:49 Сейчас в теме
Спасибо, очень выручило!
57. z8491 03.06.16 13:30 Сейчас в теме
58. unknown181538 24 04.04.17 20:06 Сейчас в теме
То, что нужно! Только не нашел, как обнулить полностью, но дописал сам за минуту.
59. hillsnake 18.04.17 12:02 Сейчас в теме
хорошая вещь!
но надо переписать на 8.3
сам перепишу буду использовать в ERP 2.2
автор не против?
60. mni 20.04.17 12:59 Сейчас в теме
Подскажите, поможет ли мне Ваша обработка в моём случае:
Регистр накопления очистила в нуль, а остатки регистра накопления остались.Они удалятся?
62. Atrika-96 35 26.07.17 17:30 Сейчас в теме
Добрый день!
Бухгалтерия предприятия, редакция 3.0 (3.0.51.16) дает ошибку "Поле объекта не обнаружено" Скрин в приложении.
Прикрепленные файлы:
63. stvorl 942 26.07.17 20:56 Сейчас в теме
(62)
Ну как быстрый костыль, закомментируйте в конфигураторе строку 36 модуля объекта.
СтрокаРегистра.Представление = МетаданныеРегистра.Синоним;


Если вы добились работы этой обработки в чисто "управляемой" конфигурации, то, уверен, Вам не составит труда :-)
Хотя так-то, я эту обработку на управляемые конфигурации не рассчитывал.
64. Atrika-96 35 26.07.17 22:57 Сейчас в теме
65. egvv 14 30.08.17 17:09 Сейчас в теме
Шикарная обработка! Автору респект. Проверено на УТ 10.3.
66. Serg O. 176 04.09.17 15:28 Сейчас в теме
Криворуким бухам и манагерам - надо периодически вправлять ... руки и мозги

и делать запрет редактирования задним числом
и ставить везде "заглушки" от дураков...
чтоб такого не могло быть... никогда
67. aleksch21 51 01.12.17 14:39 Сейчас в теме
Да, привести к определенному результату регистр это мощно, если кто разбирается что должно быть в регистре. Вот https://infostart.ru/public/709554/ просто зануляет любой регистр накопления почти в любой конфигурации, к тому же под УФ.
68. stvorl 942 01.12.17 16:55 Сейчас в теме
(67)
Можно не заполнять (или очистить после заполнения) целевую таблицу, нажать "Выполнить", и регистр будет занулен либо весь, либо в рамках установленных отборов по измерениям.

Для УФ пока руки не дойдут, к сожалению.
69. stvorl 942 26.03.18 13:44 Сейчас в теме
Добавлена версия обработки для управляемых форм.
70. agaraev 20.04.18 13:57 Сейчас в теме
Спасибо! Обработка хорошая и полезная. Но в обработке для управляемых форм есть недостаток. Часть функция "ПолучитьВозможныеТипыДокументовКорректировок" изначально выглядит так:

Если Метаданные.Документы.Найти("ОперацияБух") <> Неопределено Тогда
	мСписокТипов.Добавить(Тип("ДокументСсылка.ОперацияБух"));
ИначеЕсли Метаданные.Документы.Найти("КорректировкаРегистров") <> Неопределено Тогда
	мСписокТипов.Добавить(Тип("ДокументСсылка.КорректировкаРегистров"));
ИначеЕсли Метаданные.Документы.Найти("ПереносДанных") <> Неопределено Тогда
	мСписокТипов.Добавить(Тип("ДокументСсылка.ПереносДанных"));
КонецЕсли;	


Но в Комплексной автоматизации 2 есть все три типа документов. И документ "ОперацияБух" не используется для корректировки регистров. А по алгоритму в проверке первым проверяется наличие именно этого типа документа и он же единственный добавляется в список типов. Соответственно выбрать можно только один тип документа корректировки и тот не подходит для корректировки регистров. Правильно заменить указанную выше часть алгоритма на следующую:

Если Метаданные.Документы.Найти("ОперацияБух") <> Неопределено Тогда
	мСписокТипов.Добавить(Тип("ДокументСсылка.ОперацияБух"));
КонецЕсли;
Если Метаданные.Документы.Найти("КорректировкаРегистров") <> Неопределено Тогда
	мСписокТипов.Добавить(Тип("ДокументСсылка.КорректировкаРегистров"));
КонецЕсли;
Если Метаданные.Документы.Найти("ПереносДанных") <> Неопределено Тогда
	мСписокТипов.Добавить(Тип("ДокументСсылка.ПереносДанных"));
КонецЕсли;	
Показать


А там уже пользователь сам выберет нужный ему тип документа из существующих в конфигурации.
71. stvorl 942 20.04.18 23:06 Сейчас в теме
(70)
Я сейчас вот сам смотрю на исходный вариант, и не понимаю, как я ухитрился написать именно так, как я написал, хотя имел ввиду (и полагал, что сделал) именно так, как поправили Вы.

У меня не было под рукой КА, чтобы протестировать, а то бы я еще до публикации нашел сие недоразумение.

Большое спасибо. Выложил исправленную версию.
72. user612295_death4321 09.07.18 21:38 Сейчас в теме
Храни тебя господь дружище, так было лень писать свою.
73. Spirit11 27 14.07.18 01:59 Сейчас в теме
УТ 11.08
В данной конфигурации нет регистров накопления остатков. Эта обработка вам не поможет.
Стармани погарели за зря...
74. stvorl 942 14.07.18 22:13 Сейчас в теме
(73)
Вы сожалеете, что в 11.08 нет регистров накопления, или процитировали сообщение об ошибке? :-)
Если последнее, то уточните, пожалуйста, номер релиза. Вроде как 11.4 последний.
Может быть Вы ее в безопасном режиме запускаете?
75. wowik 614 29.11.18 10:56 Сейчас в теме
+1. Все работает. Дополнение: добавьте чтобы в список регистров накопления попадали только регистры, в которых есть записи. Или настройку такую сделайте.
У себя добавил:
// Заполняет перечнем сальдовых регистров накопления
Функция ЗаполнитьПереченьОбъектов()
	Список = ЭлементыФормы.ВыбранныйРегистр.СписокВыбора;	
	Список.Очистить();
	
	Для Каждого Регистр из РегистрыНакопления Цикл
		МетаданныеРегистра = Регистр.СоздатьНаборЗаписей().Метаданные();
		
		Если ""+МетаданныеРегистра.ВидРегистра = "Остатки" Тогда
			//+.29.11.2018.
			Запрос = Новый Запрос;
			Запрос.Текст = 
			"ВЫБРАТЬ ПЕРВЫЕ 1
			|	ТоварыНаСкладах.Регистратор КАК Регистратор
			|ИЗ
			|	РегистрНакопления.ТоварыНаСкладах КАК ТоварыНаСкладах
			|
			|СГРУППИРОВАТЬ ПО
			|	ТоварыНаСкладах.Регистратор";
			
			Запрос.Текст = СтрЗаменить(Запрос.Текст,"РегистрНакопления.ТоварыНаСкладах","РегистрНакопления."+МетаданныеРегистра.Имя);
			
			РезультатЗапроса = Запрос.Выполнить();
	 		
			Если НЕ РезультатЗапроса.Пустой() Тогда
				Список.Добавить(МетаданныеРегистра, МетаданныеРегистра.Синоним + " ("+МетаданныеРегистра.Имя+")");
			КонецЕсли;
			//-.29.11.2018.  	
		КонецЕсли;
	КонецЦикла;
	
	Возврат Список.Количество();
КонецФункции
Показать
76. igozakh 10 22.01.19 18:32 Сейчас в теме
Здравствуйте. В зуп 3.1 и зикгу 3.1 будет работать?
77. stvorl 942 22.01.19 21:56 Сейчас в теме
(76) Добрый день. Версия для управляемых форм работает в ЗУП 3 (правда формирует документ "Перенос данных", т.к. документа "Корректировка регистров" в этой конфигурации нет). В ЗиКГУ 3 должна, хотя я не тестировал. Если не будет работать, тогда отпишите - решим вопрос как-нибудь.
78. igozakh 10 22.01.19 22:19 Сейчас в теме
79. SV-63 01.03.19 10:56 Сейчас в теме
(78) Добрый день ! Попробовали ? Расскажите , какие проблемы пробуете решить с помощью данной обработки ?
80. stvorl 942 28.07.19 23:44 Сейчас в теме
Важная заметка для пользователей решения для управляемых форм.

Для работы в современных "управляемых" конфигурациях, крайне желательно, перед использованием обработки, включить функциональные опции, влияющие на скрытие различных реквизитов (например, "Организация", "Валюта" и др., которые могли быть задействованы в исправляемых регистрах) из интерфейсов и отчетов, и перезапустить программу.

Например, для БП 3.0 такие ФО переключаются константами:
- "Использовать несколько организаций"
- "Использовать валютный учет".
(Можно переключить значение через "Все функции" - "Константы").

Дело в том, что при выключенных ФО, реквизиты не только скрываются из интерфейса, но становятся также недоступными для системы компоновки данных, а обработка выбирает остатки именно посредством СКД.

Если ФО не включить, то, например, данные по колонке "Организация" могут не заполнится (при заполнении по остаткам), а целевые движения, соответственно, будут содержать пустое поле организации (или будут отражать пересторнировку остатков на пустую организацию с заполненной), что может привести к непредсказуемым побочным эффектам.

После использования обработки эти ФО можно отключить обратно.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Ведущий программист 1С
Омск
зарплата от 70 000 руб. до 110 000 руб.
Полный день

Программист 1С
Екатеринбург
зарплата до 120 000 руб.
Полный день

Консультант-аналитик 1С
Рязань
зарплата до 80 000 руб.
Полный день

Программист 1С
Рязань
зарплата от 90 000 руб.
Полный день