Pratinjau Dokumen dalam Formulir Microsoft Access
Cakupan Proyek
Kami baru-baru ini menambahkan pusat dokumen ke proyek yang memungkinkan pengguna untuk melampirkan dokumen seperti pdf, kata, txt, dan gambar ke proyek. Selain itu, mereka akan memiliki proses otomatis yang diatur untuk membaca email masuk dan menyimpan lampiran email ke drive jaringan. Tujuannya adalah untuk memungkinkan pengguna melihat dokumen baru yang telah diterima dan menyimpannya ke lokasi yang benar. Tentu saja kami akan mengatur proses untuk mengekstrak informasi seperti subjek dan dari siapa dokumen itu berasal untuk memungkinkan pengguna memahami informasi umum dokumen dan ini akan disimpan ke tabel. Selain itu, pengguna harus dapat melihat dokumen untuk membaca isinya.
Solusi
Kami tentu saja dapat meluncurkan aplikasi lain dari akses untuk melihat dokumen Word di Word dan pdf di Adobe Acrobat dll. Namun ketika pengguna hanya memiliki satu layar untuk bekerja, ini berarti beralih dari satu aplikasi ke aplikasi lain dan jika ada beberapa jenis dokumen, maka tentu ini berarti membuka banyak aplikasi. Oleh karena itu, kami menyediakan solusi sederhana yang akan meluncurkan dokumen dalam bentuk akses baru dengan tata letak tab yang memungkinkan pengguna mengelola sistem dengan mudah. Dalam contoh di bawah ini saya menggunakan kode yang akan membaca file dari jalur yang diberikan, yang perlu diakses pengguna di komputer mereka. Atau, jika dokumen disimpan ke tabel SQL, kita dapat memodifikasi kode untuk menyimpan sementara dokumen ke drive lokal dan meluncurkan file dari lokasi sementara. Jika Anda menggunakan metode ini, Anda juga ingin memasukkan kode tambahan untuk menghapus file temp setelah melihat/menutup formulir.
Contoh Formulir
Contoh formulir yang disediakan harus diluncurkan dengan melewati jalur dokumen di OpenArgs
DoCmd.OpenForm "frmDocumentReview", OpenArgs:= Me.DocumentPath
Kode saat memuat memverifikasi bahwa jalur telah dilewati dan juga jika file tersebut ada. Jika semuanya baik-baik saja, prosesnya akan berlanjut.
Private Sub Form_Load()
If IsNull(Me.OpenArgs) Then
MsgBox "No document to show", , "Path not specified"
Exit Sub
Else
If Not FSO.FileExists(Me.OpenArgs) Then
MsgBox "Your computer does not have access to the named file. You need to download the file to view it."
Exit Sub
Else
Showdocument OpenArgs
End If
End If
End Sub Akhirnya kode memuat dokumen. Sub Showdocument menangani berbagai jenis dokumen. Sebagian besar jenis dokumen menggunakan kasus lain. Formulir itu sendiri memiliki kotak teks tersembunyi yang disebut txtPath yang menyimpan nilai OpenArgs (Nama file dan jalur) ini dapat berupa drive yang dipetakan atau UNC. Objek browser web menyimpan =[txtPath] sebagai sumber kendali. Namun dokumen word tidak bekerja dengan cara yang sama, dan Anda harus terlebih dahulu menyimpan dokumen sebagai html. Saya menggunakan metode yang aslinya ditulis oleh Crystal Long dan membuat beberapa perubahan kecil.
Private Sub Showdocument(strPath As String)
Dim strExt As String
Dim sPathFileHTML As String
Dim oWordApp As Object
Dim oDoc As Object
strExt = GetFileExt(strPath)
Select Case strExt
Case "docx"
'save word doc as HTML
sPathFileHTML = CurrentProject.Path & "\temp.html"
Set oWordApp = CreateObject("Word.Application")
Set oDoc = oWordApp.Documents.Open(strPath)
oDoc.SaveAs2 FileName:=sPathFileHTML, FileFormat:=8 'wdFormatHTML
oDoc.Close False
oWordApp.Quit
Set oDoc = Nothing
Set oWordApp = Nothing
Case Else
sPathFileHTML = strPath
End Select
'open in browser control
Me.txtPath.Value = sPathFileHTML
End Sub