Menghitung nilai akhir

Database dan Structured Query Language

RE: Menghitung nilai akhir

Postby Mujie » 30 Jul 2010, 12:38

@iis_holic
qty_akhir didalam tabel _proses_detail berbentuk nilai, sedangkan di tabel transaksi row qty_tranksasi saja yang mempunyai nilai. Lalu, id_barang dan id_proses ada membawa nilai juga tidak (didalam tabel yang mempunyai id_barang dan id_proses) ? Terus terang saya masih bingung, dan sepertinya perhitungannya tidak "on the fly", jadi habis di input, di total, langsung masuk ke qty_akhir row.

qty_akhir = ... + ... ?
wip = ... + ... ?

Untuk menghasilkan seperti pada screenshot yang pertama, sama ga query nya dengan punya saya :
Code: Select all
  1. SELECT m_proses.proses, \

  2. m_barang.barang, \

  3. _proses_detail.urut, \

  4. _proses_detail.qty_akhir \

  5. FROM _proses_detail \

  6. LEFT JOIN m_barang ON _proses_detail.id_barang = m_barang.id_barang \

  7. LEFT JOIN m_proses ON _proses_detail.id_proses = m_proses.id_proses \

  8. ORDER BY m_barang.barang, _proses_detail.urut ASC;

User avatar
Mujie
Member
 
Posts: 52
Joined: 27 Jul 2010, 15:50

RE: Menghitung nilai akhir

Postby iis_holic » 30 Jul 2010, 13:57

mas mujie
sebelumnya maaf jika bikin bingung :D
pada tabel transaksi aku buat trigger untuk update qty_akhir tabel _proses_detail :

Code: Select all
  1. CREATE TRIGGER `Trigger1` AFTER INSERT ON `transaksi`

  2. FOR EACH ROW update _proses_detail a set a.qty_akhir=a.qty_akhir+NEW.qty_transaksi where a.id_barang=NEW.id_barang AND a.id_proses=NEW.id_proses;



untuk query yang mas maksud itu aku dah bisa nampilkan sebelumnya,
cuman.. query untuk menampilkan screenshoot yang kedua lah yang masih belum bisa
maaf jika kurang jelas

regards
User avatar
iis_holic
Junior Member
 
Posts: 13
Joined: 29 Jul 2010, 10:44

RE: Menghitung nilai akhir

Postby Mujie » 30 Jul 2010, 18:51

Ok

qty_akhir = a.qty_akhir+NEW.qty_transaksi

kalo wip rumus nya?

Image

Apakah benar seperti ini ?

n = n + 1;
n = 0;
qty[n] - wip = qty[n+1]
wip = qty[n] - qty[n+1]
User avatar
Mujie
Member
 
Posts: 52
Joined: 27 Jul 2010, 15:50

RE: Menghitung nilai akhir

Postby iis_holic » 31 Jul 2010, 07:47

yups, rumus nya adalah spt ini :
Code: Select all
  1. n = n + 1;

  2. n = 0;

  3. wip = qty[n] - qty[n+1]



jadi pada awalnya field wip itu tidak ada
dengan perhitungan rumus di atas maka terbentuklah field wip

regards
User avatar
iis_holic
Junior Member
 
Posts: 13
Joined: 29 Jul 2010, 10:44

RE: Menghitung nilai akhir

Postby iis_holic » 01 Aug 2010, 08:07

UP UP
SUNDUL AH[hr]
UP UP
SUNDUL AH
User avatar
iis_holic
Junior Member
 
Posts: 13
Joined: 29 Jul 2010, 10:44

RE: Menghitung nilai akhir

Postby genik » 01 Aug 2010, 09:05

Coba jawab:
Code: Select all
  1. SELECT a.id_proses, a.id_barang, a.urut, a.qty,

  2.        IF(

  3.           a.qty - (SELECT qty

  4.                      FROM wip

  5.                      WHERE urut = a.urut + 1

  6.                      AND id_barang = a.id_barang) is NOT NULL,

  7.           a.qty - (SELECT qty

  8.                      FROM wip

  9.                      WHERE urut = a.urut + 1

  10.                      AND id_barang = a.id_barang),

  11.           a.qty

  12.        ) AS 'wip'

  13. FROM wip a

  14. ORDER BY a.id_barang, a.urut



Semoga membantu.
~genik~
User avatar
genik
Member
 
Posts: 55
Joined: 06 May 2010, 20:25

RE: Menghitung nilai akhir

Postby Mujie » 01 Aug 2010, 09:47

Wow keren, ternyata bisa IF yah pake subquery. Lagi ga bisa jawab saya nya...
User avatar
Mujie
Member
 
Posts: 52
Joined: 27 Jul 2010, 15:50

RE: Menghitung nilai akhir

Postby genik » 01 Aug 2010, 10:04

Mujie wrote:Wow keren, ternyata bisa IF yah pake subquery. Lagi ga bisa jawab saya nya...


Iya bisa :)
~genik~
User avatar
genik
Member
 
Posts: 55
Joined: 06 May 2010, 20:25

RE: Menghitung nilai akhir

Postby iis_holic » 02 Aug 2010, 07:41

trims ya genik
aku coba dulu ya..[hr]
setelah aku coba, dan aku ganti table wip nya mas genik dengan tabel _proses_detail yg ada di database ku
Code: Select all
  1. SELECT a.id_proses, a.id_barang, a.urut, a.qty,

  2.        IF(

  3.           a.qty - (SELECT qty

  4.                      FROM _proses_detail

  5.                      WHERE urut = a.urut + 1

  6.                      AND id_barang = a.id_barang) IS NOT NULL,

  7.           a.qty - (SELECT qty

  8.                      FROM _proses_detail

  9.                      WHERE urut = a.urut + 1

  10.                      AND id_barang = a.id_barang),

  11.           a.qty

  12.        ) AS 'wip'

  13. FROM _proses_detail a

  14. ORDER BY a.id_barang, a.urut;



muncul pesan spt ini :
"Error execution error #1242. Response From Database, Subquery returns more than 1 row"
:help::help::help:
User avatar
iis_holic
Junior Member
 
Posts: 13
Joined: 29 Jul 2010, 10:44

RE: Menghitung nilai akhir

Postby Manz » 02 Aug 2010, 09:26

koreksi buat sql diatas ... a.qty diganti jadi a.qty_akhir ... karena _proses_detail gak ada field qty, ada nya field qty_akhir :biggrin:
-= Man'z =- yah begitulah mereka memanggilku...

Catatan koe : -=| Manz |=- it's me :wink:
User avatar
Manz
Member
 
Posts: 160
Joined: 06 May 2010, 08:09

PreviousNext

Who is online

Users browsing this forum: No registered users and 1 guest

cron