Membuat Program Master Data (Clipper)

Minggu, 15 Januari 2012 Published by Unknown

Membuat Program Master Data


   Yang di maksud program master data di sini adalah program yang mengelola mulai dari menambah, mengubah, maupun menghapus data-data yang utama. Nah, mari kita praktekkan yang di bawah ini.


# INCLUDE "INKEY.CH"
# INCLUDE "SETCURS.CH"

IF ! FILE("barang.DBF")
        dbcreate("barang.dbf",{{"KD_brg","C",5,0},;
                              {"nama_brg","C",20,0},;
                              {"satuan","C",10,0},;
                              {"merk","C",15,0},;
                              {"harga","n",7,0},;
                               {"stok","N",2,0}})
       
   use barang
   index on kd_brg to barang

ENDIF
use barang index barang

CLEAR
LABEL()
TUNJUK()
DO WHILE .T.
   X:=inkey(0)
   do Case
     Case X=K_ESC
         kunci= .F.
         exit
     Case X=K_INS
          TAMBAH()
     Case X=K_F2
         UBAH()
     Case X=K_F4
          CARI()
    Case X=K_DEL
          HAPUS()
   endcase
ENDDO

FUNCTION TAMBAH()
layar:=savescreen(0,0,24,79)
do while.t.
pil=space(1)
mkd_brg=SPACE(5)
    
     @9,34 get MKD_BRG
     read
     if MKD_BRG=SPAC(5)
       EXIT
     endif
     seek (mkd_brg)
     if found()
        Alert('Perhatian Kode Barang Tersebut Sudah Ada')
        loop
     else
        APPE BLANK
                REPL KD_BRG WITH MKD_BRG
                @10,34 GET NAMA_BRG
                @11,34 GET SATUAN
                @12,34 get MERK
                @13,34 GET HARGA
                @14,34 GET STOK
        read
     endif
exit
enddo
 setcursor(1)
 restscreen(0,0,24,79,layar)
retu

FUNCTION UBAH()
RESTSCREEN(0,0,24,79,LAYAR)
MKD_BRG=SPACE(5)
    DO WHILE.T.
     @9,34 GET  MKD_BRG PICT '@!'
     READ
     IF MKD_BRG=SPACE(5)
     EXIT
     ENDIF
     SEEK (MKD_BRG)
     IF ! FOUND()
     ALERT('MAAF KODE BARANG TIDAK DITEMUKAN ......!')
     LOOP
     ENDIF
     MKD_BRG=KD_BRG
     MNM_BRG=NM_BRG
     MSATUAN=SATUAN
     MMERK=MERK
     MHARGA=HARGA
     MSTOK=STOK

     @10,34 GET MNM_BRG PICT '@!'
     @11,34 GET MSATUAN PICT '@!'
     @12,34 GET MMERK   PICT '@!'
     @13,34 GET MHARGA PICT '9,999,999'
     @14,34 GET MSTOK  PICT '9,999'
     READ

     REPL KD_BRG WITH MKD_BRG
     REPL NM_BRG WITH MNM_BRG
     REPL SATUAN WITH MSATUAN
     REPL MERK WITH MMERK
     REPL HARGA WITH MHARGA
     REPL STOK WITH MSTOK
retu
ENDDO

FUNCTION CARI()
RESTSCREEN(0,0,24,79,LAYAR)

    DO WHILE.T.
    @9,34 GET  MKD_BRG PICT '@!'
     READ
     IF MKD_BRG=SPACE(5)
     EXIT
     ENDIF

     SEEK (MKD_BRG)
     IF ! FOUND()
     ALERT('MAAF KODE BARANG TIDAK DITEMUKAN ......!')
     LOOP
     ENDIF

     @10,34 say NM_BRG PICT '@!'
     @11,34 say SATUAN PICT '@!'
     @12,34 say MERK   PICT '@!'
     @13,34 say HARGA PICT '9,999,999'
     @14,34 say STOK  PICT '9,999'
retu
ENDDO
func HAPUS()
  SETCOLOR('B/W,W+*/B')
  pilih:=alert('Konfirmasi',{'Hapus','Batal'})
  do case
     case pilih=1
        dele for KD_BRG=MKD_BRG
        pack
     case pilih=2
        return
  endcase
return

Func LABEL()
  clea
  set colo to w+/bg
  @5,15 clea to 20,72
  @5,15 to 20,72 DOUB
  @7,33 say "    DATA BARANG"
  @09,18 SAY"KODE BARANG  : "
  @10,18 SAY"NAMA BARANG  : "
  @11,18 SAY"SATUAN       : "
  @12,18 SAY"MERK         : "
  @13,18 SAY"HARGA        : "
  @14,18 SAY"STOK         : "
return

Func Tunjuk()
set colo to w+/bg
@18,18 clea to 16,63
@18,18 say '[INS]TAMBAH [F2]UBAH [DEL]HAPUS [F4]CARI [ESC]KELUAR'
set colo to Gr+/bg
@18,19 say 'INS'
@18,31 SAY 'F2'
@18,40 SAY 'DEL'
@18,51 SAY 'F4'
@18,60 SAY 'ESC'
Return

No responses yet

Leave a Reply

Diberdayakan oleh Blogger.

Followers