Menu Module Input Pilih [ 1/2/3/4/5 ] Do Case Case Pilih = 1 Call Penjualan Case Pilih = 2
Call Penyiapan dan Kirim Barang Case Pilih = 3
Call Penagihan Case Pilih = 4
Call Pembayaran Case Pilih = 5
Call Terima Retur
Module Penjualan
Call Sub Module Cek Status Pelanggan Call Sub Module New Order Number Call Sub Module Cek Limit Kredit Call Sub Module Cek Stok Barang Call Sub Module New Invoice Number Call Sub Module Buat Invoice
Call Sub Module Cetak Delivery Note
Call Sub Module Cetak Laporan Penjualan Perperiode Call Sub Module Cetak Laporan Penjualan Perpelanggan Call Sub Module Cetak Laporan Kredibilitas Pelanggan Call Sub Module Cetak Laporan Limit Kredit
End Module Penjualan
Sub Module Cek Status Pelanggan
Open File Ms_Pelanggan, File Tr_Order If Pelanggan Lama then
Input Kode_Plg
Read File Ms_Pelanggan with Kode_Plg Display Rec_Plg
Write Rec_Plg, New_Order_Number and detil PO to File Tr_Order Else
Receive Kebijakan Limit Kredit from Manager Write Rec_Plg Baru and Kebijakan Limit Kredit to File Ms_Pelanggan
End If Close all file
Sub Module New Order Number
Open File Tr_Order_Hd Read last record
Set i = last four digit from kode_order Add i with 1
Set New Order Number = order prefix code + I Close File Tr_Order_Hd
End Sub Module New Order Number
Sub Module Cek Limit Kredit
Open File Ms_Pelanggan, File Tr_Piutang, File Tr_Order Read File Tr_Order get Kode_Plg
Input Kode_Plg
Read File Ms_Pelanggan with Kode_Plg
If Limit Kredit in Ms_Pelanggan >= Total in File Tr_Order Then
Kredit valid
Read File Tr_Piutang with Kode_Plg
If Saldo Piutang in File Tr_Piutang >= Total in File Tr_Order Send “ Batas Kredit Valid “
Else
Tolak_PO to Pelanggan End If
Else
Tolak_PO to Pelanggan End If
Close all file
End Sub Module Cek Limit Kredit
Sub Module Cek Stok Barang
Open File Tr_Order , Ms_Barang
Read File Tr_Order_Hd get Rec_Order_Hd Read Fle Tr_Order_Dt get Rec_Order_Dt Input Kode_Barang
Read File Ms_Barang using Kode_Barang If Qty < > 0
Display Rec_Barang Else
Display “ Barang Tidak Ada “
Send Konfirmasi_Stok_Tdk_Mencukupi to Pelanggan End If
Close all file
Sub Module New Invoice Number
Open File Tr_Penjualan_Hd Read last record
Set i = last four digit from kode_jual Add i with 1
Set New Invoice Number = sales prefix code + I Close File Tr_Penjualan_Hd
End Sub Module New Invoice Number
Sub Module Buat Invoice
Open File Tr_Order, Tr_Penjualan Do while not EOF
Read File Tr_Order using Kode_Order
Get Kode_Order, Kode_Plg, Nama_Plg, Kode_Barang, Qty Write New Invoice Number
Write Header Invoice Write Detil Invoice Print invoice
Write No_Invoice and Detil_Invoice to File Tr_Penjualan End Do
Close all file
Sub Module Cetak DN
Open File Tr_Penjualan Do while not EOF
Read File Tr_Penjualan using Kode_Jual
Get Kode_Order, Kode_Pelanggan, Kode_Barang, Nama_Barang, Qty
Write Delivery Note Print Delivery Note
End Do
Close All File
End Sub Module Cetak DN
Sub Module Cetak Laporan Penjualan Perperiode
Open File Tr_Penjualan
Read File Tr_Penjualan with Kode_Jual Get Rec_Penjualan
Print header Laporan Penjualan Perperiode Repeat
Print detil Laporan Penjualan Perperiode
Until EOF
Close All File
Sub Module Cetak Laporan Penjualan Perpelanggan
Open File Tr_Penjualan
Read File Tr_Penjualan with Kode_Jual Get Rec_Penjualan
Print header Laporan Penjualan Perpelanggan Repeat
Print detil Laporan Penjualan Perpelanggan
Until EOF
Close All File
End Sub Module Cetak Laporan Penjualan Perpelanggan
Sub Module Cetak Laporan Kredibilitas Pelanggan
Open File Ms_Pelanggan
Read File Ms_Pelanggan with Kode_Pelanggan Get Rec_Pelanggan
Print header Laporan Kredibilitas Pelanggan Repeat
Print detil Laporan Kredibilitas Pelanggan
Until EOF
Close All File
Sub Module Cetak Laporan Limit Kredit
Open File Tr_Penjualan Read File Tr_Penjualan Get Rec_Penjualan_Dt
Print Header Laporan Limit Kredit Repeat
Print Detil Laporan Limit Kredit
Until End File
Close All File
End Sub Module Cetak Laporan Limit Kredit
Module Penagihan
Call Sub Module Catat Piutang Call Sub Module Tagih Piutang
Call Sub Module Cetak Laporan Umur Piutang Call Sub Module Cetak Laporan Piutang
Call Sub Module Cetak Laporan Piutang Tak Tertagih End Module Penagihan
Sub Module Catat Piutang
Open File Tr_Penjualan, Ms_Pelanggan, Tr_Piutang If Penjualan = valid then
Read File Ms_Pelanggan with Kode_Plg
Write Tr_Penjualan_Dt and Tr_Piutang_Dt to File Tr_Piutang Send Penjualan valid
Else
Send Penjualan Invalid
End If
Close All File
End Sub Module Catat Piutang
Sub Module Tagih Piutang
Open File Tr_Penjualan Do while not EOF
Read File Tr_Penjualan using Kode_Plg
Get Kode_Jual, Kode_Plg, Nama_Plg, Kode_Barang, Nama_Barang, Status
If status in Tr_Penjualan = Y then
Piutang valid
Else
Send Invoice to Pelanggan
End If
End Do
Close File Tr_Penjualan
Sub Module Cetak Laporan Piutang
Open File Ms_Pelanggan, Tr_Piutang, Tr_Penerimaan Read File Ms_Pelanggan, Tr_Piutang, Tr_Penerimaan Get Rec_Plg, Tgl_JT, Saldo_Piutang
Print header Laporan Piutang Repeat
Print detil Laporan Piutang
Until EOF
Close All File
End Sub Module Cetak Laporan Piutang
Sub Module Cetak Laporan Tak Tertagih
Open File Ms_Pelanggan, Tr_Piutang, Tr_Penerimaan Read File Ms_Pelanggan, Tr_ Piutang, Tr_Penerimaan Get Rec_Plg, Tgl_JT
Print Header Laporan Piutang Tak Tertagih Repeat
Print Detil Laporan Piutang Tak Tertagih
Until EOF
Close All File
Sub Module Cetak Laporan Umur Piutang
Open File Ms_Pelanggan, Tr_Piutang Read File Ms_Pelanggan, Tr_Piutang Get Rec_Plg, Tgl_JT
Print header Laporan Umur Piutang Repeat
Print detil Laporan Umur Piutang
Until EOF
Close All File
End Sub Module Cetak Laporan Umur Piutang
Module Pembayaran
Call Sub Module Terima Pembayaran Call Sub Module Catat Pembayaran Call Sub Module Cetak OR
Call Sub Module Cetak Laporan Penerimaan Kas Call Sub Module Cetak Laporan Pelunasan Piutang End Module Pembayaran
Sub Module Terima Pembayaran
Open File Tr_Piutang Do while not EOF
Read File Tr_Piutang using Kode_Plg
Get Rec_Piutang
If Pembayaran = Valid then
Buat Official Receipt
Else
Buat Pembayaran Invalid
End If
End Do
Close File Tr_Piutang
End Module Terima Pembayaran
Sub Module Catat Pembayaran
Open File Tr_Piutang
If Setor Detil Pembayaran = valid
Terima Bukti Setor from Bank and Get Detil Pembayaran
Input Kode_Plg
Read File Tr_Piutang with Kode_Plg
Compute Sisa_Jml_Piutang = Jml_Piutang – Jml_Byr
Write Detil Pembayaran and Sisa Jml Piutang to File Tr_Piutang
Send Pembayaran Valid
Else
Receive Tolak_Detil_Pembayaran from Bank Send Detil Pembayaran Invalid to Pelanggan
End If Close All File
End Sub Module Catat Pembayaran
Sub Module Cetak OR
Open File Tr_Penerimaan Do while not EOF
Read File Tr_Penerimaan using Kode_Plg
Get Kode_Jual, Nama_Plg, Nama_Bank, Jenis_Bayar, Jml_Bayar Write OR
Print OR
End Do
Close File Tr_Penerimaan
End Sub Module Cetak Official Receipt
Sub Module Cetak Laporan Penerimaan Kas
Open File Tr_Penerimaan
Read File Tr_Penerimaan with kode_plg Get Rec_Penerimaan
Print Header Laporan Penerimaan Kas Repeat
Print Detil Laporan Penerimaan Kas Until EOF
Close All File
End Sub Module Laporan Penerimaan Kas
Sub Module Cetak Laporan Pelunasan Piutang
Open File Tr_Penerimaan, Tr_Piutang Read File Tr_Penerimaan, Tr_Piutang Get No_BS, Rec_Piutang
Print Header Laporan Pelunasan Piutang Repeat
Print Detil Laporan Pelunasan Piutang Until EOF
Close All File
End Sub Module Laporan Pelunasan Piutang
Module Terima Retur
Call Sub Module Cek Form Retur dan Barang Call Sub Module New Retur Number
Call Sub Module Cetak Surat Perintah Retur
Call Sub Module Terima Return Good dan Buat Credit Note Call Sub Module Cetak Laporan Retur
Sub Module Cek Form Retur dan Barang
Open File Ms_Barang, Tr_Penjualan
Do while EOF
Read File Tr_Penjualan using Kode_Jual Get Kode_Barang, Nama_Barang, Ukuran, Qty
If Form Retur Valid then
Terima Form Retur dan Barang
Else
Tolak Retur
End If
End Do
End Sub Module Cek Form Retur dan Barang
Sub Module New Retur Number
Open File Tr_Retur_Hd Read last record
Set i = last four digit from kode_retur Add i with 1
Set New Retur Number = order prefix code + I Close File Tr_Retur_Hd
Sub Module Cetak Surat Perintah Retur
Open File Tr_Retur Receive Form Retur Valid
Read File Tr_Retur, Get Detil Tr_Retur Send Surat Perintah Retur to Gudang Close all file
End Sub Module Cetak Surat Perintah Retur
Sub Module Terima Return Good dan Buat Credit Note
Open File Tr_Retur
Read File Tr_Retur with Kode_Barang Receive Return Good from Gudang Read File Tr_Retur with Kode_Plg Print Credit Note
Send Credit Note to Pelanggan Close To All
End Sub Module Terima Return Good dan Buat Credit Note
Sub Module Cetak Laporan Retur
Open File Tr_Retur Read File Tr_Retur Get Rec_Retur_Dt
Repeat
Print Detil Laporan Retur
Until End File
Close All File
End Sub Module Cetak Laporan Retur