Perhitungan Fifo menggunakan foxpro

hehe tulis lagi nih, backup ingat ingat lupa he, daripada terkubur sia, langsung aja nih, gimana sih perhitungan fifo dengan foxpro, sebelumnya apa sih fifo, fifo itu metode persedian barang, yang mana barang pertama masuk itu juga pertama keluar, masalah kelebihan kekurangan yaa mungkin bisa disesuikan ama kondisi perusahaan aja, ok berikut cuplikannya


CLOSE TABLES all
Create Cursor cJual(pk i Autoinc, kode i, tanggal d, jumlah i, harga Y) &&input

Create Cursor cBarang (pk i Autoinc, kode i, tanggal d, jumlah i, harga Y) &&output

Insert Into cJual (kode, tanggal, jumlah, harga) Values (1,Date()-99,10,5000)

Insert Into cJual (kode, tanggal, jumlah, harga) Values (1,Date()-98,5,9000)

Insert Into cJual (kode, tanggal, jumlah, harga) Values (1,Date()-97,60,11000)

Insert Into cBarang (kode, tanggal, jumlah, harga) Values (1,Date()-92,20,19000)
Insert Into cBarang (kode, tanggal, jumlah, harga) Values (2,Date()-91,100,19000)

Create Cursor rekening (ipk i, opk i, kode i, itanggal d, ijumlah i, iharga Y, itersisa i,otanggal d, ojumlah i, oharga Y, otersisa i) &&rekening
Index On Padl(kode,10,'0')+Dtoc(itanggal,1)+Padl(-opk,10,'0') Tag Main

Select pk As opk,kode,tanggal As otanggal,jumlah As ojumlah,harga As oharga ;
FROM cBarang ORDER By 2,3 INTO Cursor crsOutput NOFILTER

Scan
Scatter Memvar
otersisa = m.ojumlah

Insert Into rekening (ipk,kode,itanggal, ijumlah, iharga, itersisa) SELECT pk, i.kode, tanggal, Nvl(itersisa,jumlah), harga, Nvl(itersisa,jumlah) FROM cJual i ;
left Join rekening r On i.pk = r.ipk WHERE i.kode = m.kode And pk Not In (Select ipk From rekening Where itersisa = 0 Or opk=0) order By i.kode,tanggal

Select rekening

Locate For kode = m.kode AND itanggal <= m.otanggal AND itersisa > 0 AND Empty(opk)

If !Eof()

Scan While kode = m.kode AND itanggal <= m.otanggal AND itersisa > 0 And m.otersisa > 0 FOR Empty(opk)

ojumlah = Min(itersisa, m.otersisa)

otersisa = m.otersisa - Min(itersisa, m.otersisa)

itersisa = itersisa - m.ojumlah

Gather Memvar Fields opk,otanggal,ojumlah,oharga,otersisa,itersisa

Endscan

Endif

Endscan

Select *, ojumlah*oharga - ojumlah*iharga As total From rekening Order By kode,otanggal,itanggal INTO CURSOR cFifo
brow

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: