helpf.pro
Регистрация

v8: Проведение документа

Bell
03.04.2013 13:50Прочитано: 4591
Здарвствуйте

Имею документ Пользователь его не может проводить вручную ,только через обработку.
Со стороны пользоватлея все идет хорошо, но когда данные загрузжаю документы в обработку тоже сомое. задет вопрос что нельзы проводить. как разрулить ситуацию.
Модуль объекта документа (может другая процедура что то не идет)
Код 1C v 8.х
 Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)

// Проверка что бы пользователь не смог провести документ вручную.
Если РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда

Предупреждение("Документ проводится програмно через обработку !!!"+ Символы.ПС+
"Что бы сохранить документ в базе вопользуйтесь кпопками ЗАПИСАТЬ или ЗАКРЫТЬ !!!");
Отказ = Истина;
Возврат;

КонецЕсли;
КонецПроцедуры

Изменено 03.04.13 13:53:06
Yandex
Возможно, вас также заинтересует
Реклама на портале
typeharley
03.04.2013 14:19Ответ № 1
Походу дяденька вы забыли кое-какие галочки в правах к документу добавить и текст ошибки "задет вопрос что нельзы проводить" не совсем понятно! И походу дела вы немного путаете понятие Проведения и записи!
Bell
03.04.2013 17:29Ответ № 2
Пользователь может только ЗАПИСАТЬ документ, а обработка проводит его. Галки все стоят
ПРАВА пользователя здесь ни при чем. Прводить документ запрещено абсолютно всем пользователям, только програмно.
Изменено 03.04.13 17:30:59
Mokey
03.04.2013 17:31Ответ № 3
(2) Bell, я при такой небходимости завожу переменную в модуле документа, например, ЗаписьИзФормы, по-умолчанию - ложь, при открытии формы выставляю этот флаг, тогда Ваш кусочек будет выглядеть так же, но с проверкой этого флага:
Код 1C v 8.х
 
Перем ЗаписьИзФормы Экспорт;
...
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)

// Проверка что бы пользователь не смог провести документ вручную.
Если РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда
Если ЗаписьИзФормы Тогда
Предупреждение("Документ проводится програмно через обработку !!!"+ Символы.ПС+
"Что бы сохранить документ в базе вопользуйтесь кпопками ЗАПИСАТЬ или ЗАКРЫТЬ !!!");
Отказ = Истина;
Возврат;
КонецЕсли;
КонецЕсли;
КонецПроцедуры
...
ЗаписьИзФормы = Ложь;

Изменено 03.04.13 17:32:45
Mokey
03.04.2013 17:34Ответ № 4
Но! Это не спасёт, если форма не открывалась, например, по правой клавише мыши в списке документов (журнале).
Mokey
03.04.2013 17:34Ответ № 5
У меня есть своё решение, но я пока даю почву для размышления, в каком направлении двигаться ))
Самое простое - в правах пользователя запретить интерактивное проведение, а обработку запускать со специальными правами.
Изменено 03.04.13 17:36:33
Bell
03.04.2013 17:43Ответ № 6
Хорошо заврта проверю у меня есть там булево ФлагОбработки и ДатаОбработки.(доступность к ним ЛОЖЬ)
Этот флаг и дату устанавливает обработка. и формируем проводки.Мысль я понял.
Bell
04.04.2013 17:22Ответ № 7
Слелал так все пошло
Код 1C v 8.х
 Если РежимЗаписи = РежимЗаписиДокумента.Проведение  Тогда
Если ФлагОбработки = Ложь ИЛИ НЕ ЗначениеЗаполнено(ДатаОбработки) Тогда
Предупреждение("Документ проводится програмно через обработку !!!"+ Символы.ПС+
"Что бы сохранить документ в базе вопользуйтесь кпопками ЗАПИСАТЬ или ЗАКРЫТЬ !!!");
Отказ = Истина;
Возврат;
КонецЕсли;
КонецЕсли;
Подсказка: Для выделения Кода используйте (в редакторе).
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.