Обмен данными в приложениях ОС Windows
Принцип работы с буфером обмена. Средства непосредственного обмена данными между приложениями Windows, их конвертирование и экспорт-импорт данных. Объектно-ориентированная технология, принцип действия технологии OLE в популярном пакете Microsoft Office.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 08.02.2011 |
Размер файла | 1,2 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
КУРСОВАЯ работа
по дисциплине «Информатика»
на тему
Обмен данными в приложениях ОС Windows
Введение
Сегодня в большинстве случаев работа на компьютере сводится к работе с электронными документами, так как именно в них содержится основная масса используемой информации. Под документом будем понимать объект обработки прикладной программы.
Каждый документ имеет формат, который определяется приложением (программой), создавшим этот документ. Расширение файла соответствует определенному формату. Документы созданные одним приложением почти всегда имеют один формат. Например, Word *.doc Excel *.xls PowerPoint *.ppt и т.д.
Проанализируем некоторые общие типы данных, для этого рассмотрим историю их появления. Информатика изначала предназначалась для обработки информации во всех её проявлениях, однако, как и всегда технологические достижения не могли в полной мере удовлетворить потребности теории. Сначала для обработки на компьютерах была представлена только числовая информация, затем техника стала воспринимать и текст. Для этого программисты создали текстовый и табличный процессоры. С продвижением научно-технического прогресса компьютерам поддалась и графика, далее настала очередь звуковой и видео информации.
Итак, можно сказать, что пользователи персонального компьютера имеют дело с различными данными, хранящимися в документах всевозможных форматов. Конечно эта схема не совсем подходит к реальной обстановке вещей, так как в жизни обычно человек работает не с одним типом данных а с множеством. Например, социолог, составляя отчет о проделанной работе, вынужден использовать несколько типов данных: текст, числа, рисунки, диаграммы, презентации и т.д. Поэтому возникла следующая проблема - Как в одном документе соединить данные различных типов? Без применения специальных компьютерных технологий этот вопрос остается не разрешимым.
Часто пользователи используют огромное число документов, в которых, как правило, имеется общая часть, поэтому в такой ситуации имеет смысл выделить эту часть, а в дальнейшем только ссылаться на неё, при этом, производя изменения в одном месте - информация в других документах будет автоматически обновляться. Решение проблемы совместного использования документов существенно облегчает работу пользователей. Как и предыдущий вопрос, она решается только с помощью определенных технологий и методов.
Вследствие всего этого, тема данной курсовой является актуальной, а рассматриваемые в ней технологии полезными и востребованными.
В основной части работы рассмотрены три основных метода обмена данными между документами, а в последней части показано как действует технология OLE в популярном пакете Microsoft Office.
1. Буфер обмена
Во время своей работы операционная система (OC) Windows выделяет специальную область памяти -- буфер обмена (Clipboard), который используется для обмена данными между приложениями и документами. Роль данных могут играть фрагмент текста или весь текст, рисунок, таблица и т. п. Буфер обмена -- это простейшее, но очень эффективное средство интеграции приложений. В ОС Windows через буфер обмена можно перемещать папки с файлами и отдельные файлы.
Принцип работы с буфером обмена. С помощью инструментальных средств конкретного приложения можно выделить определенный фрагмент обрабатываемого документа (т. е. участок текста, изображение, таблицу) и поместить его на хранение (записать) в буфер обмена. Записанный в буфере фрагмент можно вставить либо в другое место того же документа, либо в другой документ того же приложения, либо в документ другого приложения. Например, можно переместить картинку (или фрагмент картинки), нарисованную вами в графическом редакторе, в любое место документа Word или Excel.
Записанный фрагмент сохраняется в буфере до тех пор, пока не дана команда поместить в буфер другую порцию данных: в этом случае прежнее содержимое буфера теряется безвозвратно, оно замещается новой информацией. Если такая информация не поступила, фрагмент сохраняется в буфере до окончания сеанса работы Windows. Запуск и завершение программ сами по себе на содержимое буфера никак не влияют. Один и тот же фрагмент можно вставлять в документы несколько раз: при вставке содержимое буфера обмена не меняется.
Работа с буфером обмена. Во всех приложениях Windows, допускающих использование буфера обмена, схема работы с ним стандартизована. Для обмена предусмотрены команды пункта меню Правка:
- Вырезать -- переместить выделенный фрагмент в буфер обмена (и удалить его в исходном документе);
- Копировать - скопировать выделенный фрагмент в буфер обмена (исходный документ не меняется);
- Вставить - вставить содержимое буфера обмена в текущий документ приложения (содержимое буфера не изменяется).
Многие приложения дублируют эти команды в кнопках панели инструментов (а также в контекстном меню), и возможно перемещение, копирование или вставка фрагмента простым щелчком мыши на соответствующей кнопке. Вместо команд работы с буфером обмена можно использовать сочетания клавиш:
- Вырезать -- Shift+Del;
- Копировать -- Ctrl+Ins;
- Вставить -- Shift+Ins.
Следует помнить, что буфер обмена одинаково бесстрастно принимает на хранение и один символ, и графический фрагмент объемом до нескольких мегабайт. Однако в последнем случае производительность компьютера может снизиться, -- поэтому не следует оставлять в буфере слишком массивные части информации, которые вам уже не понадобятся. После использования такой информации лучше очистить буфер, послав в него, например любой текстовый символ.
Кратко рассмотрим операции: Вырезать, Копировать и Вставить.
1. Документ > буфер обмена. Перед выполнением команд - Вырезать или Копировать необходимо выделить фрагмент, помещаемый в буфер обмена. Если фрагмент не выделен, эти команды недоступны. Способы выделения фрагмента определяются соглашениями конкретной программы, однако существуют и универсальные приемы. Следует отметить, что в команде Вырезать совмещены две стандартных операции: удаление выделенного фрагмента и заполнение буфера обмена. Поэтому эта команда более «опасна», чем команда Копировать.
2. Буфер обмена > документ. Если буфер обмена пуст (то есть с момента старта Windows команды Вырезать или Копировать не выполнялась или буфер очищен специальной командой), операция Вставить недоступна.
Существует еще много способов заполнения буфера обмена, например, в ОС Windows есть следующая интересная возможность. Если, работая в операционной системе, нажать клавишу Print-Screen, графический образ всего экрана в виде растровой картинки будет скопирован в буфер обмена. Затем можно вставить эту картинку в документ какого-либо редактора (например, Word), отредактировать, если необходимо, и записать в файл. Если нажать клавиши Alt+PrintScreen, в буфер обмена копируется только активное окно.
Куда вставляется фрагмент по команде Вставить? Точка вставки определяется соглашениями конкретной программы и характером информации, помещенной в буфер обмена. Например, редактор презентаций PowerPoint вставляет графический фрагмент в центр слайда, давая тем самым возможность вручную переместить новый элемент изображения в нужное место. Однако текстовый фрагмент практически всегда вставляется в позицию текстового курсора. Процессор Word любой фрагмент вставляет в позицию текстового курсора.
Окно буфера обмена. Для работы с буфером обмена Windows предлагает специальную программу -- Просмотр буфера обмена, которую можно вызвать из Главного меню > Программы > Стандартные (в Windows 2000 Окно буфера обмена переименовано в Папку обмена, которая вызывается командой clipbrd). Во-первых, окно этой программы -- это настоящее «зеркало» буфера обмена, отображающее текущее содержимое Clipboard. Во-вторых, это приложение позволяет записать содержимое буфера обмена на постоянное хранение в файл специального формата (с расширением .CLP) и прочитать такой файл в буфер. Это нужно для обмена файлами разных форматов так как всякая версия ОС Windows может прочитать любые файлы с расширением .CLP
Просмотр буфера обмена позволяет с помощью отдельных команд изменить формат вывода фрагмента на экран, а также очистить буфер обмена.
Расширение функций буфера обмена. Приложения Windows устроены таким образом, что буфер обмена часто оказывается полезным даже тогда, когда никаких команд работы с буфером не предусмотрено. Дело в том, что механизмы выделения, копирования, вставки фрагментов документа (особенно текстовых) чаще всего встроены в приложение, и клавиатурные сочетания Ctrl+Ins и Shift+Ins работают всегда, независимо от функций приложения.
Тем самым гибкость такой системы при обмене информацией между базой данных системы и внешними носителями информации значительно расширяется. Например, в системе может отсутствовать функция вставки готового текстового файла в базу данных (файл > база данных), однако пользователю не придется заново набирать такой файл. Достаточно открыть его (например, в приложении Word), скопировать в буфер обмена, а затем вставить данный фрагмент в нужное окно системы.
2. Непосредственный обмен данными
Средства непосредственного обмена данными между приложениями Windows можно разделить на три категории:
1. конвертирование (преобразование) файлов,
2. импорт и экспорт данных,
3. динамический обмен данными (DDE -- Dynamic Data Exchange).
2.1 Конвертирование и экспорт-импорт данных
Конвертированием обычно называют изменение формата файла-документа или его части. При конвертировании файл-документ определенного типа, подготовленный средствами некоего приложения (возможно, в другой операционной системе) преобразуется приложением Windows в файл-документ того же (или примерно того же) типа. Операция конвертирования достаточно сложна и не удобна для рядового пользователя. К тому же результаты не всегда получаются ожидаемыми, так как любое преобразование, в том числе и формата, влечет за собой потери.
Многие специалисты считают конвертирование частным случаем более общей операции - импорта-экспорта данных. В этом действии данные одного файла-документа по определенным соглашениям пересылаются в другой файл-документ. При этом оба файла могут иметь одинаковый тип, но разный формат (например, обмен между файлами баз данных), а могут принадлежать к разным классам документов (например, обмен между текстовыми файлами и базами данных).
Примерами импорта-экспорта являются: Файл .DBF (dBASE) > Рабочий лист Excel (.XLS), База данных Access (.MDB) > Документ Word.
При таком подходе формат переносимых данных остается неизменным, однако же, в приложении-источнике пользователь теряет ряд возможностей по редактированию вставленного фрагмента.
2.2 Динамический обмен данными (DDE)
DDE - это разработанный Microsoft набор специальных соглашений (протокол) об обмене данными между приложениями Windows.
В самом начале развития персонального компьютера, когда объем памяти на внешнем запоминающем устройстве был мал и дорог, при помощи DDE решали проблему недостатка свободного места на диске. Так как связываемый документ хранится в виде файла только в одном месте, то при связывании свободное место используется эффективно.
Использование DDE-метода позволяет избежать этого, так как обеспечивает динамический обмен данными и обновление их в подготавливаемом документе по мере их изменения в источнике. При таких условиях «выходной» документ всегда будет «первой свежести».
Каким же образом происходит актуализация (динамическое обновление данных в выходном документе)? Разберемся сначала с происхождением обновляемых данных. Они находятся в документе-источнике и хранятся там приложением-источником. Сохранение документа источника и лежит в основе функционирования DDE-метода. Из сохраненного документа-источника требуемые сведения копируются через Clipboard в выходной документ. Процедура этого копирования нам знакома.
Особенность состоит в том, что DDE-метод устанавливает между источником и копиями некоторую связь. И связь эта обеспечивает автоматическое (или по требованию) обновление копии по мере появления изменений в источнике.
Если файл-источник поврежден или перемещен, то связь нарушается и для её восстановления необходимо заново создавать все ссылки.
Сейчас DDE вытеснено более новой технологией OLE, которая широко используется в Windows приложениях. Однако все же в ряде случаев DDE применяется. На сегодняшний день в DDE можно выделить два уровня:
1. В некоторых приложениях Windows избранные операции DDE встроены в интерфейс программы. Например, в процессоре Word имеется возможность решить следующую задачу. Пусть имеется документ Word, и в этом документе содержится текст «серийного» письма, которое необходимо разослать по нескольким адресам. В этом письме имеются переменные поля с фамилией адресата и его адресом. Фамилии и адреса содержатся в базе данных MS Access. Надо изготовить несколько экземпляров одного и того же письма, каждый из которых будет отличаться от другого фамилией и адресом. Эту операцию можно выполнить с помощью команды Сервис-Слияние... (Tools-Mail Merge...).
2. Второй уровень DDE требует знания некоторых программных средств и может быть использован квалифицированными пользователями или программистами. Суть этого уровня проиллюстрируем примером. Допустим, программист разработал информационную систему, в которой предусмотрено автоматизированное составление расписания каких-то мероприятий (например, встреч, конференций, семинаров и т. п.). Это расписание надо красиво напечатать (с указанием дат, дней недели, колонтитулов и т. п.). Лучше всего справится с этой задачей процессор Word. Поэтому программист заготовил в процессоре Word некий шаблон расписания и снабдил его закладками.
Итак, можно сказать, что с появлением метода DDE возник качественный скачек в продвижении технологии связывания и совместного использования документов. Но все же остались некоторые недочеты, которые в своем большинстве были исправлены схемой OLE.
3. Технология OLE
3.1 Объектно-ориентированная технология
В данной главе кратко описывается объектно-ориентированная (ОО) технология, которая используется в современных средствах разработки программного обеспечения и составляет ядро метода OLE. Объектно-ориентированная технология - это термин, за которым скрывается ряд новых методологий анализа, проектирования и программирования. При использовании ОО технологии анализ, проектирование и разработка системы проводятся с помощью объектов. Под объектом понимается "разумный", самодостаточный агент, отвечающий за выполнение определенных системных задач.
Алгоритмическая и объектно-ориентированная декомпозиция. Традиционно сложилось так, что проектирование и реализация программного обеспечения осуществляется с точки зрения функций или алгоритмов. Как правило, мы разбиваем свои системы на взаимодействующие группы логически связанных функций, воздействующих на наборы несопоставимых данных. Другими словами, мы разделяем сложную задачу на более простые и решаем ее алгоритмически.
Алгоритмическая декомпозиция -- это способ решения проблемы с функциональной точки зрения. При алгоритмической декомпозиции все внимание сосредоточено на том, какие преобразования необходимо выполнить над данными без учета их семантической связи.
Можно подойти к решению проблемы по-другому. Прежде чем изучать функциональные взаимосвязи или интересоваться, что происходит с набором данных, необходимо выявить логически обособленные сущности в предметной области, определить их свойства, взаимосвязи и отношение к решаемой проблеме. Такой способ анализа называется объектно-ориентированной декомпозицией.
Объектно-ориентированная декомпозиция -- это способ решения проблемы с объектной точки зрения. Употребляя ОО декомпозицию, внимание пользователя фокусируется на конкретном объекте. Дополнительно устанавливаются логические и семантические связи между объектами, их поведением.
Объект -- это самодостаточный программный модуль, который абстрактно описывает физическую или логическую сущность реального мира. Он скрывает (инкапсулирует) детали своей реализации и имеет общедоступный интерфейс.
Объекты являются автономными программными модулями, которым присуши некоторое состояние на данный момент и определенное поведение. Состояние объекта -- это его внутренние, то есть закрытые, данные и скрытые детали его реализации. Общедоступный интерфейс формирует поведение объекта. Он определяет, что объект может делать. Интерфейс реализован как набор функций, называемых методами. На схеме 3.1 в общем виде изображены два объекта -- А и В. В этом примере объект А вызывает метод интерфейса объекта В. В общем случае объекты обмениваются сообщениями, вызывая методы друг друга.
Объект включает в себя функции и данные, на которые эти функции воздействуют. Функции и данные, благодаря такой организации, связаны семантически. Поскольку все объекты в ОО системе имеют семантическую связь, общая структура такой системы является более гибкой и ясной по сравнению с традиционными способами организации.
3.2 Модель компонентного объекта (COM)
обмен данные приложение
Модель компонентного объекта (Component Object Model -- COM) -- это вклад компании Microsoft в мир объектных моделей. Она служит основой для OLE, поэтому понимание ее чрезвычайно важно.
Что такое СОМ. СОМ представляет собой стандартную объектную модель промышленного уровня, которая унифицирует системы объектов. Эта модель специфицирует следующее:
· Определение объекта. Правила, по которым объекты структурируются и особым образом располагаются в памяти.
· Управление жизненным циклом. Правила, по которым объекты создаются и уничтожаются.
· Протоколы взаимодействия между объектами. Правила, по которым объекты взаимодействуют друг с другом и проявляют свои функции.
Модель "клиент-сервер". СОМ поддерживает простую модель "клиент-сервер". Объекты, называемые серверами, предоставляют некие функции в распоряжение объектов, называемых клиентами. Серверы всегда являются СОМ-объектами, то есть объектами, которые подчиняются спецификации СОМ. С другой стороны, клиенты могут быть СОМ-объектами или не быть таковыми. Это значит, что некоторые объекты могут быть простыми объектами C+ + , приложениями Visual Basic и т.п. На следующем рисунке представлена не сложная модель "клиент-сервер".
СОМ интерфейсы. Клиенты и СОМ-серверы общаются друг с другом при помощи интерфейсов. Интерфейсы -- это группы функций, которыми СОМ-объекты обычно пользуются для взаимодействия друг с другом и своими клиентами. Как было показано в главе посвященной ОО технологии, проявление функциональных возможностей посредством интерфейса -- это фундаментальная концепция объектно-ориентированного программирования. Используя исключительно интерфейсы, СОМ поддерживает логическую абстракцию и неуклонно проводит в жизнь строгую инкапсуляцию.
СОМ-серверы могут одновременно иметь несколько интерфейсов (как правило, так и бывает). Каждый интерфейс предоставляет набор функций, отличный от других.
3.3 Архитектура OLE
Архитектура OLE (object linking and embeding) основана на модели компонентного объекта (СОМ). Сама OLE является унифицирующей технологией системного уровня, которая базируется на объектах и реализует интеграцию приложений. Она предоставляет клиентам набор объектно-ориентированных услуг. Можно сказать, что, с практической точки зрения, OLE -- это набор системных библиотек (DLL-файлов), которые дают возможность прикладным программам взаимодействовать друг с другом. OLE является внутренней неотъемлемой частью операционной системы Windows, а не подсистемой. Например, в папке SYSTEM или SYSTEM32 на сетевом диске компьютера можно найти дюжину или даже больше файлов OLExxx.DLL. Это -- составляет ядро OLE.
OLE состоит из нескольких различных технологий, которые пользуются услугами друг друга для формирования объектно-ориентированной системы. Каждая технология реализует определенный набор функций. Однако реальная сила OLE заключается именно во взаимодействии составляющих ее технологий. OLE-технология структурированного хранения, к примеру, позволяет приложениям реализовать постоянство объектов. При этом пользователь не знает, как библиотеки OLE реализуют детали этой технологии, например, каким образом и где именно данные объекта должны быть записаны или считаны с диска. Большое преимущество OLE состоит в том, что ее можно расширить и настроить по своему желанию. Можно легко переопределить встроенные функции (путем реализации соответствующих стандартных СОМ-интерфейсов) и расширить набор доступных функции, создав собственные пользовательские интерфейсы.
Библиотеки OLE -- это системные утилиты, посредством которых приложения могут взаимодействовать друг с другом, получать совместный доступ к данным, а также вызывать функции друг друга
Компоненты. Компонент является фундаментом, на котором построена технология OLE. Компонент представляет собой предварительно созданный программный объект, который предоставляет клиентам четко определенный набор функций. Каждый компонент является отдельной сущностью, которая может быть определена и описана независимо от какого-либо конкретного программного пакета. Компоненты объединяются друг с другом различными способами, образуя законченные интегрированные программные системы.
Целью компонентного программного обеспечения является обеспечение возможностей для построения приложений путем комбинирования отдельных компонентов. Приложения будущего не будут такими огромными монолитами, какими они являются сегодня. Наоборот, они будут состоять из разных компонентов, взаимодействующих друг с другом для выполнения некоторых функций высокого уровня.
Большое преимущество компонентов состоит в том, что их можно приобретать по мере необходимости у того поставщика, который предлагает лучшие компоненты. Пользователи могут покупать текстовые редакторы у одной компании, а программу для проверки орфографии у другой. Пока компоненты отвечают стандартным протоколам, они работают вместе как единое целое. Поэтому можно обновлять или заменять существующие компоненты, не затрагивая остальную часть системы.
Компоненты взаимодействуют друг с другом посредством четко определенных интерфейсов.
Чтобы компоненты стали жизнеспособными программными инструментами, они должны взаимодействовать в пределах системы типа OLE, которая дает возможность использовать их за рамками конкретной прикладной программы. Система должна поддерживать взаимодействие компонентов, не накладывая ограничений на способ их реализации. OLE представляет собой именно такую систему. На данной схеме представлены OLE-технологии, которые тесно взаимосвязаны между собой и используют СОМ в качестве фундамента. Стрелками обозначается зависимость технологий, а точками возможное, но не обязательное использование.
Далее в этой главе будут рассматриваться отдельные технологии OLE, непосредственно относящиеся к объектам, и их преимущества для пользователей.
Структурированное хранение. Структурированное хранение -- это термин, который используется для описания технологии, обеспечивающей постоянство объектов. По сути, структурированное хранение является механизмом, который СОМ-объекты используют для считывания своих данных и записи их на диск. Данные становятся "структурированными" благодаря тому, что библиотеки OLE организуют их в виде логического файла. Эта технология сходна с тем, как файловая система организует файлы на жестком диске.
Два основных понятия, используемые в структурированном хранении, -- это поток и хранилище. Хранилище является аналогом каталога файловой системы, а поток -- аналогом файла. Хранилища могут содержать потоки и другие хранилища. В любой схеме структурированного хранения самое верхнее хранилище называется корневым. Оно представляет собой файл на диске (называемый структурированным файлом), который содержит логические хранилища и потоки более низкого уровня.
Технология структурированного хранения позволяет объектам логически организовать и систематизировать хранение своих данных. Каждое хранилище и поток являются "именованными блоками", которые используются объектами для хранения различных данных. Библиотеки OLE обеспечивают необходимые для этого функции.
Чтобы прочесть данные, объект открывает соответствующие хранилища и считывает данные из нужных потоков.
Для реализации хранилищ и потоков библиотеки OLE используют СОМ-объекты. В хранилищах реализован интерфейс IStorage, а в потоках -- интерфейс IStream. Чтобы приказать хранилищам и потокам выполнить некоторое действие, приложение получает указатель на интерфейс IStorage и/или IStream и вызывает соответствующие функции этих интерфейсов.
Кроме логического разделения данных, структурированное хранение обеспечивает множественный доступ к данным и обработку транзакций.
3.4 Типы и библиотеки типов
Библиотеки типов предоставляют сведения об объектах, их методах, интерфейсах, типах данных и исполняемых модулях. Вся эта информация располагается в файле, содержащем данные в особом формате. OLE обеспечивает стандартные методы для создания библиотек типов и поиска информации в них.
Так как информация о типе имеет стандартный, четко определенный формат, ее могут просматривать и отображать программы, называемые просмотрщиками объектов. А поскольку данные хранятся в файле, они могут быть получены даже тогда, когда в системе нет объектов такого типа.
Между прочим, файл библиотеки типов (TLB-файл) является структурированным файлом. Каждое логическое хранилище и поток в нем имеют четко определенное имя, что позволяет различным просмотрщикам анализировать их.
Постоянные объекты. Постоянными называются объекты, которые знают, каким образом читать и записывать информацию о своем состоянии на диск. Эту информацию могут считывать различные экземпляры объекта. Например, прежде чем быть удаленным из памяти, объект записывает на диск данные о своем состоянии. При создании другого экземпляра объекта того же типа новый объект может отыскать эти данные в заранее определенном месте и восстановить предыдущее состояние.
Когда составной документ записывается в постоянное хранилище, он приказывает всем своим СОМ-серверам сохранить себя в том же хранилище. Потом он передает каждому серверу указатель на поток ввода-вывода. Каждый сервер записывает свои данные в этот поток так, как считает нужным.
Унифицированная передача данных. Унифицированная передача данных (UDT) -- это OLE-технология, которая позволяет объектам обмениваться информацией стандартным образом. Кроме определения стандартов для обмена данными, UDT позволяет объектам извещать заинтересованные стороны (другие объекты) о том, что данные изменились. Те клиенты, которых интересуют изменения данных, могут при этом предпринять соответствующие действия. Объекты, взаимодействующие при помощи UDT, могут находиться в одном или разных адресных пространствах. UDT заменяет устаревшую к настоящему времени технологию DDE (Динамический обмен данными).
Имеются два значительных преимущества в применении OLE-технологии UDT по сравнению с традиционной технологией DDE и буфером обмена (clipboard):
- UDT обеспечивает более подробное описание совместно используемых данных. В этой технологии для описания данных и среды, на которой эти данные располагаются, используются две структуры, FORMATETС и STGMEDIUM. Структура FORMATETC определяет обобщенный формат буфера обмена усовершенствованный таким образом, чтобы описывать целевое устройство (монитор, принтер, плоттер и т.д.), способ интерпретации данных (например, как уменьшенное или полноэкранное изображение) и среду их хранения (например, оперативная память или диск).
- UDT дает возможность пользоваться другими средствами обмена, помимо физической памяти. К примеру, большое растровое изображение, может быть сохранено на диске в виде структурированного файла, и совместно использоваться посредством отображения файла в памяти. Имея дело с UDT можно гибко выбирать оптимальную среду хранения для тех данных, которые необходимо использовать совместно.
Соединяемые объекты. Соединяемые объекты позволяют устанавливать двунаправленный канал связи между объектом и его клиентами. В стандартной модели OLE клиент совершает вызовы для доступа к функциям объекта. Объект, однако, может дополнительно передать одному или нескольким своим клиентам информацию, которая не была затребована в запросе. Объекты, которые поддерживают пересылку клиентам дополнительной информации, называются соединяемыми. Соединяемые объекты называют также источниками советов, а клиентов -- приемниками советов.
Технология Drag-and-Drop. OLE-технология Drag-and-Drop ("перетащить и отпустить") определяет визуальный, ориентированный на использование мыши способ обмена информацией с помощью буфера обмена. Посредством мыши пользователь может переносить информацию из одного объекта, который называется источником перетаскивания, в другой, называемый приемником перетаскивания. Объекты источника и приемника могут находиться в разных адресных пространствах. Технология Drag-and-Drop определяет строгий протокол взаимодействия, которого придерживаются источники и приемники.
4. Использование OLE в Office
Так как технология OLE является наиболее популярной и используемой на данный момент, то рассматриваемые примеры встраивания и связывания относятся именно к ней. Для рядового пользователя программные продукты компании Microsoft стали своеобразным стандартом, поэтому целесообразным было бы проследить применение OLE в пакете Office.
В программах пакета Office широко используются две функции OLE, которые ориентированны на пользователей, не являющихся программистами, - Связывание и Внедрение.
Технология связывания и внедрения OLE в программах Excel, PowerPoint, Access и Outlook.
В Excel преобразуют, вставляют или связывают данные точно так же, как в Word. Нужно скопировать данные в исходном документе, а затем перейти в Excel и щёлкнуть в месте вставки. Вызвать команду Правка > Специальная вставка и в одноимённом диалоговом окне сделать необходимые установки. Программа PowerPoint создаёт слайды и презентации, которые могут быть внедрены в документы Word и Excel. Она же допускает внедрение объектов из Word и Excel.
Использовать технологию OLE можно при наличии исходного приложения, способного создать объект OLE (сервера OLE), и конечного приложения, принимающего объект OLE (клиента OLE). Программы Access и Outlook являются только клиентами OLE и потому не могут создавать объекты OLE. Если вставить таблицу, поля и записи Access в Excel или Word, в результате получится электронная таблица Excel или таблица Word, но не внешний объект. Данные, вставленные из Access и Outlook, не могут быть связаны. Как клиенты OLE программы Access и Outlook принимают объекты из других приложений. Можно вставить часть документа Word или электронной таблицы Excel в форму (или отчёт) Access или в элемент Outlook. Если просто воспользоваться командой Вставка > Объект панели элементов управления, новый или существующий объект будет внедрён в форму Access или в элемент Outlook.
Для создания таблицы Access можно использовать электронную таблицу Excel, но при этом не следует применять метод копирования и вставки. В Access возможен импорт электронной таблицы Excel или установка связи с ней. Нужно вызвать команду Файл > Внешние данные > Импорт. В раскрывшемся списке Тип файлов нужно указать элемент Microsoft Excel (*.xls). Выбрать книгу Excel в списке файлов, а затем при создании таблицы на основе данных, содержащихся в файле, следовать указаниям мастера импорта. Из программы Excel нужно вызвать команду Данные > преобразовать в Access, и если установлено расширение Access Links для программы Excel, рабочий лист будет преобразован в таблицу Access. Для обмена данными между программами Excel и Outlook можно использовать мастер импорта и экспорта последней.
Концепция обмена данными является одной из основных концепций среды Windows. Между объектами, которые обрабатываются различными прикладными программами, создаются информационные связи, например, между таблицами и текстами.
С точки зрения пользователя, не сведущего в подробностях объектно-ориентированного программирования, наиболее удобной и функционально полной схемой совместного использования документов является OLE. Её достоинства заключаются в следующем: во-первых, эта технология вобрала в себя лучшие возможности её предшественников, во-вторых, OLE сама по себе принесла много нового в мир информационных технологий, в-третьих, она удобна и проста в эксплуатации.
В силу того, что OLE разработана компанией Microsoft, использование этого метода в пакете Office становится более комфортным. Так как каждое приложение Office предполагает применения OLE, то разработчики программного обеспечения интегрировали простую схему её использования в эти продукты. Таким образом, любой пользователь не знающий особенностей внутренней работы OLE может связать или внедрить объект в документ.
Появление OLE и подобных ей методов (COM, CORBA) сыграло важную роль в продвижении информационных технологий. Данные схемы нашли широкое применение в WEB-конструкциях. Так для эффективного употребления WEB-приложений в Интернете очень часто применяются технологии совместного использования. Подобные технологии также эффективно используются в компьютерных сетях с применением архитектуры клиент-сервер.
ПРАКТИЧЕСКАЯ ЧАСТЬ
1.Общая характеристика задачи
Предприятие ООО «Красный Октябрь» осуществляет деятельность, связанную с выпуском различных видов деталей для промышленного оборудования. Для анализа качества выпускаемой продукции ежемесячно производится учет бракованной продукции. Данные учета бракованных деталей приведены на рис. 3.1.
1. Построить таблицы по приведенным ниже данным.
2. Выполнить расчет процентного отношения бракованных изделий к общему количеству выпущенных изделий, подвести итоги за месяц.
3. Результаты вычислений представить в виде консолидированной таблицы, содержащей сводные данные о выпуске бракованных изделий за квартал (рис. 3.2), и в графическом виде.
4. Сформировать и заполнить форму сводной ведомости по учету некачественной продукции (рис. 3.2).
Ведомость учета изготовленных деталей за январь 2006 г.
Код станка |
Количество выпущенных деталей, шт. |
Количество бракованных деталей, шт. |
% брака |
|
1 |
2600 |
35 |
||
2 |
3500 |
57 |
||
3 |
1890 |
26 |
||
4 |
2780 |
72 |
||
ИТОГО |
Ведомость учета изготовленных деталей за февраль 2006 г.
Код станка |
Количество выпущенных деталей, шт. |
Количество бракованных деталей, шт. |
% брака |
|
1 |
2980 |
26 |
||
2 |
3470 |
45 |
||
3 |
2100 |
12 |
||
4 |
3150 |
56 |
||
ИТОГО |
Ведомость учета изготовленных деталей за март 2006 г.
Код станка |
Количество выпущенных деталей, шт. |
Количество бракованных деталей, шт. |
% брака |
|
1 |
2700 |
42 |
||
2 |
2720 |
35 |
|
|
3 |
3140 |
39 |
||
4 |
3200 |
26 |
|
|
ИТОГО |
|
Рис. 3.2. Сводные данные о выпуске бракованной продукции за квартал
Описание алгоритма решения задачи
Предприятие ООО «Красный Октябрь» осуществляет деятельность, связанную с выпуском различных видов деталей для промышленного оборудования. Для анализа качества выпускаемой продукции ежемесячно производится учет бракованной продукции. Данные учета бракованных деталей приведены на рис.1.1.
1. Построить таблицы по приведенным ниже данным.
2. Выполнить расчет процентного отношения бракованных изделий к общему количеству выпущенных изделий, подвести итоги за месяц.
3. Результаты вычислений представить в виде консолидированной таблицы, содержащей сводные данные о выпуске бракованных изделий за квартал (рис. 1.2.), и в графическом виде.
4. Сформировать и заполнить форму ведомости по учету некачественной продукции (рис. 1.2.).
Ведомость учета изготовленных деталей за январь 2006 г. |
||||
Код станка |
Количество выпущенных деталей, шт. |
Количество бракованных деталей, шт. |
% брака |
|
1 |
2600 |
35 |
||
2 |
3500 |
57 |
|
|
3 |
1890 |
26 |
||
4 |
2780 |
72 |
|
|
ИТОГО |
|
|||
Ведомость учета изготовленных деталей за февраль 2006 г. |
||||
Код станка |
Количество выпущенных деталей, шт. |
Количество бракованных деталей, шт. |
% брака |
|
1 |
2980 |
26 |
||
2 |
3470 |
45 |
|
|
3 |
2100 |
12 |
||
4 |
3150 |
56 |
|
|
ИТОГО |
|
|||
Ведомость учета изготовленных деталей за март 2006 г. |
||||
Код станка |
Количество выпущенных деталей, шт. |
Количество бракованных деталей, шт. |
% брака |
|
1 |
2700 |
42 |
||
2 |
2720 |
35 |
|
|
3 |
3140 |
39 |
||
4 |
3200 |
26 |
|
|
ИТОГО |
|
|||
Рис.1.1. Данные о выпуске бракованной продукции по месяцам |
||||
ООО "Красный Октябрь" |
||||
Расчетный период |
|
|||
с |
по |
|||
__.__.20__ |
__.__.20__ |
|||
Сводная ведомость учета качества изготавливаемой продукции |
||||
Код станка |
Количество выпущенных деталей, шт. |
Количество бракованных деталей, шт. |
% брака |
|
1 |
|
|||
2 |
|
|
||
3 |
|
|||
4 |
|
|
||
ИТОГО |
|
Главный технолог_________________________
Рис.1.2. Сводные данные о выпуске бракованной продукции за квартал
Решение
1. Запустить табличный процессор MS Excel.
2. Создать книгу с именем «Красный Октябрь».
3. Лист 1 переименовать в лист с названием Ведомость за январь. Для переименования листа необходимо щелкнуть правой кнопкой мыши внизу слева по панели инструментов, где находится Лист 1. Из появившегося выпадающего списка выбрать команду «Переименовать», далее набрать текст.
4. На рабочем листе Ведомость за январь MS Excel создать таблицу ведомости учета изготовленных деталей за январь 2006 г.
5. Заполнить таблицу ведомости учета изготовленных деталей за январь 2006 г. исходными данными (рис.1.1).
Рис.2. Расположение таблицы «Ведомость учета изготовленных деталей за январь 2006 г.» на рабочем листе Ведомость за январь MS Excel.
6. Лист 2 переименовать в лист с названием Ведомость за февраль.
Для переименования листа необходимо щелкнуть правой кнопкой мыши внизу слева по панели инструментов, где находится Лист 2. Из появившегося выпадающего списка выбрать команду «Переименовать», далее набрать текст.
7. На рабочем листе Ведомость за февраль MS Excel создать таблицу ведомости учета изготовленных деталей за февраль 2006 г.
8. Заполнить таблицу ведомости учета изготовленных деталей за февраль 2006 г. исходными данными (рис.1.1).
Рис.3. Расположение таблицы «Ведомость учета изготовленных деталей за февраль 2006 г.» на рабочем листе Ведомость за февраль MS Excel.
9. Лист 3 переименовать в лист с названием Ведомость за март.
Для переименования листа необходимо щелкнуть правой кнопкой мыши внизу слева по панели инструментов, где находится Лист 3. Из появившегося выпадающего списка выбрать команду «Переименовать», далее набрать текст.
10. На рабочем листе Ведомость за март MS Excel создать таблицу ведомости учета изготовленных деталей за март 2006 г.
11. Заполнить таблицу ведомости учета изготовленных деталей за март 2006 г. исходными данными (рис.1.1).
Рис.4. Расположение таблицы «Ведомость учета изготовленных деталей за март 2006 г.» на рабочем листе Ведомость за март MS Excel.
12. Далее разработать структуру шаблона таблицы «Данные о выпуске бракованной продукции по месяцам». Структура таблицы «Данные о выпуске бракованной продукции по месяцам» приведена на рисунке 5.
Колонка электронной таблицы |
Наименование (реквизит) |
Тип данных |
Формат данных |
||
Длина |
Точность |
||||
A |
Код станка |
Числовой |
3 |
||
B |
Количество выпущенных деталей |
Текстовый |
30 |
||
C |
Количество бракованных деталей |
Текстовый |
30 |
||
D |
Процент брака |
Процентный |
4 |
2 |
Рис. 5. Данные о выпуске бракованной продукции по месяцам
13. Лист 4 переименовать в лист с названием Сводная ведомость. На листе построить исходную таблицу «Данные о выпуске бракованной продукции по месяцам».
Для организации межтабличных связей в целях автоматического заполнения графы « % брака» листа с названием «Январь» используем формулу: Количество бракованных деталей / количество выпущенных деталей. Далее выделяем весь столбец, кроме последней ячейки, так автоматически посчитается % брака в выделенных ячейках. В графе «Количество выпущенных деталей» в последней ячейке для подсчета «Итого» используем значок «Автосумма», изображенный на верхней панели, для вычисления итоговой суммы. В графе «Количество бракованных деталей» в последней ячейке для подсчета «Итого» вновь используем значок «Автосумма». В графе «% брака» в последней ячейке для подсчета «Итого» используем формулу: Количество бракованных деталей / количество выпущенных деталей, для этого используем итоговые значения из граф «Количество выпущенных деталей» и «Количество бракованных деталей». Данные вычисления применяем для листа с названием «Февраль» и «Март».
Для подведения итогов в меню «Данные» выберем пункт меню «Консолидация». В появившемся окне в ссылке указываем необходимый диапазон, для этого перейдем на лист с названием «Январь» и выделим ячейки В3-С6.Далее перейдем на лист с названием «Февраль» и выделим те же самые ячейки. Аналогично берем данные с листа «Март». Затем нажмем левой кнопкой мыши по значку «Добавить» и «ОК». В последней графе для подсчета % брака используем формулу: Количество бракованных деталей / количество выпущенных деталей. Выделяем весь столбец, кроме последней ячейки, так автоматически посчитается % брака в выделенных ячейках. Для подсчета «Итого» в графе «Количество выпущенных деталей» используем значок «Автосумма», изображенный на верхней панели для вычисления итоговой суммы. Для подсчета «Итого» в графе «Количество бракованных деталей» также используем значок «Автосумма». В графе «% брака» для подсчета «Итого» используем формулу: Количество бракованных деталей / количество выпущенных деталей, для этого используем итоговые значения из граф «Количество выпущенных деталей» и «Количество бракованных деталей».
Полученная сводная таблица приведена на рисунке 6.
Рис.6. Расположение таблицы «Сводная ведомость учета качества изготавливаемой продукции» на рабочем листе Сводная ведомость MS Excel.
14. Лист 5 переименовать в лист с названием График.
По данным сводной таблицы была построена гистограмма.
Для построения гистограммы используем «Мастер диаграмм».
Гистограмма приведена на рисунке 7.
Рис. 7. Гистограмма «Процент брака»
Литература
1. Буч 1998 - Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++, 2-е изд. - М.: Бином 1998.
2. Вендров 2000 - Вендров А.М. Проектирование программного обеспечения экономических информационных систем. - М.: Финансы и статистика, 2000.
3. Кулаичев 1999 - Кулаичев А.П. Методы и средства анализа данных в среде Windows. - М.: Информатика и компьютеры, 1999.
4. Терехов, Туньон 1999 - Терехов А.А., Туньон В. Современные модели качества программного обеспечения. BYTE/Россия. №12, 1999.
5. Одинцов 2002 - Одинцов И.О. Профессиональное программирование. Системный подход. - СПб.:BHV-Петербург, 2002.
6. Ботт 2001 - Ботт Эд. Microsoft Office. - М.: Бином, 2001.
7. Корнеев 1999 - Корнеев В.В. Параллельные вычислительные системы. - М.: Нолидж. 1999.
Размещено на Allbest
Подобные документы
Просмотр, запись и чтение данных буфера обмена. Динамический обмен данными (DDE), способы его организации. Атомы в Windows, их понятие и функции. Особенности задания параметра lParam сообщений DDE. Обмен и передача данных между клиентом и сервером.
лекция [303,7 K], добавлен 24.06.2009Обмен данными между приложениями Word и Excel в MS Office как основа их интеграции. Основные способы обмена данными между программами в MS Office. Связывание и внедрение объектов. Сравнительный анализ основных способов. Простое (статическое) копирование.
методичка [599,5 K], добавлен 10.11.2013Изучение процесса обмена данными между приложениями в среде MS Office, используя при этом разные форматы хранения и представления информации. Создание файла исходных данных формата CSV по шаблону. Выполнение тестов, расчетов с исходным набором данных.
курсовая работа [3,4 M], добавлен 27.01.2015Назначение буфера обмена, управление его данными в среде Windows. Взаимодействие между владельцем и клиентом буфера. Данные и тип дескриптора, для каждого типа предопределенных форматов. Воспроизведение данных буфера обмена с задержкой, окна просмотра.
реферат [58,9 K], добавлен 04.10.2010Характеристика буфера обмена как области памяти, резервируемой системой Windows для организации обмена данными между приложениями. Копирование и перемещение файлов как функции буфера обмена. Изучение абсолютной и относительной адресации ячеек MS Excel.
контрольная работа [13,9 K], добавлен 11.09.2011Описание входных и выходных документов и сообщений. Проектирование реляционной базы данных. Разработка механизмов управления данными в базе при помощи триггеров. Разграничение полномочий пользователя. Организация обмена данными между приложениями.
курсовая работа [1,6 M], добавлен 22.06.2011Критерии различия между механизмами межпроцессного обмена. Системные вызовы для работы с разделяемой памятью, выделение ее области. Создание и инициализация семафора. Задачи использования потока. Способ обмена между виртуальной машиной Linux и Windows.
лекция [485,2 K], добавлен 29.07.2012Технология внедрения и связывания объектов OLE (рисунков, таблиц Excel, редактора формул MS Equation). Варианты обмена данными. Внедрение объекта в документ. Команды "вставить", "специальная вставка". Windows-приложения в качестве приемника и источника.
контрольная работа [2,2 M], добавлен 25.07.2009Принцип работы и особенности интерфейса табличного процессора Microsoft Office Excel. Описание правил адресации ячеек, освоение приемов их выделения и заполнения данными. Обобщение приемов ввода и редактирования данных в ячейках. Элементы окна Excel.
лабораторная работа [2,7 M], добавлен 15.11.2010Обзор технологии COM (Component Object Technology). Особенности графического интерфейса пользователя и методы его реализации. Интерфейс операционных систем Microsoft Windows: работа с папками, файлами и окнами, использование буфера обмена, проводник.
контрольная работа [6,4 M], добавлен 16.04.2011