Приветствую, Форумчане!
1с8.3.12, самопис, БСП, УФ

В документе есть несколько реквизитов, которые не нужны в регистрах по данному документу.
Они чисто информационные и их при нажатии некой кнопки нужно просто и по-тихому записать.

```1c
    &НаКлиенте
    Процедура ДокументСдан(Команда)
    ДокументСданНаСервере();
    //ЭтотОбъект.Записать(РежимЗаписиДокумента.Запись);
    //ПриЗаписиПерепроводить(0);
    Записать();
    //ПриЗаписиПерепроводить(1);
    Парам = Новый Структура(); //108470
    Парам.Вставить("Основание",Объект.Ссылка);
    Парам.Вставить("Действие","Принят");
    Форм = ОткрытьФорму("Документ.ПрохождениеДокумента.ФормаОбъекта",Парам,,,ВариантОткрытияОкна.ОтдельноеОкно,,Новый ОписаниеОповещения("ДокументСданЗавершение", ЭтотОбъект, Новый Структура("Команда", Команда)),РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс);
    //Закрыть();
    КонецПроцедуры

    &НаСервере
    Процедура ДокументСданНаСервере()
    Объект.Сдан = Истина;
    Объект.Принял = ПользователиКлиентСервер.АвторизованныйПользователь();
    Объект.ДатаПринятия = ТекущаяДата();
    Объект.ТекущийСтатус = Перечисления.СтатусыПрохожденияДокументов.Принят;

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

речь идет о 4-х реквизитах в нижней процедуре.

Как можно просто записать их без затрагивания процесса проведения?
---
вот тогда еще пример:

```1c
    &НаКлиенте
    Процедура ЗаписатьБезПроведения(Команда)
    УказатьПерепроводить(Ложь);
    Записать(Новый Структура("РежимЗаписи,НеПерепроводить", РежимЗаписиДокумента.Запись, Истина));
    КонецПроцедуры

    &НаСервере
    Процедура УказатьПерепроводить(Перепроводить)
    ПриЗаписиПерепроводить = Перепроводить;
    КонецПроцедуры

    &НаСервере
    Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
    Если ПараметрыЗаписи.Свойство("НеПерепроводить") Тогда
    ТекущийОбъект.ОбменДанными.Загрузка = Истина;
    КонецЕсли;
    КонецПроцедуры
```
---
Объект.ОбменДанными.Загрузка = Истина; в самом начале.
В конце Объект.Записать()
Если не типовые документы то в процедуры модуля объекта передзаписью и призаписи вставьте код
 Если ОбменДанными.Загрузка Тогда
  Возврат;
 КонецЕсли;
---
как вариант:

```1c
    &НаКлиенте
    Процедура ЗаписатьБезПроведения(Команда)
    УказатьПерепроводить(Ложь);
    Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Запись));
    КонецПроцедуры

    &НаСервере
    Процедура УказатьПерепроводить(Перепроводить)
    ПриЗаписиПерепроводить = Перепроводить;
    КонецПроцедуры
```
---
попробуй ПриЗаписиПерепроводить
---
Пробовал. В коде даже показано заремаченным. Как это правильно оформить?

ПриЗаписиПерепроводить(0)?
ПриЗаписиПерепроводить(истина)?
ПриЗаписиПерепроводить = истина?

Я про это читал, но там было про 7.7
На УФ это раотает? В тонком клиенте на 8.3.12?
---
Записать(РежимЗаписиДокумента.Запись)
---
Нет, так пробовал. Пишет, что не хватает чего-то
---
Рабочий код с базы. Расположен в общем модуле "ПолныеПрава"

```1c
    Процедура ЗаписатьРеквизитДокумента(ДокументСсылка, ИмяРеквизита, значение) Экспорт
    ДокОбъект = ДокументСсылка.ПолучитьОбъект();
    ДокОбъект[ИмяРеквизита] = значение;
    ДокОбъект.Записать(РежимЗаписиДокумента.Запись);
    КонецПроцедуры
```

Ниже правильно заметили: Выполнять на сервере
---
Внизу ставьте
Объект.ТекущийСтатус = Перечисления.СтатусыПрохожденияДокументов.Принят;
Объект.Записать(РежимЗаписиДокумента.Запись);
---
Объект.Записать(РежимЗаписиДокумента.Запись);

Метод объекта не обнаружен
У меня все указанные коды в модуле формы происходят.

(5) Объект.ОбменДанными. - нет такого поля

Все деяния происходят в модуле формы документа
---
Это делается с директивой насервере
---
Все предложенные методы перепробовал... Вроде все рабочие, но всё равно у меня что-то более сильное сидит, что выводит на проведение, а там у меня подписка на событие сидит "Перед записью"

В этой подписке проверяется дата запрета, если дата в диапазоне запрета, то

Отказ = Истина;

Подписка на событие:

```1c
    Если Источник.ОбменДанными.Загрузка Тогда
    Возврат;
    КонецЕсли;

    ТекДата = ТекущаяДата();
    ПредМесяц = ДобавитьМесяц(ТекДата, - 1);
    ДатаБлокировки = ?(День(ТекДата) > 10, КонецМесяца(ПредМесяц), НачалоМесяца(ПредМесяц) - 1);

    Если Источник.Дата <= ДатаБлокировки Или ДатаСтара <= ДатаБлокировки Тогда
    Отказ = Истина;
    КонецЕсли;
```
---
Вроде все рабочие, но всё равно у меня что-то более сильное сидит, что выводит на проведение, а там у меня подписка на событие сидит "Перед записью"
Подписка "ПередЗаписью" всегда срабатывает, хоть режим проведение, хоть запись.
---
вот тогда еще пример:

```1c
    &НаКлиенте
    Процедура ЗаписатьБезПроведения(Команда)
    УказатьПерепроводить(Ложь);
    Записать(Новый Структура("РежимЗаписи,НеПерепроводить", РежимЗаписиДокумента.Запись, Истина));
    КонецПроцедуры

    &НаСервере
    Процедура УказатьПерепроводить(Перепроводить)
    ПриЗаписиПерепроводить = Перепроводить;
    КонецПроцедуры

    &НаСервере
    Процедура ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
    Если ПараметрыЗаписи.Свойство("НеПерепроводить") Тогда
    ТекущийОбъект.ОбменДанными.Загрузка = Истина;
    КонецЕсли;
    КонецПроцедуры
```
---
Где это применить (куда вставить: в модуль формы, в модуль объекта)?
А чем этот код отличается от предыдущего принципиально?
---
Шайтан!!!
---
ПередЗаписьюНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи) это предопределенная процедура модуля формы.
---
Создаешь РегистрСведений, в который пихаешь все эти реквизиты формы + сам этот документ. ПриЗакрытии документа добавляешь/обновляешь все эти значения, ПриОткрытии заполняешь все эти значения из РегистрСведений. таким образом у тебя документ будет не модифицированным и основные реквизиты и процедуры не затронуться