СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Программирование экономических информационных систем

Категория: Информатика

Нажмите, чтобы узнать подробности

Программирование экономических информационных систем лаб4

Просмотр содержимого документа
«Программирование экономических информационных систем»

«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»

(НИУ «БелГУ»)




Институт инженерных технологий и естественных наук





Кафедра прикладной информатики и информационных технологий



Отчет по лабораторной работе №4

Тема работы: Справочники.







студента очного отделения

4 курса 12001504 группы

Марко С. Тангуила


Проверил:

Старший преподаватель

Коваленко Анастасия Николаевна













БЕЛГОРОД, 2018

Создадим новый справочник Единицы измерения, Номенклатура Подсистемы: БухгалтерскийУчет, ОперативныйУчетМатериалов


Рис. 1. справочник Единицы измерения, Номенклатура



Рис. 2. Состав реквизитов справочника Номенклатура






Рис. 3. Процедура обработки заполнения справочника



В режиме 1С:Предприятие откроем справочник Номенклатура, создадим две группы – Товары – флаг Услуги в этой группе не устанавливаем, и Услуги – флаг установлен, рис. 4.


Рис. 4. Две группы в справочнике Номенклатура

































Рис. 5. Параметр ДанныеЗаполнения при создании элемента или группы на верхнем уровне справочника



Рис. 6. Ошибка при попытке создать элемент, у которого нет родителя



Нажав на кнопку Подробно, видим, что ошибка произошла при попытке добавить в структуру новую запись.



Вышеприведенные рассуждения приводят нас к следующему коду:


Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)

Если ДанныеЗаполненияНеопределено Тогда

Если ДанныеЗаполнения.Свойство("Родитель") Тогда

ДанныеЗаполнения.Вставить("Услуга", ДанныеЗаполнения.Родитель.Услуга);

КонецЕсли;

КонецЕсли;

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

В данной редакции обработчика события ОбработкаЗаполнения все работает верно.




Создадим новый справочник, назовем его Контрагенты, ПредставителиКонтрагентов

Добавим его в подсистемы БухгалтерскийУчет и ОперативныйУчетМатериалов.



Рис. 7. Справочник Контрагенты и ПредставителиКонтрагентов


Рис. 8. Настройка подчинения



При создании новой записи о представителе он автоматически будет "привязываться" к тому контрагенту (поле владелец будет заполнено должным образом), из формы элемента которого мы перешли в справочник ПредставителиКонтрагентов. В форме списка справочника будет отображаться ссылка для перехода к форме элемента справочника-владельца, рис. 9.



Рис. 9. Формы списка и элемента справочника ПредставителиКонтрагентов


Рис. 10. Просмотр формы списка справочника ПредставителиКонтрагентов

Рис. 11. Попытка заполнения реквизита Основное контактное лицо



Рис. 12. Окно Связи параметров выбора с настроенным параметром


Добавим в справочник Контрагенты еще один реквизит – ТелефонКонтактногоЛица. Зададим тип – Строкадлина – 100. Этот реквизитсоответствует


Добавим элемент управления для реквизита ТелефонКонтактногоЛица на форму. Откроем форму элемента справочника Контрагенты для редактирования и перетащим реквизит ТелефонКонтактногоЛица с вкладки Реквизиты на вкладку Элементы, рис. 13.


Рис. 13. Реквизит ТелефонКонтактногоЛица нужно переместить со вкладки Реквизиты на вкладку Элементы











После того, как мы получим с сервера сведения о том, работает ли представитель, мы примем решение – выводить ли пользователю сообщение или нет.

Все это реализовано с помощью нижеприведенного кода:


&НаКлиенте

Процедура ОсновноеКонтактноеЛицоПриИзменении(Элемент)

Если НЕ ПроверитьЗаполнениеРеквизита() Тогда

Сообщить("Выбранное контактное лицо, "+Объект.ОсновноеКонтактноеЛицо+", не работает у контрагента.");

КонецЕсли;

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


&НаСервере

Функция ПроверитьЗаполнениеРеквизита()

Возврат (Объект.ОсновноеКонтактноеЛицо.ПредставительРаботает);

КонецФункции


&НаСервере

Процедура УстановитьНомерПредставителя()

Объект.ТелефонКонтактногоЛица=Объект.ОсновноеКонтактноеЛицо.КонтактныеСведения;

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

Рис. 14. Код модуля формы элемента справочника Контрагенты





При выборе "неподходящего" представителя окно элемента справочника Контрагенты примет следующий вид, рис. 25.



Рис. 15. Сообщение о выборе неподходящего контактного лица