Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Плещёв БД 2013-06-02.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
26.54 Mб
Скачать

2.11.3. Удаленные представления (Remote Views)

Для использования данных (текстовые файлы, таблицы Excel, базы данных с СУБД SQL Server, Oracle, Access, dBase, FoxPro, Paradox и др.), распо­ло­жен­ных на удаленном сервере, нужно подключиться к удаленному источнику (база данных) через драйвер ODBC и создать удален­ное пред­став­ление. Для дополнительной настройки удаленного представления выполните команду Tools/Options/Remote Data. Совместное использование соединения несколькими представлениями задается командой Tools/Opti­ons/Re­mote Data/Share Connection.

Текстовые файлы должны иметь вид: первая строка содержит имена ко­лонок (полей) в кавычках через точку с запятой; текстовые поля зак­лю­ча­ются в кавычки и значения полей в строке разделяются точкой с запятой.

Пример текстового файла с кодами и наименованиями товаров.

“Kt”;”Nt”

1;“Молоко”

2;“Сахар”.

Электронная таблица Excel заполняется аналогично, только не указы­ва­ют­ся кавычки и точки с запятой.

Для подключения к источнику нажмем кнопку New из раздела Con­nec­tions и в окне Connection Designer заполним поле Connect String, используя кнопку с троеточием и предварительно включив переключатель Connection string. Кнопкой Verify Connection проверьте соединение на конкретной базе или файле. Сохраним соеди­не­ние под нужным именем.

Удаленное представление может создаваться мастером (вызывается командой Tools/Query/Remote View Wizard) или средствами конструктора, вызываемого кнопкой New из раздела Remote Views аналогично ло­каль­ному представлению.

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

2.12. Запросы

Существуют мастера и конструктор запросов. После формирования зап­роса формируется программа с расши­ре­нием QPR, которую можно вклю­­чить в проект, откорректировать и выпол­нить как программу.

2.12.1. Мастера запросов

Мастер запросов вызывается из раздела Queries командой New/Query Wizard, появляется окно со списком мастеров: Query Wizard (запрос из нес­коль­ких таблиц), Cross‑Tab Wizard (перекрестный запрос) и Graph Wizard (диаграммы).

Шаги сценария мастера Query Wizard и View Wizard аналогичны.

Cross‑Tab Wizard ‑ перекрестный запрос

Пример создания перекрестного запроса: сформировать таблицу, ко­лон­ками которой будут наименования подразделений (Np), строками ‑ наименования из­де­лий (Ni), а в ячей­ках ‑ число выпущенных изделий (Kvi) (рисунок 2.12.1.1).

Рассмотрим шаги сценария этого мастера.

Step 1 ‑ Select Fields. Выберем базовое представление “Базовое пред­став­­ление” и его поля: Тp, Тi, Kvi.

Step 2 ‑ Define Layout. Мышкой перенесем поле Np в поле Column, Ni в Row и Kvi в Data.

Step 3 ‑ Add Summary Information. Установим операцию сум­ми­ро­ва­ния Sum (Count ‑ число записей, Min/Max ‑ максимальное/минимальное зна­чение, Average ‑ среднее) количества выпущенных изделий по подраз­делениям и изделиям. Можно добавить столбец с итоговыми данными по строке, если воспользоваться переключателями группы Subtotal: Sum of Data (сумма по строке), Number of Cells Containing Data (число ячеек со зна­че­ния­ми), Percentage of Table Total (сумма в процентом отношении к общей сум­ме по запросу), None (итоговый столбец не создается).

Step 4 ‑ Finish. Уста­но­вка варианта продолжения и вывода нулевых зна­че­ний для не выпущенных изделий (переключатель Display Null Values отключен). Сохраним запрос под именем “Итоговая таблица выпуска изделий по подразделениям”.

Рис. 2.12.1.1. Окно со сформированным перекрестным запросом

Командой File/Export можно экспортировать таблицу в электронную таблицу, например Excel.

Для формирования перекрестной таблицы используется программа vfpxtab.prg, которая хранится в системной переменной _Genxtab. Если эта пе­ременная пуста, то поп­ро­буй­те указать в программе формирования пе­ре­крестной таблицы имя этого при­ло­же­ния (_Genxtab='c:\vfp5\vfpxtab').

Программа Genxtab имеет девять параметров: имя выходного файла или курсора (xtab.dbf); признаки создания курсора (.T.), зак­ры­тия ис­ходной таблицы при выходе из программы (.T.), отоб­ра­же­ния индика­то­ра работы программы (.T.); номера полей, являю­щихся стро­кой (1), столбцом (2) и ячейкой перекрестной таблицы (3); признак формиро­ва­ния итогового поля и его тип (0 ‑ сумма, 1 ‑ количество, 2 ‑ доля от ито­го­во­го значения в %).

Пример программы, сформированной мастером после ее корректи­ров­ки (рисунок 2.12.1.1).

SELECT Базовое_представление.ni, Базовое_представление.np,;

SUM(Базовое_представление.kvi);

FROM “Выпуск изделий Уралмашем!базовое представление“ ;

Базовое_представление; && псевдоним представления

GROUP BY Базовое_представление.ni, Базовое_представление.np;

ORDER BY Базовое_представление.ni, Базовое_представление.np;

INTO CURSOR SYS(2015) && формируется уникальное имя курсора

_GENXTAB='c:\vfp5\vfpxtab' && строка добавлена ‑ определяет программу

DO (_GENXTAB) WITH 'Query',.t.,.t.,.t.,,,,.t.,0,.f.

BROWSE NOMODIFY

Graph Wizard ‑ мастер диаграмм

Имя мастера диаграмм хранится в системной переменной _Gen­graph, и обычно это бывает приложение Wzgraph.app. Если эта пе­ре­менная пуста, то попробуйте указать в программе формирования ди­аграммы имя этого приложения, например: Gengraph='c:\vfp5\wizards\wzgraph'.

П ример. Сформировать форму с диаграммой итоговых затрат по изделиям (рисунок 2.12.1.2).

Рис. 2.12.1.2. Форма с диаграммой итоговых затрат по изделиям

Рассмотрим шаги сценария этого мастера.

Step 1 ‑ Select Fields. Выберем представление “Итоговое количество и затраты на выпуск изделий ” и поля: Ni, Затраты (п. 2.11.2).

Step 2 ‑ Define Layout. Мышкой перенесем поле Ni в поле Axis, поле Затраты в Data Series.

Step 3 ‑ Select Graph Style. Выберем вид столбиковой диаграммы.

Step 4 ‑ Finish. Введем наименование диаграммы “Итоговые затраты по изделиям” и нажмем кнопку предварительного просмотра Preview. Диаграмму можно сохранить в виде формы, таб­ли­цы с диаграммой и в виде запроса. Сохраним форму под именем “Диаграмма ито­говых затрат по изделиям”.