Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 1831

.pdf
Скачиваний:
6
Добавлен:
30.04.2022
Размер:
2.36 Mб
Скачать

Рис. 29. Создание нового документа «Приходная накладная № 2»

В форме списка на рис. 30 представлены два документа, отмеченных пиктограммой, указывающей на то, что документы проведены (зеленая галочка в пиктограмме документа).

Рис. 30. Список приходных накладных

8. Создать форму документа. В режиме Конфигуратор открыть окно редактирования объекта Документ ПриходнаяНакладная. На закладке Формы нажать кнопку открытия со значком лупы в поле ввода или кнопку Добавить над списком форм (рис. 31).

Рис. 31. Создание формы документа

21

9. Вывести на экран его диалоговую форму (рис. 32) с помощью редактора форм.

Рис. 32. Вид диалога «Приходной накладной» в процессе настройки

10. Организовать автоматический подсчет поля Сумма при изменении полей Количество или Цена. Для этого необходимо дважды щелкнуть на элементе формы МатериалыКоличество или правой кнопкой мыши открыть для него палитру свойств (пункт контекстного меню Свойства) (рис. 33). Прокрутив список до конца, найти событие ПриИзменении, которое возникает после изменения значения

поля. Нажать кнопку в поле ввода, система предложит окно для выбора типа обработчика события, который необходимо создать. Нужно выбрать «Создать на клиенте» и нажать «ОК».

После этого система создаст шаблон процедуры обработчика этого события в модуле нашей формы и откроет закладку Модуль редактора формы (рис. 33).

Рис. 33. Создание обработчика события «ПриИзменении»

Модуль – это «хранилище» для текста программы на встроенном языке. Модулей существует несколько, и каждый из них предназначен для описания алгоритмов, относящихся к тому или иному моменту работы программы. В данном

22

случае это модуль формы, так как обработчики всех интерактивных событий, связанных с элементами формы, помещаются именно в модуль формы.

Рис. 34. Шаблон обработчика события «ПриИзменении»поля табличной части «Количество»

11. В модуль формы, в процедуру МатериалыКоличествоПриИзменении() добавить следующий текст (листинг 1).

Листинг 1.Процедура «МатериалыКоличествоПриИзменении()»

СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные; СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;

В первой строке мы сначала создаем переменную СтрокаТабличнойЧасти, в которую будет помещен объект, содержащий данные, находящиеся в строке табличной части, которую нам нужно пересчитать.

12.Под табличной частью добавлено воле ввода, содержащее заголовок текста Итого по документу: и путь к данным «Объект.Материалы.ИтогСумма» (в правом верхнем окне выделен реквизит ИтогСумма табличной части Материалы Объекта и при помощи мыши перенесен в левое верхнее окно, заголовок поля изменен на Итого по документу:, путь к данным изменяется автоматически при переносе).

13.Запустить «1С:Предприятие» и протестировать получившийся документ.

14.Перейти в режим конфигуратора, создать общий модуль для автоматического заполнения поля Сумма для использования в других документах. Перенести

внего процедуру расчета суммы, в документе оставить вызовы этой процедуры из общего модуля.

В дереве конфигурации раскрыть ветвь Общие и добавить общий модуль с именем РаботаСДокументами и установим в его свойствах флажок Клиент (управляемое приложение), а флажок Сервер снимем. Это означает, что экземпляры этого модуля будут скомпилированы в контексте тонкого клиента и в контексте веб-клиента (рис. 35).

23

Рис. 35. Свойства общего модуля Внесем в модуль следующий текст (листинг 2).

Листинг 2. Процедура «РассчитатьСумму()»

Процедура РассчитатьСумму(СтрокаТабличнойЧасти) Экспорт СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена; КонецПроцедуры

Ключевое слово Экспорт в заголовке процедуры указывает на то, что эта процедура может быть доступна из других программных модулей.

15. Теперь в модуле нашей формы изменим текст обработчика МатериалыКоличествоПриИзменении (листинг 3).

Листинг 3. Процедура «МатериалыКоличествоПриИзменении()»

&НаКлиенте Процедура МатериалыКоличествоПриИзменении(Элемент)

СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные; РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти);

КонецПроцедуры

16. Создать обработчик события ПриИзменении для поля табличной части МатериалыЦена так же, как мы делали это для поля МатериалыКоличество, и повторить в нем вызов процедуры РассчитатьСумму из общего модуля (листинг 4).

Листинг 4. Процедура «МатериалыЦенаПриИзменении()»

&НаКлиенте Процедура МатериалыЦенаПриИзменении(Элемент)

СтрокаТабличнойЧасти = Элементы.Материалы.ТекущиеДанные; РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти); КонецПроцедуры

17. Запустить «1С:Предприятие» и убедиться, что теперь сумма в строках табличной части документов ПриходнаяНакладная пересчитывается как при изменении количества, так и при изменении цены.

24

3.4. ДОКУМЕНТ ОКАЗАНИЕ УСЛУГ

1.Добавить новый объект конфигурации Документ и назвать его ОказаниеУслуги. Представление списка зададим как Оказание услуг.

2.На закладке Данные создать реквизиты документа:

Склад, тип СправочникСсылка.Склады. Выбрать для свойства Значение заполнения предопределенный элемент Основной справочника Склады;

Клиент, тип СправочникСсылка.Клиенты. Установить свойство Проверка заполнения в значение Выдавать ошибку;

Мастер, тип СправочникСсылка.Сотрудники. Установить свойство Проверка заполнения в значение Выдавать ошибку.

3.Создать табличную часть этого документа ПереченьНоменклатуры с реквизитами:

Номенклатура, тип СправочникСсылка.Номенклатура; Количество, тип Число, длина 15, точность 3, неотрицательное; Цена, тип Число, длина 15, точность 2, неотрицательное, Сумма, тип Число, длина 15, точность 2, неотрицательное.

Установить для табличной части в целом и для каждого ее реквизита свойство Проверка заполнения в значение Выдавать ошибку.

4.На закладке Формы создать основную форму документа.

Для поля ПереченьНоменклатурыКоличество создать обработчик события ПриИзменении (выполняющийся на клиенте), в котором будем вызывать процедуру РассчитатьСумму из общего модуля РаботаСДокументами.

При этом откроется модуль формы с шаблоном обработчика события ПереченьНоменклатурыКоличествоПриИзменении, который заполнять не будем, а перейдем в окно элементов формы на закладку Форма и аналогичным образом создадим обработчик события ПереченьНоменклатурыЦенаПриИзменении для поля ПереченьНоменклатурыЦена.

Далее модуль формы документа ОказаниеУслуги нужно заполнить следующим образом (листинг 5).

Листинг 5. Модуль формы документа «ОказаниеУслуги» &НаКлиенте

Процедура ПереченьНоменклатурыКоличествоПриИзменении(Элемент) СтрокаТабличнойЧасти = Элементы.ПереченьНоменклатуры.ТекущиеДанные; РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти); КонецПроцедуры &НаКлиенте

Процедура ПереченьНоменклатурыЦенаПриИзменении(Элемент) СтрокаТабличнойЧасти = Элементы.ПереченьНоменклатуры.ТекущиеДанные; РаботаСДокументами.РассчитатьСумму(СтрокаТабличнойЧасти); КонецПроцедуры

25

4. В результате наших действий в дереве объектов конфигурации документ ОказаниеУслуги будет выглядеть следующим образом (рис. 36).

Рис. 36. Документ «ОказаниеУслуги» в дереве объектов конфигурации

5.Под табличной частью добавлено воле ввода, содержащее заголовок текста

Итого по документу: и путь к данным «Объект.Материалы.ИтогСумма» (в правом верхнем окне выделен реквизит ИтогСумма табличной части Материалы Объекта и при помощи мыши перенесен в левое верхнее окно, заголовок поля изменен на Итого по документу:, путь к данным изменяется автоматически при переносе).

6.Запустить «1С:Предприятие». В разделе Оказание услуг выполнить команду создания документа Оказание услуги из подменю Создать и заполнить его следующим образом (рис. 37).

Рис. 37. Создание документа «Оказание услуги № 1»

Внимание! Проверить подстановку по умолчанию значения Основной для склада, а для полей Мастер и Клиент выполняется ли проверка заполнения. При вводе цены и количества в табличную часть документа Оказание услуги проверить, выполняется ли пересчет суммы по алгоритму.

Контрольные вопросы.

1.Для чего предназначен объект конфигурации «Документ»?

2.Какими характерными особенностями обладает документ?

26

3.Для чего предназначены реквизиты и табличные части документа?

4.Какие существуют основные формы документа?

5.Что такое проведение документа?

6.Как создать объект конфигурации «Документ» и описать его основную структуру?

7.Как создать новый документ и заполнить его данными?

8.Как создать собственную форму документа?

9.Что такое конструктор форм?

10.Что такое редактор форм? 11.Что такое элементы формы?

12.Что такое события, и с чем они связаны?

13.Что такое обработчик события, и как его создать? 14.Что такое модуль, и для чего он нужен? 15.Зачем нужны общие модули?

16. Что такое типообразующие объекты?

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1.Яскевич О.Г. Конфигурирование в системе 1С:Предприятие 8.1. / О.Г. Яскевич. - Воронеж: ВГТУ, 2011. – 131 с.

2.Кашаев С.М. 1C:Предприятие 8.1. Разработка прикладных решений / С.М. Кашаев. - М.: ООО «И.Д. Вильямс», 2009. – 368 с.

3.Радченко М.Г. 1С:Предприятие 8.3. Практическое пособие разработчика. Примеры и типовые приемы / М.Г. Радченко, Е.Ю. Хрусталева. – М.: ООО«1СПаблишинг» , 2013. – 964 с.

4.1С:Предприятие 8.3. Руководство разработчика. В двух частях. Часть 2 – М.: ООО «1С-Паблишинг», 2015. – 672 с.

5.Официальный сайт фирмы «1С» [Электронный ресурс]: Режим доступа: World Wide Web. URL : http:// www.1c.ru.

27

ОГЛАВЛЕНИЕ

 

ЛАБОРАТОРНАЯ РАБОТА № 1 СОЗДАНИЕ КОНФИГУРАЦИИ..............................................

3

В СИСТЕМЕ 1С:ПРЕДПРИЯТИЕ 8.3................................................................................................

3

1.1. ЦЕЛЬ РАБОТЫ..............................................................................................................................

3

1.2. КОММЕНТАРИИ К ВЫПОЛНЕНИЮ РАБОТЫ......................................................................

3

1.3. СОДЕРЖАНИЕ И ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.......................................................

3

ЛАБОРАТОРНАЯ РАБОТА № 2 СОЗДАНИЕ ОБЪЕКТОВ КОНФИГУРАЦИИ.........................

8

2.1. ЦЕЛЬ РАБОТЫ..............................................................................................................................

8

2.2. КОММЕНТАРИИ КВЫПОЛНЕНИЮ РАБОТЫ .....................................................................

8

ЛАБОРАТОРНАЯ РАБОТА № 3 СОЗДАНИЕ ДОКУМЕНТОВ ..................................................

17

3.1. ЦЕЛЬ РАБОТЫ............................................................................................................................

17

3.2. КОММЕНТАРИИ К ВЫПОЛНЕНИЮ РАБОТЫ ...................................................................

17

3.3 ДОКУМЕНТ ПРИХОДНАЯ НАКЛАДНАЯ .............................................................................

18

3.4 ДОКУМЕНТ ОКАЗАНИЕ УСЛУГ.............................................................................................

25

Библиографический список………………………………………………………………………...27

РАЗРАБОТКА КОНФИГУРАЦИИ СИСТЕМЫ 1С: ПРЕДПРИЯТИЕ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к выполнению лабораторных работ №1-3 по дисциплине «Программирование в среде 1С»

09.03.01 «Информатика и вычислительная техника» (профиль «Вычислительные машины, комплексы, системы и сети»)

очной и заочной формы обучения

Составители: Гребенникова Наталия Ивановна Нужный Александр Михайлович

Барабанов Александр Владимирович

В авторской редакции

Подписано к изданию 10.02.2022. Уч.-изд. л. 1,75.

ФГБОУ ВО «Воронежский государственный технический

университет»

394026 Воронеж, ул. 20-летия Октября, 84

28