Есть конфигурация 8.3. Добавляю поле НовоеЗначение, число 15,2. При нажатии на кнопку Пересчитать, должна пересчитать цену, пытаюсь так (в 7.7 так делал)

```1c
    &НаКлиенте
    Процедура ПересчитатьДокумент(Команда)

    Для каждого ТекущаяСтрока Из Объект.Товары Цикл

    ТекущаяСтрока.Цена=ТекущаяСтрока.Цена+НовоеЗначение;

    КонецЦикла;

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

поле цены в табличной части документа очищается и все
---
А дальше в коде цена больше нигде не изменяется? А то мало ли
---
АвтоматическоеСохранениеДанныхВНастройках
Реквизит - Сохранение
---
Если надо в каждом документе свое значение иметь, так может проще реквизитом документа его сделать?
---
или создавайте реквизит как объект БД.
---
НовоеЗначение откуда берется?
---
это поле ввода на форме
---
Посмотрите значение в отладчике на:

ТекущаяСтрока.Цена+НовоеЗначение

или

Сообщить(ТекущаяСтрока.Цена+НовоеЗначение);

Что будет если сделать так:

ТекущаяСтрока.Цена=ТекущаяСтрока.Цена+999;

или так:

ТекущаяСтрока.Цена=999+НовоеЗначение;

А потом уже можно вопросы задавать.
---
Так в том то и дело что в отладчике ТекущаяСтрока.Цена - это число и значение соответствует значению.

Если сделать

```1c
    Сообщить(ТекущаяСтрока.Цена+НовоеЗначение);
```

Значение документа складывается складывается с новым и все ок, но в документе очищается
---
Попробуйте так:

```1c
    &НаКлиенте
    Процедура ПересчитатьДокумент(Команда)

    Для каждого ТекущаяСтрока Из Объект.Товары Цикл

    ТекущаяСтрока.Цена=ТекущаяСтрока.Цена+Элементы.НовоеЗначение;

    КонецЦикла;

    КонецПроцедуры
```
---
Не прокатит.
---
Почему?
---
Это же элементарно. Вернется тип "поле формы".
---
Можно Объект.НовоеЗначение. Тоже вернётся тип "поле формы"?
---
Нельзя, у Объекта нет реквизита НовоеЗначение
---
В шапке нет такого реквизита
Объект.НовоеЗначение
есть
НовоеЗначение

Вернется исключение.
---
есть
НовоеЗначение
Не может быть просто НовоеЗначение. Может быть либо Элементы.НовоеЗначение, либо Объект.НовоеЗначение.
---
А мужики-то не знают!
---
Элементы.НовоеЗначение вернёт значение поля.
---
Документ создается, проводится. Через какое-то время его открывают, заполняют поле и опять проводят.

Я просто открываю проведенный документ, добавляю значение и нажимаю кнопку - все.

(8) не канает, по нулям

(7) пофиг на елку - в ТЧ не меняется, "где-то там" меняет, если соощить

Объект.Товары - это ТЧ, при чем здесь Объект.Новое значение?
---
Объект.Товары - это ТЧ, при чем здесь Объект.Новое значение?
Когда вы просто пишете ТекущаяСтрока.Цена=ТекущаяСтрока.Цена+НовоеЗначение, НовоеЗначение— это локальная переменная процедуры, которая ещё не инициализирована, скорее всего имеет значение Null. Если вы хотите обратиться к полю формы обращайтесь через Элементы.НовоеЗначение.
---
А дальше в коде цена больше нигде не изменяется? А то мало ли
---
если так, какой результат?

ТекущаяСтрока.Цена=999;

если так, какой результат?

ТекущаяСтрока.Цена=999+НовоеЗначение;
---
Да и через замер производительности посмотрите, что никакой код больше не выполняется.
---
это оказалось ключевым, у меня в цикле еще вызов процедуры для пересчета ТЧ, вот он и "зарубал" новое значение.

осталось решить вопрос с пересчетом ТЧ
---
Почти все решилось, а как сохранить введенное значение в поле на форме (НовоеЗначение ) ?
---
АвтоматическоеСохранениеДанныхВНастройках
Реквизит - Сохранение
---
можно поподробнее где искать?
---
Форма справа сверху, закладка Реквизиты.Находите НовоеЗначение, ставите флаг Сохранение.
---
я обычно в Google по картинкам нахожу.
---
Спасибо! Все нашел!
---
Рано радовался, сохраняется не только в том документе где меняешь, но и при открытии других - там появляется значение введенное в первом документе (((
---
тогда руками в:
ПриСохраненииДанныхВНастройкахНаСервере
ПриЗагрузкеДанныхИзНастроекНаСервере
---
или создавайте реквизит как объект БД.
---
(30) действительно, спасибо

все никак не отойду от 7.7
---
Если надо в каждом документе свое значение иметь, так может проще реквизитом документа его сделать?