Закажите бесплатный расчет стоимости вашей задачи по 1С!
Перезвоним за 10 минут! (в рабочие часы)

Проверка при отмене проведения 1С

Как при отмене проведения документа проверить, если документ не содержит ответственный и текущий пользователь отличается отличается от пользователя, то не позволить проведение документа? Я так понимаю это через запрос нужно реализовать?

Остались вопросы?

СПРОСИТЕ в комментариях!

Комментариев: 6 на “Проверка при отмене проведения 1С
  1. Если конфигурация одна из типовых, то информация о текущем пользователе (справочник пользователи) хранится в параметре сеанса:
    ПараметрыСеанса.ТекущийПользователь

    Ответить

  2. Делаю через модуль и делаю ссылку на подписку, выдает ошибку » Поле объекта недоступно для записи (Наименование)»

    Процедура ПриОтменеПроведенияДокументаОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт

    Пользователь=ПользователиИнформационнойБазы.ТекущийПользователь();
    Источник.Ответственный.Наименование=Пользователь.ПолноеИмя;

    КонецПроцедуры

    Ответить

  3. Я думаю что можно и без запроса обойтись, но только как?

    Ответить

    • 1) Во-первых, вы можете изменять только реквизиты объектов.
      Т.е изменить можно только Источник.Ответственный, но никак не Источник.Ответственный.Наименование (реквизит уже справочника «пользователи»)

      2) Во-вторых, задача, вроде бы, сравнить текущего пользователя с пользователем системы. Верно?
      Тогда получается нужно сравнить пользователя с пользователем документа и если он не совпадает — выдать ошибку.

      Быстрое получение ссылки на текущего пользователя — «ПараметрыСеанса.ТекущийПользователь».
      Что бы отменить действие, необходимо указать в переменную «Отказ» значение «Истина».

      Специально не даю просто решение, что бы вы задумались))

      Ответить

  4. Проведение документа проходит, но система не должна позволять отменить проведение документа, и еще нужно если реквизит не заполнен, то заполнить текущим пользователем, указываю переменной «Отказ» Ложь не работает… где то не правильно не могу разобраться

    Процедура ПриОтменеПроведенияДокументаОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт

    Пользователь=ПользователиИнформационнойБазы.ТекущийПользователь();
    Если Источник.Ответственный = ПараметрыСеанса.ТекущийПользователь
    Тогда
    Отказ = Истина;
    КонецЕсли;
    КонецПроцедуры

    Ответить

    • Проверяйте типы данных. Включите отладку.

      Ответить

Добавить комментарий:

Ваш e-mail не будет опубликован.