Tampilan Menu Ribbon Dynamic Dari Database MySQL Server VB6

Pada postingan kali masih berhubungan dengan ActiveX Ribbon hanya saja sedikit berbeda, pada artikel sebelum telah admin bahas tentang bagaimana membuat menu tampilan dari ActiveX Ribbon Membuat Menu Ribbon pada Visual Basic 6.0, Sistem Informasi SMS Gateway | Gammu MySQL Direct VB6 hanya saja pada artikel sebelumnya menu yang admin buat pada Ribbon merupakan menu yang bersifat tetap (static) tetapi kali ini admin akan mencoba membuat Menu Ribbon Dynamic berasal dari database. Pada umumnya menu yang bersifat dynamic dikembangkan menjadi menu hak akses level user dan untuk database yang admin gunakan ialah MySQL Server 5.2.

Tampilan Menu Ribbon Dynamic Dari Database MySQL Server VB6
Interface Tampilan
Source Code Tampilan Menu Ribbon Dynamic Dari Database MySQL Server VB6

Buatlah terlebih dahulu databasenya untuk nama terserah dari selera agan-agan saja diteruskan dengan pembuatan tabel menggunakan script MySQL Server seperti dibawah ini:

CREATE DATABASE `BelajarSqlDirect`CHARACTER SET 'latin1'COLLATE 'latin1_swedish_ci';

CREATE TABLE `menuinduk` (  `KdMenuInduk` varchar(10) DEFAULT NULL,  `mnInduk` varchar(30) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

CREATE TABLE `mnanak` (  `kdMnAnak` int(11) DEFAULT NULL,  `Menu_ANAK` varchar(30) DEFAULT NULL,  `mnInduk` varchar(10) DEFAULT NULL) ENGINE=InnoDB DEFAULT CHARSET=latin1;

Setelah pembuatan database dan script selesai inputkan beberapa data pada tabel menuinduk dan mnanak. Perlu diingat Field yang berrelasi antara tabel menuinduk dan mnanak adalah tabel menuinduk : KdMenuInduk dan Primary Key tabel mnanak  : mnInduk. Kalau malas menginputkan record satu persatu bisa menggunakan script dibawah ini

INSERT INTO `menuinduk` (`KdMenuInduk`, `mnInduk`) VALUES   ('1','File Master'),  ('2','Proses Data'),  ('3','Setting'),  ('4','Laporan');


INSERT INTO `mnanak` (`kdMnAnak`, `Menu_ANAK`, `mnInduk`) VALUES   (1,'Entry Data Suplier','1'),  (2,'Entry Data Barang','1'),  (3,'Entry Data Satuan','1'),  (4,'Entry Data Barang Hilang','1'),  (5,'Entry Data Barang Rijeck','1'),  (6,'Penjualan Barang','2'),  (7,'Piutang Barang','2'),  (8,'Hutang Customer','2'),  (9,'Entry Data Customer','1'),  (10,'Laporan Suplier','4'),  (11,'Laporan Barang Masuk','4'),  (12,'Laporan Barang Rijeck','4'),  (13,'Laporan Customer','4'),  (14,'Setting PPN','3');

Selanjutnya buka Microsoft Visual Basic 6.0 - StandartEXE buat form dan tambahkan ke dalam form ActiveX Ribbon dan ImageList Control (Microsoft Windows Common Controls 6.0 (SP4). Klik kanan pada ImageListControl kemudian pilih menu properties dan pilihlah icon-icon sejumlah record pada tabel mnanak, dikarenakan index image pada ImageListControl mengikuti index field kdMnAnak. Tambahkan juga 1 buah module untuk mendeklarasikan variabel dan pembuatan sub function koneksi ke database, seperti dibawah ini : 

Public CN As New MYSQL_CONNECTION
Public xRs As New MYSQL_RS

Sub Koneksi()
Dim NServer, NUser, NPass, NDatabase As String
NServer = "localhost"
NUser = "root"
NPass = ""
NDatabase = "BelajarSQLDirect"
CN.CommandTimeout = 0
If CN.State = MY_CONN_OPEN Then
   CN.CloseConnection
   Set CN = New MYSQL_CONNECTION
   CN.OpenConnection NServer, NUser, NPass, NDatabase
   CN.CursorLocation = adUseClient
Else
   Set CN = New MYSQL_CONNECTION
   CN.OpenConnection NServer, NUser, NPass, NDatabase
   CN.CursorLocation = adUseClient
End If
End Sub

Double klik pada form dan pilih prosedur Form_Load dan copykan syntak untuk menampilkan menu dari record-recpod tabel database MySQL Server 5.2 dibawah ini 

Call Koneksi
Left = Screen.Width / 2 - Width / 2
Top = Screen.Height / 2 - Height / 2
Theme = 1
ACPRibbon1.Theme = Theme
' 0 - Black
' 1 - Blue
' 2 - Silver

ACPRibbon1.ImageList = ImageList1
ACPRibbon1.ButtonCenter = True
Dim xRsAnak As New MYSQL_RS
Dim xRsInduk As New MYSQL_RS
Set xRsInduk = New MYSQL_RS
xRsInduk.OpenRs "select * from menuinduk group by KdMenuInduk", CN, 1, 3
If xRsInduk.RecordCount > 0 Then
xRsInduk.MoveFirst

While Not xRsInduk.EOF
ACPRibbon1.AddTab xRsInduk.Fields("KdMenuInduk"), _
xRsInduk.Fields("mnInduk")
ACPRibbon1.AddCat xRsInduk.Fields("KdMenuInduk"), _
xRsInduk.Fields("mnInduk"), _
xRsInduk.Fields("mnInduk"), False
Set xRsAnak = New MYSQL_RS
xRsAnak.OpenRs "select * from mnanak where mnInduk='" & xRsInduk.Fields("KdMenuInduk") & "'", CN, 1, 3

If xRsAnak.EOF = False Then
xRsAnak.MoveFirst
While Not xRsAnak.EOF
ACPRibbon1.AddButton xRsAnak.Fields("kdMnAnak"), _
xRsInduk.Fields("mnInduk"), _
xRsAnak.Fields("Menu_ANAK"), _
Int(xRsAnak.Fields("kdMnAnak")), False, xRsAnak.Fields("Menu_ANAK")
xRsAnak.MoveNext
Wend
End If
xRsInduk.MoveNext
Wend
End If

'# Repaint Ribbon
Me.BackColor = ACPRibbon1.BackColor
ACPRibbon1.Refresh

Untuk lebih jelas dan detailnya sourcode Tampilan Menu Ribbon Dynamic Dari Database MySQL Server VB6 ini bisa didownload di LINK INI. Kemudian RUN/F5 maka menu ribbon akan tampil sesuai dengan data-data record tabel didalam database MySQL Server 5.2, metode ini biasa admin gunakan untuk membuat hak akses dari setiap user yang berlevel berbeda. Semoga artikel kali ini dapat bermanfaat bagi pembaca-pembaca yang budiman

Related

Visual Basic Classic 8629190919701222200

Post a Comment

Perhatian !!
- Berkomentarlah dengan menggunakan bahasa yang baik dan sopan dan sesuai topik pembahasan
- Dilarang menjadikan referensi artikel web ini tanpa menyertakan sumbernya

emo-but-icon

Terbaru

Random Artikel

Memuat...

Contact Us

Name

Email *

Message *

item