|
Запрет проведения документа | ☑ | ||
---|---|---|---|---|
0
devochka_1c
22.04.12
✎
16:49
|
Добрый день! подскажите, пожалуйста, что я делаю не так:
Самописная конфигурация, управляемое приложение. Устанавливаю дату запрета проведения в константе. Пишу следующий код в процедуре ОбработкаПроведения: ДатаЗапрета = ОсновныеФункции.ЗапретИзмененияДанных(); Если ЭтотОбъект.Проведен И (ЭтотОбъект.Дата<ДатаЗапрета) Тогда Отказ= Истина; КонецЕсли; Нужно, чтобы документы с датой меньше даты запрета, если они не были проведены, проводились. А если были проведены не проводились. А у меня все документы не проводятся (как проведенные, так и непроведенные)... |
|||
1
Naumov
22.04.12
✎
17:04
|
два раза вызывается обработчик
|
|||
2
Mikhail Volkov
22.04.12
✎
17:06
|
Может где-то есть запрет на запись всех документов с меньшей датой?
|
|||
3
devochka_1c
22.04.12
✎
17:08
|
(1)не совсем понятно
|
|||
4
devochka_1c
22.04.12
✎
17:09
|
(2)нет, запрет нигде не устанавливался
|
|||
5
Mikhail Volkov
22.04.12
✎
17:18
|
(4) т.е. без этого фрагмента все проводяться?
|
|||
6
devochka_1c
22.04.12
✎
17:25
|
(5)да, если убираю условие...система не видет проведенность документа, т.е для все документов Истина...
|
|||
7
Mikhail Volkov
22.04.12
✎
17:32
|
(6) Отказ = Истина, т.е. все документы не проводятся даже при отсутствии этого фрагмента?
|
|||
8
devochka_1c
22.04.12
✎
17:34
|
(7) если этот фрагмент убрать, то все проводится
|
|||
9
unregistered
22.04.12
✎
17:48
|
Если Ссылка.Проведен И (Дата<ДатаЗапрета) Тогда
Отказ = Истина; КонецЕсли; |
|||
10
devochka_1c
22.04.12
✎
17:54
|
(9)Все равно не проводятся документы непроведенные раньше даты запрета...
|
|||
11
Dethmont
22.04.12
✎
18:02
|
Процедура обработкаПроведения()
Сообщить("Свойство документа проведение на входе в процедуру = "+Проведен); //Ваш код КонецПроцедуры; |
|||
12
ssh2006
22.04.12
✎
18:04
|
(10) в модуле объекта в процедуре ПерелЗаписью
ДополнительныеСвойства.Вставить("Проведен", Проведен); В обработке проведения Если ДополнительныеСвойства.Проведен И (Дата<ДатаЗапрета) Тогда Отказ = Истина; КонецЕсли; |
|||
13
devochka_1c
22.04.12
✎
18:10
|
(12) Если вставляю в процедуре ПередЗаписью
ДополнительныеСвойства.Вставить("Проведен", Проведен); то система ругается... |
|||
14
Мимохожий Однако
22.04.12
✎
18:19
|
Матом ругается? Или всё-таки скопируешь сюда ругань?
|
|||
15
ssh2006
22.04.12
✎
18:20
|
(13) В модуле объекта ПриЗаписи?
|
|||
16
ssh2006
22.04.12
✎
18:20
|
(15) *ПередЗаписью
|
|||
17
devochka_1c
22.04.12
✎
18:22
|
(14) {Документ.РеализацияТоваров.Форма.ФормаДокумента.Форма(17,5)}: Переменная не определена (ДополнительныеСвойства)
<<?>>ДополнительныеСвойства.Вставить("Проведен", Проведен); (Проверка: Тонкий клиент) {Документ.РеализацияТоваров.Форма.ФормаДокумента.Форма(17,49)}: Переменная не определена (Проведен) ДополнительныеСвойства.Вставить("Проведен", <<?>>Проведен); (Проверка: Тонкий клиент) |
|||
18
ssh2006
22.04.12
✎
18:22
|
(17) В модуле объекта нужно ПередЗаписью
|
|||
19
devochka_1c
22.04.12
✎
18:41
|
(18) Спасибо большое!
|
|||
20
devochka_1c
22.04.12
✎
18:41
|
А как добавить проверку того, что это вновь создаваемый документ?
|
|||
21
unregistered
22.04.12
✎
18:43
|
(20)
Если ЭтоНовый() Тогда Сообщить("Да он же новый!"); КонецЕсли; |
|||
22
devochka_1c
22.04.12
✎
18:46
|
(21)Большое спасибо! я уже сама разобралась...
|
|||
23
unregistered
22.04.12
✎
18:47
|
(10) Тогда в обработчике перед записью документа такой код:
Если РежимЗаписи = РежимЗаписиДокумент.Проведение И Ссылка.Проведен И (Дата<ДатаЗапрета) Тогда Отказ = Истина; КонецЕсли; |
|||
24
devochka_1c
22.04.12
✎
19:16
|
(23) Cпасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |