Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика»





НазваниеМетодические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика»
страница4/9
Дата публикации24.03.2015
Размер1.36 Mb.
ТипМетодические указания
100-bal.ru > Информатика > Методические указания
1   2   3   4   5   6   7   8   9

Лабораторная работа № 4. Создание связей между приложениями



Задачи:

  1. Изменить поля на странице Создать/Редактировать Работника так, чтобы они отображали выпадающие списки выбора (selection lists).

  2. Добавить на Главной странице ссылку на страницу отчета Работники.

  3. Соединить отчеты Работники и Подразделения.




  1. Создание и использование выпадающих списков выбора

Создание выпадающих списков выбора производится в два этапа: вначале создаются списки значений (Lists of Values - LOV) для каждого уникального поля; затем поле изменяется так, чтобы оно могло отображать выпадающий список.

Для решения задачи потребуется таблица JOBS вида:


JOB_ID

JOB_TITLE

1

управляющий

2

директор

3

уборщик

4

секретарь

5

программист

6

стажёр


Создайте эту таблицу (первичный ключ – JOB_ID) (можно использовать данные из таблицы).




    1. Создание списков значений

  1. Откройте свое приложение в Application Builder для редактирования.

  2. Щелкните по иконке Shared Components.

  3. На странице Shared Components в секции User Interface щелкните по ссылке Lists of Values.

  4. Создайте список значений для должностей (JOBS):

    1. На странице Lists of Values щелкните по кнопке Create >.

    2. На шаге Source выберите From Scratch («с нуля»), нажмите Next>.

    3. На шаге Name and Type в поле Name введите JOBS, а в Type выберите Dinamic. Нажмите Next>.

    4. На шаге Query or Static Values замените текст запроса на следующий1:

SELECT job_title d, job_id v

FROM jobs

ORDER BY d

Обратите внимание на подсказку, содержащуюся в названии поля:

«Query (SELECT DISPLAY_VALUE, RETURN_VALUE FROM...):»

Это означает, что важен порядок, в котором возвращаются значения. В первом столбце должно возвращаться отображаемое значение (которое будет видеть пользователь), а во втором – собственно значение, которое будет вставлено в поле таблицы.

    1. Щелкните по кнопке Create List of Values. Созданный список значений отобразится на странице Lists of Values.

  1. Создайте список значений для работников (EMPLOYEES):

    1. На странице Lists of Values щелкните по кнопке Create >.

    2. На шаге Source выберите From Scratch. Нажмите Next>.

    3. На шаге Name and Type в поле Name введите EMPLOYEES, а в Type выберите Dinamic. Нажмите Next>.

    4. На шаге Query or Static Values замените текст запроса на следующий:

SELECT first_name ||' '|| last_name d, employee_id v

FROM employees

ORDER BY last_name

Обратите внимание на то, что значения в первом столбце представляют собой имя и фамилию работника, разделенные пробелом.

    1. Щелкните по кнопке Create List of Values. Созданный список значений отобразится на странице Lists of Values.

  1. Подобным образом создайте список значений для подразделений (DEPARTMENTS). Значения должны выбираться из таблицы DEPARTMENTS. Роль отображаемого значения должны играть значения столбца department_name, а роль возвращаемого значения – значения столбца department_id.




    1. Связывание элементов со списками значений

После создания списков значений необходимо настроить визуальные элементы (items) таким образом, чтобы они отображались как выпадающие списки выбора (select lists). По умолчанию визуальные элементы отображаются в виде текстовых полей.

  1. Откройте окно редактирования для страницы Создать/Редактировать Работника.

  2. В разделе Page Rendering найдите секцию Items, подчиненную пункту Создать/Редактировать Работника. В этой секции отображается список всех визуальных элементов страницы.

  3. Чтобы отредактировать визуальный элемент, отображающий должность (P?_JOB_ID):

    1. В секции Items щелкните по ссылке P?_JOB_ID. Отобразится страница редактирования элемента.

    2. В секции Identification выберите Select List в поле Display As.

    3. В секции Label измените значение в поле Label на Должность.

    4. В секции List of Values в поле Named LOV выберите JOBS.

    5. Примените изменения.

  4. Аналогично отредактируйте элемент, отображающий подразделение (P?_DEPARTMENT_ID). В качестве названия элемента должно отображаться Подразделение, для неопределенных значений должно отображаться -нет подразделения-. Для этого в поле Display Null Value выберите Yes (отображать неопределенные значения), а в поле Null display value введите
    -нет подразделения-. В качестве списка значений выберите DEPARTMENTS.

  5. Запустите страницу. Обратите внимание, что поля Должность и Подразделение теперь отображаются как выпадающие списки:




  1. Отредактируйте оставшиеся элементы формы так, чтобы для них отображались русскоязычные названия (замените значения в поле Label для каждого элемента на русскоязычное название):



Если сейчас запустить приложение, то можно обнаружить, что нет возможности просмотреть отчет о работниках, т.к. на Главной странице нет никакой ссылки на страницу Работники. На самом деле, перейти к любой странице можно, введя ее полный адрес в адресной строке браузера, например, адрес Главной страницы может выглядеть следующим образом: https://apex.oracle.com/pls/apex/f?p=58430:1:10680797661828. В этой ссылке особый интерес представляет строка f?p=58430:1:10680797661828, в которой 58430 – это уникальный идентификатор приложения в APEX, 1 – это номер страницы в приложении, а 10680797661828 – идентификатор сессии, автоматически генерируемый APEX. Заменив номер страницы в ссылке, можно перейти к соответствующей странице.

  1. Добавление на Главной странице ссылки на отчет Работники

  1. Откройте свое приложение в Application Builder для редактирования.

  2. Щелкните по иконке Shared Components.

  3. В секции Navigation щелкните по ссылке Lists. Откроется страница с элементами листа Lists, в которой щелкните по иконке Navigation. Откроется страница List Details, в которой пока только одна ссылка – на страницу Подразделения.

  4. На странице List Details щелкните по кнопке Create List Entry >. Отобразится страница создания/редактирования элемента списка (Create/Edit).

  5. На странице Create/Edit введите следующее:

    1. Sequence – 20.

    2. List Entry Label – Работники.

    3. Page – выберите страницу Работники.

  6. Щелкните Create and Create Another. В меню List Entries (см. справа) появится добавленная ссылка.

  7. Запустите Главную страницу:



Обратите внимание, что теперь на Главной странице есть ссылка на страницу Работники.

  1. Протестируйте ссылки на Главной странице.




  1. Соединение отчетов

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

Для выполнения требуемого перехода создадим на отчете Работники область (Region), в которой будет располагаться поле с выпадающим списком подразделений. Область – это участок на странице, который играет роль контейнера для содержимого страницы. Каждая страница может иметь любое количество областей. Внешний вид области задается с помощью шаблона (region template). Области обычно используются для группировки элементов управления на странице – например, визуальные элементов (items) или кнопок (buttons).

Для создания области:

  1. Откройте окно редактирования для страницы Работники.

  2. Щелкните по кнопке Create create_small . Отобразится мастер создания области. Выберите опцию Region on this page. Нажмите Next>.

  3. На шаге Region:

    1. Определите тип области – оставьте тип по умолчанию – HTML, – и щелкните Next >.

    2. Определите тип HTML контейнера – оставьте HTML и щелкните Next >.

  4. На шаге Display Attributes:

    1. Title – введите Подразделение.

    2. Region Template – выберите No Template. Область будет добавлена без заголовка области.

    3. Sequence – измените на 5. Это необходимо, чтобы создаваемая область отображалась над областью Работники (которая имеет sequence = 10).

    4. Оставьте другие параметры без изменений и щелкните Next >.

  5. Щелкните Create Region. Обратите внимание, что в секции Regions теперь отображается область Подразделение, имеющая тип HTML.

Теперь необходимо создать в области Подразделение визуальный элемент (item), который представляет собой выпадающий список выбора, использующий список значений подразделений:

  1. Щелкните по кнопке Create create_small и выберите опцию Page control on this page. Нажмите Next>. Отобразится мастер создания визуальных элементов.

  2. На шаге Create Page Component выберите опцию Item, нажмите Next>;

  3. На шаге Item Type выберите тип элемента – Select List – и щелкните Next >.

  4. На шаге Display Position and Name:

    1. Item Name – замените на P?_DEPARTMENT_ID.

    2. Sequence – поставьте значение 10.

    3. Region – выберите Подразделение. Щелкните Next >.

  5. На шаге Item Attributes замените значение Label на Подразделение и щелкните Next >.

  6. На шаге Settings в поле Page Action When Value Changed установите Submit Page. Нажмите Next>.

  7. На шаге List of Values:

    1. Named LOV – выберите DEPARTMENTS. Этот список создан как компонент, разделяемый на уровне приложения (Shared Component), в предыдущей работе.

    2. Display Null Value – оставьте значение Yes.

    3. Null Display Value – введите -нет подразделения-.

    4. Null Return Value – введите -1. Ввод значений, которые подставляются вместо неопределенного значения (Null Value), позволяет облегчить написание запросов (облегчает проверку на Null). В этом случае, когда пользователь выбирает в списке -нет подразделения-, в элементе устанавливается значение -1, и Вы можете использовать это значение в запросе. Щелкните Next >.

  8. На шаге Source:

    1. В поле Default введите -1.

    2. Оставьте другие параметры без изменений и щелкните Create Item.

Итак, создан элемент, который будет принимать значения идентификатора подразделения, но пока еще он не соединен с отчетом. Чтобы сделать это, необходимо отредактировать SQL-запрос в Region Source, добавив в него предложение WHERE:

  1. Откройте окно редактирования (Region Definition) для области Работники.

  2. В поле Region Source добавьте в запрос после предложения FROM следующий текст:

WHERE (DEPARTMENT_ID = :P2_DEPARTMENT_ID or

(DEPARTMENT_ID is null and nvl(:P2_DEPARTMENT_ID,'-1') = '-1'))

Данное предложение WHERE позволит отображать только работников, принадлежащих выбранному подразделению. Обратите внимание, что подстановочная строка :P2_DEPARTMENT_ID соответствует созданному ранее элементу.

  1. Примените изменения.

Когда на странице выполняется команда Submit, то переходы (branches), указанные для страницы, определяют, какая страница должна отобразиться следующей. В данном случае необходимо, чтобы после команды Submit на странице Работники снова отобразилась та же самая страница с отчетом о работниках, поэтому необходимо создать переход на страницу Работники:

  1. В окне редактирования (Page) страницы Работники в колонке Page Processing выберите опцию After Submit и щелкните по иконке Create create_small. Отобразится мастер создания перехода. Выберите опцию Branch и щелкните Next>.

  2. На шаге Branch Attributes в строке Name введите Работники, остальное оставьте как есть. Нажмите Next>.

  3. На шаге Target:

    1. В качестве целевой страницы в окне Page выберите страницу Работники.

    2. Отметьте флажок reset pagination for this page. Когда установлена эта опция, приложение отображает первую порцию данных, удовлетворяющих запросу. Когда же эта опция не выбрана, то если пользователь просматривал, например, третью порцию данных и выбрал другое подразделение, то ему будет отображена третья порция нового запроса.

    3. Оставьте все остальные параметры без изменений и создайте переход (нажмите Create Branch на шаге Branch Conditions).

  4. Запустите страницу. Выберите любое подразделение, например, «Вестер». Должны отобразиться только работники, относящиеся к этому подразделению:



  1. Добавьте возможность сортировки в отчете Подразделения по всем столбцам и в отчете Работники по всем столбцам, кроме столбца Изменить. Это можно сделать, поставив флажки Sort в разделе Column Attributes в окне редактирования столбцов соответствующего отчета (Report Attributes).

  2. Запустите приложение и добавьте несколько работников в одно из подразделений. При этом проверьте работу сортировки по столбцам.

  3. Измените в отчете Подразделения запись об одном из подразделений, удалив в нем сведения о менеджере (это надо сделать через соответствующую таблицу), и запустите это приложение.


Обратите внимание, что в отчете Подразделения исчезла запись о соответствующем подразделении. Причина в SQL-запросе, который не возвращает запись о подразделении, если в нем нет работников или менеджера. Чтобы в отчете отображались все подразделения, необходимо модифицировать SQL-запрос:

  1. Замените текст запроса в Region Source для области Подразделения на странице Подразделения на следующий:

SELECT d.department_id "Department ID",

d.department_name "Department Name",

count(e2.employee_id) "Number of Employees",

nvl2(e.employee_id, substr(e.last_name,1,1)||'. '|| e.first_name, '') "Manager Name",

c.country_name "Location"

FROM departments d left join employees e on d.manager_id = e.employee_id

left join locations l on d.location_id = l.location_id

left join countries c on l.country_id = c.country_id

left join employees e2 on d.department_id = e2.department_id

WHERE

instr(upper(d.department_name),upper(nvl(:P2_REPORT_SEARCH, d.department_name))) > 0

GROUP BY d.department_id, d.department_name,

nvl2(e.employee_id, substr(e.last_name,1,1)||'. '|| e.first_name, ''),

c.country_name

Обратите внимание на следующие моменты:

        • Функция nvl2 принимает 3 параметра: первый параметр проверяется на значение null, если первый параметр is not null, то функция возвращает значение второго параметра (первую букву имени и фамилию), иначе – значение третьего параметра (пустую строку).

        • В предложении FROM используется левое внешнее соединение (left [outer] join), которое означает, что будут выбираться все записи из левой части выражения, даже если для них нет соответствующих записей в правой части. Столбцы, по которым производится соединение, указываются после ключевого слова on.

  1. Примените изменения и запустите страницу:


Обратите внимание, что теперь отображаются все подразделения, даже те, у которых не указаны менеджеры (и в которых нет работников).
Задание к работе:

  1. Проделайте все описанные действия со своими данными. При этом все промежуточные результаты через кнопку PrintScreen сохраняйте в отдельном файле:

  • Результат решения задачи 1.

  • Результат решения задачи 2.

  • Результат решения задачи 3.1.

  • Результат решения задачи 3.2.

  1. Покажите результат преподавателю.



1   2   3   4   5   6   7   8   9

Похожие:

Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания к лабораторным работам по дисциплине «Управление...
Методические указания к лабораторным работам по дисциплине «Управление проектами» для студентов и слушателей факультета «Инженерный...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по дисциплине «Основы алгоритмизации и программирования»...
Методические указания к лабораторным работам ориентированы на изучение основ алгоритмического языка Паскаль версии ТурбоПаскаль 0,...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания к расчетно-графическому заданию для студентов...
Методические указания предназначены для студентов, выполняющих расчетно-графическое задание по курсу «Математическая статистика»...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconСанкт-петербургский государственный университет сервиса и экономики
Методические указания предназначены для студентов заочной формы обучения подготовки магистрантов направления 230700. 68 «Прикладная...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по самостоятельной и индивидуальной работе...
Имитационное моделирование экономических процессов: методические указания по самостоятельной и индивидуальной работе студентов всех...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconРабочая программа для студентов направления 230700. 62 Прикладная...
Кузнецова Н. Л., Лукашенко С. Н. Математический анализ. Учебно-методический комплекс. Рабочая программа для студентов направления...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconРабочая программа для студентов направления 230700. 62 Прикладная...
Кузнецова Н. Л., Лукашенко С. Н. Математический анализ. Учебно-методический комплекс. Рабочая программа для студентов направления...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания к лабораторным работам и задания к контрольной...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconРабочая программа для студентов очной формы обучения, направления...
Воробьева М. С. Структурное программирование. Учебно-методический комплекс. Рабочая программа для студентов очной формы обучения,...
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по самостоятельной и индивидуальной работе...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по самостоятельной и индивидуальной работе...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по самостоятельной и индивидуальной работе...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по самостоятельной и индивидуальной работе...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по самостоятельной и индивидуальной работе...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconМетодические указания по самостоятельной и индивидуальной работе...
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Методические указания к лабораторным работам по изучению пакета разработки сетевых приложений oracle apex для студентов направления обучения по бакалавриату «Прикладная информатика» iconРефератов (ргр) по дисциплине «Разработка приложений в среде Oracle»
Разработка Delphi-приложений для Oracle. Визуальные компоненты для работы с набором данных


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск