Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Напомните (посоветуйте) как сделать
 
 автор: час   (24.05.2013 в 20:59)   личное сообщение
 
 

В папке лежат сканы PDF документов.
Надо в программе - в форме сделать поле, жмакая на которое можно было закрепить за оданной записью - конкретный документ(скан) из папки.

  Ответить  
 
 автор: Гоблин   (24.05.2013 в 21:34)   личное сообщение
 
 

Ну так это.. Путь к файлу записать в таблице. Как-то сам же мне это показывал.
У меня в базе работает подключение снимка в рамку на форме. Сами снимки лежат в папке с базой. Код на эту кнопку с пояснениями выглядит так.

Dim fileName As String
Dim result As Integer
DoCmd.GoToRecord , , acNewRec
With Application.FileDialog(msoFileDialogFilePicker)
.Title = "Выбор изображения" 'подпись окна
.Filters.Add "Все файлы", "*.*" 'список разрешенных к отображению файлов
.Filters.Add "Рисунки jpg", "*.jpg"
.Filters.Add "Рисунки bmp", "*.bmp"
.FilterIndex = 2 'В данном случае тип файла по умолчанию jpg 2 строка
.AllowMultiSelect = False 'разрешать выделять несколько файлов (через шифт)
.InitialFileName = CurrentProject.path 'имя файла

result = .Show
If (result <> 0) Then
fileName = Trim(.SelectedItems.Item(1)) 'в строке имя файла отобразить выделенный
'отобразить поле путь, вставить фокус, имя, убрать фокус с поля и убрать поле с видимости
Me![Путь1].Visible = True
Me![Путь1].SetFocus
Me![Путь1].Text = fileName
Me![Код].SetFocus
Me![Путь1].Visible = False
Me![Кнопка267].Visible = True

End If

End With

Рисунки прикрепляются к определенной записи, показываются в подчиненной ленточной форме.

  Ответить  
 
 автор: час   (24.05.2013 в 22:30)   личное сообщение
 
 

Да?
всё забыл...
100 лет не юзал.

  Ответить  
 
 автор: час   (25.05.2013 в 11:49)   личное сообщение
 
 

Решил делать так.
В таблицу в поле буду записывать путь к файлу, а в модуле буду держать функцию открытия.

Public Function FUN_OPEN_FILES_SHELL(PATH_FILE As String)
' открытие файла родной программой
'PATH_FILE = Chr(34) & "E:\_1_Клиенты\53.pdf" & Chr(34)

Dim Wshell
On Error GoTo NoData

   If FUN_FILE_YES_NO(PATH_FILE) = False Then
     MESS ("Нет файла по указанному пути " & PATH_FILE)
    Exit Function
   End If

Set Wshell = CreateObject("WScript.Shell")
Call Wshell.Run(PATH_FILE, 3, True)

Exit Function
NoData:
MESS ("Не удалось открыть файл")
End Function

  Ответить  
 
 автор: Гоблин   (25.05.2013 в 19:22)   личное сообщение
 
 

Полагаю вот эта строка
Set Wshell = CreateObject("WScript.Shell")
Call Wshell.Run(PATH_FILE, 3, True)
Открывает окно, где выбирается файл, путь к которому записывается в таблицу. А где запись в таблицу? Или это простой только просмоторщик. Тогда зачем акс мучить.

  Ответить  
 
 автор: час   (26.05.2013 в 12:20)   личное сообщение
 
 

это....
Public Function FUN_OPEN_FILES_SHELL(PATH_FILE As String)
-
функция открытия любого файла - его родной программой из access

  Ответить  
 
 автор: Анатолий (Киев)   (27.05.2013 в 16:50)   личное сообщение
 
 

Что такое MESS ?
И еще, Wshell.Run(PATH_FILE, 3, True) - в таком режиме выполнение кода продолжится только после закрытия вызванного приложения. Это нужно далеко не всегда. Логичнее передавать это значение через дополнительный аргумент функции.

  Ответить  
 
 автор: час   (28.05.2013 в 12:55)   личное сообщение
 
 

MESS - ЭТО ОКНО СООБЩЕНИЙ, ВМЕСТО ВСТРОЕННОГО. с НУЖНЫМИ МНЕ ВОЗМОЖНОСТЯМИ.

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList