Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VB_6.doc
Скачиваний:
134
Добавлен:
01.12.2018
Размер:
3.77 Mб
Скачать

Глава 11. Обмен данными между приложениями.

11.1. Экспорт данных из бд в текстовый файл.

Чтобы экспортировать таблицу БД в текстовый файл, необходимо открыть базу данных и в окне БД выбрать требующуюся таблицу, после чего выполнить “Файл \ Сохранить как \ экспорт”. Откроется окно “Сохранение объекта”:

В этом окне выбираем: “во внешнем файле или базе данных” и нажимаем Ok. Откроется окно “Сохранение объекта”. В нем нужно перейти в папку, в которой нужно сохранить таблицу в виде текстового файла, в поле “Имя файла” ввести имя, под которым будет сохранен файл, а в поле “Тип файла” раскрыть список типов и выбрать “Text Files”.После этого нужно нажать кнопку “Экспорт”. Имя файла можно не менять на этом этапе. Тогда он получит то имя, которое имеет таблица в базе данных. Открывается окно “Экспорт текста”, в котором выбираем пункт “с разделителями - поля разделяются запятыми или табуляцией” и нажимаем “Далее”

Вид окна “Экспорт текста” изменяется. Теперь в нем появляется возможность выбрать тип разделителей. Выбираем “пробел” и нажимаем “Далее”.

Вид окна “Экспорт текста” снова меняется. Теперь в нем сообщается, что все необходимые для экспорта сведения указаны и требуется нажать кнопку “Готово” для завершения процесса экспорта. Делаем это.

В результате появляется сообщение об успешности экспорта. Остается только нажать Ok.

Выходим из “Access” и видим, что в папке проекта, куда мы экспортировали таблицу, появился наш текстовый файл. Теперь можно дать ему какое-либо другое имя. Полученный файл будет иметь расширение txt и, значит, его можно обрабатывать не в рамках технологий баз данных, а с помощью файловых операторов.

Чтобы не было проблем с экспортом данных в текстовый файл, нужно при создании таблицы в Access переход к следующему полю записи делать путем нажатия клавиши Tab, а в конце каждой строки таблицы нажимать клавишу Enter.

11.2. Технология внедрения и связывания (ole).

Средством, обеспечивающим обмен информацией между двумя приложениями, (сервером и клиентом), является OLE-технология. Приложение-сервер – это приложение, являющееся источником данных, а приложение-клиент – это приложение, получающее данные. Например, если Вы хотите в своем VB-приложении получить доступ к документу Word, то сервером будет Word, а Ваше VB-приложение будет клиентом.

В рамках OLE-технологии любой элемент данных, созданный приложением-сервером, называется объектом. Например, фрагмент текста из файла, созданного в Word, или весь файл, страница Excel, таблица или запрос БД Access, рисунок, созданный в Paint или звуковой файл, созданный в Sound Recorder, будут объектами. Чтобы обмен информацией между клиентом и сервером стал возможен, оба приложения должны быть установлены на Вашем ПК.

Преимущество OLE-технологии состоит в том, что приложение-клиент не обязано “знать”, как нужно обращаться с поставляемым ему объектом, поскольку обработка информации будет производиться приложением-сервером.

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

Метод связывания целесообразно применять, если объект со временем изменяется (например, другими пользователями сети) и Вы хотите в своем приложении всегда иметь доступ к текущему состоянию объекта. Вы легко можете переключиться из своего приложения в приложение-сервер, обработать там документ и, закрыв его, автоматически вернетесь в свое приложение.

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

Взаимодействие VB-приложения с другими приложениями проще всего осуществить с помощью элемента управления OLE-контейнер. Он помещается на форму так же, как и любой другой элемент управления.

Если объект связывается с VB-приложением с помощью OLE-контейнера, то в OLE-контейнер передается ссылка на объект, а не действительные данные связываемого объекта. Чтобы начать работать со связанным объектом, его нужно активизировать. При этом автоматически запускается приложение, создавшее объект, и редактирование данных будет производиться в его среде, т.е. вне OLE-контейнера.

Если объект внедряется в Ваше приложение, то в OLE-контейнер передается копия этого объекта. Все данные внедренного объекта передаются в OLE-контейнер и содержатся в нем. Внося изменения в данные внедренного объекта, Вы будете менять только копию объекта, а не его оригинал. Это не означает, что Вы не можете сохранить свою работу с внедренным объектом. Данные внедренного объекта могут быть сохранены программным путем в бинарном (двоичном) файле. Для этого можно, например, создать на форме пользовательское меню с пунктом “Сохранить” и записать следующий код:

Private Sub mnuSave_Click()

Dim numf%

numf = FreeFile

Open CurDir$ & “\work.dat” For Binary As #numf

OLE1.SaveToFile numf

Close #numf

End Sub

После этого Вы можете открыть этот файл в своем VB-приложении, создав пункт меню “Открыть” со следующим кодом:

Private Sub mnuOpen_Click()

Dim numf%

numf = FreeFile

Open CurDir$ & “\work.dat” For Binary As #numf

OLE1.ReadFromFile numf

Close #numf

End Sub

При связывании в Ваше приложение вставляется ссылка на объект, соответствующая его состоянию на момент связывания. Если объект после этого был кем-то изменен, то отобразить текущее состояние объекта в VB-приложении можно либо по запросу, либо автоматически. При автоматической связи все изменения в данных будут отображаться в Вашем приложении при каждом его запуске. При связи по запросу Вы не увидите этих изменений, пока не примените к элементу OLE метод Update, например: OLE1.Update.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]