Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
24 Янв 2017, 08:09
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Проблема с итогами в макете документа.  (Прочитано 519 раз)

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

Оффлайн Лис

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-08
  • Сайт: 
  • Профессия: Программист 1С
Всем доброго времени суток. Столкнулся с одной проблемой по примеру взятой из этой  темы выводил итоги, макет содержит в себе пару табличных частей, так вот первую табличную часть все считает, но когда делаю так же со второй табличной частью то выскакивает ошибка. Буду сильно благодарен если подскажете что деть!

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

ТабДок.Очистить();
ВставлятьРазделительСтраниц = Ложь;
Пока Выборка.Следующий() Цикл
Если ВставлятьРазделительСтраниц Тогда
ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
ТабДок.Вывести(ОбластьЗаголовок);
Шапка.Параметры.Заполнить(Выборка);
ТабДок.Вывести(Шапка, Выборка.Уровень());
ТабДок.Вывести(ОбластьКоровьеМолокоШапка);
ВыборкаКоровьеМолоко = Выборка.КоровьеМолоко.Выбрать();
ФизИтогг = 0; 
БазисИтог = 0;
ФизИтог1 = 0; 
БазисИтог1 = 0;
Пока ВыборкаКоровьеМолоко.Следующий() Цикл
ОбластьКоровьеМолоко.Параметры.Заполнить(ВыборкаКоровьеМолоко);
ТабДок.Вывести(ОбластьКоровьеМолоко, ВыборкаКоровьеМолоко.Уровень());
ФизИтогг = ФизИтогг + ВыборкаКоровьеМолоко.ФизическийВес;
БазисИтог = БазисИтог + ВыборкаКоровьеМолоко.БазисныйВес;
КонецЦикла;
ОбластьИтог.Параметры.ФизИтогг = ФизИтогг;
ОбластьИтог.Параметры.БазисИтог = БазисИтог;
ОбластьИтог.Параметры.ЖирИтог = ОбластьИтог.Параметры.ФизИтогг / ОбластьИтог.Параметры.БазисИтог * 3.4;
ТабДок.Вывести(ОбластьИтог);
ТабДок.Вывести(ОбластьКозьеМолокоШапка);
ВыборкаКозьеМолоко = Выборка.КозьеМолоко.Выбрать();
Пока ВыборкаКозьеМолоко.Следующий() Цикл
ОбластьКозьеМолоко.Параметры.Заполнить(ВыборкаКозьеМолоко);
ТабДок.Вывести(ОбластьКозьеМолоко, ВыборкаКозьеМолоко.Уровень());
ФизИтог1 = ФизИтог1 + ВыборкаКозьеМолоко.ФизВес;
БазисИто1 = БазисИто1 + ВыборкаКозьеМолоко.БазисВес;
КонецЦикла;
ОбластьИтог.Параметры.ФизИтог1 = ФизИтог1;
ОбластьИтог.Параметры.БазисИтог1 = БазисИтог1;
ТабДок.Вывести(ОбластьИтог);
ВставлятьРазделительСтраниц = Истина;
КонецЦикла;
//}}
КонецПроцедуры


Скриншоты вдруг помогут.
http://imgs.su/users/44313/1465345769.png
http://imgs.su/users/44313/1465345797.png
http://imgs.su/users/44313/1465345826.png
http://imgs.su/users/44313/1465345849.png

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>


Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
В приведенном коде нет такой строки с ошибкой как на скрине. Скорее всего не обновили конфигурацию базы данных.

Оффлайн Тём

  • *
  • Сообщений: 19
  • РЕПУТАЦИЯ: 2
  • КПД: 11%
  • Регистрация: 2016-06-07
  • Сайт: 
Посмотрите внимательнее на область "Область2", в ней есть параметры "ФизИтог1" и "БазисИтог1". В программе идет обращение к параметру "ФизИтогг" которого нет.

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

    ТабДок.Очистить();
    ВставлятьРазделительСтраниц = Ложь;
    Пока Выборка.Следующий() Цикл
        Если ВставлятьРазделительСтраниц Тогда
            ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
        КонецЕсли;
        ТабДок.Вывести(ОбластьЗаголовок);
        Шапка.Параметры.Заполнить(Выборка);
        ТабДок.Вывести(Шапка, Выборка.Уровень());
        ТабДок.Вывести(ОбластьКоровьеМолокоШапка);
        ВыборкаКоровьеМолоко = Выборка.КоровьеМолоко.Выбрать();
        ФизИтогг = 0; 
        БазисИтог = 0;
        ФизИтог1 = 0; 
        БазисИтог1 = 0;
        Пока ВыборкаКоровьеМолоко.Следующий() Цикл
            ОбластьКоровьеМолоко.Параметры.Заполнить(ВыборкаКоровьеМолоко);
            ТабДок.Вывести(ОбластьКоровьеМолоко, ВыборкаКоровьеМолоко.Уровень());
            ФизИтогг = ФизИтогг + ВыборкаКоровьеМолоко.ФизическийВес;
            БазисИтог = БазисИтог + ВыборкаКоровьеМолоко.БазисныйВес;
        КонецЦикла;
ОбластьИтог.Параметры.ФизИтогг = ФизИтогг; // <===== Здесь ошибка
ОбластьИтог.Параметры.БазисИтог = БазисИтог; // <===== Этого тоже нет
ОбластьИтог.Параметры.ЖирИтог = ОбластьИтог.Параметры.ФизИтогг  ОбластьИтог.Параметры.БазисИтог * 3.4;
ТабДок.Вывести(ОбластьИтог);
        ТабДок.Вывести(ОбластьКозьеМолокоШапка);
        ВыборкаКозьеМолоко = Выборка.КозьеМолоко.Выбрать();
        Пока ВыборкаКозьеМолоко.Следующий() Цикл
            ОбластьКозьеМолоко.Параметры.Заполнить(ВыборкаКозьеМолоко);
            ТабДок.Вывести(ОбластьКозьеМолоко, ВыборкаКозьеМолоко.Уровень());
            ФизИтог1 = ФизИтог1 + ВыборкаКозьеМолоко.ФизВес;
            БазисИто1 = БазисИто1 + ВыборкаКозьеМолоко.БазисВес;
        КонецЦикла;
ОбластьИтог.Параметры.ФизИтог1 = ФизИтог1;
ОбластьИтог.Параметры.БазисИтог1 = БазисИтог1;
ТабДок.Вывести(ОбластьИтог);
        ВставлятьРазделительСтраниц = Истина;
    КонецЦикла;
    //}}
КонецПроцедуры

Скорее всего вы перепутали и обращаетесь не к той области))

Оффлайн Лис

  • *
  • Сообщений: 4
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2016-06-08
  • Сайт: 
  • Профессия: Программист 1С
Всем большое спасибо!
Ошибку провоцировало то что было неправильное обращения к областям, а точнее обращаясь к "Область1" и "Область2" изменив значения все заработало.
ОбластьИтог = Макет.ПолучитьОбласть("Область1");
ОбластьИтог1 = Макет.ПолучитьОбласть("Область2");
---------------------------------
Есть один вопрос, если кто знает в параметре ЖирИтог присутствует  деление и умножение и в результате отображается целое число и длинная дробь, так вот вопрос можно ли округлить результат? Например у меня в результате вышло 3.8372392489234798, а мне нужно округлить до 3.8
Опять же буду сильно благодарен и да я не очень хорошо знаю с1 и я студент =)

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С


 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 3119
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 12694
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 2605
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 4849
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984
"Не совпадают сумма документа и общая сумма по платежным ведомостям"

Автор yunovoРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 2916
Последний ответ 11 Янв 2015, 02:55
от MuI_I_Ika

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
166 Сообщений
alex0402
56 Сообщений
MuI_I_Ika MuI_I_Ika
49 Сообщений
crow1983
35 Сообщений
LexaK
32 Сообщений
alexandr_ll
28 Сообщений
sertak sertak
25 Сообщений
Vzonder
21 Сообщений
BuhRust
17 Сообщений
дфтын дфтын
17 Сообщений

* Кто онлайн

  • Точка Гостей: 465
  • Точка Скрытых: 0
  • Точка Пользователей: 5
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 

Dellos Catering - выездной ресторан кейтеринг по всему Миру
SimplePortal 2.3.5 © 2008-2012, SimplePortal