Terima kasih untuk teman2 semua, dengan milis ini kita bisa menemukan jalan
keluar untuk memecahkan masalah...

 

   _____  

From: aksan kurdin [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, May 21, 2008 7:42 PM
To: [email protected]
Subject: Re: [belajar-access] Re: Membuat No ID

 

Ide sulaihan dan harry sudah sangat mengena. Membangun logika mengambil
nomor urut dengan memecahkan format menurut dua bagian:

ddmmyyx

dimana ddmmyy adalah format tanggal sekarang tgl-bulan-tahun, dan x adalah
running number terbesar hari ini di tambahkan satu.

sederhananya begini:

    cek di tabel sudah ada format nomor untuk tanggal sekarang ?
    jika tidak ada, maka nomor yang diberikan menjadi ddmmyy1
    jika sudah ada, maka nomor yang diberikan menjadi ddmmyy(x+1)

dengan fungsi:

Function AmbilNomor() As String
    
    'ingat format tanggal sekarang "ddmmyy"
    Dim tglSekarang As String
    tglSekarang = Format(Date, "ddmmyy")
    
    'cek di tabel jika format tglSekarang sudah ada,
    'fungsi left digunakan untuk mengambil bag. tgl saja
    ' yaitu enam karakter pertama
    Dim tgl As String
    tgl = Nz(DLookup("LEFT(NoUrut,-6)", "tblAnu", _
          "LEFT(NoUrut,-6)='" & tglSekarang & "'"), "")
    
    If tgl = "" Then
        'jika belum ada tanggal sekarang, berarti dokumen pertama
        AmbilNomor = tglSekarang & "1"
    Else
        'jika sudah ada, maka bentuk sekuens nomor naik satu
        Dim nomor As Integer
        nomor = Nz(DMax("MID(NoUrut,7,-10)", "tblAnu", _
                "LEFT(NoUrut,-6)='" & tglSekarang & "'"), 0)
        AmbilNomor = tglSekarang & (nomor + 1)
    End If
    
End Function

Aksan Kurdin

2008/5/21 Sulaihan Fikri <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> -com>:

Mudah2an ini bisa membantu,

1. Buat Function sendiri (contoh : function generateNoID) untuk men-
generate no id yg dimaksud.
Dimana mekanisme function ini adalah menggabungkan 2 string. String 
pertama adalah now(), string kedua adalah no_urut. hasil gabung 2 
string ini dilemparkan ke sub pemanggil (contoh : private sub 
form_Load) sebagai string.
2. Buat table Rnumber yg menyimpan informasi no urut (digit 
terakhir) saat ini. Dimana field ini akan bertambah 1 setiap selesai 
men-generate no id.
Fieldnya cukup 1 saja, contoh field : rnum, tipe data = number, 
format data = long integer.

Contoh Code function:
Funtion GenerateNoID(-) as string
dim string1, string2, NoID as string
string1 = day(now()) & month(now()) & year(now())
string2 = getCurrentRunningNu-mber
NoID = string1 & string2
GenerateNoID = NoID
end function

private function getCurrentRunningNu-mber() as string
dim noUrut_Now as string
dim rset as dao.recordset2
set rset = rset.openrecordset("rnumber")
while not rset.eof
noUrut_Now = str(rset![rnum]-) 
rset![rnum]) = val(noUrut_now) + 1 ' tambah rnum dgn 1
wend
rset.close
getCurrentRunningNu-mber = noUrut_Now 
end function

Contoh Program Pemanggil :

private sub form_load()
dim NoIDBaru as string
noIDBaru = GenerateNoID
if isnull(me.text1) then
me.text1.text = noIDBaru
end if
end sub

Catatan : 
Function GenerateNoID(-) dan getCurrentRunningNu-mber() sebaiknya 
diletakkan di module supaya bisa dipanggil oleh semua form yg 
membutuhkan. 
Oya, deklarasi berikut (di function getCurrentRunningNu-mber) :
dim rset as dao.recordset2
set rset = rset.openrecordset("rnumber")
mohon dicek lagi sintaksnya sudah betul apa belum (mungkin ada 
teman2 yg bisa mengkoreksi)-.
Karena saya ngetik kode ini diwarnet yg komputernya ga ada 
msaccessnya, jadi ga bisa cek sintaks.

Nah, silahkan dicoba. Kalau ada yg belum jelas, bisa menghubungi 
saya via japri.

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



--- In belajar-access@ <mailto:belajar-access%40yahoogroups.com>
-yahoogroups.-com, "M. Taufan Kusuma AW." 
<[EMAIL PROTECTED]> wrote:
>

> Terima kasih atas infonya.. untuk menggunakan autonumber saya suda 
coba mas,
> tapi tdk tau caranya agar formatnya 6 
> gigit pertama adalah tanggal sekarang dan digit selanjutnya 
Adalah no urut
> contoh 1604081,saya coba dg menggunakan query dg mengabungkan 
karakter dari
> kolom no urut dan tanggal input, berhasil tapi hasilnya menjadi 
16/04/081
> saya rubah format datenya ddmmyy tapi hasilnya tetap sama , 
bagaimana code
> programnya jika menggunakan Vba. Mohon bantuannya. Terima kasih..
> 
> 
> 
> _____ 
> 

> From: budi laksamana [mailto:budilaks@ <mailto:budilaks@> ...] 

> Sent: Monday, May 19, 2008 2:13 PM
> To: belajar-access@ <mailto:belajar-access%40yahoogroups.com>
-yahoogroups.-com
> Subject: [belajar-access] Re: Membuat No ID
> 
> 
> 
> buat tabel mainan dulu dech,
> bikin kolom untuk nama dan nourut,
> lalu buka tabel itu, isikan nama dan angka sekarang satu record 
aja. 
> dan tutup
> lalu buka design tabel itu lagi, dan ubah menjadi autonumber.
> lalu tambahkan nama dan enter...
> woila.....nourut nya sudah tambah 1.
> 
> nach, silahkan dengan tabel betulan.
> 
> cheers,
> budilaks
> 

> --- In belajar-access@ <mailto:belajar-access%
<mailto:belajar-access%2540yahoogroups.com> -40yahoogroups.-com>


> -yahoogroups.--com, "M. Taufan Kusuma 
> AW." <MTKusuma@> wrote:
> >
> > Saya mau minta tolong niy, bagaimana membuat No.ID yang 
formatnya 6 
> gigit
> > pertama adalah sekarang dan digit selanjutnya 
> > 
> > Adalah no urut contoh 1604081. mohon maaf apabila sudah sering 
> dibahas di
> > milis ini...
> > 
> > 
> > 
> > 
> > 
> > ---
> >
> 
> 
> 
> 
> 
> ---
>




-- 
Aksan Kurdin 

 



--- 


Kirim email ke