Здравствуйте!
Есть проблема: при попытке проведения старых документов, возникает сообщение "Не заполнена колонка "Курс расчетов" в сторке 1 списка "Расшифровка платежа" (документ - списание с расчетного счета). Всё что касается курса в базе, договорах, регистрах - в норме. Поиском по форуму определил, что если вручную открыть форму документа и нажать на кнопку калькулятора в поле "сумма", то после этого документ записывается и проводится без проблем.
Так как не хочется этим заниматься вручную, я попытался сделать обработку, которая поправила бы этот реквизит во всех документах. Попытался это сделать со стороны сервера - ничего не вышло, так как ТЧ только для чтения. Попробовал со стороны клиента - в реквизитах формы есть несколько элементов, имеющих отношение к курсу, однако повлиять на формирование ТЧ РасшифровкаПлатежа у меня также не вышло. Изучением 1с занимаюсь несколько недель и пока ещё имею значительные пробелы в понимании внутренних механизмов. Пожалуйста, подскажите - в какую сторону следует копать?
Заранее благодарю!
---
Проще всего взять обработку "групповое изменение объектов" (вроде даже в типовых конфах есть встроенная) и выполнить замену.
Но сперва давайте уточним:
1) зачем перепроводить старые документы
2) старые - это какие даты?
3) почему документы были созданы без курса?
---
ничего не вышло, так как ТЧ только для чтения
Полагаю, Вы пытались обратиться непосредственно к данным табличной части, используя ссылку. Так действительно не работает.

Но можно получить объект по ссылке, изменить его и записать. Например:

```1c
    ДокументОбъект = ДокументСсылка.ПолучитьОбъект();
    ДокументОбъект.РасшифровкаПлатежа[1].Курс = НужныйКурс;
    ДокументОбъект.Записать();
```

Этот кусок кода вводит новое значение реквизита курса во второй строке табличной части документа и записывает документ без перепроведения.
---
Получается ошибка. Согласно мануалу, ТЧ только для чтения.
---
Уточните, пожалуйста, согласно какому "мануалу"?
---
Имею в виду встроенный синтаксис-помощник (приложил скрин).
Пробовал и напрямую и копировать в пустую ТЗ, редактировать там и вставлять целиком. Возможно, что-то не так делаю.

```1c
    Док = Выборка.Ссылка.ПолучитьОбъект();
    Док.РасшифровкаПлатежа[0].КурсВзаиморасчетов = 1;
    Т = Док.Записать();
```

```1c
    Таб = Новый ТаблицаЗначений;
    Таб = Док.РасшифровкаПлатежа;
    Таб[0].КурсВзаиморасчетов = 1;
    Док.РасшифровкаПлатежа = Таб;
    Док.Записать();
```
---
Понял о чем Вы. Действительно, новую табличную часть объекту не присвоить. Но существующую менять вполне возможно.

Первый Ваш пример содержит ошибку в последней строке: Вы используете метод "Записать" как функцию, а это процедура. Функция он только у формы. С присвоением курса проблем не должно быть.

Второй Ваш пример как раз содержит попытку присвоить объекту новую табличную часть. Это невозможно. Но возможно ее загрузить:

```1c
    // вместо
    Док.РасшифровкаПлатежа = Таб;
    // можно
    Таб = Док.РасшифровкаПлатежа.Выгрузить();
    Док.РасшифровкаПлатежа.Загрузить(Таб);
```
---
Спасибо!
---
Проще всего взять обработку "групповое изменение объектов" (вроде даже в типовых конфах есть встроенная) и выполнить замену.
Но сперва давайте уточним:
1) зачем перепроводить старые документы
2) старые - это какие даты?
3) почему документы были созданы без курса?
---
Благодарю, попробую.
1) После удаления в базе дублей стандартной обработкой
2) С 2014 года.
3) К сожалению, этого я не знаю, мне передали такую базу.
---
Благодарю! Стандартная обработка помогла решить проблему.