sipariş dağılımı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

sipariş dağılımı

Mesaj gönderen erdogan_ozkaya »

arkadaşlar,

iki tablom var biri "proje_kayit" diğeri "siparis_detay" hangi firma hangi üründen ne kadar sipariş vermiş aşağıdaki tablo gibi çıktı akmak istiyorum,
ürün kartları ve projeler opsiyonel artabilir eksilebilir.

Resim

karşılaştırma Proje_Referans = Cari_Referans olarak yapıyor

Kod: Tümünü seç

DROP TABLE IF EXISTS `siparisler_detay`;
CREATE TABLE `siparisler_detay` (
  `ID` int(11) NOT NULL auto_increment,
  `Urun_Kodu` varchar(255) default NULL,
  `Siparis_No` varchar(255) default NULL,
  `[b]Cari_Referans[/b]` varchar(255) default NULL,
  `Stok_Kodu` varchar(255) default NULL,
  `Urun_adi` varchar(255) default NULL,
  `Urun_Aciklama` varchar(255) default NULL,
  `Urun_Adeti` varchar(255) default NULL,
  `Birim_Turu` varchar(255) default NULL,
  `Siparis_Tarihi` date default NULL,
  `Siparis_Saati` time default NULL,
  `Durumu` varchar(255) default NULL,
  `Ekleyen_Personel_Id` varchar(255) default NULL,
  `Iptal_Nedeni` varchar(255) default NULL,
  `Alis_Fiyati` float default NULL,
  `Satis_Fiyati` float default NULL,
  `Toplam` float default NULL,

Kod: Tümünü seç

DROP TABLE IF EXISTS `proje_kayit`;
CREATE TABLE `proje_kayit` (
  `[b]Proje_Referans[/b]` int(11) NOT NULL auto_increment,
  `Calisilan_Firma` varchar(255) default NULL,
  `Proje_Adi` varchar(255) default NULL, 
  PRIMARY KEY  (`Proje_Referans`)
)
Kullanıcı avatarı
hi_selamlar
Üye
Mesajlar: 523
Kayıt: 05 May 2005 03:24
Konum: DelphiTürkiye.COM

Re: sipariş dağılımı

Mesaj gönderen hi_selamlar »

S.A.

Bu işlemi 2 şekilde halledebilirsin.

1- FastReport DBCross
2- cxGrid ile

kolay gelsin.
Herkes cahildir, bazi konularda.
hsngoktas
Üye
Mesajlar: 9
Kayıt: 24 May 2009 01:56
Konum: Bursa
İletişim:

Re: sipariş dağılımı

Mesaj gönderen hsngoktas »

alttaki kodu deneyebilir misin?

Kod: Tümünü seç

DECLARE @PivotColumnHeaders VARCHAR(MAX) 

SELECT @PivotColumnHeaders = COALESCE(       --COALESCE(expression [...n]) metodundan yararlanarak başlıklarımızı oluşturuyoruz.   
@PivotColumnHeaders + ',[' + cast(Urun_Kodu as varchar) + ']',
'[' + cast(Urun_Kodu as varchar)+ ']'
)
FROM (SELECT DISTINCT Urun_Kodu FROM siparisler_detay) hsnTablo

DECLARE @PivotTableSQL NVARCHAR(MAX) 

SET @PivotTableSQL = N'
SELECT *
FROM 
	(
		SELECT
		Cari_Referans,Urun_Adeti  
		FROM siparisler_detay 
	) AS PivotData
	PIVOT (
	SUM(Urun_Adeti)                        
	FOR Urun_Kodu IN (
' + @PivotColumnHeaders + '
)
) AS PivotTable
'
EXECUTE(@PivotTableSQL)  
Cevapla