Имя: Пароль:
1C
1С v8
Проведение в закрытом периоде
,
0 KindLion
 
03.03.14
11:40
Добрый день, друзья!
Подскажите, пожалуйста, как мне разрулить такую ситуацию.
Бухгалтеру, у которого права далеко не полные, периодически надо ставить определенную отметку в документе. Случается, -  что и в документе в закрытом периоде.
Изменения этой отметки никак не влияют на режим проведения документа.
Поэтому я смело, на время установки этой отметки, включаю Привилегированный режим. Но это - не помогает - система, все одно - ругается на то, что период закрыт и документ не проводит.
Как можно выкрутиться из столь щекотливой ситуации?
1 ДенисЧ
 
03.03.14
11:42
Написать примитивную обработку из 4х строчек...
2 KindLion
 
03.03.14
11:42
(1) ? любую. :)
3 Avganec
 
03.03.14
11:42
(0) у тебя система пытается провести документ, а это влечет результат, который может тебя не порадовать. сделай механизм этой отметки отдельно, например через обработку, чтобы самому управлять режимом записи.
4 ДенисЧ
 
03.03.14
11:43
(2) Что любую?
5 KindLion
 
03.03.14
11:45
(3) Так о том и речь - что сам пытаюсь управлять, а не получается.
Вот и помощи у сообщества прошу.
Что делаю: перехватываю установку именно этой отметки, только в этом случае - пытаюсь провести даже в том случае, если период закрыт.
6 Feunoir
 
03.03.14
11:45
(0) Обработчик флажка на форме документа:

Процедура гт_ОригиналыДокументовЕстьПриИзменении(Элемент)
    
    Записываем = НЕ Модифицированность;
    гт_ОригиналыДокументовЕсть = ЭлементыФормы.гт_ОригиналыДокументовЕсть.Значение;
    Если Записываем Тогда
        ЭтотОбъект.ОбменДанными.Загрузка = Истина;
        ЭтотОбъект.Записать(РежимЗаписиДокумента.Запись);
    КонецЕсли;
    
КонецПроцедуры
7 Klesk666
 
03.03.14
11:47
в ут 11 есть такое:
ДокумОбъект.ДополнительныеСвойства.Вставить("ПроверкаДатыЗапретаИзменения", Ложь);
8 KindLion
 
03.03.14
11:47
(6) Вау!
Вот это ход!
Спасибо!
Я думаю, это спасет ситуацию.
9 KindLion
 
03.03.14
11:49
(7) ОК, спасибо, это вообще было бы то, что надо.
Но у меня комплексная конфа (КА), там, вроде, такого не встречал. НО - посмотрю
10 Feunoir
 
03.03.14
11:51
(8) Правда, возможно тут у меня ошибка - обратно ОбменДанными.Загрузка не сбрасывается. Надо проверить будет.
11 Feunoir
 
03.03.14
11:59
(10) Ага. На самом деле после записи у меня есть

ЭтотОбъект.ОбменДанными.Загрузка = Ложь;

Просто когда я оттуда лишние строчки удалял (которые тут не важны), удалил и одну важную строчку :)
12 KindLion
 
03.03.14
12:05
(11) Спасибо, друг!
Все отлично сработало!
Очень остроумное решение!
Надо будет запомнить.
13 Klesk666
 
03.03.14
12:07
ЭтотОбъект.ОбменДанными.Загрузка = Истина;
а зачем это?
14 Maxus43
 
03.03.14
12:08
(13) это костыль по обходу проверок ненужных. Надо юзать осторожно
15 Godofsin
 
03.03.14
12:09
(13) шоб проверки игнорировать
16 KindLion
 
03.03.14
12:18
(14) +150!
17 Klesk666
 
03.03.14
12:19
(15) а какие например?
18 KindLion
 
03.03.14
12:20
(17) Ну, например, такие, о которых шла речь в (0).
Проверка даты запрета в том случае, когда она (дата запрета) только мешает.
19 Godofsin
 
03.03.14
12:21
(17) Правильность заполнения реквищитов например
20 Klesk666
 
03.03.14
12:21
т.е. грубо говоря, не выполняется процедура призаписи() ?
21 Godofsin
 
03.03.14
12:22
(20) выполняется. Просто во всех проверках условие, типа:
Если обменДанными тогда возврат; конецЕсли;
22 Klesk666
 
03.03.14
12:23
(21) понял, спасибо
а контроль незаполненных обязательных реквизитов?
23 Godofsin
 
03.03.14
12:24
(22) ну хз, если честна, не помню.
24 Feunoir
 
03.03.14
12:32
(22) "Например, такое свойство, как Загрузка, может определять необходимость проведения (непроведения) каких-либо проверок в момент записи объекта (при записи в режиме загрузки можно отказаться от проверки номеров, кодов объектов, наличия каких-либо связанных с загружаемыми объектами данных и т. п., так как эти данные могут быть загружены после). Следует обратить внимание на тот факт, что значение данного свойства не хранится в базе данных. В соответствии с этим все изменения (определения различных коллекций, свойств), которые выполняются через данное свойство, «работают» только в течение существования объекта." (с) Букварь

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