LINEBURG


<< Пред. стр.

страница 74
(всего 83)

ОГЛАВЛЕНИЕ

След. стр. >>

меньше указанной суммы.
Условие на удаление записей задано для полей основной таблицы — Инвентар­
ный объект ОС. Таблица связана в схеме данных с таблицей Инвентарные карточ­
ки ОС отношением 1:М. При удалении записей в основной таблице автоматиче­
ски удаляются записи подчиненной таблицы — каскадное удаление.
Последовательность действий.
1. Перейти на вкладку Запросы.
2. Нажать кнопку Создать, выбрать Конструктор.
3. Добавить в запрос таблицу Инвентарный объект ОС.
4. Выполнить команду меню Запрос • Удаление. Автоматически создается за­
прос на удаление всех записей таблицы Инвентарный объект ОС.
5. В бланке запроса разместить:
О все поля таблицы — символ *, Удаление — Из;
О поле Код группы ОС, Удаление — Условие, Условие отбора — 48005.
О поле Начальная стоимость, Удаление — Условие, Условие отбора — <= [На­
чальная стоимость].
Запрос на языке SQL имеет вид (команда меню Вид • Режим SQL):
DELETE [Инвентарный объект О С ] . * , [Инвентарный объект
ОС].[Начальная с т о и м о с т ь ] , [Инвентарный объект ОС].[Код группы
ОС]FROM [Инвентарный объект ОС]WHERE ((([Инвентарный объект
ОС].[Начальная стоимость])<=[Стоимость]) AND (([Инвентарный
объект ОС].[Код группы 0 С ] ) = [ г р у п п а 0C]))WITH 0WNERACCESS OPTION;
6. Проверить результат выполнения запроса с помощью команды меню Вид •
Режим таблицы.
7. Выполнить запрос с помощью команды меню Запрос • Запуск.
8. Сохранить запрос под именем Удаление объектов ОС.
Пример 27
Удаление инвентарных карточек объектов ОС, начальная стоимость которых не
превосходит заданной суммы. Инвентарные объекты ОС и МОЛ, соответствую­
щие удаляемым инвентарным карточкам ОС, сохранить в БД. Условия для уда­
ления записей основной таблицы задаются для полей связанных записей.
Последовательность действий.
1. Перейти на вкладку Запросы.
2. Нажать кнопку Создать, выбрать Конструктор.
3. Добавить в запрос таблицы Инвентарный объект ОС, Инвентарная карточка ОС.
607
Основные понятия СУБД Access


4. Выполнить команду меню Запрос • Обновление.
5. В бланке запроса разместить:
О все поля таблицы Инвентарная карточка — символ *, Удаление — Из;
О поле Начальная стоимость из таблицы Инвентарный объект ОС, Удаление —
Условие, Условие отбора — <=[Начальная стоимость].
Запрос на языке SQL имеет вид (команда меню Вид • Режим SQL):
DELETE [Инвентарная карточка О С ] . * , [Инвентарный объект
ОС].[Начальная стоимость] FROM [Инвентарный объект ОС] INNER JOIN
[Инвентарная карточка ОС] ON [Инвентарный объект ОС].[Инвентарный
номер ОС] = [Инвентарная карточка ОС].[Инвентарный номер ОС]
WHERE ((([Инвентарный объект ОС].[Начальная стоимость])<=[
Начальная стоимость])) WITH OWNERACCESS OPTION;
6. Проверить результат выполнения запроса с помощью команды меню Вид •
Режим таблицы.
7. Выполнить запрос с помощью команды меню Запрос • Запуск.
8. Сохранить запрос под именем Удаление инвентарных карточек ОС.

Перекрестные запросы
Перекрестные запросы СУБД Access предназначены для получения сводных ито­
гов. Макет перекрестного запроса содержит:
• область заголовка строк;
• область заголовка столбцов;
• область данных.
В отличие от сводных таблиц Microsoft Excel, перекрестный запрос обладает
существенным недостатком: в области данных может находиться только одно
поле, по которому вычисляется одна итоговая функция; максимальное число
полей группировки данных для заголовков строк — 3, для столбцов — 1, отсут­
ствует переменная область страницы для фильтрации записей. Типы итоговых
функций — стандартные статистические функции.
В отличие от сводных таблиц Microsoft Excel, перекрестный запрос обладает и
достоинствами следующего вида:
• использует данные связанных таблиц;
• возможность задания условий отбора записей, участвующих в формирова­
нии результата.
Перекрестный запрос создается с помощью Мастера перекрестного запроса, в
дальнейшем может настраиваться и усложняться в режиме конструктора запро­
сов.
Последовательность действий.
1. Перейти на вкладку Запросы.
2. Нажать кнопку Создать, выбрать Перекрестный запрос.
608 Глава 7. Система управления базами данных MS Access 2000


3. Выбрать таблицу/запрос — источника для построения перекрестного запроса.
4. Выбрать поля, используемые в качестве заголовков строк. Порядок выбора
полей определяет иерархию формируемых итогов.
5. Выбрать поле, используемое в качестве заголовка столбцов — только одно
поле. Если поле имеет формат типа Дата/время, можно дополнительно ука­
зать интервал группировки дат (год, квартал, месяц).
6. Выбрать поле для формирования сводного итога — только одно поле.
7. Выбрать итоговую функцию — Сумма (Sum), Среднее (Avg), Максимум (Мах),
Минимум (Min) и др.
8. Указать, если нужно, вывод итогов по строкам.
Пример 28
На основании данных таблицы ЖХО создание «шахматной» ведомости оборо­
тов по счетам за указанный период учета.
Последовательность действий.
1. Перейти на вкладку Запросы.
2. Нажать кнопку Создать, выбрать Перекрестный запрос.
3. Выбрать запрос Журнал операций.
4. Указать заголовок строк — поле Номер счета дебета.
5. Указать заголовок столбцов — поле Номер счета кредита.
6. Указать поле для вычисления итогов — Сумма операции, функция — Сумма,
вычислять итоги по строкам.
Запрос на языке SQL имеет вид (команда меню Вид • Режим SQL):
TRANSFORM Sum([Журнал операций].[Сумма операции]) AS [Sum-Сумма
операции] SELECT [Журнал операций].[Номер счета д е б е т а ] ,
Sum([Журнал операций].[Сумма операции]) AS [Итоговое значение
Сумма операции] FROM [Журнал операций] GROUP BY [Журнал
операций].[Номер счета дебета] PIVOT [Журнал операций].[Номер
счета к р е д и т а ] ;
7. Проверить результат выполнения запроса с помощью команды меню Вид •
Режим таблицы.
8. Выполнить запрос с помощью команды меню Запрос • Запуск.
9. Сохранить запрос под именем Шахматка.
Пример 29
Вычисление суммарной первоначальной стоимости ОС по группам ОС и под­
разделениям на основании данных таблицы Инвентарный объект ОС.
Последовательность действий.
1. Перейти на вкладку Запросы.
2. Нажать кнопку Создать, выбрать Перекрестный запрос.
3. Выбрать таблицу Инвентарный объект ОС.
609
Основные понятия СУБД Access


4. Указать заголовки строк — поля Код группы ОС, Код подразделения.
5. Указать заголовок столбцов — поле Дата постановки на учет, интервал груп­
пировки — месяц.
6. Указать поле для вычисления итогов — Начальная стоимость, функция ито­
га — Сумма, вычислять итоги по строкам.
Запрос на языке SQL имеет вид (команда меню Вид • Режим SQL):
TRANSFORM Sum([Журнал операций].[Сумма операции]) AS [Sum-Сумма
операции] SELECT [Журнал операций].[Номер счета д е б е т а ] ,
Sum([Журнал операций].[Сумма операции]) AS [Итоговое значение
Сумма операции] FROM [Журнал операций] GROUP BY [Журнал
операций].[Номер счета дебета] PIVOT [Журнал операций].[Номер
счета кредита] ;
7. Проверить результат выполнения запроса с помощью команды меню Вид •
Режим таблицы.
8. Выполнить запрос с помощью команды меню Запрос • Запуск.
9. Сохранить запрос под именем Перекрестный ОС.
Перекрестный запрос можно дополнительно настраивать. Последовательность
действий.
1. Перейти на вкладку Запросы.
2. Выбрать запрос Перекрестный ОС.
3. Нажать кнопку Конструктор.
4. С помощью команды меню Вид • Отобразить таблицу добавить таблицу Груп­
пы ОС.
5. Заменить поле Код группы ОС на поле Наименование группы ОС из таблицы
Группы ОС.
Запрос на языке SQL имеет вид (команда меню Вид • Режим SQL):
TRANSFORM Sum([Инвентарный объект ОС].[Начальная стоимость]) AS
[Sum-Начальная стоимость] SELECT [Группы ОС].[Наименование группы
ОС], [Инвентарный объект ОС].[Код подразделения],
Sum([Инвентарный объект ОС].[Начальная стоимость]) AS [Итоговое
значение Начальная стоимость] FROM [Группы ОС] INNER JOIN
[Инвентарный объект ОС] ON [Группы ОС].[Код группы ОС] =
[Инвентарный объект ОС].[Код группы ОС] GROUP BY [Группы ОС].
[Наименование группы ОС], [Инвентарный объект ОС].[Код
подразделения] PIVOT Format([AaTa постановки на у ч е т ] , " ш т т " ) I n
("янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя
","дек");
6. Проверить результат выполнения запроса с помощью команды меню Вид •
Режим таблицы
7. Выполнить запрос с помощью команды меню Запрос • Запуск.
8. Сохранить запрос под тем же именем.
610 Глава 7. Система управления базами данных MS Access 2000


SQL-запросы
Это особый тип запросов, который создается пользователем с помощью инст­
рукций SQL в конструкторе запросов с помощью команд меню:
• Запрос SQL • Объединение — обеспечивает слияние данных нескольких ис­
точников (таблиц/запросов), имеющих одинаковую структуру данных;
• Запрос SQL • К серверу — формирование запроса к БД сервера, доступ осно­
ван на применении драйверов ODBC;
• Запрос SQL • Управление — создание, модификация, удаление структуры дан­
ных таблиц программным способом.
На языке SQL также создаются различного типа подчиненные запросы и фильт­
ры. Они обеспечивают формирование источников данных для полей со спи­
ском, определение вычисляемых полей запросов, обеспечивают задание условий
фильтрации записей, участвующих в запросах, и др. В подчиненных запросах
могут использоваться так называемые модификаторы, изменяющие характер вы­
полняемого запроса:
• EXISTS/NOT EXISTS — проверка наличия результата подчиненного запроса;
• ANY, IN, ALL — поиск значений в основном запросе, которые равны, превы­
шают или меньше значений, возвращаемых подчиненным запросом (исполь­
зуются зарезервированные слова).

ПРИМЕЧАНИЕ
Каждому запросу на языке QBE соответствует тождественный по результатам SQL-за­
прос, но в обратную сторону не всегда. SQL-запросы реализуют в ряде случаев такие
виды обработки, которые не может обеспечить ни один запрос на языке QBE. Более де­
тально синтаксис инструкций SQL рассмотрен в главе, посвященной программе Microsoft
Query.

Пример 30
Создание списка кодов структурных подразделений, содержащихся в таблицах
МОЛ и Инвентарный объект ОС. Этот запрос на языке SQL относится к категории
запросов на объединение. Результат объединения зависит от спецификации опе­
ратора UNION:
• UNION ALL — объединение повторяющихся значений полей;
• UNION — объединение неповторяющихся значений полей.
Последовательность действий.
1. Перейти на вкладку Запросы.
2. Нажать кнопку Создать, выбрать Конструктор.
3. Выполнить команду меню Запрос • Запрос SQL • Объединение.
4. Ввести текст запроса:
SELECT МОЛ.[Код подразделения]FROM МОЛ UNION SELECT [Инвентарная
карточка ОС].[Код подразделения]FROM [Инвентарная карточка ОС];
611
Основные понятия СУБД Access


5. Проверить результат выполнения запроса с помощью команды меню Вид •
Режим таблицы.
6. Выполнить запрос с помощью команды меню Запрос • Запуск.
7. Сохранить запрос под именем Список подразделений.

Пример 31
Удаление таблиц Обороты по дебету счета, Обороты по кредиту счета с помощью
запроса SQL.
Этот запрос относится к категории управляющих запросов, то есть позволяет
выполнить структурные преобразования БД, не прибегая к работе в среде ин­
терфейса СУБД Access, что значительно упрощает и ускоряет процедуру обра­
ботки.
Управляющий запрос содержит управляющую инструкцию вида:
• CREATE TABLE — создание новой таблицы;
• ALTER TABLE — добавление нового поля или ограничения в таблицу;
• DROP — удаление таблицы/индекса;
• CREATE INDEX — создание индекса для поля или группы полей.
Последовательность действий.
1. Перейти на вкладку Запросы.
2. Нажать кнопку Создать, выбрать Конструктор.
3. Выполнить команду меню Запрос • Запрос SQL • Управление.
4. Ввести текст запроса:
DROP TABLE [Обороты по дебету счета]
5. Выполнить запрос — команда меню Запрос • Запуск.
6. Сохранить запрос под именем Удаление Обороты по дебету счета.
7. Перейти на вкладку Запросы.
8. Нажать кнопку Создать, выбрать Конструктор.
9. Выполнить команду меню Запрос • Запрос SQL • Управление.
10. Ввести текст запроса:
DROP TABLE [Обороты по кредиту счета]
11. Выполнить запрос — команда меню Запрос • Запуск.
12. Сохранить запрос под именем Удаление Обороты по кредиту счета.


Отчеты
Отчеты — традиционная форма представления информации для управления. От­
четы выводятся на экран, принтер или в файл для передачи по каналам связи,
размещаются на Web-серверах. Отчеты создаются на основании базовых таб­
лиц, запросов на выборку данных и перекрестных запросов.
612 Глава 7. Система управления базами данных MS Access 2000


При построении многотабличных отчетов учитывается схема данных. По анало­
гии с формами, в многотабличных отчетах определяется иерархия подчинения
таблиц друг другу, выделяется главный отчет для одной таблицы и подчинен­
ные (связанные) с ним отчеты для других таблиц.
Отчеты, как и формы, содержат различные элементы управления, которые соз­
даются с помощью панели элементов — команда меню Вид • Панель элементов в
конструкторе отчета. Макет отчета содержит стандартные части:
• верхний и нижний колонтитулы — постоянная информация, выводимая на
каждой печатной странице отчета («шапка» таблицы, постоянный текст, слу­
жебные поля типа номер страницы, дата и т. п.);
• область данных — основная информация для детальной строки отчета, со­
держит поля источника отчета и другие элементы управления;
• заголовок отчета — название отчета (титульный лист отчета);
• примечание отчета — общие итоги для всего отчета, заключительная инфор­
мация отчета (лист согласующих подписей);
• заголовок группы — общие данные для группы детальных строк («шапка»
группы строк, поля группировки, постоянный текст, служебные поля);
• примечание группы — итоги для группы детальных строк.
По уровню структурной сложности отчеты делятся на простые, подготовленные
на основе одной таблицы или запроса, и многотабличные, подготовленные на
основе нескольких таблиц или запросов. По числу выводимых строк в области
данных (детальные строки) отчеты делятся на однозаписные и многозаписные,
при этом можно создавать отчеты, в которых выводятся только итоги без де­
тальных строк.
Наряду с многотабличными отчетами, которые строятся на основании данных
нескольких взаимосвязанных таблиц, СУБД Access позволяет строить состав­
ные отчеты, элементами которых являются подчиненные отчеты. Может быть не­
сколько подчиненных отчетов в составе одного главного отчета. Данные подчи­
ненных отчетов могут быть связанными или не связанными с данными главного
отчета.
Работа с отчетами осуществляется в трех режимах:
• Конструктор отчета — работа с макетом отчета.
• Предварительный просмотр печатной страницы отчета.
• Образец заполненного отчета.
Переход из одного режима в другой выполняется с помощью команды меню
Вид.
При проектировании макета отчета предполагает определение:
• состава таблиц и запросов, содержащих исходные данные для отчета;
• структуры отчета (состава частей отчета и их свойств);
• структуры данных детальной строки отчета;
• групп детальных строк и уровней их вложенности;
613
Основные понятия СУБД Access


Q заголовков групп детальных строк;
• итогов для групп и отчета в целом;
• параметров печатной страницы отчета;
• формы представления отчета (печатный документ, файл).
Отчеты создаются на вкладке Отчеты с помощью кнопки Создать или с помо­
щью команды меню Вставка • Отчет. Возможные способы создания отчетов:
• Конструктор — самый трудоемкий и вместе с тем гибкий вариант создания
отчетов;
• Мастер отчетов — специальная программа для автоматизации создания отчетов;
• Автоотчет: в столбец — простой отчет, в области детальных строк только одна за­
пись;
• Автоотчет: ленточный — простой отчет, в области детальных строк несколько
записей;
• Мастер диаграмм — построение диаграмм для их вывода в виде отчета;
• Почтовые наклейки — подготовка наклеек в одном из стандартных форматов.
Макет отчета состоит из элементов управления, с помощью команды меню Вид •
Свойства в режиме конструктора отчета изменяются их свойства. Специфиче­
ские свойства элементов управления отчета:
• Не выводить повторы — не повторять значения поля в детальных строках от­
чета при совпадении данных с предыдущей записью;
• Сумма с накоплением — автоматически накапливать сумму по детальным стро­
кам в пределах отдельной группы или всего отчета;
• Конец страницы (до, после, до и после раздела, отсутствие) — для групп отчета
можно;
• Повторение раздела (в верхней части каждой страницы);
• Не разрывать (печать разделов на одной странице) и др.
Для частей макета отчета используются события, связанные с форматированием
или печатью отчета. Этим событиям можно сопоставить процедуры обработки
событий на языке Visual Basic или макросы.
Перечень отчетов, соответствующих БД OC.MDB, рассматриваемых в качестве
примеров, приведен в табл. 7.15.
Таблица 7.15. Состав отчетов БД OC.MDB

Назначение отчета
Название отчета Примечание

Журнал операций Вычисление итогов (количество
Выборка проводок ЖХО
за интервал дат проводок, сумма операций)

Оборотная Сведения о состоянии Вывод отчета по всем или по
ведомость счетов, субсчетов указанным счетам, субсчетам. Ввод
по счетам параметров для отчета через форму
Продолжение &
614 Глава 7 Система управления базами данных MS Access 2000


Таблица 7.15. Продолжение

Название отчета Назначение отчета Примечание

Справочник ОС Итоговая информация о Многотабличныи о ч е т
составе основных средств
в разрезе групп ОС, МОЛ

Проводки ЖХО Подборка проводок по Компонент составного отчета
по дебету счета дебету счета, субсчета

Проводки ЖХО Подборка проводок по Компонент составного отчета
по кредиту счета кредиту счета, субсчета

Карточка счета Сведения о счете, субсчете Составной отчет, главный, включает
и проводках подчиненные отчеты
по дебету/кредиту
счета, субсчета

Амортизация ОС Сведения о накопленных
суммах износа и пробега
с раскрытием периодов
расчета амортизации

Поступление ОС Сведения о поступлении
ОС за указанный период

Выбытие ОС Сведения о выбывших ОС
за указанный период

Наличие ОС Сведения о наличии ОС
на указанную дату


Пример 32
Сформировать серию отчетов для анализа движения ОС (поступление, выбы­
тие, наличие ОС) за учетный период Для построения отчетов используются за­
просы выборки, в отчете вычисляются общие итоги по ОС в разрезе групп ОС
Отчет о поступлении ОС за учетный период
Последовательность действий по построению макета отчета о поступлении ОС
(рис 7 36)
1 Открыть файл ОС MDB с помощью команды меню Файл • Открыть
2 Перейти на вкладку Отчеты
3 Нажать кнопку Создать, выбрать Мастер отчетов
О источник данных — запрос Поступление ОС, все поля, таблица Группы ОС,
поле Наименование группы ОС,
О вид представления данных — Группы ОС,
О уровень группировки — поле Дата приобретения (по месяцам), сортировка
детальных строк отчета по полю Инвентарный номер ОС,
615
Основные понятия СУБД Access

<< Пред. стр.

страница 74
(всего 83)

ОГЛАВЛЕНИЕ

След. стр. >>

Copyright © Design by: Sunlight webdesign