gifts2017

Правка регистров

Опубликовал Иван Иванов (UserInfoStart) в раздел Обработки - Универсальные обработки

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

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

Регистр накопления возможно редактировать не только с отбором по регистратору, но и с отбором по одному из его измерений (см. рисунок "Отбор по измерениям регистра накопления").

Записи регистра возможно редактировать по данным в первой строке по определенному полю. Для этого нужно после прочтения записей регистра установить курсор в нужной колонке, и по нажатию кнопки "Заполнить по первой строке" будет произведена в выбранной колонке по всем строкам на значение в первой строке.

Записи регистра возможно редактировать произвольным образом. Для этого после прочтения записей регистра нужно набрать текст справа и нажать кнопку Обработать (см. рис. "Произвольная обработка записей регистра").

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

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

// Проверка возможности изменения записей регистров (дата запрета изменения данных)
//
Процедура ПередЗаписьюРегистраНакопленийПроверкаДоступностиПериода(Источник, Отказ, Замещение) Экспорт
    
    Если Отказ ИЛИ Источник.ОбменДанными.Загрузка Тогда
        Возврат;
    КонецЕсли;
    
//-
    //ПроверкаПериодаЗаписейРегистров(Источник, Отказ, "РегистрНакопления");
//-
//+
    Если Источник.ДополнительныеСвойства.Свойство("НеПроверятьДату") 
        И Источник.ДополнительныеСвойства.НеПроверятьДату Тогда    
        Отказ = ЛожЬ;
    Иначе
        ПроверкаПериодаЗаписейРегистров(Источник, Отказ, "РегистрНакопления");    
    КонецЕсли;
//+
    #Если НЕ ВнешнееСоединение Тогда
        Если Отказ Тогда
            Сообщить("Редактирование данных этого периода запрещено. Изменения не могут быть записаны...", СтатусСообщения.Важное);
        КонецЕсли;
    #КонецЕсли
КонецПроцедуры // ПередЗаписьюРегистраНакопленийПроверкаДоступностиПериода

// Проверка возможности изменения записей регистров (дата запрета изменения данных)
//
Процедура ПередЗаписьюРегистраСведенийПроверкаДоступностиПериода(Источник, Отказ, Замещение) Экспорт
    
    Если Отказ ИЛИ Источник.ОбменДанными.Загрузка Тогда
        Возврат;
    КонецЕсли;
    
//-
    //ПроверкаПериодаЗаписейРегистров(Источник, Отказ, "РегистрНакопления");
//-
//+
    Если Источник.ДополнительныеСвойства.Свойство("НеПроверятьДату") 
        И Источник.ДополнительныеСвойства.НеПроверятьДату Тогда    
        Отказ = ЛожЬ;
    Иначе
        ПроверкаПериодаЗаписейРегистров(Источник, Отказ, "РегистрСведений");    
    КонецЕсли;
//+
    #Если НЕ ВнешнееСоединение Тогда
        Если Отказ Тогда
            Сообщить("Редактирование данных этого периода запрещено. Изменения не могут быть записаны...", СтатусСообщения.Важное);
        КонецЕсли;
    #КонецЕсли
КонецПроцедуры // ПередЗаписьюРегистраСведенийПроверкаДоступностиПериода

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

Наименование Файл Версия Размер Кол. Скачив.
ПравкаРегистров.epf
.epf 17,17Kb
03.10.16
819
.epf 2 17,17Kb 819 Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Нина (нинас) 18.04.12 05:51
2. Наталья (bahcha8) 18.04.12 10:13
Спасибо очень полезная обработка
3. Andrey Dyak (electronik) 19.04.12 10:42
Обработка конечно хорошая и нужная но при ее использании нужно пользоваться еще и головой ато беда будет вашему учету. Автору заслуженое 5+
4. Владислав Хорошев (Valdis_KH) 19.04.12 12:18
а этой обработкой можно поправить остатки по уплате страховых взносов по людям
5. Stamper (Stamper) 19.04.12 19:17
к таким обработкам нужна "интеллектуальная-CAPTCHA" :)
6. nirbolz 19.04.12 22:47
Хорошая обработка, мне помогла подправить пару регистров в бухгалтерии..
7. Иван Иванов (UserInfoStart) 20.04.12 13:18
(1) нинас, это универсальная обработка будет работать в любой конфигурации
9. Нина (нинас) 21.04.12 14:20
Иногда надо бы поправить, попрбую скачать чуть позже. Спасибо за ответ.
10. Олег Кобяков (kobol) 22.04.12 19:24
Ну Очень нужная обработка, АААААвтору ББББолшой ППППлюс. Выручил на 100%
Спасибо.........
11. bar_s (bar_s) 03.05.12 17:27
А чем отличается от исправление данных в документе и проведения? И там и там надо исправлять данные вручную.
12. Иван Иванов (UserInfoStart) 09.05.12 10:31
(11) bar_s, самые важные отличия - это то, что работа происходит непосредственно с записями конкретного регистра сведений или накопления, и то, что при перепроведении документа изменения, внесенные с помощью обработки, не сохранятся.
13. Карина -- (ponaroshku) 10.05.12 12:55
Вопрос автору
Мне нужно поменять данные в регистре ПервоначальныеСведенияОСБухгалтерскийУчет (при переводе базы с 7.7 на 8 по основным средствам "урезались" инвентарные номера в 7.7. были 10 знаков, в 8 - 9 знаков, обрезалось - Инв.номер(регл))
Документ-регистратор в моем случае это "Ввод начальных остатков по ОС"
При выборе регистратора и нажатии на "прочитать" в табличное поле не выводятся никакие данные, нечего изменять, увы:(

может, я что-то не так делаю или обработка не для моего случая?
14. Карина -- (ponaroshku) 10.05.12 12:55
15. Карина -- (ponaroshku) 11.05.12 11:47
Автор, прокомментируйте пожалуйста, как будет время, может ошибка в моих действиях?
Заранее спасибо за ответ
16. Иван Иванов (UserInfoStart) 11.05.12 12:56
(15) ponaroshku, удостоверьтесь в том,
- что данный документ имеет записи в регистре ПервоначальныеСведенияОСБухгалтерскийУчет;
- что в настройках обработки ПравкаРегистров выбран регистр сведений ПервоначальныеСведенияОСБухгалтерскийУчет, а не какой-либо другой.
17. Карина -- (ponaroshku) 12.05.12 07:36
(16) спасибо, действительно была ошибка в том, что я выбирала не тот регистратор (выбираемый не имел записей в регистр, поэтому и не выводились данные)
прошу прощения за невнимательность
18. Vladimir (Boroda) 26.11.12 20:12
ОБработочка хотя и опасная, но, порой, очень нужная... Иногда, кроме прямого воздействия на регистры, сделать бывает очень и очень трудно. Спасибо большое автору!
19. Владимир (vladismi) 11.02.13 14:35
Обработка хороша, но в ней нет возможности отбора по отдельным измерениям регистра, нет возможности изменения бухгалтерских регистров. Конечно же сделал доработку, плюс возможность записи объектов в режиме загрузки (плюем на даты запрета редактирования).
Что получилось - предлагаю к использованию.
Прикрепленные файлы:
ПравкаРегистров.epf
percofka; Vikt0r0vna; +2 Ответить
20. Геннадьевич Бу (Геннадьевич) 15.07.13 15:53
При последнем сбое появились битые записи в регистрах, надеюсь поможет. Заранее спасибо.
21. Марина Чирина (chmv) 15.07.13 16:46
Супер полезная обработка
22. Даниил K (Bylka) 19.11.13 16:17
1c 8 Бухгалтерия, полёт нормальный!
23. юрий гулидов (gull22) 15.01.14 16:05
Чем отличаются предложенные варианты обработки? Названия одинаковые
24. Anthony Hopkins (Persempre) 16.07.14 15:57
29. Игорь Чернов (it.chernov) 21.07.15 09:47
Вкусно и полезно, работает на 5+
30. Dmitry Bas (b-dm) 10.12.15 15:49
Щас посмотри, что это за правка регистров такая)))
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа