iki tablom var birisi hesap planı (hesplan) , diğer muhasebe fişleri (mhsfisi)
yapıları şöyle ,
Kod: Tümünü seç
CREATE TABLE hesplan (
id double NOT NULL auto_increment,
hestip tinyint(1) unsigned default '0',
heskod varchar(20) default NULL,
hesad varchar(40) default NULL,
pb varchar(5) default NULL,
anaheskod varchar(20) default NULL,
araheskod varchar(20) default NULL,
vade varchar(7) default NULL,
btip tinyint(1) unsigned default '0',
PRIMARY KEY (id),
UNIQUE KEY XKod (heskod)
) TYPE=InnoDB;
CREATE TABLE mhsfisi (
id double NOT NULL auto_increment,
fistar date default NULL,
fistip tinyint(1) unsigned default NULL,
fiskod tinyint(2) unsigned default NULL,
maddeno double default '0',
fisno double default '0',
heskod varchar(20) default NULL,
aciklama varchar(50) default NULL,
ba char(1) default NULL,
tutar double(13,2) default NULL,
pb varchar(5) default NULL,
kur double(13,5) default NULL,
dvztutar double(13,2) default NULL,
yer tinyint(2) default NULL,
yerid double default NULL,
kayit tinyint(1) default '0',
pozisyon_id double default NULL,
PRIMARY KEY (id),
UNIQUE KEY id (id),
KEY id_2 (id)
) TYPE=InnoDB;
Kod: Tümünü seç
HK. HA. B A
----------- ------------------------------- --------- --------
100 KASA 550.00
100 01 01 YTL KASA 500.00
100 01 01 YTL KASA 50.00
120 MÜŞTERİLER 550.00
120 01 01 VOLKAN 500.00
120 01 02 ALİ 50.00
ama benim bütün uğraşlarım sonucunda ulaşabildiğim görüntü şu ,
Kod: Tümünü seç
HK. HA. B A
----------- ------------------------------- --------- --------
100 KASA 550.00
100 01 01 YTL KASA 550.00
120 MÜŞTERİLER 550.00
120 01 01 VOLKAN 500.00
120 01 02 ALİ 50.00
kullandığın sorgu cümleciği şöyle,
Kod: Tümünü seç
select h.heskod,h.hesad,h.hestip,sum(IF(f.ba="B",f.tutar,0)) as borc , sum(IF(f.ba="A",f.tutar,0)) as alacak from mhsfisi f , hesplan h where LEFT(f.heskod,LENGTH(h.heskod))=h.heskod and h.hestip<>1 and LENGTH(h.heskod)>=3 group by h.heskod order by h.heskod,h.hestip