Sejatinya, yang amat berpengaruh terhadap pencataaan persediaan barang (kartu stock) terletak pengakuan harga pada saat barang keluar. Apakah harga yang diberikan pada saat harga pembelian pertama, akhir, ataukah rata-rata? Bagaimana pula stock barang pertama, sudah habis? Apakah harga pembelian barang pertama tersebut masih bisa dipakai patokan.
Semua hal tersebut harus bisa diakomodasi ke dalam aplikasi. Karena user terkadang meminta berganti-ganti. Entah untuk kepentingan mengurangi keutungan tertulis sehingga pajak yang harus dibayar menjadi lebih murah (Rugi - Laba). Atau, karena hal lain.
Sebagai referensi dan pengetahuan (atau pembanding), di aplikasi PHP saya pernah membuat fungsi penetapan harga tersebut. Setidaknya untuk 3 jenis metode. Bila user memilih 1 metode, maka nilai pil menjadi 1, yang lain 0. id_met pilihan user-lah yang kita eksekusi (contoh dibawah user memilih metode FIFO -- First In First Out).
id_met metode pil
0 LIFO 0
1 FIFO 1
2 Average 0
function cek_harga($n,$jn){
$ry = "Select * From persediaan_metode where pil='1'";
$il = mysql_query($ry);
$ta = mysql_fetch_array($il);
$meto = $ta[0];
$jen = $jn-10;
$br = mysql_query("SELECT Sum(jml) FROM persediaan
where jen='$jn' and id_p<='$n'");
$bb = mysql_fetch_array($br);
$bbb = $bb[0];
if($meto==0){
$pa = "order by id_p desc";
}else if($meto==1){
$pa = "order by id_p asc";
}
if($meto<2){
$bo = mysql_query("SELECT * FROM persediaan
where jen='$jen' and id_p<='$n' $pa");
$jjm = 0;
while($bos = mysql_fetch_array($bo)){
$jjm = $jjm + $bos['jml'];
if($bbb<$jjm){
$harga = $bos['h_sat'];
break;
}
}
}else{
$bo = mysql_query("SELECT AVG(h_sat) FROM persediaan
where jen='$jen' and id_p<='$n' group by jen");
$bos = mysql_fetch_array($bo);
$harga = $bos[0];
}
return $harga;
}
Semua hal tersebut harus bisa diakomodasi ke dalam aplikasi. Karena user terkadang meminta berganti-ganti. Entah untuk kepentingan mengurangi keutungan tertulis sehingga pajak yang harus dibayar menjadi lebih murah (Rugi - Laba). Atau, karena hal lain.
Sebagai referensi dan pengetahuan (atau pembanding), di aplikasi PHP saya pernah membuat fungsi penetapan harga tersebut. Setidaknya untuk 3 jenis metode. Bila user memilih 1 metode, maka nilai pil menjadi 1, yang lain 0. id_met pilihan user-lah yang kita eksekusi (contoh dibawah user memilih metode FIFO -- First In First Out).
id_met metode pil
0 LIFO 0
1 FIFO 1
2 Average 0
function cek_harga($n,$jn){
$ry = "Select * From persediaan_metode where pil='1'";
$il = mysql_query($ry);
$ta = mysql_fetch_array($il);
$meto = $ta[0];
$jen = $jn-10;
$br = mysql_query("SELECT Sum(jml) FROM persediaan
where jen='$jn' and id_p<='$n'");
$bb = mysql_fetch_array($br);
$bbb = $bb[0];
if($meto==0){
$pa = "order by id_p desc";
}else if($meto==1){
$pa = "order by id_p asc";
}
if($meto<2){
$bo = mysql_query("SELECT * FROM persediaan
where jen='$jen' and id_p<='$n' $pa");
$jjm = 0;
while($bos = mysql_fetch_array($bo)){
$jjm = $jjm + $bos['jml'];
if($bbb<$jjm){
$harga = $bos['h_sat'];
break;
}
}
}else{
$bo = mysql_query("SELECT AVG(h_sat) FROM persediaan
where jen='$jen' and id_p<='$n' group by jen");
$bos = mysql_fetch_array($bo);
$harga = $bos[0];
}
return $harga;
}
Semoga bisa memberi semangat.
Hariyanto (Surabaya)
__._,_.___
Reply via web post | Reply to sender | Reply to group | Start a New Topic | Messages in this topic (9) |
SPAM IS PROHIBITED
.
__,_._,___
Tidak ada komentar:
Posting Komentar