Проблема вот в чем. Надо чтобы когда выбираешь документ. Нажимаешь на кнопку "Реализация товара" и одновременно в этом документе ставилась галочка что товар реализован. Я вот вроде как сделал, но он не пашет.Вот код кнопки. При нажатии на которую в выброном документе (
```1c
    &НаКлиенте
    Процедура СформироватьДокументы(Команда)
    Док = Документы.Доставка.Выбрать();
    Масс = Элементы.Список.ВыделенныеСтроки;
    Если Команда.Имя = "СформироватьПриходы" Тогда
    СписокСообщений = СформироватьПриходыНаСервере(Масс);
    ИначеЕсли Команда.Имя = "СформироватьУстановкиЦен" Тогда
    СписокСообщений = СформироватьУстановкиЦенНаСервере(Масс);
    ИначеЕсли Команда.Имя = "СформироватьМаршрутыПоездок" Тогда
    СписокСообщений = СформироватьМаршрутыПоездокНаСервере(Масс);
    ИначеЕсли Команда.Имя = "РеализацияТоваровИУслуг" Тогда
    Док.ТоварРеализован = Истина;
    КонецЕсли;

    Для Каждого Сообщение Из СписокСообщений Цикл

    Сообщить(Сообщение.Значение);

    КонецЦикла;

    Сообщить("Создано " + СписокСообщений.Количество() + " документов.");

    Если СписокСообщений.Количество() > 0 Тогда
    Если Команда.Имя = "СформироватьПриходы" Тогда
    ОткрытьФорму("Документ.ПоступлениеТоваровУслуг.ФормаСписка");
    ИначеЕсли Команда.Имя = "СформироватьУстановкиЦен" Тогда
    ОткрытьФорму("Документ.УстановкаЦенНоменклатуры.ФормаСписка");
    ИначеЕсли Команда.Имя = "СформироватьМаршрутыПоездок" Тогда
    ОткрытьФорму("Документ.МаршрутПоездки.ФормаСписка");
    ИначеЕсли Команда.Имя = "РеализацияТоваровИУслуг" Тогда
    ОткрытьФорму("Документ.РеализацияТоваровУслуг.ФормаСписка");

    КонецЕсли;
    КонецЕсли;

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

Пока что выдает вот такую ошибку : Поле объекта недоступно для записи (ТоварРеализован)
Помогите пожалуйста!!!
---
```1c
    ИначеЕсли Команда.Имя = "РеализацияТоваровИУслуг" Тогда
    Для каждого строка из Масс Цикл
    Док = строка.Доставка.ПолучитьОбъект();
    Док.ТоварРеализован = Истина;
    Док.Записать();
    КонецЦикла;
    КонецЕсли;
```

Что то в этом духе
---
Док = Документы.Доставка.Выбрать();
...
Док.ТоварРеализован = Истина;

Док = Документы.Доставка.Выбрать(); это получение ссылки даже не ссылка, а выборка. Нужно обойти выборку и получить ссылку. И уже по ссылке получить объект.
---
А как тогда можно по другому? Без "Док = Документы.Доставка.Выбрать()"
---
я не совсем понял, что нужно в итоге.
---
Нужно чтобы в выбраном документе, после нажатии на кнопку "Реализация товара" в этом документе ставилась галка в "Товар реализован"
---
для начала, в коде для других документов есть программное создание самих документов. Для "РеализацияТоваровУслуг" этого нет. Куда эту галочку ставить собрались?
Все не так просто. Необходимо посмотреть как реализованы, для примера, "СформироватьПриходыНаСервере(Масс)". И уже по аналогии можно формировать нужные документы и устанавливать там галочку.
---
```1c
    &НаСервере
    Функция РеализацияТоваровИУслугНаСервере(МассивДокументов)
    // Вставить содержимое обработчика.

    СписокСообщений = Новый СписокЗначений;

    Запрос = Новый Запрос;
    Запрос.Текст = "

    | ВЫБРАТЬ
    | ДоставкаТовары.Номенклатура КАК Номенклатура,
    | ДоставкаТовары.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    | ДоставкаТовары.Коэффициент КАК Коэффициент,
    | СУММА(ДоставкаТовары.Количество) КАК Количество,
    | СУММА(ДоставкаТовары.Сумма) КАК Сумма,
    | ДоставкаТовары.Водители КАК Водители,
    | ДоставкаТовары.Цена КАК Цена

    | ИЗ
    | Документ.Доставка.Товары КАК ДоставкаТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныПоставщиков.СрезПоследних КАК ЦеныПоставщиковСрезПоследних
    | ПО ДоставкаТовары.Номенклатура = ЦеныПоставщиковСрезПоследних.Номенклатура.Номенклатура

    | ГДЕ
    | ДоставкаТовары.Ссылка В(&МассивДокументов)
    | И ДоставкаТовары.Водители <> ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)
    | И НЕ ДоставкаТовары.Номенклатура.Услуга
    |
    | СГРУППИРОВАТЬ ПО
    | ДоставкаТовары.Номенклатура,
    | ДоставкаТовары.ЕдиницаИзмерения,
    | ДоставкаТовары.Коэффициент,
    | ДоставкаТовары.Водители,
    | ДоставкаТовары.Цена
    КАК ВложенныйЗапрос
    |ИТОГИ ПО
    | Водители";

    Запрос.УстановитьПараметр("МассивДокументов", МассивДокументов);

    Результат = Запрос.Выполнить();
    ВыборкаДокументов = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

    Пока ВыборкаДокументов.Следующий() Цикл

    Док = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
    Док.Дата = ТекущаяДата();
    Док.Контрагент = ВыборкаДокументов.Водители;
    Док.Комментарий = "Сформирован по доставкам " + Док.Дата;

    Док.Организация = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "ОсновнаяОрганизация2");

    ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(Док, глЗначениеПеременной("глТекущийПользователь"), Константы.ВалютаРегламентированногоУчета.Получить(), "Покупка");

    ВыборкаТоваров = ВыборкаДокументов.Выбрать();
    Пока ВыборкаТоваров.Следующий() Цикл

    НоваяСтрока = Док.Товары.Добавить();
    ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаТоваров);
    // Выполнить общие действия для всех документов при изменении номенклатуры.
    ОбработкаТабличныхЧастей.ПриИзмененииНоменклатурыТабЧасти(НоваяСтрока, Док);
    НоваяСтрока.ЕдиницаИзмерения = ВыборкаТоваров.Номенклатура.ЕдиницаХраненияОстатков;
    НоваяСтрока.Коэффициент = НоваяСтрока.ЕдиницаИзмерения.Коэффициент;
    НоваяСтрока.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
    КонецЦикла;

    Если Док.Товары.Количество() > 0 Тогда

    Док.Записать(РежимЗаписиДокумента.Запись);
    СписокСообщений.Добавить("Создан документ: " + Док.Ссылка);

    КонецЕсли;

    КонецЦикла;
    Возврат СписокСообщений;

    КонецФункции
```
---
и?
Если все правильно, то добавить в :
Док = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
Док.Дата = ТекущаяДата();
Док.Контрагент = ВыборкаДокументов.Водители;
Док.Комментарий = "Сформирован по доставкам " + Док.Дата;
Док.ТоварРеализован = Истина;
---
Док.ТоварРеализован = Истина;
Это уже совсем другой документ. А мне надо в документе "Доставки"
---
э... я совсем потерялся в вашей логики.
---
и не стоит пытаться изменить реквизиты документа на клиенте
---
ИначеЕсли Команда.Имя = "РеализацияТоваровИУслуг" Тогда Док.ТоварРеализован = Истина; КонецЕсли;
Для того, чтобы можно было менять реквизит в документе , сначала нужно ПОЛУЧИТЬОБЪЕКТ().
У вас Док - всего лишь ссылка. И в ней невозможно ничего изменять, это как фотография - чтобы изменить , нужно получить реальный объект, ибо на фотке ничего не поменяешь...
Ну и потом после изменения , необходимо записывать изменения...
---
Ну вот я сделал. Но он теперь ругается на "ПолучитьОбъект"

                Объект = Док.ПолучитьОбъект();
    ТоварРеализован = Истина;
   Объект.Записать();
---
Если вы внимательно прочтете ошибку , то поймете в чем проблема, там же четко написано ПолучитьОбъект Не может быть выполнена на клиенте...
---
И как реализовать на клиенте?
---
читать книжки как минимум...
Создать серверную процедуру , которая будет все делать на сервере...
А на клиенте ее вызвать и пе6редать ей параметр, скажем ссылку на документ
---
На клиенте нет возможности работать с объектом, только со ссылкой. Чтобы изменять объект необходимо вызывать серверную процедуру/функцию которая по переданной ссылке получит и изменит объект.
---
```1c
    ИначеЕсли Команда.Имя = "РеализацияТоваровИУслуг" Тогда
    Для каждого строка из Масс Цикл
    Док = строка.Доставка.ПолучитьОбъект();
    Док.ТоварРеализован = Истина;
    Док.Записать();
    КонецЦикла;
    КонецЕсли;
```

Что то в этом духе
---
Из документа "Доставка" после нажатие кнопки выделенные поля попадают в документ "Реализация товаров и услуг"
---
Одновременно с этим надо чтобы ставилась галка в документе "Доставка" что товар был помещен в документ "Реализация товаров и услуг"
---
Вот смотрите. есть один документ "Доставка" и второй "Реализация товара и услуг"
Мы создаем новый документ в "Доставка"
После того как мы создали там документ, надо его переместить в Документ "Реализация товара и услуг"
После того как мы переместили его. Надо чтобы в Документе "Доставка" стояла галка что мы переместили данный документ.
---
как себе представляете "переместить документ"? "Переместить" откуда? Из самого документа "Доставка"? Пока это ничего мне не говорит.
---
Какую книгу посоветуете?)
---
Из книг однозначно лучший выбор это "Радченко М.Г. 1С- Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы (2013)"