Как продвинуть сайт на первые места?
Вы создали или только планируете создать свой сайт, но не знаете, как продвигать? Продвижение сайта – это не просто процесс, а целый комплекс мероприятий, направленных на увеличение его посещаемости и повышение его позиций в поисковых системах.

Ускорение продвижения
Если вам трудно попасть на первые места в поиске самостоятельно, попробуйте технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Если ни один запрос у вас не продвинется в Топ10 за месяц, то в SeoHammer за бустер вернут деньги.



Иллюстрированный самоучитель по Microsoft Access 2002

Создание перекрестного отчета с изменяющимся числом столбцов

Рассмотрим возможности обработки событий в отчете на примере отчета "Выработка сотрудников". Этот отчет строится на базе перекрестного запроса и показывает выработку сотрудников отдела продаж за год по месяцам. Максимальное число столбцов в отчете – 14. Первый столбец содержит фамилии сотрудников, следующие двенадцать столбцов – выработку для каждого месяца и последний столбец – итоговый. (Как выглядит этот отчет, мы показывали в разд. "Перекрестные отчеты" гл. 10.)

В качестве источника данных для такого запроса используется перекрестный запрос "Выработка сотрудников", представленный на рис. 13.35.

Иллюстрированный самоучитель по Microsoft Access 2002 › Программирование в Access 2002 › Создание перекрестного отчета с изменяющимся числом столбцов
Рис. 13.35. Перекрестный запрос "Выработка сотрудников"

Поле "Отпускная цена" является вычисляемым, и для его вычисления используется формула:

CCur(CLng([Заказано].[Цена] * [Количество] * (1 - [Скидка]) * 100) / 100)

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

В запросе в качестве критерия выборки заказов указан год – 1998. Нужно вывести приглашение пользователю, чтобы он, в свою очередь, мог ввести желаемый год. Это можно сделать при открытии отчета. Сначала нужно создать базовый набор записей для отчета и посчитать, сколько получилось столбцов в этом наборе. Следующая процедура обрабатывает событие Открытие (On Open) отчета:

Private Sub Report_0pen(Cancel As Integer)
On Error Resume Next
'Создает базовый набор записей для отчета.
Dim intX As Integer
Dim qdf As QueryDef
Dim frm As Form
Dim StrSql As String
'Связывает переменную с текущей базой данных.
Set dbsReport = CurrentDb 
'Открывает запрос (объект QueryDef).
Set qdf = dbsReport.QueryDefs("Выработка сотрудников")
'Запрашивает год.
Год = InputBox("Отчет за год:", "Год", 1998)
StrSql = Left(qdf.SQL, InStr(qdf.SQL, "where") - 1) & " WHERE(((Year([ДатаИсполнения]))= " & Год & "))" & Right(qdf.SQL, Len(qdf.SQL) - InStr(qdf.SQL, "GROUP BY") + 1)
qdf.SQL = StrSql 
'Открывает набор записей
Set rstReport = qdf.OpenRecordset()
'Определяет количество столбцов в перекрестном запросе.
intColumnCount = rstReport.Fields.Count
End Sub

Здесь переменная intColumnCount должна быть определена на уровне модуля формы, т. к. она используется и другими процедурами данной формы.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.