/* */

Friday, January 22, 2010

[belajar-access] Mengambil Lokasi Nama Folder tertentu

----- Original Message -----
From: "Aksan Kurdin" <aksan.kurdin@gmail.com>
To: <belajar-access@yahoogroups.com>
Sent: Friday, January 22, 2010 10:16 AM
Subject: Re: [belajar-access] Mengambil Lokasi Nama Folder tertentu


> Buat satu module baru
> Lalu pastekan code berikut:
>
>
> Option Compare Database
> Option Explicit
>
> Const C_BE_NAME = "DATA.mdb"
>
> Public Function LinkTableIsMoved() As Boolean
> Dim db As DAO.Database
> Dim td As DAO.TableDef
> Dim result As Boolean
>
> On Error GoTo errHandle
>
> result = False
> Set db = CurrentDb
> For Each td In db.TableDefs
> If td.Connect <> "" Then
> result = Not (td.Connect = BEName())
> LinkTableIsMoved = result
> Set db = Nothing
> Exit Function
> End If
> Next
>

> Set db = Nothing
> Exit Function
>
> errHandle:
> MsgBox Err.Description, vbInformation, "Error#" & Err.Number
> Set db = Nothing
> End Function
>
>
> Public Function RelinkTables() As Boolean
> Dim db As DAO.Database
> Dim td As DAO.TableDef
>
> On Error GoTo errHandle
>
> If Not LinkTableIsMoved Then Exit Function
>
> RelinkTables = False
> Set db = CurrentDb
> For Each td In db.TableDefs
> If td.Connect <> "" Then
> td.Connect = BEName()
> td.RefreshLink
> End If
> Next
> RelinkTables = True
> Set db = Nothing
> Exit Function
>
> errHandle:
> MsgBox Err.Description, vbInformation, "Error#" & Err.Number
> Set db = Nothing
>
> End Function
>
> Function BEName() As String
> BEName = ";DATABASE=" & Left(CurrentProject.FullName,
> InStr(CurrentProject.FullName, CurrentProject.Name) - 1) & C_BE_NAME
> End Function
>
>
> Sub ListLinkTables()
> Dim db As DAO.Database
> Dim td As DAO.TableDef
>
> On Error GoTo errHandle
>
> Set db = CurrentDb
> For Each td In db.TableDefs
> If td.Connect <> "" Then
> Debug.Print td.Name, td.Connect
> End If
> Next
> Set db = Nothing
> Exit Sub
>
> errHandle:
> MsgBox Err.Description, vbInformation, "Error#" & Err.Number
> Set db = Nothing
>
> End Sub
>
>
>
> Setelah itu buat macro dengan nama autoexec, lalu isi dengan runcommand,
> parameternya RelinkTables
>
>
>
> Sekarang, kemanapun FE berpindah asal satu direktory dengan BE, maka
> relink otomatis dijalankan.
>
> Aksan Kurdin
>
>
>
> Belajar Office wrote:
> > Memang begitu Pak caranya bila berpindah drive. Kalau Bpk ingin cepat,
> > buat table baru yang berisi daftar table yang di link, kemudian buat
> > procedure link table sendiri. Inti perintahnya sederhana:
> >
> > DoCmd.DeleteObject acTable, NamaTable
> > DoCmd.TransferDatabase *_acLink_*, "Microsoft Access", NamaFileMDB,
> > acTable, NamaTable1, NamaTable2
> > Perintah diatas di loop dari record pertama s.d terakhir, satu kali
> > klik jalan semua. Bila Bpk gunakan Access Runtime, tidak ada fasilitas
> > Link Table Manager, Bpk harus buat program link table sendiri.
> > Thank's.
> >
> >
> > ------------------------------------------------------------------------
> > *From:* Darminto <su@darminto.web.id>
> > *To:* belajar-access@yahoogroups.com
> > *Sent:* Thu, January 21, 2010 12:34:35 PM
> > *Subject:* Re: [belajar-access] Mengambil Lokasi Nama Folder tertentu
> >
> > Aksan Kurdin wrote:
> >> Akali dengan mengambil lokasi aplikasi mdb berada.
> >> currentproject.path & "\eksport\"
> >> akan mengikuti sub folder di mana aplikasi berada.
> >>
> >> aksan kurdin
> >>
> >> end_chuzt wrote:
> >>>
> >>>
> >>> Mau tanya cara mengambil nama folder secara otomatis, misalkan
> >>> Nama folder aplikasi yg terletak di drive D dgn isi file sbb:
> >>> 1. Mydatabase.mdb
> >>> 2. Folder dengan nama eksport
> >>> Dalam suatu form pada mydatabase.mdb, misalkan form1 berisi teks
> >>> dengan nama teks1, nah isi teks1 ini aku mau defaultkan dengan isian
> >>> nama lokasi folder eksport secara otomatis ketika form1 dibuka, jadi
> >>> isinya semacam ini D:\Aplikasi\ eksport. Dan jika folder Aplikasi
> >>> dipindah ke drive c maka otomatis isinya semacam ini C:\Aplikasi\
> >>> eksport. adakah rekan2 milis dan para suhu access yg tau coddingnya
> >>> ?? Mohon pencerahannya. . Tks sebelum dan sesudahnya..
> >>>
> >> Saya juga punya pertanyaan yang kasusnya hampir sama dengan saudara
> >> end_chuzt@yahoo.co.id,
> > File pertama bernama *Data.mdb*. Saya membuat file *Analisis.mdb*
> > untuk melakukan analisis terhadap data di *Data.mdb *dengan melakukan
> > link table ke *Data.mdb *(dari Analisis.mdb)
> > File *Data.mdb *dan *Analisis.mdb *terletak di folder *D:\Aplikasi\*
> >
> > Yang jadi malah ketika folder aplikasi berpindah ke folder lain atau
> > ke drive lain, saya harus melakukan Link ulang [*Linked Table Manager*]
> >
> >
> > Maaf karena tidak membuat subject baru, karena masalah hampir sama
> > dengan saudara end_chuzt@yahoo.co.id
> > Terimakasih
> >
>
>


----------------------------------------------------------------------------
----


> Buat satu module baru
> Lalu pastekan code berikut:
>
>
> Option Compare Database
> Option Explicit
>
> Const C_BE_NAME = "DATA.mdb"
>
> Public Function LinkTableIsMoved() As Boolean
> Dim db As DAO.Database
> Dim td As DAO.TableDef
> Dim result As Boolean
>
> On Error GoTo errHandle
>
> result = False
> Set db = CurrentDb
> For Each td In db.TableDefs
> If td.Connect <> "" Then
> result = Not (td.Connect = BEName())
> LinkTableIsMoved = result
> Set db = Nothing
> Exit Function
> End If
> Next
>
> Set db = Nothing
> Exit Function
>
> errHandle:
> MsgBox Err.Description, vbInformation, "Error#" & Err.Number
> Set db = Nothing
> End Function
>
>
> Public Function RelinkTables() As Boolean
> Dim db As DAO.Database
> Dim td As DAO.TableDef
>
> On Error GoTo errHandle
>
> If Not LinkTableIsMoved Then Exit Function
>
> RelinkTables = False
> Set db = CurrentDb
> For Each td In db.TableDefs
> If td.Connect <> "" Then
> td.Connect = BEName()
> td.RefreshLink
> End If
> Next
> RelinkTables = True
> Set db = Nothing
> Exit Function
>
> errHandle:
> MsgBox Err.Description, vbInformation, "Error#" & Err.Number
> Set db = Nothing
>
> End Function
>
> Function BEName() As String
> BEName = ";DATABASE=" & Left(CurrentProject.FullName,
InStr(CurrentProject.FullName, CurrentProject.Name) - 1) & C_BE_NAME
> End Function
>
>
> Sub ListLinkTables()
> Dim db As DAO.Database
> Dim td As DAO.TableDef
>
> On Error GoTo errHandle
>
> Set db = CurrentDb
> For Each td In db.TableDefs
> If td.Connect <> "" Then
> Debug.Print td.Name, td.Connect
> End If
> Next
> Set db = Nothing
> Exit Sub
>
> errHandle:
> MsgBox Err.Description, vbInformation, "Error#" & Err.Number
> Set db = Nothing
>
> End Sub
>
>
>
> Setelah itu buat macro dengan nama autoexec, lalu isi dengan runcommand,
parameternya RelinkTables
>
>
>
> Sekarang, kemanapun FE berpindah asal satu direktory dengan BE, maka
relink otomatis dijalankan.
>
> Aksan Kurdin
>
>
>
> Belajar Office wrote:
> Memang begitu Pak caranya bila berpindah drive. Kalau Bpk ingin cepat,
buat table baru yang berisi daftar table yang di link, kemudian buat
procedure link table sendiri. Inti perintahnya sederhana:
>
> DoCmd.DeleteObject acTable, NamaTable
> DoCmd.TransferDatabase acLink, "Microsoft Access", NamaFileMDB, acTable,
NamaTable1, NamaTable2
>
> Perintah diatas di loop dari record pertama s.d terakhir, satu kali klik
jalan semua. Bila Bpk gunakan Access Runtime, tidak ada fasilitas Link Table
Manager, Bpk harus buat program link table sendiri.
>
> Thank's.
>
>
>
>
>
> --------------------------------------------------------------------------
----
> From: Darminto <su@darminto.web.id>
> To: belajar-access@yahoogroups.com
> Sent: Thu, January 21, 2010 12:34:35 PM
> Subject: Re: [belajar-access] Mengambil Lokasi Nama Folder tertentu
>
> Aksan Kurdin wrote:
> Akali dengan mengambil lokasi aplikasi mdb berada.
> currentproject.path & "\eksport\"
> akan mengikuti sub folder di mana aplikasi berada.
>
> aksan kurdin
>
> end_chuzt wrote:
>
> Mau tanya cara mengambil nama folder secara otomatis, misalkan
> Nama folder aplikasi yg terletak di drive D dgn isi file sbb:
> 1. Mydatabase.mdb
> 2. Folder dengan nama eksport
> Dalam suatu form pada mydatabase.mdb, misalkan form1 berisi teks
dengan nama teks1, nah isi teks1 ini aku mau defaultkan dengan isian nama
lokasi folder eksport secara otomatis ketika form1 dibuka, jadi isinya
semacam ini D:\Aplikasi\ eksport. Dan jika folder Aplikasi dipindah ke drive
c maka otomatis isinya semacam ini C:\Aplikasi\ eksport. adakah rekan2 milis
dan para suhu access yg tau coddingnya ?? Mohon pencerahannya. . Tks sebelum
dan sesudahnya..
>
> Saya juga punya pertanyaan yang kasusnya hampir sama dengan saudara
end_chuzt@yahoo.co.id,
>
> File pertama bernama Data.mdb. Saya membuat file Analisis.mdb untuk
melakukan analisis terhadap data di Data.mdb dengan melakukan link table ke
Data.mdb (dari Analisis.mdb)
> File Data.mdb dan Analisis.mdb terletak di folder D:\Aplikasi\
>
> Yang jadi malah ketika folder aplikasi berpindah ke folder lain atau ke
drive lain, saya harus melakukan Link ulang [Linked Table Manager]
>
>
> Maaf karena tidak membuat subject baru, karena masalah hampir sama
dengan saudara end_chuzt@yahoo.co.id
> Terimakasih
>
>
>
>

No comments:

Post a Comment