Rabu, 17 Juni 2015

Membuat Kode / Nomor Otomatis VB.Net

Kalau sebelumnya saya posting "Membuat Kode / Nomor Otomatis VB.6.0" kali ini saya akan membahas Membuat Kode / Nomor Otomatis VB.Net.

Langsung saja berikut Tampilan form yang sudah dibuat


Untuk koneksinya saya pisahkan dari formnya, disini saya buat di module, berikut codingnya :



Imports System.Data
Imports System.Data.SqlClient
Module Module1
    Public cmd As New SqlCommand
    Public baca As SqlDataReader
    Public koneksi As String
    Public conn As New SqlConnection
    Sub konek()
        koneksi = "Data Source=(local);Initial Catalog=BDPPRO;Integrated Security=true"
        conn = New SqlConnection(koneksi)
        If conn.State <> ConnectionState.Closed Then conn.Close()
        conn.Open()
    End Sub



Dan untuk coding di formnya sendiri :



Imports System.Data
Imports System.Data.SqlClient

Public Class Form1

    Sub NORAC()

        '--------panggil koneksi yang ada di module----------------
        Call konek()
        '----------------------------------------------------------


        cmd = New SqlClient.SqlCommand("Select * from BARANG where KODE in (select max(KODE) from BARANG)", conn)
        Dim hitung As Long
        Dim urutan As String
        baca = cmd.ExecuteReader
        baca.Read()
        If Not baca.HasRows Then
            urutan = "001" + "/" + "MDBK" + "/" + Format(Now, "yyMMdd")
        Else
            If Microsoft.VisualBasic.Right(baca.GetString(2), 6) <> Format(Now, "yyMMdd") Then
                urutan = "001" + "/" + "MDBK" + "/" + Format(Now, "yyMMdd")
            Else
                hitung = Microsoft.VisualBasic.Left(baca.GetString(2), 3) + 1
                urutan = Microsoft.VisualBasic.Left("00" & hitung, 3) + "/" + "MDBK" + "/" + Format(Now, "yyMMdd")
            End If
        End If
        TKODE.Text = urutan
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '-----------Pemanggilan coding kode otomatis-------------------
        Call NORAC()
        '---------------------------------------------------------------
    End Sub
End Class
 


Dan setelah selesai dengan codingnya saat dirunning berikut adalah hasilnya :

Selamat mencoba, jika ada error atau ada yang mau ditanyakan silahkan tinggalkan komentar
 

7 komentar:

  1. Balasan
    1. sama sama, terima kasih sudah berkunjung ke blog saya :)

      Hapus
  2. gan, gimana mengatasi warning message ="Operands of type Object used for operator '+'; runtime errors could occur." pada metode ini?

    BalasHapus
  3. nice .. simak disini gan dengan ODBC Connection https://bit.ly/2IarWwZ

    BalasHapus
  4. gan, mau tanya, cara diatas udah ane ikutin, pas running muncul, tapi urutan nya kok nggak berubah yaa ?? tetap urutan "1" terus, kenapa yaa ??

    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
    bukakoneksi()
    sql = "select * from nvrdevicessupp where invcode in (select max(invcode) from nvrdevicessupp)"
    Dim hitung As Long
    Dim urutan As String
    Dim da As New SqlCommand(sql, conn)
    Dim baca As SqlDataReader
    baca = da.ExecuteReader
    baca.Read()

    If Not baca.HasRows Then
    urutan = "C-INVBPN" + "/" + "0001" + "/" + Format(Now, "ddMMyy")
    Else
    If Microsoft.VisualBasic.Right(baca.GetString(2), 6) <> Format(Now, "ddMMyy") Then
    urutan = "C-INVBPN" + "/" + "0001" + "/" + Format(Now, "ddMMyy")
    Else
    hitung = "C-INVBPN" + "/" + Microsoft.VisualBasic.Left("000" & hitung, 3) + "/" + Format(Now, "ddMMyy")
    End If
    End If
    Label1.Text = urutan
    TextBox1.Text = urutan
    tutupkoneksi()
    End Sub

    BalasHapus
    Balasan
    1. C-INVBPN/0001/091019 <-- hasil nya tetap begitu, nggak nambah2 gan

      Hapus