Практические работы по 1С для МДК 02.02 Технология разработки и защиты баз данных
учебно-методический материал на тему
Скачать:
Вложение | Размер |
---|---|
administrirovanie_raboty_polzovateley.docx | 83.8 КБ |
lab.rab-1.doc | 1.54 МБ |
lab.rab-2.doc | 744 КБ |
lab.rab-3.doc | 560 КБ |
lab.rab-4.doc | 1.17 МБ |
lab.rab-5.doc | 1.16 МБ |
lab.rab-6.doc | 1.41 МБ |
lab.rab-7.doc | 2.02 МБ |
lab.rab-8.doc | 1.68 МБ |
lab.rab-9.doc | 1.4 МБ |
lab.rab-10.doc | 2.84 МБ |
lab.rab-11.doc | 1.9 МБ |
lab.rab-12.doc | 1.14 МБ |
lab.rab-13.doc | 2.23 МБ |
Предварительный просмотр:
Администрирование работы пользователей
Для того чтобы иметь возможность отличать друг от друга пользователей, работающих с информационной базой, в системе 1С:Предприятие существует режим ведения списка пользователей.
В этом режиме администратор базы имеет возможность создавать и удалять пользователей системы, назначать им интерфейсы и роли и т. д.
Прежде чем мы приступим к созданию списка пользователей, необходимо выполнить обновление конфигурации базы данных, поскольку пользователю можно поставить в соответствие только тот интерфейс и те роли, которые существуют в конфигурации базы данных.
После того как обновление произведено, выполним команду Администрирование Пользователи. Откроется список пользователей системы.
Пока что он пуст, поэтому добавим нового пользователя (Действия Добавить), рис. 14.7.
Рис. 14.7. Окно редактирования пользователя
Имя пользователя – это идентификатор, который будет появляться в окне выбора пользователей при запуске системы в режиме 1С:Предприятие.
Полное имя – строка, которая может быть использована внутри конфигурации при выводе различной справочной информации. Хорошим стилем администрирования считается указание в качестве полного имени фамилии, имени и отчества пользователя (без сокращений).
Следующие две области окна посвящены способам аутентификации пользователя.
Аутентификация средствами 1С:Предприятия подразумевает, что после запуска системы пользователю будет предложено выбрать имя одного из пользователей системы и ввести пароль. Если введенный пароль соответствует сохраненному в системе для этого идентификатора пользователя, система открывается с правами и интерфейсом, которые указаны для этого пользователя. При этом он сможет поменять пароль, если флаг Пользователю запрещено изменять пароль не установлен.
Аутентификация Windows подразумевает, что при запуске системы 1С:Предприятие от пользователя не требуется никакой дополнительной информации. Система 1С:Предприятие определяет, под каким пользователем запущена операционная система Windows (имеет смысл использовать для NT-подобных операционных систем: NT, 2000, XP), и затем обращается к своему списку пользователей. Если она находит в нем пользователя, которому поставлен в соответствие текущий пользователь Windows, система открывается с правами и интерфейсом, указанными для этого пользователя.
Зададим имя пользователя Администратор, полное имя тоже Администратор. Перейдем на закладку Прочие (рис. 14.8).
Рис. 14.8. Закладка Прочие окна редактирования пользователя
Отметим роль Администратор, основным интерфейсом укажем Администратор и язык конфигурации выберем Русский.
После этого создадим остальных пользователей системы (рис. 14.9). Для всех них мы будем использовать аутентификацию Windows и русский язык.
Рис. 14.9. Список пользователей системы
Обратите внимание, что главному бухгалтеру Назаровой поставлены в соответствие две роли: Расчетчик и Бухгалтер, поскольку она должна иметь возможность не только вести бухгалтерский учет, но и рассчитывать зарплату.
Список пользователей, зарегистрированных в системе, можно получить, выполнив команду Действия Вывести список.
Теперь вы можете зайти в нашу информационную базу под различными пользователями и посмотреть, чем отличается внешний вид интерфейса и возможности различных пользователей.
Предварительный просмотр:
Предварительный просмотр:
Лабораторная работа №2
«Создание документов»
Создадим несколько документов, чтобы иметь возможность фиксировать события, происходящие в нашем ООО «На все руки мастер». Одним из самых популярных услуг нашего предприятия является ремонт телевизоров и установка стиральных машин. И в том, и в другом случае требуются некоторые материалы, которые расходуются в процессе оказания этих услуг. Поэтому двумя важнейшими событиями в хозяйственной жизни нашей организации будут являться поступление материалов и оказание услуг. Для отражения этих событий в базе данных мы создадим два документа: «ПриходнаяНакладная» и «ОказаниеУслуги». Документ «ПриходнаяНакладная» будет фиксировать факт поступления в нашу организацию необходимых материалов, а документ «ОказаниеУслуги» будет фиксировать оказание услуг и расход материалов, которые используются при оказании этих услуг.
- Создание документа ПриходнаяНакладная
Создадим новый объект конфигурации Документ. Зададим имя документа – «ПриходнаяНакладная». Нажмем «Далее».
Создадим реквизит документа с именем «Склад» и типом СправочникСсылка.Склады:
После этого добавим табличную часть с именем «Материалы» и создадим у нее четыре реквизита:
- «Материал» с типом СправочникСсылка.Номенклатура;
- «Количество» с типом число, длиной 15, точностью 3, неотрицательное;
- «Цена» с типом число, длиной 15, точностью 2, неотрицательное;
- «Сумма» с типом число, длиной 15, точностью 2, неотрицательное.
Запустим 1С: Предприятие в режиме отладки и протестируем получившийся результат. В открывшемся окне программы выполним команду Операции – Документы…, выберем документ «ПриходнаяНакладная». Система откроет одну из основных форм документа – основную форму списка.
Пока в нашей базе данных нет ни одного документа «ПриходнаяНакладная», поэтому создадим новый документ (создать новый документ можно при помощи пункта меню Действия – Добавить, соответствующей иконки или клавишей «Insert»).
Система автоматически присвоит номер новому документу и нам останется заполнить табличную часть. Заполним ее материалами для ремонта телевизоров так, как показано на рисунке:
Нажмем «ОК».
Аналогичным образом создадим второй документ, который будет приходовать следующие материалы для установки стиральных машин:
Наверняка вы обратили внимание на то, что при заполнении документа приходится вводить сумму в каждой строке. Это неудобно и возникает естественное желание автоматизировать работу документа так, чтобы сумма вычислялась автоматически каждый раз при изменении цены или количества материалов в строке.
Это совсем не сложно и для этого нам потребуется сначала создать собственную форму документа, а затем воспользоваться возможностями встроенного языка.
- Создание формы документа.
Прежде всего, следует заметить, что до сих пор мы использовали предопределенные формы объектов, которые система 1С: Предприятие создавала для нас сама «по умолчанию».
Теперь же у нас возникла необходимость слегка изменить логику работы формы документа, а значит, нам придется создать свою собственную форму документа «ПриходнаяНакладная» для того, чтобы в ней мы могли описать тот алгоритм, который нам нужен.
Вернемся в конфигуратор и откроем окно редактирования объекта конфигурации «ПриходнаяНакладная». В этом окне нас интересует закладка «Формы». Как мы видим, ни одна из основных форм документа пока не задана.
Для того чтобы создать форму документа, нажмем на символ лупы в поле ввода:
Система вызовет еще один полезный инструмент разработчика – конструктор форм. Этот инструмент также построен по принципу «мастеров» - ввод данных в определенной последовательности и передвижение кнопками «Далее» и «Назад».
Сразу нажмем кнопку «Готово», согласившись тем самым со всем, что нам предложила система.
Обратите внимание, что в дереве объектов конфигурации у объекта конфигурации Документ «ПриходнаяНакладная» появилась форма «ФормаДокумента», а на экране открылось окно редактора форм, содержащее эту форму:
Как видите, форма документа «ПриходнаяНакладная» содержит большое количество всевозможных полей. Эти поля называются элементами управления. Они имеют разное назначение и разное поведение, которое соответствует их назначению. Однако все они служат для того, чтобы отображать информацию, хранящуюся в базе данных и организовать интерактивную работу с этой информацией.
Сейчас мы обратим свое внимание только на те элементы управления, которые нас интересуют – это три поля ввода, расположенные в колонках «Количество», «Цена» и «Сумма»:
- Создание процедуры обработки события в модуле формы.
Мы хотим, чтобы каждый раз, когда меняется значение в поле «Количество» или в поле «Цена», в поле «Сумма» автоматически устанавливалось значение равное Количество*Цена. Очевидно, что для этого нужно написать на встроенном языке команду похожую на Сумма=Количество*Цена, которая будет выполняться при изменении значения поля «Количество» или «Цена».
Щелкните правой кнопкой мыши на поле ввода в колонке «Количество» и откройте для него палитру свойств (пункт контекстного меню Свойства). Прокрутите список до конца, и вы обнаружите перечень событий, которые могут быть связаны с этим полем ввода.
С большинством элементов управления связаны различные события, а именно с их помощью разработчик может влиять на ход работы программы.
Среди событий, связанных с полем ввода, найдите событие «При изменении». Это событие возникает после изменения значения поля ввода.
Щелкните по кнопке с лупой в конце поля ввода, и система создаст заготовку процедуры обработчика этого события в модуле нашей формы.
Модуль – это «хранилище» для текста программы на встроенном языке. В конфигурации существует большое количество модулей, которые расположены в различных ее точках. Они могут принадлежать некоторым объектам конфигурации (например, формам), а могут существовать сами по себе (принадлежать всей конфигурации в целом). Текст программы, содержащийся в модулях, будет использоваться платформой в заранее известные моменты работы системы 1С: Предприятие.
В модуль формы добавим текст, расположенный в скрипте. Объясним назначение этих строк.
В первой строке мы обращаемся к программному объекту ЭлементыФормы. Этот объект является коллекцией значений, содержащей все элементы управления, расположенные на нашей форме. Каждый элемент управления формы можно получить, указав его имя в качестве свойства объекта ЭлементыФормы. В данном случае мы обращаемся к элементу управления с именем «Материалы» (ЭлементыФормы.Материалы).
Этот элемент управления отображает строки табличной части нашего документа. Получить ту строку, в которой в настоящее время осуществляется редактирование, можно при помощи свойства программного объекта ТабличноеПоле – ТекущиеДанные. Таким образом, в результате выполнения первой строки переменная СтрокаТабличнойЧасти будет содержать объект ДокументТабличнаяЧастьСтрока.ПриходнаяНакладная.Материалы, в котором находятся редактируемые данные.
Во второй строке вычисляется сумма как произведение количества и цены. Объект ДокументТабличнаяЧастьСтрока.<Имя> позволяет обратиться к данным конкретной колонки, указав имя колонки в качестве свойства объекта (например, СтрокаТабличнойЧасти.Количество).
Теперь посмотрим, как это работает. В окне программы откроем список документов «ПриходнаяНакладная» и откроем любой из двух созданных нами документов. Если теперь мы поменяем количество в любой строке документа, то сумма в строке будет пересчитана автоматически.
Замечательно. Но теперь хотелось бы и для поля «Цена» сделать то же самое. А если заглянуть вперед, то мы увидим, что подобное автоматическое заполнение поля «Сумма» может нам понадобиться и в других документах. Поэтому лучше будет поместить расчет суммы в некотором «общедоступном» месте, чтобы разные документы, имеющие аналогичные реквизиты табличной части, могли использовать этот алгоритм.
- Создание процедуры обработки события в общем модуле.
Для описания таких «общедоступных» мест служат объекты конфигурации Общий модуль, расположенные в ветке Общие – Общие модули. Процедуры и функции, содержащиеся в этих модулях, могут быть доступны для любых объектов конфигурации.
Для того, чтобы алгоритм, выполняемый при обработке события, был доступен для разных документов, мы создадим общий модуль и перенесем в него нашу процедуру расчета суммы. А в документе просто оставим вызовы этой процедуры из общего модуля.
Создадим объект конфигурации Общий модуль в ветке Общие – Общие модули и назовем его «РаботаСДокументами». Он будет содержать следующий текст:
Процедура РассчитатьСумму(СтрокаТабличнойЧасти) Экспорт
СтрокаТабличнойЧасти.Сумма = СтрокаТабличнойЧасти.Количество * СтрокаТабличнойЧасти.Цена;
КонецПроцедуры
Ключевое слово Экспорт в конце оператора «Процедура» как раз указывает на то, что эта процедура может быть доступна из других программных модулей.
Затем в модуле нашей формы изменим текст нашего обработчика:
Процедура МатериалыКоличествоПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы
.ТекущиеДанные;
РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
Таким образом, теперь вместо непосредственного расчета суммы мы будем вызывать процедуру из общего модуля, и передавать ей в качестве параметра нужную нам строку табличной части.
Проверим, как это работает, и убедимся, что ничего не изменилось.
Теперь осталось и для поля «Цена» установить такой же обработчик. Так как однажды мы уже написали в модуле формы нужную нам процедуру, то мы просто могли бы сопоставить ее также и другому событию другого элемента управления, расположенного в форме. Однако стандарты разработки конфигурации фирмы «1С» не допускают такого решения.
Поэтому мы создадим обработчик события «ПриИзменении» для поля ввода, которое расположено в колонке «Цена» и повторим в нем вызов процедуры «РассчитатьСумму» из общего модуля:
Процедура МатериалыЦенаПриИзменении(Элемент)
СтрокаТабличнойЧасти = ЭлементыФормы.Материалы
.ТекущиеДанные;
РассчитатьСумму(СтрокаТабличнойЧасти);
КонецПроцедуры
Запустим 1С: Предприятие в режиме отладки и убедимся, что теперь сумма в строках табличной части документов «ПриходнаяНакладная» пересчитывается как при изменении количества, так и при изменении цены.
- Создание документа ОказаниеУслуги
Теперь мы аналогичным образом создадим второй документ, необходимый нам – «ОказаниеУслуги». Для этого потребуется выполнить следующие действия:
- создать новый объект конфигурации Документ «ОказаниеУслуги» с реквизитами:
- «Склад», тип СправочникСсылка.Склады;
- «Клиент», тип СправочникСсылка.Клиенты;
- «Мастер», тип СправочникСсылка.Сотрудники;
- создать табличную часть этого документа «ПереченьНоменклатуры» с реквизитами:
- «Номенклатура» тип СправочникСсылка.Номенклатура;
- «Количество», тип Число, длина 15, точность 3, неотрицательное;
- «Цена», тип Число, длина 15, точность 2, неотрицательное;
- «Сумма», тип Число, длина 15, точность 2, неотрицательное.
- создать основную форму документа;
- для полей ввода колонок «Количество» и «Цена» создать обработчик события «ПриИзменении», в котором вызывать процедуру «Рассчитать сумму» из общего модуля «РаботаСДокументами».
В результате документ «ОказаниеУслуги» будет выглядеть следующим образом:
После того, как эти действия будут выполнены, запустим 1С: Предприятие в режиме отладки и убедимся, что при вводе цены и количества в табличную часть документа «ОказаниеУслуги» сумма пересчитывается по нашему алгоритму.
Предварительный просмотр:
Лабораторная работа №3
«Создание регистра накопления»
- Создание регистра накопления ОстаткиМатериалов
Посмотрим, как можно использовать регистры накопления в нашем примере. Прежде всего, нас интересует информация о том, сколько и каких материалов есть у нас на складах. Для накопления такой информации мы создадим регистр «ОстаткиМатериалов».
Откроем в конфигураторе нашу учебную конфигурацию и создадим новый объект конфигурации Регистр накопления. Зададим имя регистра – «ОстаткиМатериалов». Нажмем «Далее» и перейдем к созданию структуры регистра.
Создадим измерения регистра:
- «Материал», с типом СправочникСсылка.Номенклатура
- «Склад», с типом СправочникСсылка.Склады
Затем создадим ресурс «Количество» с длиной 15 и точностью 3.
В результате этих действий регистр «ОстаткиМатериалов» должен иметь следующий вид:
Если вы сейчас попытаетесь запустить 1С: Предприятие в режиме отладки, то система выдаст сообщение об ошибке: «Регистр накопления.ОстаткиМатериалов: Н один из документов не является регистратором для регистра». Это сообщение еще раз подтверждает тот факт, что назначение регистра накопления в том, чтобы аккумулировать данные, поставляемые различными документами.
- Создание движений документа ПриходнаяНакладная
Движение документа – это записи в регистрах, которые создаются в процессе проведения документа и отражают изменения, производимые документом. Откроем окно редактирования объекта конфигурации Документ «ПриходнаяНакладная».
Перейдем на закладку «Движения» и в списке регистров конфигурации отметим регистр накопления «ОстаткиМатериалов»:
Обратите внимание, что сразу после отметки выбранного регистра становится доступна кнопка «Конструктор движений». Этим конструктором мы и воспользуемся.
Конструктор устроен просто. В списке «Регистры» перечислены регистры, в которых документ может создавать движения. В нашем случае там пока один регистр «ОстаткиМатериалов».
В списке «Реквизиты документа» должны находиться исходные данные для создания движений. А в таблице «Поле – Выражение» должны быть заданы формулы, по которым будут вычисляться значения измерений и реквизитов регистра при записи движений.
регистр, для которого что записываем в измерения
конструируем движения и откуда берем данные
(приход или расход)
ресурсы регистра
Обратите внимание, что по умолчанию конструктор предполагает нам создавать движения прихода (символ «+» рядом с названием регистра) по регистру «ОстаткиМатериалов». Это нас вполне устраивает, ведь документ «ПриходнаяНакладная» и должен приходовать материалы.
В поле выбора «Табличная часть» выберем табличную часть нашего документа - «Материалы». Список реквизитов документа автоматически заполнится реквизитами нашей табличной части. теперь нажмем «Заполнить выражения».
В нижнем окне сформируется соответствие полей и выражений.
Как видите, конструктор движений установил соответствия подходящим образом: в качестве материала в регистр будет записан материал из табличной части документа, в качестве склада – склад, указанный в шапке документа, а в качестве количества – количество из табличной части документа.
Нажмем «ОК» и посмотрим, какой текст сформировал конструктор в модуле объекта:
Процедура ОбработкаПроведения(Отказ, Режим)
//{{__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
Для Каждого ТекСтрокаМатериалы Из Материалы Цикл
// регистр ОстаткиМатериалов Приход
Движение = Движения.ОстаткиМатериалов.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Склад = Склад;
Движение.Количество = ТекСтрокаМатериалы.Количество;
КонецЦикла;
// записываем движения регистров
Движения.ОстаткиМатериалов.Записать();
//}}__КОНСТРУКТОР_ДВИЖЕНИЙ_РЕГИСТРОВ
КонецПроцедуры
Конструктор создал обработчик события «ОбработкаПроведения» объекта конфигурации Документ и поместил его в модуль объекта.
Внутри обработчика расположен цикл, который предназначен для перебора строк табличной части нашего документа. В цикле обращение к табличной части документа происходит по имени («Материалы»), а строки табличной части документа представляют собой коллекцию значений, для перебора которой можно использовать конструкцию Для каждого …из … цикл.
Объект встроенного языка ДокументОбъект имеет свойство «Движения». Оно возвращает коллекцию наборов записей регистров, которые принадлежат этому документу. К набору записей документа, принадлежащему конкретному регистру, можно обратиться, указав через точку имя этого регистра.
Таким образом, в первой строке тела цикла мы добавляем к набору записей, который создает наш документ в регистре, новую запись и сохраняем ее в переменной «Движение».
Затем мы присваиваем нужные значения всем полям этой записи и после перебора всех строк документа (после завершения циклов) «одним махом» записываем в регистр «ОстаткиМатериалов» весь набор записей движений документа.
Посмотрим, как это работает. Запустим 1С: Предприятие в режиме отладки и откроем одновременно два окна: список документов «ПриходнаяНакладная» и список регистра накопления «ОстаткиМатериалов».
Откроем Приходную накладную №1 и нажмем «ОК». Обратите внимание, что при проведении приходной накладной появляются соответствующие записи в регистрах накопления:
Аналогичные действия проделаем и с документом Приходная накладная №2.
- Создание движений документа ОказаниеУслуги
Теперь мы аналогичным образом создадим движения документа «ОказаниеУслуги». При использовании конструктора будем внимательны и обратим внимание на то, что документ «ОказаниеУслуги» должен расходовать материалы. Поэтому перед тем, как нажать «ОК» убедимся, что выбран правильный тип движения регистров (нам нужен «расход»).
Запустим отладку и создадим документ оказание услуги, который будет расходовать один транзистор Philips за 3 рубля.
Проведем документ оказания услуги и убедимся, что в регистре накопления он создал верные движения.
Сформированные таким образом движения этого документа будут не совсем правильны. Дело в том, что в документе «ОказаниеУслуги», в отличие от документа «ПриходнаяНакладная» могут содержать не только расходуемые материалы, но и услуги. Поэтому в регистр «ОстаткиМатериалов» будут попадать записи и о расходуемых услугах, что не правильно.
Пока мы ничего не будем делать с движениями, которые сформировал конструктор, но как только познакомимся с перечислениями, мы внесем в обработчик проведения необходимые изменения.
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
Предварительный просмотр:
По теме: методические разработки, презентации и конспекты
Методические рекомендации по выполнению курсовых работ по МДК 02.02. Технология разработки и защиты баз данных для специальности 230115 Программирование в компьютерных системах
Методические рекомендации составлены в соответствии с рабочей программой профессионального модуля ПМ 02. «Разработка и администрирование баз данных» МДК 02.02 «Технология разработки и защиты баз данны...
Методические рекомендации к учебной практике МДК 02.02 Технология разработки и защиты баз данных
Методические рекомендации составлены в соответствии с рабочей программой профессионального модуля ПМ.02. «Разработка и администрирование баз данных» разработаны на основе Федерального государственного...
Отчеты к материалам УП по МДК 02.02 Технология разработки и защиты баз данных
Методические рекомендации по выполнению учебной практики по МДК 02.02 Технология разработки и защиты баз данных...
Рабочая программа учебной дисциплины МДК 02.02 «Технология разработки и защиты баз данных»
Рабочая программа учебной дисциплины "Технология разработки и защиты баз данных" является частью основной профессиональной образовательной программы по специальности 09.02.03 «Программирование в...
МЕТОДИЧЕСКИЕ УКАЗАНИЯ по выполнению курсового проекта по МДК 02.02. Технология разработки и защиты баз данных модуля ПМ.02 Разработка и администрирование баз данных
Выполнение курсового проекта имеет цель закрепить и систематизировать знание студентов по междисциплинарному курсу Технология разработки и защиты баз данных; способствовать развитию навыков самостояте...
Методические указания к выполнению лабораторных работ по МДК 02.02 "Технология разработки и защиты баз данных"
Методические указания содержат лабораторные работы по МДК 02.02. Технология разработки и защиты баз данных. Они посвящены выработке у студентов навыков работы с базами данных в том числе:Разработке ба...
Методические указания к практическим работам по МДК 11.01 Технология разработки и защиты баз данных
Методические указания к практическим работам по МДК 11.01 Технология разработки и защиты баз данных...
- Мне нравится (1)