Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
12 дек 2024, 22:55

Формула суммы (итогов) в макете документа

Автор Сергей120, 06 апр 2015, 21:24

0 Пользователей и 1 гость просматривают эту тему.

Сергей120

Здравствуйте! Подскажите пожалуйста формулу суммы или итогов в макете документа, чтобы она рассчитывала общую сумму проданных товаров.

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

ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
Шапка = Макет.ПолучитьОбласть("Шапка");
ОбластьТоварШапка = Макет.ПолучитьОбласть("ТоварШапка");
ОбластьТовар = Макет.ПолучитьОбласть("Товар");
Подвал = Макет.ПолучитьОбласть("Подвал");

ТабДок.Очистить();

ВставлятьРазделительСтраниц = Ложь;
Пока Выборка.Следующий() Цикл
Если ВставлятьРазделительСтраниц Тогда
ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;

ТабДок.Вывести(ОбластьЗаголовок);

Шапка.Параметры.Заполнить(Выборка);
ТабДок.Вывести(Шапка, Выборка.Уровень());

ТабДок.Вывести(ОбластьТоварШапка);
ВыборкаТовар = Выборка.Товар.Выбрать();
Пока ВыборкаТовар.Следующий() Цикл
ОбластьТовар.Параметры.Заполнить(ВыборкаТовар);
ТабДок.Вывести(ОбластьТовар, ВыборкаТовар.Уровень());
КонецЦикла;

Подвал.Параметры.Заполнить(Выборка);
ТабДок.Вывести(Подвал);

ВставлятьРазделительСтраниц = Истина;
КонецЦикла;
//}}
КонецПроцедуры

cska-fanat-kz

ВыборкаТовар = Выборка.Товар.Выбрать();
СуммаИтог = 0;
        Пока ВыборкаТовар.Следующий() Цикл
            ОбластьТовар.Параметры.Заполнить(ВыборкаТовар);
            ТабДок.Вывести(ОбластьТовар, ВыборкаТовар.Уровень());
            СуммаИтог = СуммаИтог + ВыборкаТовар.Сумма;
        КонецЦикла;
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Сергей120

спасибо, сейчас попробую!
Добавлено: 07 апр 2015, 16:15


только не разобрался куда именно этот код вставлять и какой параметр в макете писать?

дфтын

Я тоже хотел так написать, но просто подумал,что новые члены форума меня будут обвинять в незнании реляционных баз данных:)
Сергей120, Вставлять в цикл. в макете писать параметр - СуммаИтог , очевидно же

Но а по правильному, ессесно, нужен запрос другой, но это на любителя, да.

cska-fanat-kz

ну можно и через итоги в запросе, но в этом случае группировка с итоговой суммой В НАЧАЛЕ выборки, а так - в конце...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

cska-fanat-kz

Цитата: дфтын от 08 апр 2015, 00:58новые члены форума меня будут обвинять в незнании реляционных баз данных:)

волков бояться - в лес не ходить ;)
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск