8.х Помогите изучающему

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Rimm2, 13 сен 2009.

  1. TopicStarter Overlay
    Rimm2
    Offline

    Rimm2 Опытный в 1С

    Регистрация:
    10 фев 2008
    Сообщения:
    149
    Симпатии:
    0
    Баллы:
    26
    Ситуация такая. Я изучаю по книжке "Практическое пособие разработчика". Хорошая книга. Показывается, как создаётся документ, всё понятно но, в стандартной конфигурации поле показа общей суммы по документу находится в отдельном поле ввода т.е. ниже табличной части. А в книге нет того как это делается, а описано как сделать эту сумму в подвале табличной части. Меня это несколько напрягает.
    Обьясните пожалуйста как сделать "Всего по документу" под табличной частью. Если не трудно, то с обьяснениями как, что, куда, и откуда берётся.
    Спасибо.

    Вложения:

  2. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Давайте рассмотрим пример, надо рассчитать сумму товаров по табличной части товары. Варисантов выполнения этой операции много, наиболее простой

    Код:
    ТаблицаТоваров = Товары.Выгрузить( ,"Номенклатура, Всего"); - Выгружает табличную часть ТОВАРЫ в таблицу значений, выгружаются колонки Номенклатура и Всего
    
    А теперь выгрузим данные из табличной части услуги

    Код:
    ТаблицаУслуг = Услуги.Выгрузить(, "Номенклатура, Всего") - Выгружает табличную часть УСЛУГИ в таблицу значений, выгружаются колонки Номенклатура и Всего
    
    Рассчитаем итоги по табличным частям ТОВАРЫ и УСЛУГИ

    Код:
    ИтогоНаСумму = ТаблицаТоваров.Итог("Всего") + ТаблицаУслуг.Итог("Всего");
    
    Этот вариант не совсем корректен, т.к. вручную заданы таблицы сбора итогов, на самом деле правильней обойти метаданные табличные части, получить все табличные части, и попытаться найти ключевое поле, Всего, где конечная сумма. Если нашли добавляем его итог к общему итогу, иначе двигаемся далее.
  3. TopicStarter Overlay
    Rimm2
    Offline

    Rimm2 Опытный в 1С

    Регистрация:
    10 фев 2008
    Сообщения:
    149
    Симпатии:
    0
    Баллы:
    26
    Это теперь всё понятно, спасибо, оказывается это очень просто чем я себе представлял. Но ты написал только способы расчётов, а как теперь результат поместить в это поле ввода?
  4. mialord
    Offline

    mialord Модераторы Команда форума Модератор

    Регистрация:
    31 июл 2009
    Сообщения:
    5.398
    Симпатии:
    40
    Баллы:
    54
    Ну, это просто. Смотрите, предлагаю два варинта

    1. Ставим текстовую строку внизу и выводим туда результат итога

    2. Еще проще, отображаем у табличной части подвал и устанавливаем в свойствах флажок "ОтображатьИтогиВподвале", тогда 1С самомстоятельно будет пересчитывать итоги.
  5. TopicStarter Overlay
    Rimm2
    Offline

    Rimm2 Опытный в 1С

    Регистрация:
    10 фев 2008
    Сообщения:
    149
    Симпатии:
    0
    Баллы:
    26
    Дык вы меня не поняли, я какрас второй способ знаю, и он мне ненравится.
    Я хочу вывести итог в отдельное поле ввода. С расчётами этого итога всё понятно, но как теперь сделать чтобы этот итог отображался в этом отдельном поле ввода?
  6. x_under
    Offline

    x_under Модераторы Команда форума Модератор

    Регистрация:
    25 апр 2007
    Сообщения:
    2.576
    Симпатии:
    13
    Баллы:
    29
    Посмотри у формы событие "ОбновлениеОтображения". Туда можно занести твой расчет и заполнение этого поля.

Поделиться этой страницей