
- •2.3 Лабораторная работа № 3. Документы
- •2.3.1 Теоретические сведения
- •2.3.1.1 Проведение документа
- •2.3.1.2 Создание документа
- •2.3.1.3 Создание формы документа
- •2.3.1.4 Создание процедуры обработки события в модуле формы
- •2.3.1.5 Создание процедуры обработки события в общем модуле
- •2.3.1.6 Усовершенствование формы документа
- •2.3.1.7 Ввод документов на основании
- •2.3.2 Задание на лабораторную работу
- •2.3.3 Контрольные вопросы.
2.3.1.7 Ввод документов на основании
Одним из режимов ввода новых документов в процессе работы пользователя с системой является режим ввода «на основании». С точки зрения пользователя режим ввода «на основании» позволяет вводить документы, заполняя их реквизиты из других объектов информационной базы. (Можно ввести документ одного вида на основании данных из документа другого вида и т. п.).
Механизм ввода на основании может быть использован для ввода новых объектов различного типа (документы, справочники, планы видов характеристик и т.д.). Мы рассмотрим этот механизм на примере ввода новых документов, как наиболее распространенном.
Для каждого объекта конфигурации Документ можно разрешить его ввод на основании других объектов базы данных и возможность являться основанием для других объектов. Действия по заполнению реквизитов при вводе на основании должны быть описаны в модуле объекта Документ, в обработчике события «Обработка заполнения». Есть возможность использовать конструктор ввода на основании, который позволяет визуальными средствами конструировать текст обработчика.
Познакомимся
с данным механизмом на примере «заведения»
документа «Доверенность» на основании
документа «Счет». Откроем документ
«Доверенность» и перейдем на вкладку
«Ввод на основании». В списке «Вводится
на основании» надо щелкнуть по кнопке
«Редактировать элемент списка», в ответ
откроется диалог «Выбор объекта», в
котором надо поставить флажок напротив
документа «Счет» и щелкнуть на [ОК].
Рис. 26 Выбор объекта - основания
Рис. 27
В
ответ выбранный документ появится в
списке формы. После этого надо вызвать
конструктор ввода на основании щелчком
по кнопке
,
в ответ откроется его диалог, в котором
надо щелкнуть по кнопке [Заполнить
выражения]. После щелчка по кнопке [ОК]
откроется текстовый редактор с процедурой
«ОбработкаЗаполнения()» в модуле объекта.
Рис. 28
Рис. 29
Перейдем
в пользовательский режим, создадим там
новый документ «Счет», запишем его, а
затем на панели инструментов щелкнем
по кнопке
«Ввести на основании», в появившемся
списке выберем тип документа «Доверенность»,
и в ответ откроется форма документа
доверенность с уже заполненными
реквизитами.
Второй способ использования ввода на основании заключается в заполнении реквизитами вновь создаваемого документа «Доверенность» по выбранному документу – основанию «Счет». Для этого в форме документа необходимо задать обработчик «Обработка выбора» поля ввода «ДокументОснование», скопировав туда тело процедуры «ОбработкаЗаполнения».
Рис. 30 Задание обработчика «ОбработкаВыбора»
Рис. 31 Текст обработчика «ОбрвботкаВыбора »
Запустите 1С:Предприятие в режиме отладки и проверьте работу ввода на основании. Обратите внимание, что в командной панели формы списка документа «Счет» появилась кнопка «Ввести на основании»:
2.3.2 Задание на лабораторную работу
1. Создать перечисление «ВидыОплаты» с элементами: «Наличный», «Безналичный», «Взаиморасчет».
2. Создать новые типы документов и формы ввода для них:
ПРИХОДНАЯНАКЛАДНАЯ с реквизитами:
Наименование
Тип элемента шапки
Тип элемента табличной части
Длина
Дробь
Склад
СправочникСсылка.Склады
Поставщик
СправочникСсылка.Контрагенты
РасчетныйСчет
СправочникСсылка.РасчетныеСчета
ВидОплаты
Перечисление.ВидыОплаты
СуммаДокумента
Число
15
2
Материалы
Табличная Часть
Материал
СправочникСсылка.Номенклатура
Цена
Число
15
2
Количество
Число
15
3
Сумма
Число
15
2
ОКАЗАНИЕУСЛУГИ с реквизитами:
Наименование
Тип элемента шапки
Тип элемента табличной части
Длина
Дробь
Склад
СправочникСсылка.Склады
Мастер
СправочникСсылка.Сотрудники
Клиент
СправочникСсылка.Клиенты
ВидОплаты
Перечисление.ВидыОплаты
СуммаДокумента
Число
15
2
ПереченьНоменклатуры
Табличная Часть
Номенклатура
СправочникСсылка.Номенклатура
Цена
Число
15
2
Количество
Число
15
3
Сумма
Число
15
2
Услуги
Табличная Часть
Услуга
СправочникСсылка.Номенклатура
Сумма
Число
15
2
РАСХОДНАЯНАКЛАДНАЯ с реквизитами:
Наименование
Тип элемента шапки
Тип элемента табличной части
Длина
Дробь
Склад
СправочникСсылка.Склады
ДокументОснование
ДокументСсылка
Контрагент
СправочникСсылка.Клиенты
ВидОплаты
Перечисление.ВидыОплаты
СуммаДокумента
Число
15
2
Материалы
Табличная Часть
Материал
СправочникСсылка.Номенклатура
Цена
Число
15
2
Количество
Число
15
3
Сумма
Число
15
2
СЧЕТ с реквизитами:
Наименование
Тип элемента шапки
Тип элемента табличной части
Длина
Дробь
Склад
СправочникСсылка.Склады
Контрагент
СправочникСсылка.Клиенты
СуммаДокумента
Число
15
2
Материалы
Табличная Часть
Материал
СправочникСсылка.Номенклатура
Цена
Число
15
2
Количество
Число
15
3
Сумма
Число
15
2
ДОВЕРЕННОСТЬ с реквизитами:
Наименование
Тип элемента шапки
Тип элемента табличной части
Длина
Дробь
Склад
СправочникСсылка.Склады
ДокументОснование
ДокументСсылка
Контрагент
СправочникСсылка.Клиенты
ФИО
Строка
50
ВидОплаты
Перечисление.ВидыОплаты
СуммаДокумента
Число
15
2
Материалы
Табличная Часть
Материал
СправочникСсылка.Номенклатура
Цена
Число
15
2
Количество
Число
15
3
Сумма
Число
15
2
ПРИХОДНЫЙКАССОВЫЙ ОРДЕР с реквизитами:
Наименование
Тип элемента шапки
Тип элемента табличной части
Длина
Дробь
КонтактноеЛицо
СправочникСсылка
ДокументОснование
ДокументСсылка
СуммаОплаты
Число
15
2
РАСХОДНЫЙКАССОВЫЙ ОРДЕР с реквизитами:
Наименование |
Тип элемента шапки |
Тип элемента табличной части |
Длина |
Дробь |
КонтактноеЛицо |
СправочникСсылка |
|
|
|
ДокументОснование |
ДокументСсылка |
|
|
|
СуммаОплаты |
Число |
|
15 |
2 |
3. Настроить ввод на основании:
РасходнаяНакладная на основе Счета;
Доверенность на основе Счета;
ПриходныйКассовыйОрдер на основе РасходнойНакладной, ОказанияУслуг;
РасходныйКассовыйОрдер на основе ПриходнойНакладной.
4. В документах предусмотреть автоматическое заполнение колонки «Стоимость» на основе значений колонок «Цена» и «Количество», реквизита «СуммаДокумента» как суммарного значения колонки «Стоимость».
5. Продемонстрировать работающую конфигурацию.