7.7 Позиционирование на открытом документе

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем Black Cat, 29 июл 2010.

  1. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте. Конфа ТиС 9.2

    Как проверить, является ли открытый документ проведенным ? Т.е. вот открываем документ, н-р., "Реализация". И нужно, узнать был ли он уже проведен (например создать доп кнопку и по ней чтоб выскакивало сообщенеие "Данный документ проведен (не проведен)")
  2. dedalx7
    Offline

    dedalx7 Опытный в 1С

    Регистрация:
    20 май 2009
    Сообщения:
    97
    Симпатии:
    0
    Баллы:
    26
    Ой, я вас умоляю, не заморачивайтесь кнопками. Создайте на форме элемент типа "текст", и в его поле "Формула" записать ему нечто такое:

    Код:
    ?(ТекущийДокумент().Проведен() = 1,"Проведен","НЕ проведен")
    
  3. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    В стандартной ТиС это реазизовано в процедуре ЗаголовокФормы
  4. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Это я знаю. Мне нужно добавить данную возможность в процедуру ОбработкаПроведения. Для чего это нужно ? В справочнике контрагенты добавлен реквизит в виде флажка "Стоп Лист". Если стоит флажок, то запрещается проведение реализации. Но ! При восстановлении последовательности документы перепроводятся. Этому клиенту могли произвести отгрузку до установки стоп листа. Соответственно выпадает ошибка. Вот мне и нужно сделать обработку типа: Если данный документ уже был проведен, то разрешить его перепровести. Если не был проведен (создан новый), то запретить проведение
  5. Time dont wait
    Offline

    Time dont wait Опытный в 1С

    Регистрация:
    20 окт 2009
    Сообщения:
    192
    Симпатии:
    0
    Баллы:
    26
    В обработкепроведения создание документов запрещено. Такое возможно сделать ПриЗаписи()
  6. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Создание документа мне не нужно делать в обработке проведения. Огромное всем спасибо. Сделал вот так для ЗаявкаПокупателя:
    Код:
    Процедура ОбработкаПроведения(ВидыДвижений)
    
    Если Проведен() <>  1 Тогда
    Если Контрагент.СтопЛист = 1 Тогда
    глНеПроводить(Контекст, "Контрагент находится в Стоп листе. Отгрузка запрещена !");
    Возврат;
    КонецЕсли;
    КонецЕсли;
    
    
    
    бла бла бла что и было написано в стандартной процедуре.
    
    КонецПроцедуры //ОбработкаПроведения()
    
    
    
    
    
    Теперь еще вопрос возник: как в конфигураторе называется обработка, которая вызывается в конфигурации Операции-Проведение документов...
  7. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Это не обработка... Эта функция встроенна в движек платформы. По нее вам не добраться
  8. TopicStarter Overlay
    Black Cat
    Offline

    Black Cat Опытный в 1С

    Регистрация:
    18 май 2009
    Сообщения:
    118
    Симпатии:
    0
    Баллы:
    26
    Жаль. Очень уж быстро она перепроводит документы. Хотелось бы посмотреть, как она это делает.
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.523
    Симпатии:
    407
    Баллы:
    104
    Обычной обработкой не хуже.... Обратите внимание: там есть хитрость - ограничение документов по транзакции. Используйте ее и все будет ок

Поделиться этой страницей