Добрый день!
Постигаю азы программирования. Рисую простенькую конфигурацию "Сметный калькулятор". Набрали работы материалами из справочника с фикс. ценами, потом набрали смету из работ - готово. 2 вопроса:

1.
Документ НаборкаРабот
Стоимость работы без учета материалов вносится вручную.
Стоимость материалов - это итог табличной части по колонке ЦенаЗаЕдиницу

Не могу ссумировать в реквизите общая стоиомость работ. То одно слагаемое цепляет, то другое,

2.
Как вывести стоимость материалов в список документов НаборкаРабот"

третий день ломаю голову, гуглю туплю... Вот мой код

```1c
    &НаКлиенте
    Процедура ЦенаРаботыБезУчетаМатериаловПриИзменении(Элемент)
    РасчетСуммы();
    КонецПроцедуры

    &НаКлиенте
    Процедура ПереченьМатериаловИтогЦенаЗаЕдиницуПриИзменении(Элемент)
    РасчетСуммы();
    КонецПроцедуры

    &НаКлиенте
    Процедура РасчетСуммы();
    Объект.ОбщаяСтоимостьРаботы=Объект.СтоимостьМатериалов+Объект.ПереченьМатериалов.Итог("ЦенаЗаЕдиницу");
    КонецПроцедуры
```
---
Что-то я не понял, тебе надо сложить ЦенуРаботыБезУчетаМатериалов и ПереченьМатериаловИтогЦенаЗаЕдиницу, а ты делаешь
```1c
    Объект.ОбщаяСтоимостьРаботы=Объект.СтоимостьМатериалов+Объект.ПереченьМатериалов.Итог("ЦенаЗаЕдиницу");
```

Тебе нужно же так

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

Тебе нужно же так

```1c
    Объект.ОбщаяСтоимостьРаботы = Объект.ЦенаРаботыБезУчетаМатериалов + Объект.ПереченьМатериалов.ИтогЦенаЗаЕдиницу;
```
---
Объект.ЦенаРаботыБезУчетаМатериалов

Да.. ошибка по невнимательности
теперь код следующий

```1c
    &НаКлиенте
    Процедура ЦенаРаботыБезУчетаМатериаловПриИзменении(Элемент)
    РасчетСуммы();
    КонецПроцедуры

    &НаКлиенте
    Процедура ПереченьМатериаловИтогЦенаЗаЕдиницуПриИзменении(Элемент)
    РасчетСуммы();
    КонецПроцедуры

    &НаКлиенте
    Процедура РасчетСуммы();
    Объект.ОбщаяСтоимостьРаботы=Объект.ЦенаРаботыБезУчетаМатериалов+Объект.ПереченьМатериалов.Итог("ЦенаЗаЕдиницу");
    КонецПроцедуры
```

Но при Изменении Материалов не считает. Считает только после изменения ЦенаРаботыБезУчетаМатериалов
---
Дак вызов процедуры поставь на изменение материалов, тоже самое как ты поставил на Цену работы без учета.
ПриИзменении.
---
Т.к ты используешь "Итог", то процедура должна выполнятся на сервере, (справка в 1с)

```1c
    &НаСервере
    Процедура РасчетСуммы();
    Объект.ОбщаяСтоимостьРаботы=Объект.СтоимостьМатериалов+Объект.ПереченьМатериалов.Итог("ЦенаЗаЕдиницу");
    КонецПроцедуры
```

PS
Табличная часть (Tabular section)
Итог (Total)
Синтаксис:

Итог(<Колонка>)
Параметры:

<Колонка> (обязательный)

Тип: Число; Строка.
Индекс либо имя колонки, по которой подсчитывается итог.
Возвращаемое значение:

Тип: Число; Неопределено.

Описание:

Суммирует значения всех строк в указанной колонке.
Если в колонке установлен тип и он единственный, то при суммировании будет предприниматься попытка преобразования значения к типу Число.
Если колонке не присвоены типы, то в процессе суммирования будут принимать участие только значения, имеющие тип Число, значения других типов будут игнорироваться.
Если в колонке несколько типов и среди них есть тип Число, то в процессе суммирования будут принимать участие только значения, имеющие тип Число, значения других типов будут игнорироваться.
Если в колонке несколько типов и среди них нет типа Число, то результатом будет значение Неопределено.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример:
---
а где ты видишь что он использует итог?)) он палюбэ получает текущие данные таблицы, складывает и выводит в объект.))
Текущие данные недоступны на сервере.
для Объекта он тоже не нужен.
Ну это все мои догадки как бэ. Надо смотреть).
---
1.
```1c
    Итог("ЦенаЗаЕдиницу")
```

2. не вижу что бы он использовал текущие данные таблицы
---
А все, увидел, ну он же в объект уже вывел этот итог. Значит зачем мучать. Пусть берет сам объект и с ним работает.)
---
так вроде поставил же
---
Расскрой мне табличную часть Объект.
---
И еще момент:
(5)
Artem Narchuk пишет :
Т.к ты используешь "Итог", то процедура должна выполнятся на сервере, (справка в 1с)

&НаСервере
Процедура РасчетСуммы();
Объект.ОбщаяСтоимостьРаботы=Объект.СтоимостьМатериалов+Объект.ПереченьМатериалов.Итог("ЦенаЗаЕдиницу");
КонецПроцедуры

В дальнейшем этот документ будет использоваться при наборе смет. В табличной части будет перечень работ со стоимостью. Что бы сумма материалов там была- думаю, чтомне действительно на сервере надо сделать?
---
Да, не догадался.
---
Реквизиты еще раскрой
---
Раскрыл
---
ну ты все понял вообщем))
---
Всем добрый день!
А подскажите со вторым вопросом

Как вывести стоимость материалов в список документов НаборкаРабот
---
на форме списка, справа выделяешь "Список" - в его свойствах справа, ставишь галочку произвольный запрос и нажимаешь Настроить список, строишь нужный запрос. Если я правильно понял что вам именно нужно.
---
Вроде понял, спасибо буду пытаться.
---
Получил следующим образом:
создал форму списка. Перетащил нужные поля.
Все.
Получил заполненный список
Спасибо за помощь
---
))) ну все правильно.
---
А мой 18 пост посмотрите плиз
---
Опять прошу помощи.
В документ НаборкаСмет (при изменении объема надо заполнить элементы ТЧ: Стоимостьматериалов, и СтоимостьРаботыБезМатериалов.

Это элементы ТЧ документа НаборкаРабот
Подскажите плизз
---
Уточнение

СтоимостьРаботыБезМатериалов - это Справочники.Название.Работ.Цена

Стоимостьматериалов это СтоимостьматериаловТЧ из НаборкиРабот
---
Приподниму вопрос..
сам код не прошу - подскажите каким механизмом сделать.