
- •Лабораторная работа 10. Документ и регистр сведений
- •10.1. Основные понятия
- •10.2. Изменение настройки регистра сведений "ДанныеОс"
- •10.2.1. Изменение формы списка
- •10.3. Документ "Поступление"
- •10.3.1. Закладка "Основные"
- •10.3.2. Закладка "Данные"
- •10.3.3. Закладка "Нумерация"
- •10.3.7. Самостоятельная работа: закладка "Формы"
- •10.4. Работа с документами из встроенного языка системы
- •10.4.1. Менеджер документа
- •10.4.2. Самостоятельная работа: организация выборки
- •10.4.3. Работа с Документом как с объектом
- •10.5.1. Обработка событий от элементов формы
- •10.5.2. Получение итогов в подвале табличного поля
- •10.5.3. Обработка событий формы
- •10.6.2. Доработка процедуры ОбработкаПроведения(…)
- •10.6.3. Работа с движениями в форме документа
- •10.7. Работа с документом в режиме "1с:Предприятие"
- •10.8. Что мы узнали
- •Лабораторная работа 11(10_2). Отчеты и Запросы
- •11.1. Создание отчета (запроса) "вручную"
- •11.1.2. Особенности создания формы отчета
- •11.1.3. Модуль формы отчета
- •11.1.4. Изменение текста запроса и его выполнение
- •11.1.5. Выборка данных из результата запроса
- •11.2. Вызов отчета из интерфейса конфигурации
- •11.3. Обращение к отчету из встроенного языка системы
- •11.3.1. Модуль отчета
- •11.4. Конструктор выходных форм
10.5.2. Получение итогов в подвале табличного поля
Во время заполнения формы пользователь захочет иметь итоги по колонкам "Количество", "СуммаРуб" и "СуммаУЕ". В этом разделе мы рассмотрим применение метода Итог(…), который есть как у объекта "Табличное поле", так и у объекта типа "Табличная часть". Уточним, что первый из этих объектов относится к интерфейсным, а второй к прикладным объектам.
Среди свойств объекта "Табличное поле" есть свойство "Подвал", установка которого приведет к появлению в табличном поле строки подвала.
Упражнение №10.12. |
||||
Установите для элемента формы "Список" свойство "Подвал":
|
Теперь для каждой отдельной колонки можно указать "что" должно отображаться в подвале.
Упражнение №10.12 (продолжение). |
||||||||||||||||||||
Произведите настройку свойств для колонок табличного поля в соответствии со следующей таблицей:
Проверьте работу формы в режиме "1С:Предприятие". |
10.5.3. Обработка событий формы
К этому моменту у вас уже достаточно опыта, поэтому следующее упражнение предназначено на закрепление материала из предыдущей главы:
Упражнение №10.13. |
Напишите обработку события "При открытии" и проверьте работу формы в режиме "1С:Предприятие". |
Мы можем отобразить в форме некоторую информационную строку в виде объекта типа "Надпись":
Упражнение №10.14. |
||||||||||||
Увеличьте высоту формы и вставьте в форму элемент управления типа "Надпись":
Расположите этот элемент согласно рисунку 10.10. Заполнять эту строку мы будем при обработке события "Обновление отображения", поэтому включите его обработку в свойствах формы.
|
Рис.
10.10. Информационная строка в "подвале"
формы.
Теперь мы можем заполнять заголовок этой надписи при каждом обновлении отображения в форме, реализовав следующий программный код:
//ОбновлениеОтображения() - отображает итоговую строку в // "подвале" формы Процедура ОбновлениеОтображения() ЭлементыФормы.ИнформационнаяСтрока.Заголовок = "Итого: поступило средств на сумму "+ Список.Итог("СуммаРуб")+" руб. "+ "("+Список.Итог("СуммаУЕ")+" УЕ)"; КонецПроцедуры
Упражнение №10.15. |
Наберите текст обработчика ОбновлениеОтображения() и проверьте его работу в режиме "1С:Предприятие".
|
10.6. Обработка проведения документа Последнее, что осталось нам сделать с этим документом - "научить" его формировать движения в регистре сведений. К счастью, в системе имеется специальный Конструктор движений, применение которого мы рассмотрим ниже.
10.6.1. Конструктор движений Для того чтобы вызвать этот конструктор, необходимо на закладке "Движения" окна редактирования документа нажать одноименную кнопку.
После этого Конфигуратор откроет окно конструктора (см. рис. 10.11).
Рис.
10.11. Окно Конструктора движений.
Поскольку наш документ имеет табличную часть, то прежде чем писать выражения для каждого из свойств регистра нужно выбрать в поле "Табличная часть" значение "Список".
Упражнение №10.16. |
Для табличной части "Список", используя мышь, заполните окно Конструктора согласно рисунку 10.12. |
Рис.
10.12. Окно конструктора после завершения
работы.
Сразу после окончания своей работы в Модуле объекта появится процедура (комментарии конструктора выделены другим шрифтом):
Процедура ОбработкаПроведения(Отказ, Режим) //{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ // Данный фрагмент построен конструктором. // При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!! Для Каждого ТекСтрокаСписок Из Список Цикл // регистр ДанныеОС Движение = Движения.ДанныеОС.Добавить(); Движение.Период = Дата; Движение.ОС = ТекСтрокаСписок.ОС_Деталь; Движение.БалансоваяСтоимость = ТекСтрокаСписок.СуммаРуб; Движение.РыночнаяСтоимость = ТекСтрокаСписок.СуммаУЕ; КонецЦикла; // записываем движения регистров Движения.ДанныеОС.Записать(); //}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ КонецПроцедуры
Упражнение №10.16 (продолжение). |
Проверьте проведение документа в режиме "1С:Предприятие". |