Конфигурация: Бухгалтерия для Украины.
Предприятие 1с: 8.3.

Как вам уже видно с картинки мне нужно чтобы всю сумму документов подбивало в одну и выводило по нажатию кнопки.
Я создал кнопку с текстом и процедуру ПодсчитатьСуммуДокументов() и повесил на кнопку.
Обясните как найти то где оно выводит эту сумму документа, ну или где искать цикл. В общем подскажыте как сделать
---
Вот текст. МойПланСчетов, Регистратор и МояСумма замените на свои значения:

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Хозрасчетный.Регистратор КАК Регистратор,
    | СУММА(Хозрасчетный.Сумма) КАК Сумма
    |ИЗ
    | РегистрБухгалтерии.МойПланСчетов КАК Хозрасчетный
    |ГДЕ
    | Хозрасчетный.Регистратор = &Регистратор
    |
    |СГРУППИРОВАТЬ ПО
    | Хозрасчетный.Регистратор";

    Запрос.УстановитьПараметр("Регистратор", Регистратор);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Если ВыборкаДетальныеЗаписи.Следующий() Тогда
    МояСумма = ВыборкаДетальныеЗаписи.Сумма;
    КонецЕсли;
```
---
Вам нужно сделать запрос по движениям документа и и итог из запроса уже вывести на форму
---
Я пока ищо плохо понимаю по эльфийски. Можете мне обяснить на языке идиотов?
---
а запросы на языке 1с писать тоже пока никак?
---
C этим пока сложно но понять кое-что могу
---
Вот текст. МойПланСчетов, Регистратор и МояСумма замените на свои значения:

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Хозрасчетный.Регистратор КАК Регистратор,
    | СУММА(Хозрасчетный.Сумма) КАК Сумма
    |ИЗ
    | РегистрБухгалтерии.МойПланСчетов КАК Хозрасчетный
    |ГДЕ
    | Хозрасчетный.Регистратор = &Регистратор
    |
    |СГРУППИРОВАТЬ ПО
    | Хозрасчетный.Регистратор";

    Запрос.УстановитьПараметр("Регистратор", Регистратор);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

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

    //КАСТОМНЫЕ ПРОЦЕДУРЫ
    //Процедура ПодсчитатьСуммуДокументов()
    // Запрос = Новый Запрос;
    // Запрос.Текст =
    // "ВЫБРАТЬ
    // | Хозрасчетный.Регистратор КАК Регистратор,
    // | СУММА(Хозрасчетный.Сумма) КАК Сумма
    // |ИЗ
    // | Хозрасчетный КАК Хозрасчетный
    // |ГДЕ
    // | Хозрасчетный.Регистратор = &Регистратор
    // |
    // |СГРУППИРОВАТЬ ПО
    // | Хозрасчетный.Регистратор";
    //
    // Запрос.УстановитьПараметр("Регистратор", КорректировкаДвижений);
    //
    // РезультатЗапроса = Запрос.Выполнить();
    //
    // ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    //
    // Если ВыборкаДетальныеЗаписи.Следующий() Тогда
    // МояСумма = ВыборкаДетальныеЗаписи.Сумма;
    // КонецЕсли;
    //
    // ЭлементыФормы.ЗагальнаСуммаДокументов.Заголовок = МояСумма;
    //КонецПроцедуры

    // Процедура вызывается при выборе пункта подменю "Движения документа по регистрам" меню "Перейти".
    // командной панели формы. Процедура отрабатывает печать движений документа по регистрам.
    //
    Процедура ДействияФормыДвиженияДокументаПоРегистрам(Кнопка)

    РаботаСДиалогами.НапечататьДвиженияДокумента(ДокументОбъект.Ссылка);

    КонецПроцедуры // ДействияФормыДвиженияДокументаПоРегистрам()

    Процедура ПолучитьСписокДляОтбора(СтрокиДерева, СписокПодсистем, ЕстьГруппы = Ложь)

    Для каждого СтрокаДерева из СтрокиДерева Цикл

    Если СтрокаДерева.Флажок = 0 Тогда
    Продолжить;
    КонецЕсли;

    Если ЕстьГруппы Тогда
    Если НЕ СтрокаДерева.Группа Тогда

    Если СтрокаДерева.Флажок = 1 ИЛИ СтрокаДерева.Флажок = 2 Тогда
    СписокПодсистем.Добавить(СтрокаДерева.ТипОбъекта,, Истина);
    КонецЕсли;

    КонецЕсли;
    Иначе
    Если СтрокаДерева.Флажок = 1 ИЛИ СтрокаДерева.Флажок = 2 Тогда
    СписокПодсистем.Добавить(СтрокаДерева.Подсистема,, Истина);
    КонецЕсли;
    КонецЕсли;

    ПолучитьСписокДляОтбора(СтрокаДерева.Строки, СписокПодсистем, ЕстьГруппы);

    КонецЦикла;

    КонецПроцедуры // ПолучитьСписокДляОтбора()

    // Процедура создает и настраивает табличные поля на страницах панели ОсновнаяПанель
    //
    Процедура НастроитьЗакладкиПанели()

    ЭлементыФормы.ОсновнаяПанель.Страницы[0].Видимость = Ложь;
    ЭлементыФормы.ОсновнаяПанель.Страницы[1].Видимость = Ложь;
    ЭлементыФормы.ОсновнаяПанель.Страницы[2].Видимость = Ложь;

    КоличествоВидимыхСтраниц = 0;

    Для Каждого СтрокаТаблицыРегистров из Регистры Цикл

    ЭлементыФормы.ОсновнаяПанель.Страницы[СтрокаТаблицыРегистров.Имя].Видимость = СтрокаТаблицыРегистров.Отображение;

    Если СтрокаТаблицыРегистров.Отображение Тогда
    КоличествоВидимыхСтраниц = КоличествоВидимыхСтраниц + 1;
    КонецЕсли;

    КонецЦикла;

    Если КоличествоВидимыхСтраниц > 5 Тогда
    ЭлементыФормы.ОсновнаяПанель.ОтображениеЗакладок = ОтображениеЗакладок.СверхуМногострочный;
    Иначе
    ЭлементыФормы.ОсновнаяПанель.ОтображениеЗакладок = ОтображениеЗакладок.Сверху;
    КонецЕсли;

    Для Каждого Страница Из ЭлементыФормы.ОсновнаяПанель.Страницы Цикл
    Если Страница.Видимость Тогда
    ЭлементыФормы.ОсновнаяПанель.ТекущаяСтраница = Страница;
    ЗаполнитьСтраницу(Страница);
    Прервать;
    КонецЕсли;
    КонецЦикла

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

    Процедура ЗаполнитьСтраницу(Страница)

    //Перем Первый_элемент, Граница_первого_элемента, Второй_элемент, Граница_второго_элемента;

    СтрокаТаблицыРегистров = Регистры.Найти(Страница.Имя, "Имя");
    Если СтрокаТаблицыРегистров = Неопределено Тогда
    Возврат;
    КонецЕсли;

    Если СтрокаТаблицыРегистров.Отображение И (НЕ СтрокаТаблицыРегистров.Отрисован) Тогда

    // Расположим на странице командную панель
    КоманднаяПанельРегистра = ЭлементыФормы.Добавить(Тип("КоманднаяПанель"), ("КоманднаяПанель" + СтрокаТаблицыРегистров.Имя), Истина, ЭлементыФормы.ОсновнаяПанель);
    КоманднаяПанельРегистра.Верх = 6;
    КоманднаяПанельРегистра.Лево = 6;
    КоманднаяПанельРегистра.Ширина = ЭлементыФормы.ОсновнаяПанель.Ширина - 12 - 2;
    КоманднаяПанельРегистра.Высота = 24;

    КоманднаяПанельРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Низ,КоманднаяПанельРегистра,ГраницаЭлементаУправления.Верх);
    КоманднаяПанельРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Право,ЭлементыФормы.ОсновнаяПанель,ГраницаЭлементаУправления.Право);

    // Расположим на странице табличное поле
    ПолеРегистра = ЭлементыФормы.Добавить(Тип("ТабличноеПоле"), СтрокаТаблицыРегистров.Имя, Истина, ЭлементыФормы.ОсновнаяПанель);

    ПолеРегистра.Данные = СтрокаТаблицыРегистров.Имя;
    ПолеРегистра.Значение.Отбор.Регистратор.Значение = ДокументОбъект.Ссылка;
    ПолеРегистра.Значение.Отбор.Регистратор.Использование = Истина;

    ПолеРегистра.Видимость = ложь;
    ПолеРегистра.Верх = 30;
    ПолеРегистра.Лево = 6;
    ПолеРегистра.Высота = ЭлементыФормы.ОсновнаяПанель.Высота - 30 - 12 - 20;
    ПолеРегистра.Ширина = ЭлементыФормы.ОсновнаяПанель.Ширина - 12 - 2;
    ПолеРегистра.Видимость = истина;

    ПолеРегистра.ТолькоПросмотр = Ложь;
    ПолеРегистра.ИзменятьПорядокСтрок = Истина;
    ПолеРегистра.ИзменятьСоставСтрок = Истина;

    ПолеРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Низ,ЭлементыФормы.ОсновнаяПанель,ГраницаЭлементаУправления.Низ);
    ПолеРегистра.УстановитьПривязку(ГраницаЭлементаУправления.Право,ЭлементыФормы.ОсновнаяПанель,ГраницаЭлементаУправления.Право);

    ПолеРегистра.СоздатьКолонки();

    Если СтрокаТаблицыРегистров.ТипРегистра = "РегистрНакопления" Тогда
    Если Метаданные.РегистрыНакопления[СтрокаТаблицыРегистров.Имя].ВидРегистра = Метаданные.СвойстваОбъектов.ВидРегистраНакопления.Остатки Тогда
    КолонкаВидДвижения = ПолеРегистра.Колонки.Вставить(1, НСтр("ru='Вид движения';uk='Вид руху'"));
    КолонкаВидДвижения.Имя = "ВидДвиженияРегистраНакопления";
    КолонкаВидДвижения.УстановитьЭлементУправления(Тип("ПолеВвода"));
    КолонкаВидДвижения.Данные = "ВидДвижения";
    КолонкаВидДвижения.ЭлементУправления.КнопкаВыбора = Истина;
    КолонкаВидДвижения.ЭлементУправления.ВыбиратьТип = Ложь;
    КонецЕсли;
    КонецЕсли;

    ПолеРегистра.Колонки.Регистратор.Видимость = Ложь;

    Если СтрокаТаблицыРегистров.ТипРегистра = "РегистрСведений" Тогда
    Если НЕ Метаданные.РегистрыСведений[СтрокаТаблицыРегистров.Имя].ПериодичностьРегистраСведений = Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический Тогда
    ПолеРегистра.Колонки.Период.Видимость = Ложь;
    КонецЕсли;
    ИначеЕсли
    СтрокаТаблицыРегистров.ТипРегистра = "РегистрРасчета" Тогда
    ПолеРегистра.Колонки.ПериодРегистрации.Видимость = Ложь;
    Иначе
    ПолеРегистра.Колонки.Период.Видимость = Ложь;
    КонецЕсли;

    ПолеРегистра.Колонки.НомерСтроки.Видимость = Ложь;

    КоманднаяПанельРегистра.АвтоЗаполнение = Истина;
    КоманднаяПанельРегистра.Кнопки.Добавить("Разделитель" + СтрокаТаблицыРегистров.Имя);
    Кнопка = КоманднаяПанельРегистра.Кнопки.Добавить(СтрокаТаблицыРегистров.Имя, ТипКнопкиКоманднойПанели.Действие, , Новый Действие("ОткрытьСправкуРегистра"));
    Кнопка.Отображение = ОтображениеКнопкиКоманднойПанели.Картинка;
    Кнопка.Картинка = БиблиотекаКартинок.Справка;
    Кнопка.Подсказка = НСтр("ru='Открыть справку';uk='Відкрити довідку'");

    СтрокаТаблицыРегистров.Отрисован = Истина;

    Если КоличествоВидимыхСтраниц > 5 Тогда
    //Инициализируем изменение размера табличного поля по установленным привязкам
    ПолеРегистра.Высота = ПолеРегистра.Высота - 5;
    КонецЕсли;
    КонецЕсли;

    Если СтрокаТаблицыРегистров.Отображение И (НЕ СтрокаТаблицыРегистров.Прочитан) Тогда
    ЭлементыФормы[СтрокаТаблицыРегистров.Имя].Значение.Прочитать();
    СтрокаТаблицыРегистров.Прочитан = Истина;
    КонецЕсли;

    Если СтрокаТаблицыРегистров.Отображение И СтрокаТаблицыРегистров.Отрисован Тогда
    ЭлементыФормы[СтрокаТаблицыРегистров.Имя].ТолькоПросмотр = НЕ РучнаяКорректировка;
    ЭлементыФормы["КоманднаяПанель" + СтрокаТаблицыРегистров.Имя].ИсточникДействий = ЭлементыФормы[СтрокаТаблицыРегистров.Имя];
    КонецЕсли;

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

    // Функция определяет наличение движения по регистрам для документа
    Функция ОпределитьНаличиеДвижений(ДокументСсылка)

    ТекстЗапроса = ";
    МетаданнныеДокумента = ДокументСсылка.Метаданные();

    Если МетаданнныеДокумента.Движения.Количество() = 0 Тогда
    Возврат Новый ТаблицаЗначений;
    КонецЕсли;

    Для Каждого Движение ИЗ МетаданнныеДокумента.Движения Цикл
    // в запросе получаем имена регистров, по которым есть хотя бы одно движение
    // например,
    // ВЫБРАТЬ Первые 1 «РегистрНакопления.ТоварыНаСкладах»
    // ИЗ РегистрНакопления.ТоварыНаСкладах
    // ГДЕ Регистратор = &Регистратор

    ТекстЗапроса = ТекстЗапроса + "
    |" + ?(ТекстЗапроса = ", ", "ОБЪЕДИНИТЬ ВСЕ ") + "
    |ВЫБРАТЬ ПЕРВЫЕ 1 "" + Движение.ПолноеИмя() + "" КАК Имя ИЗ "
    + Движение.ПолноеИмя() + " ГДЕ Регистратор = &Регистратор";

    КонецЦикла;

    Запрос = Новый Запрос(ТекстЗапроса);
    ЗАпрос.УстановитьПараметр("Регистратор", ДокументСсылка);
    ТаблицаЗапроса = Запрос.Выполнить().Выгрузить();

    Возврат ТаблицаЗапроса;

    КонецФункции

    Процедура ЗаполнитьТЧ()
    ИмяДокумента = ДокументОбъект.Метаданные().Имя;
    //ЭтаФорма[ИмяДокумента] = ДокументОбъект;
    ТаблицаДвижений = ОпределитьНаличиеДвижений(ДокументОбъект.Ссылка);
    ТаблицаДвижений.Индексы.Добавить("Имя");
    Регистры.Очистить();

    Для каждого Регистр Из ДокументОбъект.Движения Цикл
    СтрокаТаблицыРегистров = Регистр.Метаданные();
    ПолноеИмя = СтрокаТаблицыРегистров.ПолноеИмя();
    ЕстьДвижения = (НЕ ТаблицаДвижений.Найти(ПолноеИмя,"Имя") = Неопределено);

    Если (НЕ ЕстьДвижения) И
    ((СтрокаТаблицыРегистров.Имя = "Хозрасчетный") или (СтрокаТаблицыРегистров.Имя = "Налоговый")) Тогда
    ЭлементыФормы.ОсновнаяПанель.Страницы.Найти(СтрокаТаблицыРегистров.Имя).Видимость = ложь;
    продолжить;
    ИначеЕсли НЕ ЕстьДвижения Тогда
    продолжить;
    КонецЕсли;

    Строка = Регистры.Добавить();
    Строка.Имя = СтрокаТаблицыРегистров.Имя;

    Если (Строка.Имя = "Хозрасчетный") или (Строка.Имя = "Налоговый") Тогда
    //ЭтаФорма["Движения" + Строка.Имя] = Регистр;
    ЭлементыФормы[Строка.Имя].Значение.Отбор.Регистратор.Значение = ДокументОбъект.Ссылка;
    ЭлементыФормы[Строка.Имя].Значение.Отбор.Регистратор.Использование = Истина;
    //ЭлементыФормы[Строка.Имя].Значение.Прочитать();
    КонецЕсли;

    ПозицияТочки = Найти(ПолноеИмя, ".");
    ТипРегистра = Лев(ПолноеИмя, ПозицияТочки - 1);
    Строка.ТипРегистра = ТипРегистра;

    Строка.Синоним = СтрокаТаблицыРегистров.Синоним;
    Строка.Подсистемы = ";

    Строка.ЕстьДвижения = (НЕ ТаблицаДвижений.Найти(ПолноеИмя,"Имя") = Неопределено);
    Строка.Отображение = Строка.ЕстьДвижения;
    Строка.Прочитан = Ложь;

    НомерЗакладки = ЭлементыФормы.ОсновнаяПанель.Страницы.Найти(СтрокаТаблицыРегистров.Имя);
    Если НомерЗакладки = Неопределено Тогда
    Строка.Отрисован = Ложь;
    СтраницаПанели = ЭлементыФормы.ОсновнаяПанель.Страницы.Добавить(СтрокаТаблицыРегистров.Имя, СтрокаТаблицыРегистров.Синоним);
    Иначе
    Строка.Отрисован = Истина;
    КонецЕсли;
    КонецЦикла;

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

    Процедура УстановитьДоступность()

    Для Каждого СтрокаТаблицыРегистров из Регистры Цикл
    Если СтрокаТаблицыРегистров.Отображение И СтрокаТаблицыРегистров.Отрисован Тогда
    ЭлементыФормы[СтрокаТаблицыРегистров.Имя].ТолькоПросмотр = НЕ РучнаяКорректировка;
    ЭлементыФормы[СтрокаТаблицыРегистров.Имя].ИзменяетДанные = РучнаяКорректировка;
    ЭлементыФормы["КоманднаяПанель" + СтрокаТаблицыРегистров.Имя].ИсточникДействий = ЭлементыФормы[СтрокаТаблицыРегистров.Имя];
    КонецЕсли;
    КонецЦикла;

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

    // Процедура устанавливает видимость для тех колонок в табличной части
    // "Товары", видимость которых определяется реквизитами документа.
    //
    // Параметры:
    // Нет.
    //
    Процедура УстановитьВидимость()

    ЭлементыФормы.Хозрасчетный.Колонки.СуммаНУДт.Видимость = ПоказыватьДанныеНУ;
    ЭлементыФормы.Хозрасчетный.Колонки.СуммаНУКт.Видимость = ПоказыватьДанныеНУ;
    ЭлементыФормы.Хозрасчетный.Колонки.НалоговоеНазначениеДт.Видимость = ПоказыватьДанныеНУ;
    ЭлементыФормы.Хозрасчетный.Колонки.НалоговоеНазначениеКт.Видимость = ПоказыватьДанныеНУ;

    КонецПроцедуры // УстановитьВидимость()

    Процедура КнопкаВыполнитьНажатие(Кнопка)

    Если НЕ ОбщегоНазначения.ЕстьРеквизитДокумента("РучнаяКорректировка", ДокументОбъект.Метаданные()) Тогда

    ИначеЕсли РучнаяКорректировка И (РольДоступна("ПравоГлавногоБухгалтера") ИЛИ РольДоступна("ПолныеПрава")) Тогда

    //Заполним недостающие поля записей регистров
    Для каждого СтрокаТаблицы Из Регистры Цикл
    Для каждого Запись Из ДокументОбъект.Движения[СтрокаТаблицы.Имя] Цикл

    Если СтрокаТаблицы.ТипРегистра = "РегистрСведений" Тогда
    Если НЕ Метаданные.РегистрыСведений[СтрокаТаблицы.Имя].ПериодичностьРегистраСведений = Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический Тогда
    Если Запись.Период = Дата('00010101') Тогда
    Запись.Период = ДокументОбъект.Дата;
    КонецЕсли;
    КонецЕсли;
    Иначе
    Если Запись.Период = Дата('00010101') Тогда
    Запись.Период = ДокументОбъект.Дата;
    КонецЕсли;
    КонецЕсли;

    Запись.Активность = ДокументОбъект.Проведен;
    Если НЕ ЗначениеЗаполнено(Запись.Регистратор) Тогда
    Запись.Регистратор = ДокументОбъект.Ссылка;
    КонецЕсли;

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

    ДокументОбъект.РучнаяКорректировка = РучнаяКорректировка;
    Попытка
    ДокументОбъект.Записать();
    Исключение
    Сообщить(НСтр("ru='При попытке записи документа возникла ошибка:';uk='При спробі запису документа виникла помилка:'") + ОписаниеОшибки(), СтатусСообщения.Важное);
    Возврат;
    КонецПопытки;

    Для каждого СтрокаТаблицыРегистров из Регистры Цикл
    Если СтрокаТаблицыРегистров.Отображение И СтрокаТаблицыРегистров.Прочитан Тогда
    ИмяРегистра = СтрокаТаблицыРегистров.Имя;
    Если ЭлементыФормы.Найти(ИмяРегистра)<>неопределено Тогда
    ДокументОбъект.Движения[ИмяРегистра].Загрузить(ЭлементыФормы[ИмяРегистра].Значение.Выгрузить());
    ДокументОбъект.Движения[ИмяРегистра].Записать();
    КонецЕсли;
    КонецЕсли;
    КонецЦикла;

    ИначеЕсли ДокументОбъект.РучнаяКорректировка И (РольДоступна("ПравоГлавногоБухгалтера") ИЛИ РольДоступна("ПолныеПрава")) Тогда

    //Восстановим автоматические движения документа
    Если Вопрос(НСтр("ru='Ручная корректировка движений документа отменена. "
    "Восстановить движения сформированные автоматически?';uk='Ручне коригування рухів документа скасовані. "
    "Відновити рухи сформовані автоматично?'"), РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда
    Возврат;
    КонецЕсли;
    ДокументОбъект.РучнаяКорректировка = РучнаяКорректировка;
    Попытка
    ДокументОбъект.Записать(?(ДокументОбъект.Проведен, РежимЗаписиДокумента.Проведение, РежимЗаписиДокумента.ОтменаПроведения));
    Исключение
    Сообщить(НСтр("ru='При попытке проведения документа возникла ошибка:';uk='При спробі проведення документа виникла помилка:'") + ОписаниеОшибки(),СтатусСообщения.Важное);
    ДокументОбъект.Записать(РежимЗаписиДокумента.ОтменаПроведения);
    КонецПопытки;

    КонецЕсли;

    Закрыть();

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

    Процедура ПриОткрытии()

    Открытие = Истина;
    ТолькоСДвижениями = Истина;

    Если НЕ ОбщегоНазначения.ЕстьРеквизитДокумента("РучнаяКорректировка", ДокументОбъект.Метаданные()) Тогда
    ЭлементыФормы.ПанельФлага.Свертка = РежимСверткиЭлементаУправления.Верх;
    РучнаяКорректировка = Ложь;

    ИначеЕсли РольДоступна("ПравоГлавногоБухгалтера") ИЛИ РольДоступна("ПолныеПрава") Тогда
    РучнаяКорректировка = ДокументОбъект.РучнаяКорректировка;
    Если ДокументОбъект.Проведен ИЛИ РучнаяКорректировка Тогда
    ЭлементыФормы.ПанельФлага.Свертка = РежимСверткиЭлементаУправления.Нет;
    Иначе
    ЭлементыФормы.ПанельФлага.Свертка = РежимСверткиЭлементаУправления.Верх;
    КонецЕсли;

    Иначе
    ЭлементыФормы.ПанельФлага.Свертка = РежимСверткиЭлементаУправления.Верх;

    КонецЕсли;

    ЭтаФорма.Заголовок = НСтр("ru='Результат проведения документа ';uk='Результат проведення документа '") + ДокументОбъект;

    // Управление видимостью данных НУ
    ПоказыватьДанныеНУ = НЕ УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "НеПоказыватьВПроводкахДанныеНУ");
    ЭлементыФормы.КоманднаяПанельХозрасчетный.Кнопки.ПоказатьСкрытьДанныеНУ.Пометка = ПоказыватьДанныеНУ;

    УстановитьВидимость();

    ЗаполнитьТЧ();

    НастроитьЗакладкиПанели();

    Открытие = Ложь;
    КонецПроцедуры

    Процедура КоманднаяПанельНастройка(Кнопка)

    Форма = ПолучитьФорму("ФормаНастройки");
    Форма.ОткрытьМодально();
    НастроитьЗакладкиПанели();

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

    Процедура РегистрыПриИзмененииФлажка(Элемент, Колонка)

    НастроитьЗакладкиПанели();

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

    Процедура РучнаяКорректировкаПриИзменении(Элемент)

    УстановитьДоступность();
    Если НЕ РучнаяКорректировка Тогда
    Для Каждого СтрокаТаблицыРегистров из Регистры Цикл
    Если СтрокаТаблицыРегистров.Отображение И СтрокаТаблицыРегистров.Отрисован Тогда
    ЭлементыФормы[СтрокаТаблицыРегистров.Имя].Значение.Прочитать();
    СтрокаТаблицыРегистров.Прочитан = Истина;
    Иначе
    СтрокаТаблицыРегистров.Прочитан = Ложь;
    КонецЕсли;
    КонецЦикла;
    КонецЕсли;

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

    // Пересчет валютной суммы в основную по курсу на указанную дату
    //
    Функция ПересчетСуммыПоКурсу(ВалютнаяСумма, Валюта, Дата) Экспорт

    Запись = РегистрыСведений.КурсыВалют.ПолучитьПоследнее(Дата, Новый Структура("Валюта", Валюта));
    Сумма = ВалютнаяСумма * Запись.Курс;

    Если Запись.Кратность <> 0 Тогда
    Сумма = Сумма / Запись.Кратность;
    КонецЕсли;

    Возврат Сумма;

    КонецФункции // ПересчетСуммыПоКурсу()

    ////////////////////////////////////////////////////////////­///////////////////
    // ОБРАБОТЧИКИ СОБЫТИЙ ЭЛЕМЕНТОВ ФОРМЫ

    Процедура ТабличноеПолеДвиженияБУСубконтоДтПриИзменении(Элемент)

    Если ТипЗнч(Элемент.Значение) = Тип("СправочникСсылка.Контрагенты") Тогда

    ТекущаяСтрока = ЭлементыФормы.Хозрасчетный.ТекущиеДанные;
    Договор = ТекущаяСтрока.СубконтоДт.Договоры;

    Если ЗначениеЗаполнено(Договор) Тогда
    Если НЕ (Договор.Владелец = Элемент.Значение) Тогда
    ТекущаяСтрока.СубконтоДт.Договоры = Справочники.ДоговорыКонтрагентов.ПустаяСсылка();
    КонецЕсли;
    КонецЕсли;

    КонецЕсли;

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

    Процедура ТабличноеПолеДвиженияБУСубконтоКтПриИзменении(Элемент)

    Если ТипЗнч(Элемент.Значение) = Тип("СправочникСсылка.Контрагенты") Тогда

    ТекущаяСтрока = ЭлементыФормы.Хозрасчетный.ТекущиеДанные;
    Договор = ТекущаяСтрока.СубконтоКт.Договоры;

    Если ЗначениеЗаполнено(Договор) Тогда
    Если НЕ (Договор.Владелец = Элемент.Значение) Тогда
    ТекущаяСтрока.СубконтоКт.Договоры = Справочники.ДоговорыКонтрагентов.ПустаяСсылка();
    КонецЕсли;
    КонецЕсли;

    КонецЕсли;

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

    Процедура ТабличноеПолеДвиженияНУСубконтоДтПриИзменении(Элемент)

    Если ТипЗнч(Элемент.Значение) = Тип("СправочникСсылка.Контрагенты") Тогда

    ТекущаяСтрока = ЭлементыФормы.Налоговый.ТекущиеДанные;
    Договор = ТекущаяСтрока.СубконтоДт.Договоры;

    Если ЗначениеЗаполнено(Договор) Тогда
    Если НЕ (Договор.Владелец = Элемент.Значение) Тогда
    ТекущаяСтрока.СубконтоДт.Договоры = Справочники.ДоговорыКонтрагентов.ПустаяСсылка();
    КонецЕсли;
    КонецЕсли;

    КонецЕсли;

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

    Процедура ТабличноеПолеДвиженияНУСубконтоКтПриИзменении(Элемент)

    Если ТипЗнч(Элемент.Значение) = Тип("СправочникСсылка.Контрагенты") Тогда

    ТекущаяСтрока = ЭлементыФормы.Налоговый.ТекущиеДанные;
    Договор = ТекущаяСтрока.СубконтоКт.Договоры;

    Если ЗначениеЗаполнено(Договор) Тогда
    Если НЕ (Договор.Владелец = Элемент.Значение) Тогда
    ТекущаяСтрока.СубконтоКт.Договоры = Справочники.ДоговорыКонтрагентов.ПустаяСсылка();
    КонецЕсли;
    КонецЕсли;

    КонецЕсли;

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

    // Процедура - обработчик события "НачалоВыбора" полей СубконтоДт
    //
    Процедура ТабличноеПолеДвиженияНУСубконтоДтНачалоВыбора(Элемент, СтандартнаяОбработка)

    ТекущаяСтрока = ЭлементыФормы.Налоговый.ТекущиеДанные;

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

    БухгалтерскийУчет.ОбработатьВыборСубконто(Элемент, СтандартнаяОбработка, ДокументОбъект.Организация, СписокПараметров, Элемент.ТипЗначения);

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

    // Процедура - обработчик события "НачалоВыбора" поля СубконтоКт1
    //
    Процедура ТабличноеПолеДвиженияНУСубконтоКтНачалоВыбора(Элемент, СтандартнаяОбработка)

    ТекущаяСтрока = ЭлементыФормы.Налоговый.ТекущиеДанные;

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

    БухгалтерскийУчет.ОбработатьВыборСубконто(Элемент, СтандартнаяОбработка, ДокументОбъект.Организация, СписокПараметров, Элемент.ТипЗначения);

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

    Процедура ТабличноеПолеДвиженияБУСчетДтНачалоВыбора(Элемент, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;

    ФормаВыбора = ПланыСчетов.Хозрасчетный.ПолучитьФорму("ФормаВыбора");

    ФормаВыбора.ПараметрСчет = ЭлементыФормы.Хозрасчетный.ТекущиеДанные.СчетКт;
    ФормаВыбора.ВладелецФормы = Элемент;
    ФормаВыбора.ЗакрыватьПриВыборе = Истина;
    ФормаВыбора.РежимВыбора = Истина;
    ФормаВыбора.ПараметрКорреспонденция = ВидДвиженияБухгалтерии.Кредит;
    ФормаВыбора.ЗакрыватьПриЗакрытииВладельца = Истина;
    ФормаВыбора.НачальноеЗначениеВыбора = ЭлементыФормы.Хозрасчетный.ТекущиеДанные.СчетДт;

    ФормаВыбора.Открыть();

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

    Процедура ТабличноеПолеДвиженияБУСчетКтНачалоВыбора(Элемент, СтандартнаяОбработка)

    СтандартнаяОбработка = Ложь;

    ФормаВыбора = ПланыСчетов.Хозрасчетный.ПолучитьФорму("ФормаВыбора");

    ФормаВыбора.ПараметрСчет = ЭлементыФормы.Хозрасчетный.ТекущиеДанные.СчетДт;
    ФормаВыбора.ВладелецФормы = Элемент;
    ФормаВыбора.ЗакрыватьПриВыборе = Истина;
    ФормаВыбора.РежимВыбора = Истина;
    ФормаВыбора.ПараметрКорреспонденция = ВидДвиженияБухгалтерии.Дебет;
    ФормаВыбора.ЗакрыватьПриЗакрытииВладельца = Истина;
    ФормаВыбора.НачальноеЗначениеВыбора = ЭлементыФормы.Хозрасчетный.ТекущиеДанные.СчетКт;

    ФормаВыбора.Открыть();

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

    // Процедура - обработчик события "ПриНачалеРедактирования" элемента ТабличноеПолеДвиженияБУ
    //
    Процедура ХозрасчетныйПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)
    Строка = Элемент.ТекущиеДанные;

    Строка.Период = ДокументОбъект.Дата;
    Строка.Организация = ДокументОбъект.Организация;
    КонецПроцедуры

    // Процедура - обработчик события "ОбработкаВыбора" поля СчетДт
    //
    Процедура ТабличноеПолеДвиженияБУСчетДтОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка = БухгалтерскийУчет.СчетМожноИспользоватьВПроводках(ВыбранноеЗначение);

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

    // Процедура - обработчик события "ОбработкаВыбора" поля СчетКт
    //
    Процедура ТабличноеПолеДвиженияБУСчетКтОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка = БухгалтерскийУчет.СчетМожноИспользоватьВПроводках(ВыбранноеЗначение);

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

    // Процедура - обработчик события "ПриИзменении" поля ВалютаДт
    //
    Процедура ТабличноеПолеДвиженияБУВалютаДтПриИзменении(Элемент)

    ТД = ЭлементыФормы.Хозрасчетный.ТекущиеДанные;
    ТД.Сумма = ПересчетСуммыПоКурсу(ТД.ВалютнаяСуммаДт, ТД.ВалютаДт, ДокументОбъект.Дата);

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

    // Процедура - обработчик события "ПриИзменении" поля ВалютаКт
    //
    Процедура ТабличноеПолеДвиженияБУВалютаКтПриИзменении(Элемент)

    ТД = ЭлементыФормы.Хозрасчетный.ТекущиеДанные;

    Если НЕ ТД.СчетДт.Валютный Тогда
    ТД.Сумма = ПересчетСуммыПоКурсу(ТД.ВалютнаяСуммаКт, ТД.ВалютаКт, ДокументОбъект.Дата);
    КонецЕсли;

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

    // Процедура - обработчик события "НачалоВыбора" полей СубконтоДт
    //
    Процедура ТабличноеПолеДвиженияБУСубконтоДтНачалоВыбора(Элемент, СтандартнаяОбработка)

    ТекущаяСтрока = ЭлементыФормы.Хозрасчетный.ТекущиеДанные;

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

    БухгалтерскийУчет.ОбработатьВыборСубконто(Элемент, СтандартнаяОбработка, ДокументОбъект.Организация, СписокПараметров);

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

    // Процедура - обработчик события "НачалоВыбора" поля СубконтоКт1
    //
    Процедура ТабличноеПолеДвиженияБУСубконтоКтНачалоВыбора(Элемент, СтандартнаяОбработка)

    ТекущаяСтрока = ЭлементыФормы.Хозрасчетный.ТекущиеДанные;

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

    БухгалтерскийУчет.ОбработатьВыборСубконто(Элемент, СтандартнаяОбработка, ДокументОбъект.Организация, СписокПараметров);

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

    // Процедура - обработчик события "ПриНачалеРедактирования" элемента ТабличноеПолеДвиженияНУ
    //
    Процедура ТабличноеПолеДвиженияНУПриНачалеРедактирования(Элемент, НоваяСтрока, Копирование)

    Строка = Элемент.ТекущиеДанные;

    Строка.Период = ДокументОбъект.Дата;
    Строка.Организация = ДокументОбъект.Организация;

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

    // Процедура - обработчик события "ОбработкаВыбора" поля Счетдт
    //
    Процедура ТабличноеПолеДвиженияНУСчетДтОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка = БухгалтерскийУчет.СчетМожноИспользоватьВПроводках(ВыбранноеЗначение);

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

    // Процедура - обработчик события "ОбработкаВыбора" поля СчетКт
    //
    Процедура ТабличноеПолеДвиженияНУСчетКтОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)

    СтандартнаяОбработка = БухгалтерскийУчет.СчетМожноИспользоватьВПроводках(ВыбранноеЗначение);

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

    Процедура ОткрытьСправкуРегистра(Кнопка)
    ИмяРегистра = ЭлементыФормы.ОсновнаяПанель.ТекущаяСтраница.Имя;
    СтрокаРегистра = Регистры.Найти(ИмяРегистра, "Имя");
    Если НЕ СтрокаРегистра = Неопределено Тогда
    ТипРегистра = СтрокаРегистра.ТипРегистра;
    Если ТипРегистра = "РегистрБухгалтерии" Тогда
    ОткрытьСправку(Метаданные["РегистрыБухгалтерии"][ИмяРегистра]);
    ИначеЕсли ТипРегистра = "РегистрНакопления" Тогда
    ОткрытьСправку(Метаданные["РегистрыНакопления"][ИмяРегистра]);
    ИначеЕсли ТипРегистра = "РегистрСведений" Тогда
    ОткрытьСправку(Метаданные["РегистрыСведений"][ИмяРегистра]);
    ИначеЕсли ТипРегистра = "РегистрРасчета" Тогда
    ОткрытьСправку(Метаданные["РегистрыРасчета"][ИмяРегистра]);
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры

    Процедура ПередОткрытием(Отказ, СтандартнаяОбработка)
    Если ДокументОбъект = Неопределено Тогда
    Отказ = Истина;
    Иначе
    Если НЕ ОбщегоНазначения.ЕстьРеквизитДокумента("РучнаяКорректировка", ДокументОбъект.Метаданные()) Тогда
    РучнаяКорректировка = Ложь;
    Иначе
    РучнаяКорректировка = ДокументОбъект.РучнаяКорректировка;
    КонецЕсли;
    Если НЕ (ДокументОбъект.Проведен ИЛИ РучнаяКорректировка) Тогда
    Предупреждение(НСтр("ru='Документ не проведен. Для получения информации о результатах проведения документ необходимо провести.';uk='Документ не проведений. Для одержання інформації про результати проведення документ необхідно провести.'"));
    Отказ = Истина;
    КонецЕсли;
    КонецЕсли;
    КонецПроцедуры

    Процедура ОсновнаяПанельПриСменеСтраницы(Элемент, ТекущаяСтраница)
    Если НЕ Открытие Тогда
    ЗаполнитьСтраницу(ЭлементыФормы.ОсновнаяПанель.Страницы[ТекущаяСтраница]);
    КонецЕсли;
    КонецПроцедуры

    Процедура КоманднаяПанельХозрасчетныйПоказатьСкрытьДанныеНУ(Кнопка)

    ПоказыватьДанныеНУ = НЕ ПоказыватьДанныеНУ;
    Кнопка.Пометка = ПоказыватьДанныеНУ;
    УстановитьВидимость();

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

    Процедура ПриПовторномОткрытии(СтандартнаяОбработка)

    ПриОткрытии();

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

    Процедура ХозрасчетныйПриПолученииДанных(Элемент, ОформленияСтрок)

    ДатаПроверки = глЗначениеПеременной("ДатаНКУ2015");
    Если ТипЗнч(ДокументОбъект) = Тип("ДокументОбъект.ВводНачальныхОстатков") Тогда
    ДатаПроверки = ДатаПроверки - 86400;
    КонецЕсли;
    Если (ДокументОбъект.Дата < ДатаПроверки) Тогда
    Возврат;
    КонецЕсли;

    Если мСвойстваНалоговыхСчетов = Неопределено Тогда

    ЗапросДанныеСчетов = Новый Запрос;
    ЗапросДанныеСчетов.Текст =
    "ВЫБРАТЬ
    | Хозрасчетный.НалоговыйУчет,
    | Хозрасчетный.УчетСуммНУ,
    | Хозрасчетный.УчетПоНалоговымНазначениямНДС,
    | Хозрасчетный.Ссылка КАК Ссылка
    |ИЗ
    | ПланСчетов.Хозрасчетный КАК Хозрасчетный
    |ГДЕ
    | Хозрасчетный.НалоговыйУчет = ИСТИНА
    |
    |АВТОУПОРЯДОЧИВАНИЕ";

    мСвойстваНалоговыхСчетов = ЗапросДанныеСчетов.Выполнить().Выгрузить();
    мСвойстваНалоговыхСчетов.Индексы.Добавить("Ссылка");
    КонецЕсли;

    ЦветВыделения = ЦветаСтиля.ТекстВторостепеннойНадписи;

    Для Каждого Оформление Из ОформленияСтрок Цикл

    Если ЗначениеЗаполнено(Оформление.ДанныеСтроки.СчетДт) Тогда
    СчетДт = мСвойстваНалоговыхСчетов.Найти(Оформление.ДанныеСтроки.СчетДт,"Ссылка");
    //не нашелся, значит не налоговый
    Если НЕ СчетДт = Неопределено Тогда
    Если НЕ СчетДт.УчетСуммНУ Тогда
    ОформляемаяЯчейка = Оформление.Ячейки.СуммаНУДт;
    ОформляемаяЯчейка.ТолькоПросмотр = Истина;
    Если ЗначениеЗаполнено(Оформление.ДанныеСтроки.СуммаНУДт) Тогда
    ОформляемаяЯчейка.ЦветТекста = ЦветВыделения;
    ОформляемаяЯчейка.Текст = "<"+ОформляемаяЯчейка.Текст+">";
    КонецЕсли;
    КонецЕсли;
    Если НЕ СчетДт.УчетПоНалоговымНазначениямНДС Тогда
    ОформляемаяЯчейка = Оформление.Ячейки.НалоговоеНазначениеДт;
    ОформляемаяЯчейка.ТолькоПросмотр = Истина;
    Если ЗначениеЗаполнено(Оформление.ДанныеСтроки.НалоговоеНазначениеДт) Тогда
    ОформляемаяЯчейка.ЦветТекста = ЦветВыделения;
    ОформляемаяЯчейка.Текст = "<"+ОформляемаяЯчейка.Текст+">";
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;

    Если ЗначениеЗаполнено(Оформление.ДанныеСтроки.СчетКт) Тогда
    СчетКт = мСвойстваНалоговыхСчетов.Найти(Оформление.ДанныеСтроки.СчетКт,"Ссылка");
    //не нашелся, значит не налоговый
    Если НЕ СчетКт = Неопределено Тогда
    Если НЕ СчетКт.УчетСуммНУ Тогда
    ОформляемаяЯчейка = Оформление.Ячейки.СуммаНУКт;
    ОформляемаяЯчейка.ТолькоПросмотр = Истина;
    Если ЗначениеЗаполнено(Оформление.ДанныеСтроки.СуммаНУКт) Тогда
    ОформляемаяЯчейка.ЦветТекста = ЦветВыделения;
    ОформляемаяЯчейка.Текст = "<"+ОформляемаяЯчейка.Текст+">";
    КонецЕсли;
    КонецЕсли;
    Если НЕ СчетКт.УчетПоНалоговымНазначениямНДС Тогда
    ОформляемаяЯчейка = Оформление.Ячейки.НалоговоеНазначениеКт;
    ОформляемаяЯчейка.ТолькоПросмотр = Истина;
    Если ЗначениеЗаполнено(Оформление.ДанныеСтроки.НалоговоеНазначениеКт) Тогда
    ОформляемаяЯчейка.ЦветТекста = ЦветВыделения;
    ОформляемаяЯчейка.Текст = "<"+ОформляемаяЯчейка.Текст+">";
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;
    КонецЕсли;

    КонецЦикла;

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

Вот весь код моей обработки. Я пробовал сделать но выбивает ошибку. Ваш код я закоментировал временно. Что я не так делаю?
---
Не нужно было удалять "РегистрБухгалтерии." И необходимо убедиться, что в переменной КорректировкаДвижений точно находится ссылка на документ.
---
всяравно пишет
{Обработка.КорректировкаДвижений.Форма.ОсновнаяФорма.Форма(29,46)}: Змінна не визначена (Регистратор)
    Запрос.УстановитьПараметр("Регистратор", <<?>>Регистратор);
---
Еще раз. Вам нужно передать в запрос ссылку на документ. Переменная регистратор у вас вообще не определена. Попробуйте написать ДокументОбъект.Ссылка
---
Сделал так и у меня все получилось. Спасиба Вам за терпение :)

```1c
    Процедура ПодсчитатьСуммуДокументов()
    //-------------
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | Хозрасчетный.Регистратор КАК Регистратор,
    | СУММА(Хозрасчетный.Сумма) КАК Сумма
    |ИЗ
    | РегистрБухгалтерии.Хозрасчетный КАК Хозрасчетный
    |ГДЕ
    | Хозрасчетный.Регистратор = &Регистратор
    |
    |СГРУППИРОВАТЬ ПО
    | Хозрасчетный.Регистратор";

    Запрос.УстановитьПараметр("Регистратор", ДокументОбъект.Ссылка);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Если ВыборкаДетальныеЗаписи.Следующий() Тогда
    МояСумма = ВыборкаДетальныеЗаписи.Сумма;
    ЭлементыФормы.ЗагальнаСуммаДокументов.Заголовок = МояСумма;
    КонецЕсли;
    //----------------
    КонецПроцедуры
```