Преобразование простого текста в SQL в гиперссылку в Access
Я только что начал новую работу, впервые после окончания Университета, и как часть этой моей первой задачи я хочу преобразовать полностью базу данных Access 2003 в интерфейс Access, SQL-интерфейс.
База данных Access состоит из ряда внешних форм для добавления или просмотра данных о сотрудниках, в рамках которых имеются гиперссылки, указывающие на фотографию сотрудника и его резюме, расположенное на общем диске. Они были сохранены как гиперссылки в базе данных Access.
С тех пор я преобразовал данные в базе данных Access в SQL и сохранил их в базе данных для тестирования, теперь в рамках преобразования данных местоположения фотографий и CV были преобразованы в nvarchar из гиперссылки. Я сделал это с помощью SSMA.
Моя проблема сейчас в том, что мне нужно, чтобы эти текстовые ссылки отображались и работали как гиперссылки на внешнем интерфейсе, скрытые за словами "Фото" и "CV", но я не уверен, как это сделать, как в прошлом я ". Мы когда-либо использовали только SQL, а не Access.
Буду признателен за любую помощь или предложения, и если мне неясно в каких-либо областях, пожалуйста, не стесняйтесь задавать вопросы, и я постараюсь прояснить что-нибудь для вас.
3 ответа
Спасибо всем, что мне удалось решить эту проблему.
Ответ Everyones помог в решении проблемы, хотя в итоге мне пришлось воссоздать форму, так как это была проблема с тем, как она была создана.
Я просто воссоздал форму, добавил текстовые поля для отображения данных и включил свойство гиперссылки, после этого они работали нормально.
Во-первых, вам нужно отделить проблему хранения данных от обработки в виде гиперссылки. Тип данных гиперссылки в Access на самом деле представляет собой мемо-поле со встроенной в него гиперссылкой в определенном формате, именно потому, что наибольшее текстовое поле, которое может обрабатывать Access/Jet/ACE, составляет 255 символов, поэтому вам нужно поле-мемо для обработки даже приемлемых URL-адресов., Я не знаю точно, в каком формате вы в конечном итоге с помощью операции импорта SSMA. Я бы предпочел простой старый текст, потому что вам не нужно поле гиперссылки, чтобы использовать метод FollowHyperlink, чтобы открыть целевой файл.
Я бы посоветовал вам начать с проверки файла справки на наличие "гиперссылок". Я думаю, что вы хотели бы начать с "О гиперссылках", в частности, разделов о ЧАСТЯХ АДРЕСА HYPERLINK и ПРИМЕРАХ АДРЕСА HYPERLINK. Затем вы должны проверить справку для метода FollowHyperlink. Вместе это должно дать вам достаточно информации, чтобы понять, как с ними справиться.
Но я предполагаю несложное хранилище в вашем бэкэнде, то есть обычный текст или что-то, что Access может легко разобрать в простой текст.
Вы можете, например, сделать следующее:
- Вставьте командную кнопку или текстовый элемент управления в разделе подробностей.
- установите заголовок или метку на "Изображение"
- добавить событие "onclick"
- В процедуре onClick посмотрите на поле в базовом наборе записей, которое содержит путь к файлу
- используйте это значение для запуска метода followHyperlink
- Например, у вас может быть элемент управления командной кнопки или текстовый элемент управления для "картинки", другой для "cv" и т. Д.
Это одна из тех возможностей, которые у вас есть. Другой вариант - иметь основную форму "персонал" с подчиненной формой "документы персонала". Затем вы можете перечислить все документы, относящиеся к человеку, без каких-либо ограничений по количеству доступных документов (мы говорим здесь об отношении "один ко многим" между таблицей персонала и таблицей staffDocument), но принцип будет тот же: щелкнув или выполнив какое-то действие в строке staffDocument, вы получаете имя файла из базового набора записей и отправляете его в метод Application.FollowHyperLink. Это можно сделать с помощью командной кнопки на строках записи или даже с помощью кнопки commandBarControl на панели главного меню. или в контекстном меню. Основным преимуществом командных панелей является то, что вы можете добавлять дополнительные функциональные возможности, не увеличивая количество меток или элементов управления в вашей форме.
Например, commandBars позволяют очень легко добавить некоторые дополнительные commandBarButtons, которые также позволят вам (2) отправить файл кому-нибудь (с некоторым кодом автоматизации Outlook) или (3) скопировать файл на ваш компьютер.
При работе с commandBars типичное меню "документы" в наших приложениях будет выглядеть так:
http://www.imagechicken.com/uploads/1256033845035758200.gif
(извините за французскую версию, но...), где последние три commandBarControls позволяют просматривать / копировать / отправлять связанный файл. Два предыдущих позволяют загрузить файл со сканера или из существующего местоположения.