Главная » Просмотр файлов » ЛР 01-1 1620 (препод)

ЛР 01-1 1620 (препод) (1018812), страница 8

Файл №1018812 ЛР 01-1 1620 (препод) (Лабораторная работа по делфи) 8 страницаЛР 01-1 1620 (препод) (1018812) страница 82017-07-08СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 8)

Очень легко устанавливаются связи между таблицами. Так , для установки связи между таблицами менеджеров и сделок нужно нажать левую кнопку мыши на CodMen и не отпуская протащить на поле CodMen таблицы сделок. Аналогично устанавливаются все связи.

Далее щелкаем мышкой в тех полях таблиц, которые должны быть выбраны в результирующий набор.

В нижнем окне на закладке Criteria, если нужно указываем дополнительные критерии выбора. Так, например, если нужно выбрать сделки с объемом более 100, то перетаскиваем мышкой в поле Field or Value – Cost из таблицы Sd, в Compare из списка выбираем >, а в третьем поле Field or Value указываем 100.

Можно использовать более сложные условия

После выбора условий, нажав на кнопку быстрого доступа SQL можно увидеть текст сформированного запроса, который можно отредактировать, сохранить во внешнем файле (File – Export to file).

Можно сразу проверить работу запроса, скопировать результаты выполнения в буфер обмена.

При формировании запроса можно использовать операторы =, >, <, >=, <=, <>, LIKE, NOT LIKE, IN, NOT IN, BETWEEN, NOT BETWEEN, IS NULL, or IS NOT NULL.

При выборе из списка на вкладке Criteria

доступны логические операции NOT, OR и AND. Они показываются слева при включенном Row Info.

После установки свойства Query1 Active:=True проект следует сохранить и запустить на выполнение.

Поля в DBGrid следует назвать по-русски (Title- Caption), уменьшить ширину поля (Width – 80).

Установим Query1 Active в false и напишем обработчики

procedure TForm1.FormCreate(Sender: TObject);

begin

Query1.Open;

{ или Query1.Active:=true;}

end;

procedure TForm1.FormDestroy(Sender: TObject);

begin

Query1.Close;

{ или Query1.Active:=false;}

end;

Сформируем запрос на лету. Добавим Memo-поле, кнопку.

Напишем запрос в мемо –поле, и после нажатия на клавишу Применить сформируем Query

procedure TForm1.FormCreate(Sender: TObject);

begin

{Query1.Open;}

{ или Query1.Active:=true;}

end;

procedure TForm1.FormDestroy(Sender: TObject);

begin

Query1.Close;

{ или Query1.Active:=false;}

end;

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

with Query1 do

begin

if Active then Close;

SQL.Clear;

SQL.Assign(Memo1.Lines);

Open;

end

end;

Вопрос 7. Отчеты с использованием QuickReport

Откроем старый проект, показывающий совершенные сделки на сумму более 100 руб.

содержащий обработчики:

procedure TForm1.FormCreate(Sender: TObject);

begin

Query1.Open; { или Query1.Active:=true;}

end;

procedure TForm1.FormDestroy(Sender: TObject);

begin

Query1.Close; { или Query1.Active:=false;}

end;

Д обавим с панели инструментов Qreport компонент QuickRep на форму. Размер и положение особого значения не имеют. Нажмем F11 и установим значение свойства DataSet в Query1. Затем нажмем на + у свойства Bands и установим свойства HasColumnHeader и HasDetail в True.

В позицию DetailBand1 бросим QRDBText и установим его DataSet в Query1, а DataField – в Fam.

В ColumnHeaderBand1 бросим QRLabel и зададим свойство Caption – Менеджеры.

Аналогично добавим еще четыре пары QRDBText и соответствующие заголовки: Fam_1 – Покупатели, Title – Товары, Cost – Цена, Sity – Город.

Выделим на форме Query1 и установим его свойство Active – True;

В ыполнив щелчок правой кнопки мыши на QuickRep1 в появившемся контекстном меню можно выбрать PreView.

При нажатой клавише SHIFT метки QRLabel и QRDBText можно отформатировать, выбрав другой шрифт и Style.

Д ля появления границ следует добавить компонеты QRShape и на них разместить элементы QRDBText.

Для установки одинакового размера и выравнивания следует выделить все QRShare при нажатой клавише SHIFT и из контекстного меню выбрать Align и Size.

После выбора соответствующих опций: Align , Size , Color и свойства Transparent - True подчиненных элементов (в данном случае QRLabel) можно установить желаемый вид отчета

Задав в Bands HasPageHeader – True, можно задать заголовок отчета, отформатировать по вкусу, можно вставить рисунок с помощью компонентов QRImage и QRDBImage.

Но пока можно оценить вид отчета только в режиме предварительного просмотра. Если оттранслировать и запустить приложение на выполнение увидим только заготовку отчета.

Можно добавить кнопку и написать обработчик:

procedure TForm1.Button1Click(Sender: TObject);

begin

QuickRep1.Preview;

end;

Пользователь не должен видеть заготовку отчета, поэтому нужно совсем избавиться от вида данной формы. Для этого нужно убрать кнопку, но добавить в обработчик события OnCreate обращение QuickRep1.PreView:

procedure TForm1.FormCreate(Sender: TObject);

begin

Query1.Open;

QuickRep1.Preview;

end;

Нужно перенести формирование отчета на другую форму. Добавим новую форму, добавим на нее кнопку и напишем обработчик

procedure TForm2.Button1Click(Sender: TObject);

begin

Form1.QuickRep1.Preview;

end;

После трансляции получим сообщение о необходимости добавить uses Unit1, нажмем Yes.

После implementation Delphi добавить сама uses Unit1;

Далее форму Form2 нужно сделать главной. Для этого выберем Project – Options и в списке выберем форму Form2

Установим Caption у Form2 на Отчеты,Position – poScreenCenter.

Оттранслируем проект и запустим на выполнение.

На данной странице можно организовать выдачу и других нужных отчетов.

Для создания отчетов на основе таблиц следует пользоваться мастером отчетов.

Создадим проект, содержащий модуль данных, в меню Delphi выберем File - New , переключимся на вкладку Business и выберем QuickReport Wizard

Нажмем на кнопку Start Wizard

Зададим псевдоним и имя таблицы, выберем необходимые поля

После нажатия на клавишу Finish отчет будет сформирован, можно посмотреть в режиме предварительного отчета

Для просмотра в режиме работы приложения, создадим вторую форму, разместим на ней кнопку быстрого доступа, напишем обработчик

procedure TForm2.Button1Click(Sender: TObject);

begin

Form1.QuickRep1.Preview;

end;

вызовем Project – Options , установим главную форму Form2.

После этого оттранслируем и запустим программу на выполнение.

The end.

Вопрос 8. Работа с ADO

C Delphi 5 возможно использование технологии ADO ( ActiveX Data Object). Это позволяет обойти установку на машине клиента BDE.


Доступом к созданной ранее в Access 97 базе ПродажиПокупки.mdb управляет машина баз данных Microsoft Jet 4.0 Database Engine. В роли провайдера используется Microsoft Jet 4.0 OLE DB Provider.

При использовании Oracle или MS SQL Server соответственно требуются Microsoft OLE DB Provider for Oracle или Microsoft OLE DB Provider for SQL Server.

Продемонстрируем доступ к одной таблице .

Бросим на форму два компонента ADOConnection, ADOTable с закладки ADO, DataSource с Data Access, DBGrid и DBNavigator c Data Controls.

Выделим ADOConnection , установим свойство Connection String.

Выберем Use Connections String и нажмем Build.

На странице Provider Data Link Propeties выберем Microsoft Jet 4.0 OLE DB Provider, а на вкладке Connection укажем путь и имя базы данных Access

Можно поставить галочку в поле Blank password чтобы не было ненужного в данном случае запроса пароля.

Можно протестировать соединение нажав Test Connection.

На вкладке Advenced устанавливаются режимы доступа

  • Read—только чтение.

  • ReadWrite—чтение и запись.

  • Share Deny None—ничего нельзя использовать совместно несколькими клиентами.

  • Share Deny Read— нельзя совместно использовать данные, открытые в режиме чтения.

  • Share Deny Write— нельзя совместно использовать данные, открытые в режиме записи.

  • Share Exclusive— нельзя совместно использовать данные, открытые в режиме чтения/записи.

  • Write—Только запись

Затем нажмите на ОК.

Установите свойство Connected – true.

У ADOTable свойство Connecton в ADOConnecton1, TableName – Покупатели,

У DataSet – DataSet – ADOTable1.

Настройте DBGRid и DBNavigator DataSource на DataSouce1.

Установите у ADOTable свойство Active – true.

Настройте ширину полей в DBGrid и измените заголовок у таблицы, расположите форму в центре экрана.

Создайте новый проект с использованием ADODataSet. С использованием данного компонента можно выбирать данные из разных таблиц.

Свойство CommandText можно скопировать из базы Access, просмотрев текст запроса в режиме SQL.

Другой способ посмотреть на результаты запроса – воспользоваться компонентом ADOQuery

Для заполнения свойства SQL компонента ADOQuery также можно воспользоваться существующими запросами в базе Access

После установления всех параметров нужно не забывать выставлять значение Active – True.

Характеристики

Тип файла
Документ
Размер
2,93 Mb
Тип материала
Высшее учебное заведение

Список файлов лабораторной работы

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
304
Средний доход
с одного платного файла
Обучение Подробнее