Дата запрета изменения данных

Как установить запрет редактирования данных в программе 1С 8.3?

Дата запрета редактирования данных — функционал программы 1С 8.3 БП, позволяющий ограничить ввод и изменение документов на определенный период времени. Говоря на языке бухгалтеров необходимо «закрыть период в 1с». Запрет можно устанавливать вплоть до конкретных пользователей и организаций в базе данных.

Инструкция актуальна как для 1С Бухгалтерии, так и для других программ, созданных на базе Библиотеки стандартных подсистем (Управление торговлей 11, ERP 2.0, 1С ЗУП 3.0, 1С УНФ и так далее).

Находим дату запрета в интерфейсе

В интерфейсе данная функция расположена на вкладке «Администрирование», в разделе «Поддержка и обслуживание»:

Если у вас еще не включена в 1С 8.3 дата запрета редактирования, то установите необходимый флаг:

Станет доступна гиперссылка «Настроить». По которой можно перейти к настройке.

Настройка даты запрета редактирования данных

Для начала, необходимо определится, будем ли мы разграничивать права на изменение по пользователям или будем использовать дату для всех:

Для примера выберем вариант «По пользователям». Теперь стало возможно указание индивидуальной настройки для каждого из сотрудников.

Пример: для сотрудников «Сергеев»и «Иванова»нужно настроить дату редактирования 01.01.2016, а для остальных — 03.01.2016.

Что бы организовать такой вариант необходимо:

  1. Встать на строке «<для всех пользователей>» и прописать в нижней части экрана дату — 03.01.2016:
  2. Далее, добавим с помощью кнопки «Подобрать» нужных пользователей. Аналогично установим для них уже дату 01.01.2016:

А теперь усложним задачу. Для пользователя «Иванова» нужно поставить ограничение на изменения данных организации «Конфетпром» как у остальных пользователей — на 01.03.2016.

Выделяем в списке сотрудника и в нижней части экрана устанавливаем переключатель «Способ указания даты запрета» в положение «По объектам»:

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

Установка «динамической» даты запрета

Описанный выше способ не всегда удобен — он требует постоянного администрирования. То есть каждый месяц/квартал/год дату нужно будет устанавливать вручную.

В 1С есть способ упрощения — установка «динамической» даты запрета. То есть в программе можно настроить что бы система автоматически «передвигала» дату запрета. Пример — на конец года, месяца, квартала, недели, дня.

Настроить это не трудно. Как вы наверное заметили, во всех настройках выше есть поле «Дата запрета». Как раз оно и отвечает за данную настройку.

Общая дата для всех пользователей:

Или же индивидуальная настройка:

Дата запрета загрузки данных в 1С БП 3.0

Затронем также тему запрета загрузки данных в программу 1С 8.3.

Где в 1С Бухгалтерия 8.3 дата запрета редактирования (1С: Бухгалтерия предприятия 3.0)

Бывает, что случается очень не приятные ситуации, когда из управленческой базы (например, УТ) в бухгалтерскую 1С поступают какие либо данных в закрытом периоде.

Для того, что бы избежать таких неприятностей, фирма 1С придумала отличный механизм — «Дата запрета загрузки данных». Располагается он в меню «Администрирование», в пункте «Настройка синхронизации данных»:

Включается с помощью флажка «Даты запрета загрузки»:

Подробно останавливаться на функционале не будем, он работает аналогично обычной дате запрета изменения, за исключением того, что роль «Пользователей» теперь играет «Информационная база». То есть ограничить обмен можно по определенной базе данных 1С 8:

По материалам: programmist1s.ru

Установка даты запрета изменения данных

Я
Luffy

Как сделать для УПП, в форме Установка даты запрета изменения данных, общая дата, дата ставилась за предыдущий день, при открытии программы автоматически, например сегодня 26.01.2016, а надо чтоб поставилась 25.01.2016?

 
 

   VladZ

Разработать процедуру установки и прописать запуск в ПриНачалеРаботыСистемы

   Luffy

(1) Чуть по подробнее можно, как с датой быть?)

   Godofsin

(2) Получаешь дату запрета, сравниваешь со вчерашней датой, не совпало — изменяешь.

   Luffy

(3) Дата запрета, я так понимаю в регистре сведений ГраницыЗапретаИзмененияДанных от туда ее запросом вытащить или как?

   Godofsin

(4) Да, тащи запросом.

   Luffy

(5) То есть создать Процедуру УстановкиДатыЗапрета Экспорт в модуле формы, а потом обратиться к ней в глобальном модули к Процедуре ПриНачалеРаботыСистемы() а там уже сравнить с текущей датой?

   Godofsin

(6) Ну хочешь так, хочешь через процедуру в общем модуле. Как тебе больше нравится.

   Luffy

(7) Хорошо попробую в глобалке ПриНачалеРаботыСистемы

   FIXXXL

(8) поищи в модулях, наверняка уже написана такая функция

   Luffy

Столкнулся с проблемой отладчик не срабатывает, в глобальном модуле в Проц ПриНачалеРаботыСистемы, в чем дело?

 
     vicof

(10) Отладка на сервер включена?

   vicof

на сервере*

   Tarlich

А может правильнее (удобнее для последующих обновлений) подписки на события…?

   Luffy

(11) Да на сервере, (13) не понял, база обновляется нужно что то отключить?

   Tarlich не помню где взял , но вот еще один способ решения
//////// Запрос = Новый Запрос( "ВЫБРАТЬ ПЕРВЫЕ 1 |   1 |ИЗ |   РегистрСведений.ГраницыЗапретаИзмененияДанных КАК ГраницыЗапретаИзмененияДанных |ГДЕ |   И ГраницыЗапретаИзмененияДанных.ГраницаЗапретаИзменений < &ГраницаЗапретаИзменений"); ГраницаЗапретаИзменений = НачалоДня(ТекущаяДата() — 259200); &nbsp//60*60*24=86400 1день, 60*60*48=172800 2 дня, 60*60*72=259200 3 дня Запрос.УстановитьПараметр("ГраницаЗапретаИзменений", ГраницаЗапретаИзменений); НаборЗаписей = РегистрыСведений.ГраницыЗапретаИзмененияДанных.СоздатьНаборЗаписей(); НаборЗаписей.Прочитать(); Для каждого Запись Из НаборЗаписей Цикл Запись.ГраницаЗапретаИзменений = ГраницаЗапретаИзменений; КонецЦикла; НаборЗаписей.Записать(); //// Итак решение (внимание, действия должны выполнятся специалистом) Общий Модуль — Полные Права — Процедура Процедура УстановитьПараметрГраницыЗапретаИзмененияДанных() Экспорт В начало процедуры код:
//Мания1С Попытка СоответствиеГраницЗапрета = ПараметрыСеанса.ГраницыЗапретаИзмененияДанных.Получить(); ГраницаПериода = СоответствиеГраницЗапрета; Вчера = НачалоДня(НачалоДня(ТекущаяДата())-1); ПозаВчера = НачалоДня(НачалоДня(Вчера)-1); Если ГраницаПериода < ПозаВчера Тогда Рег = РегистрыСведений.ГраницыЗапретаИзмененияДанных; Набор = Рег.СоздатьНаборЗаписей(); ТекущиеДанные = Рег.Выбрать(); Пока ТекущиеДанные.Следующий() Цикл Если ЗначениеЗаполнено(ТекущиеДанные.Организация) Тогда Продолжить; КонецЕсли; Запись = Набор.Добавить(); Запись.Организация = ТекущиеДанные.Организация; Запись.Пользователь = ТекущиеДанные.Пользователь; Запись.ГраницаЗапретаИзменений = ПозаВчера; КонецЦикла; Набор.Записать(); КонецЕсли; Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; Всё.

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

/////
так.

Задача.

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

Решение.

1.

1С 8.3 Бухгалтерия. Установка границ запрета редактирования.

Вводим дополнительное право пользователя.

Назовем его «Автоматически НЕ закрывать предыдущий день».

}39; В режиме Предприятие открываем меню «Операции / Планы видов характеристик / Права пользователей» }39; В группу «Документы» (или куда сочтете нужным) добавляем новое право «Автоматически НЕ закрывать предыдущий день», тип значения – Булево (составной тип отменяется).

}39; Во избежание возможных эксцессов при последующих обновлениях код нового элемента лучше установить в «1000», например. Разработчики конфигурации при пополнении списка новыми предопределенными характеристиками вряд ли дойдут до такого кода.

}39; Теперь в меню «Сервис / Пользователи / Настройка дополнительных прав пользователей» в группе «Документы» появился новый флажок, который можно установить тем пользователям, для которых НЕ надо задействовать механизм автоматического закрытия вчерашнего дня от редактирования.

2. Дорабатываем конфигурацию
}39; добавляем новый ПРИВИЛЕГИРОВАННЫЙ общий модуль. Назовем его, например, «АЦРК_Привилегированный». В свойствах модуля должны быть установлены галочки «Привилегированный», "Вызов сервера" и «Сервер».

В этом модуле должны быть следующая процедура:

Процедура ЗакрытиеПредыдущегоДня() Экспорт // НЕ зхакрывает предыдущий день если установлено право пользователя "Автоматически НЕ закрывать предыдущий день"// в противном случае производится запрет редактирования по предыдущий день включительно.// Для вновь введенных пользователей предыдущий день будет автоматически закрываться, потому что настройка // "Автоматически НЕ закрывать предыдущий день" не установлена. л_Право = ПланыВидовХарактеристик.ПраваПользователей.НайтиПоНаименованию("Автоматически НЕ закрывать предыдущий день"); //л_Право = ПланыВидовХарактеристик.ПраваПользователей.НайтиПоНаименованию("Автоматически закрывать предыдущий день"); Если л_Право.Пустая() Тогда // если такой настройки в принципе в базе нет, то ничего и не делаем Возврат; КонецЕсли; л_ТекущийПользователь = УправлениеПользователями.ОпределитьТекущегоПользователя(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ЗначенияДополнительныхПравПользователя.Значение |ИЗ | РегистрСведений.ЗначенияДополнительныхПравПользователя КАК ЗначенияДополнительныхПравПользователя |ГДЕ | ЗначенияДополнительныхПравПользователя.Пользователь = &Пользователь | И ЗначенияДополнительныхПравПользователя.Право = &Право"; Запрос.УстановитьПараметр("Пользователь", л_ТекущийПользователь); Запрос.УстановитьПараметр("Право", л_Право); Результат = Запрос.Выполнить(); Если Результат.Пустой() Тогда л_УстановитьЗапрет = Истина; Иначе Выборка = Результат.Выбрать(); Выборка.Следующий(); л_УстановитьЗапрет = НЕ Выборка.Значение; КонецЕсли; Если л_УстановитьЗапрет Тогда л_Запись = РегистрыСведений.ГраницыЗапретаИзмененияДанных.СоздатьМенеджерЗаписи(); л_Запись.Пользователь = л_ТекущийПользователь; л_Запись.ГраницаЗапретаИзменений = НачалоДня(НачалоДня(ТекущаяДата())-60); л_Запись.Записать(); КонецЕсли; ПолныеПрава.УстановитьПараметрГраницыЗапретаИзмененияДанных(); КонецПроцедуры
}39; Вставляем одну строку в модуль приложения, перед окончанием процедуры «ПриНачалеРаботыСистемы»

АЦРК_Привилегированный.ЗакрытиеПредыдущегоДня();//АЦРК КонецПроцедуры// ПриНачалеРаботыСистемы() Вот и все.

   Luffy

В других не в глобальном модуле отладчик работает

   Luffy

(15) Это все в Проц ПриНачалеРаботыСистемы верно?

   Luffy

(15) Спасибо большое, все отлично сработало!

 

Наведи порядок в своей работе используя конфигурацию 1C "Управление IT-отделом 8"

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

В этой статье мы рассмотрим, где установить в 1С дату запрета редактирования данных, и какие варианты этой настройки доступны пользователям.

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

«1С:БУХГАЛТЕРИЯ 8 ДЛЯ 1» — 3’000 рублей. Полный функционал без доплат, бесплатной установкой и начальной настройкой.

В типовых конфигурациях последних версий, таких как БП, УТ, Розница, ERP и ЗУП настройки схожи, поэтому эта статья поможет установить в любой из вышеперечисленных систем 1с дату запрета редактирования.

Для начала работы включите опцию Даты запрета изменения в настройках пользователей и прав раздела администрирования. В результате появиться ссылка Настроить, нажав которую вы перейдете в окно настроек.

Здесь представлено три способа настроек. Первый — Не установлено. С ним все понятно из названия, он позволяет вводить и редактировать данные любых периодов.

Второй способ – Для всех пользователей. При его выборе правила устанавливаются для всех пользователей, работающих в информационной базе.

Окно разделено на две части: верхнее (Дата запрета) и нижнее (Способы указания).

В верхней части окна устанавливается в 1С дата запрета редактирования данных. Обратите внимание на ссылку Больше возможностей/Меньше возможностей, т.к. если выбран режим с меньшими возможностями, то доступна только установка конкретной даты запрета. При выборе больших возможностей становится доступен выбор различных вариантов дат и указания дней отсрочки вступления в действие (т.е. в эти дни все еще будет доступно внесение корректировок).

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

 Общая дата – в этом варианте число единое для всех объектов базы.

 По разделам – число можно установить персонально для каждого раздела. При его выборе верхняя часть окна видоизменяется, в ней автоматически заполняется список всех разделов и назначение даты здесь выполняется в каждой строке.

 По разделам и объектам – предусматривает закрытие доступа к изменению данных в разрезе разделов и объектов программы, так же как и во втором способе заполняется список разделов и даты назначаются индивидуально для каждой строки, но при этом по команде подобрать можно выбрать конкретное объект базы, для которого будут установлены индивидуальные настройки.

Т.е. для заполнения настроек вам сначала надо выбрать подходящий способ, а затем уже исходя из него устанавливать дату. Для лучшего понимания приведем пример со скриншотами.

1. Надо закрыть доступ для всех данных системы вплоть до 31.12.2017.

2. Требуется закрыть доступ к изменениям данных за прошлый период вплоть до конца прошлой недели, но при этом надо оставить 5 дней на проверку и внесение необходимых корректировок.

3. Надо запретить редактировать за предыдущие года по разделу Бухгалтерский учет.

4. Надо установить запрет изменений всех разделов кроме Планирования (по нему установить запрет текущим числом).

5. Надо запретить вносить все изменения за прошлые года для всех организаций по разделу Бухгалтерский учет, а для ООО «Югстрой» и за предыдущий квартал.

И теперь перейдем к третьему варианту настроек – По пользователям.

Страница не найдена

Он похож на второй, но к нему добавляется еще одна часть окна настроек – это выбор пользователей для которых будут действовать настройки. Таким образом, сначала надо подобрать пользователя, затем выбрать способ, а затем установить в 1С дату запрета редактирования.

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

15 ЛЕТ ПРОГРАММИРУЕМ 1С И ДЕЛАЕМ БЕСПЛАТНЫЕ ВИДЕО-ИНСТРУКЦИИ

Примеры инструкций

Звоните +7 (499) 677-54-82 или заполните окно заказа звонка ниже, наши специалисты перезвонят Вам.

Обсудить статью на 1С форуме?