Имя: Пароль:
1C
1С v8
Задваивается итог в таблице
0 D1eWiLdeN
 
29.03.19
06:34
Добрый день! Сам в 1С недавно, но по максимуму стараюсь влиться в нее. Подскажите, пожалуйста, в чём ошибка? Почему у меня два "ИТОГО"? Как сделать один общий там? В чём ошибка? https://ibb.co/YjytRxC


// Выводим заголовок многострочной части
        ОбластьШапки = ?(ВыводитьКоды, "ШапкаСКодом", "ШапкаТаблицы4");
        ОбластьМакета = Макет.ПолучитьОбласть(ОбластьШапки);
        ОбластьМакета.Параметры.Заполнить(СведенияОДокументе);
        Если ДополнительнаяКолонкаПечатныхФормДокументов = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Артикул Тогда
            ОбластьМакета.Параметры.ИмяКодАртикул = "Артикул";
        ИначеЕсли ДополнительнаяКолонкаПечатныхФормДокументов = Перечисления.ДополнительнаяКолонкаПечатныхФормДокументов.Код Тогда
            ОбластьМакета.Параметры.ИмяКодАртикул = "Код";
        КонецЕсли;
        ТабличныйДокумент.Вывести(ОбластьМакета);
        
        ОбластьСтроки = ?(ВыводитьКоды, "СтрокаСКодом", "Строка4");
        ОбластьСтроки = Макет.ПолучитьОбласть(ОбластьСтроки);
        
        // Выводим многострочную часть документа
        Для каждого СтрокаТабличнойЧасти Из ТаблицаУслуги Цикл
            
            НомерСтроки = НомерСтроки + 1;
            
            СтруктураПараметры = Новый Структура();
            СтруктураПараметры.Вставить("НомерСтроки",                 НомерСтроки);
            СтруктураПараметры.Вставить("НоменклатураНаименование", СокрЛП(СтрокаТабличнойЧасти.НоменклатураНаименование));
            СтруктураПараметры.Вставить("Товар",                        СокрЛП(СтрокаТабличнойЧасти.НоменклатураНаименование));
            СтруктураПараметры.Вставить("Номенклатура",             СтрокаТабличнойЧасти.Номенклатура);
            СтруктураПараметры.Вставить("Количество",                 СтрокаТабличнойЧасти.Количество);
            СтруктураПараметры.Вставить("ЕдиницаИзмерения",         СтрокаТабличнойЧасти.ЕдиницаИзмеренияНаименование);
            СтруктураПараметры.Вставить("Цена",                        СтрокаТабличнойЧасти.Цена);
            СтруктураПараметры.Вставить("Сумма",                        СтрокаТабличнойЧасти.Сумма);
            СтруктураПараметры.Вставить("СуммаНДС",                        СтрокаТабличнойЧасти.СуммаНДС);
            СтруктураПараметры.Вставить("СуммаСНДС",                        СтрокаТабличнойЧасти.СуммаСНДС);
            
            Если ВыводитьКоды Тогда
                СтруктураПараметры.Вставить("НоменклатураКод",         СтрокаТабличнойЧасти.НоменклатураКод);
                СтруктураПараметры.Вставить("КодАртикул",             СтрокаТабличнойЧасти.НоменклатураКод);
            КонецЕсли;
            
            ОбластьСтроки.Параметры.Заполнить(СтруктураПараметры);
            
            ТабличныйДокумент.Вывести(ОбластьСтроки);
            
        КонецЦикла;
        
        // Выводим подвал документа
        Если ТаблицаУслуги <> Неопределено Тогда
            Сумма    = ТаблицаУслуги.Итог("Сумма");
            СуммаНДС = ТаблицаУслуги.Итог("СуммаНДС");
            СуммаСНДС= ТаблицаУслуги.Итог("СуммаСНДС");
        Иначе
            Сумма    = 0;
            СуммаНДС = 0;
            СуммаСНДС = 0;
        КонецЕсли;

        
        // Выводим подвал документа
        Если ТаблицаУслуги <> Неопределено Тогда
            Сумма    = ТаблицаУслуги.Итог("Сумма");
            СуммаНДС = ТаблицаУслуги.Итог("СуммаНДС");
        Иначе
            Сумма    = 0;
            СуммаНДС = 0;
        КонецЕсли;
1 Рэйв
 
29.03.19
06:37
(0)Возможно строка с итогом входит в область строки?
2 D1eWiLdeN
 
29.03.19
06:53
Да, всё верно. Просто в область запихал) а как сделать теперь отдельно область общий итог? Чтоб он "сумму без ндс", "ндс 20%", "сумма с ндс" обищй был?
3 Рэйв
 
29.03.19
07:04
(2)помести строку итога в подвал, который в конце выводишь
4 D1eWiLdeN
 
29.03.19
07:33
ОбластьМакета = Макет.ПолучитьОбласть("Итого123");
ОбластьМакета.Параметры.Всего = ОбщегоНазначенияБПВызовСервера.ФорматСумм(Сумма);
ОбластьМакета.Параметры.ВсегоНДС = ОбщегоНазначенияБПВызовСервера.ФорматСумм(СуммаНДС);
ОбластьМакета.Параметры.ВсегоСНДС = ОбщегоНазначенияБПВызовСервера.ФорматСумм(СуммаСНДС);
ТабличныйДокумент.Вывести(ОбластьМакета);


Он не видит у меня в самой базе почему-то эту область? как-будто ее вообще нет
5 Рэйв
 
29.03.19
07:35
(4)ну, ты же смотришь на макет, тебе виднее:-)
6 D1eWiLdeN
 
29.03.19
10:08
Спасибо)
Основная теорема систематики: Новые системы плодят новые проблемы.