kalau saran saya mas widodo sebelum di buat di ACCDE, kontrol Shiftntya di disable dan seluruh tablenya di hiden.biar lebih aman.
semoga membantu
From: Widodo <widodo_wiranto@yahoo.co.id>
To: belajar-access@yahoogroups.com
Sent: Thursday, April 5, 2012 10:21 AM
Subject: RE: [belajar-access] Bagaimana mengambil field secara otomatis dari form login
Dear Mas Sofyan,
Terimakasih banyak, sangat membantu sekarang sudah jalan.
Semoga Mas Sofyan Sehat dan Sukses selalu, amin ya robbal alamin.
Satu lagi Mas, kemarin programnya saya sudah buat jadi ACCDE, tpi sama orang audit di buka pakai shift + enter, ga taunya databasenya kebuka semua dan bisa di edit, bagaimana cara proteksinya yah...
Terimakasih
Salam
Widodo
From: belajar-access@yahoogroups.com [mailto:belajar-access@yahoogroups.com] On Behalf Of Sofyan Efendi
Sent: 04 April 2012 14:43
To: belajar-access@yahoogroups.com
Subject: Re: [belajar-access] Bagaimana mengambil field secara otomatis dari form login
Dear mas Widodo, mohon maaf procedure yg Mas saya revisi menjadi:
Private Sub Command6_Click()
DoCmd.DeleteObject acQuery, "qbod"
dodo = Nz(DLookup("[Level]", "[Tbl_Password]", "[Passwd] = '" & _
TxtPass.Value & "' AND [User] = '" & TxtUser.Value & "'"), 0)
Dim dbSample As Database
Dim qdfSample As QueryDef
Set dbSample = CurrentDb()
If dodo = 2 Then
Set qdfSample = dbSample.CreateQueryDef("qbod", "SELECT SOP.Kode_Dokumen, SOP.Dept, SOP.SubDept, SOP.Nama_Dokumen, SOP.Revisi, SOP.Status, thakakses.mgr_hrd" & _
" FROM SOP INNER JOIN thakakses ON SOP.Kode_Dokumen = thakakses.Kode_Dokumen" & _
" WHERE (((SOP.Status) = 'Release') And ((thakakses.bod) = -1))" & _
" ORDER BY SOP.Dept, SOP.SubDept;")
ElseIf dodo = 3 Then
Set qdfSample = dbSample.CreateQueryDef("qbod", "SELECT SOP.Kode_Dokumen, SOP.Dept, SOP.SubDept, SOP.Nama_Dokumen, SOP.Revisi, SOP.Status, thakakses.mgr_hrd" & _
" FROM SOP INNER JOIN thakakses ON SOP.Kode_Dokumen = thakakses.Kode_Dokumen" & _
" WHERE (((SOP.Status) = 'Release') And ((thakakses.mgr_hrd) = -1))" & _
" ORDER BY SOP.Dept, SOP.SubDept;")
End If
Form_flogin.Visible = False
DoCmd.OpenForm "fbod"
qdfSample.Close
dbSample.Close
'If dodo = 1 Then
' Me.txtlevel = dodo
' Form_flogin.Visible = False
' DoCmd.OpenForm "fbod"
'ElseIf dodo = 2 Then
' Form_flogin.Visible = False
' DoCmd.OpenForm "fbod"
'ElseIf dodo = 3 Then
' Form_flogin.Visible = False
' DoCmd.OpenForm "fmgrmkt"
'ElseIf dodo = 35 Then
' Me.txtlevel = dodo
' 'DoCmd.Close acForm, Me.Name, acSaveYes
' DoCmd.OpenForm "fbod"
'Else
' MsgBox "Maaf User dan atau Password Salah, Silahkan coba lagi..., Untuk registrasi harap hubungi MS Departemen.", vbCritical, "Perhatian..."
' dodo = 0
' Me.TxtUser.SetFocus
'End If
End Sub
Dengan demikian, kita tidak perlu buat banyak form dan query... Cukup dibuat definisi query masing2 level di VBA...
Wassalaamu'alaikum Warahmatullahi Wabarakatuh,
Sofyan Efendi
http://imopi.wordpress.com/
----- Original Message -----
From: Widodo
Sent: Wednesday, April 04, 2012 1:43 PM
Subject: RE: [belajar-access] Bagaimana mengambil field secara otomatis dari form login [1 Attachment]
Dear Mas Sofyan,
Terimakasih banyak atas bantuannya, saya sudah coba belum sukses juga/belum sesuai keinginan... terlampir saya kirimkan contoh programnya, tolong dibantu yah..
Wassalamu alaikum wr wb.
widodo
From: belajar-access@yahoogroups.com [mailto:belajar-access@yahoogroups.com] On Behalf Of Sofyan Efendi
Sent: 03 April 2012 16:14
To: belajar-access@yahoogroups.com
Subject: Re: [belajar-access] Bagaimana mengambil field secara otomatis dari form login
Dear Mas Widodo,
Tolong diganti kolom Expr1:.. dst semuanya menjadi BOD saja yg merujuk ke table thakakses. Kemudian pada kriteria, ganti dari Yes menjadi: iif([forms]![flogin]![txtuser]="bod";-1;0). Insya Allah bisa mas...
Namun cara ini mungkin kurang praktis dalam dunia perdatabasean ... biasanya satu query, satu form.. Bisa tidaknya send kabar kemari yah, insya Allah kami coba bantu lagi...
Wassalaamu'alaikum Warahmatullahi Wabarakatuh,
Sofyan Efendi
http://imopi.wordpress.com/----- Original Message -----
From: Widodo
Sent: Tuesday, April 03, 2012 3:20 PM
Subject: RE: [belajar-access] Bagaimana mengambil field secara otomatis dari form login
Terimakasih Mas Sofyan, yang pengin dirubah adalah fieldnya merujuk pada text box di form login bukan criteria yang merujuk ke form login, saya coba berdasarkan petunjuk Mas Sofyan seperti dibawah ini, harusnya hasilnya adalah yes/no namun yang keluar adalah tulisan 'bod' semua karena saya login menggunakan akses bod.
From: belajar-access@yahoogroups.com [mailto:belajar-access@yahoogroups.com] On Behalf Of Sofyan Efendi
Sent: 03 April 2012 9:44
To: belajar-access@yahoogroups.com
Subject: Re: [belajar-access] Bagaimana mengambil field secara otomatis dari form login
Dear Mas Widodo, satu saja form dan querynya, nanti di querynya menggunakan criteria yg merujuk langsung ke text box user name di form login...
Wassalaamu'alaikum Warahmatullahi Wabarakatuh,
Sofyan Efendi
http://imopi.wordpress.com/----- Original Message -----
From: Widodo
Sent: Tuesday, April 03, 2012 9:16 AM
Subject: RE: [belajar-access] Bagaimana mengambil field secara otomatis dari form login
Saya sudah coba belum sukses yah...J
Jadi ceritanya gini.... saya buat program untuk distribusi SOP, terdapat 35 user dengan 35 akses file SOP yang berbeda-beda setiap usernya, saya buat 3 tabel sbb :
1. Tabel password
2. Tabel hak akses
3. Tabel prosedur
Saat ini saya membuat 35 queri dan 35 form, setiap user login langsung open form sesuai hak aksesnya. Saat ini saya buat query seperti gambar dibawah, misalkan usernya BOD saya buat query dan form khusus untuk BOD, begitu juga untuk marketing manager dan seterusnya. Maunya saya cukup 1 query dan 1 form untuk semua user, pada saat login/open/load form langsung merubah query sesuai user namenya. Bagaimana caranya yah...
Mohon bantuan para master. terimakasih
From: belajar-access@yahoogroups.com [mailto:belajar-access@yahoogroups.com] On Behalf Of Mas Uki
Sent: 02 April 2012 8:42
To: belajar-access@yahoogroups.com
Subject: Bls: [belajar-access] Bagaimana mengambil field secara otomatis dari form login
Dear Bung Widodo,
Sepertinya saya pernah mengalami hal seperti ini, dan solusinya menggunakan QueryDef, caranya anda harus mendefinisikan nama query dan SQL-nya lewat VBA, jadi harus dikaitkan dengan event atau apapun yang bisa memanggilnya (dengan form misalnya). (Maaf gambar terlalu kecil, saya tidak dapat dengan jelas membacanya).
Saya asumsikan nama tabel : MASTER
Nama field yang dimaksud terdapat pada TextBox dengan nama NO_ID (bisa diganti dengan combo box yg bisa dipilih)
Nama event : misal tombol (Command1) diklik
Private Sub Command1_Click()
On Error Resume Next
Dim kode, SQL As String
Dim db As Database
Dim nmkueri As QueryDef
kode = Me.NO_ID
SQL = "SELECT " & kode &" FROM MASTER"
Set db = CurrentDb
Set nmkueri = db.CreateQueryDef("LiatKode", SQL)
DoCmd.OpenQuery "LiatKode", acViewNormal, acReadOnly
db.QueryDefs.Delete "LiatKode"
db.Close
End Sub
Anda bisa memodifikasi sesuai dengan kebutuhan anda, semoga membantu.
Best Regards,
Sukiono
PT. Kumala Kencana Cipta
www.kumalahome.com
Dari: Widodo <widodo_wiranto@yahoo.co.id>
Kepada: belajar-access@yahoogroups.com
Dikirim: Minggu, 1 April 2012 17:57
Judul: [belajar-access] Bagaimana mengambil field secara otomatis dari form login [1 Attachment]
Dear Para master Access,
Bagimana caranya membuat query yang fieldnya ngambil langsung dari User name di form login, sehingga saya tidak perlu membuat banyak query dan form. Terlampir saya kirimkan capture querynya. Terimakasih
Salam
Widodo
Tidak ada komentar:
Posting Komentar