Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
ExportGridToExcel ile 2 cxgridi 1 excel de toplama.
#1
selamın aleyküm, kolay gelsin.

benim sorunum. 2 adet CXGRID'im var ve bunlara 2 farklı sql sorgusundan veri geliyor. bunları tek tek excel'e "ExportGridToExcel" komutu ile atabiliyorum, ama iki griddekini 1 excel de sayfalar halinde nasıl alabilirim.
----------
altarnatif olarak sorguları birleştirebilirim ama sql kısmında işin içinden çıkamadım. 
 
Select MAKINA, SUM(TOPMIKTAR) AS TOPLAMURETIM, COUNT(*) AS TOPADETI from TOPLAR WHERE HURDA=0 AND (TARIHSAAT BETWEEN  '07:00:01', 104) AND ' 15:00:00' 104))GROUP BY MAKINA';
 
Select MAKINA, SUM(TOPMIKTAR) AS HURDA, COUNT(*) AS HURDATOP from TOPLAR WHERE HURDA=1 AND (TARIHSAAT BETWEEN '07:00:01' 104) AND  15:00:00', 104))GROUP BY MAKINA';


Bu ikisinin arasındaki farkım hurda ismindeki bolean tipinde ki alana göre hurda olup olmadığına karar verip, 2 cxgrid e aldırmak. Bunu 1 cxgrid e aldıracak sql kodu olsa daha bile işime yarar.  

şimdiden teşekkürler. kolay gelsin
Cevapla
#2
Sql birleştirmesi için
Union All komutu kullanılır bu komut select ifadesndeki sıralama ve veritürlerini dikkate alır isimlendirmede ise birinci selectte bulunan isimleri kabul eder
Sele A, B, C From T1 Where xxxxx
Union All
Select X,Y,Z From T2 Where xxxxx


YADA sizin sorguya göre düşünürsek tek sorguda

Select MAKINA, HURDA, SUM(TOPMIKTAR) AS TOPLAMURETIM,
      COUNT(*) AS TOPADETI
 from TOPLAR
WHERE HURDA in (0, 1)
  AND (TARIHSAAT BETWEEN '07:00:01', 104) AND '15:00:00', 104))
GROUP BY MAKINA, HURDA
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#3
(12-02-2020, Saat: 10:16)adelphiforumz Adlı Kullanıcıdan Alıntı: Sql birleştirmesi için
Union All komutu kullanılır bu komut select ifadesndeki sıralama ve veritürlerini dikkate alır isimlendirmede ise birinci selectte bulunan isimleri kabul eder
Sele A, B, C From T1 Where xxxxx
Union All
Select X,Y,Z From T2 Where xxxxx

size zahmet biraz daha açarmısınız. bu komutu gördüm ama birçok denememe rağmen yapamadım malesef Sad tablo 1 adet bu arada. 1 tablodan 2 sorgu yapıyorum. arasındaki fark hurda alanındaki true veya false olması
Cevapla
#4
Senin sorgunda Hurda Bool türünde olduğundan where şartına sokmanada gerek yok 
Select MAKINA,
      CASE WHEN HURDA = 1 THEN '1-HURDA OLANLAR' else '0-HURDA OLMAYANLAR' END as HURDA,
      SUM(TOPMIKTAR) AS TOPLAMURETIM,
      COUNT(*) AS TOPADETI
 from TOPLAR
WHERE (TARIHSAAT BETWEEN '07:00:01', 104) AND '15:00:00', 104))
GROUP BY MAKINA, HURDA

Özellikle Group by kullanımını gözden geçirmenizi öneririm
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#5
dostum çok çok sağol, tam aradığım şey oldu. ellerine sağlık.
Cevapla
#6
(12-02-2020, Saat: 10:29)adelphiforumz Adlı Kullanıcıdan Alıntı: Senin sorgunda Hurda Bool türünde olduğundan where şartına sokmanada gerek yok 
Select MAKINA,
      CASE WHEN HURDA = 1 THEN '1-HURDA OLANLAR' else '0-HURDA OLMAYANLAR' END as HURDA,
      SUM(TOPMIKTAR) AS TOPLAMURETIM,
      COUNT(*) AS TOPADETI
 from TOPLAR
WHERE (TARIHSAAT BETWEEN '07:00:01', 104) AND '15:00:00', 104))
GROUP BY MAKINA, HURDA

Özellikle Group by kullanımını gözden geçirmenizi öneririm


kolay gelsin, bunu 1 tık daha ileriye taşımak istiyorum ama yardımcı olabilir misiniz?,  

Şöyle ki ; bu sorguda sorun yok çok güzel çalışıyor,  "makina" alanındakilerin hepsinde bu işlemi yapıyor çıktısında  örneğin 4 nolu makina hurda olmayan 60 kilo,  5 numarada hurda olmayan 50 kg gibi, 

ama işlem görmemiş makina lar da kaydı olmadığı için doğal olarak listelenmiyor.  2 bir tablomda bu makinaların hepsinin listesi var. "tablo adı: makinalar alan ismi :makina" bu ikisini karşılaştırıp üretime girmemiş makinalara üretimde değil veya 0   gibi bir ibare ile sıralamaya alabilirmiyiz.  

ben if ve case ile denedim ama işin içinden çıkamadım. yardımcı olma imkanınız varsa çok sevinirim. olmazsa da canınız sağ olsun.

QyXvay.png  6 dan 11 e geçiyor. bunu önlemek adına, 7-8-9-10 da mesela üretim yok yada diğer tablodan karşılaştırma yapıp, tüm haneleri 0 olarak çektirme şansımız olur mu?
Cevapla
#7
Tabi ki yardımcı oluruz.
Fakat öncelikle soruyu sorarken adımları ayırarak metni okunaklı hale getirsen daha iyi olur.
konuyu yanlış anlaşılmadan kurtarmak için basit bir şekillendirme yaparsan daha doğru ve net cevaplar alabilirsin

sorunun direkt cevabını vermeden ve tablolar arasında Join kavramını basitçe gözden geçirmeni öneririm
Özellikle senin ihtiyacın olacak olan Left join
yani 1. tabloda var olan makinalar 2.tablonda olan sonuçlara karşılık gelecek
böylece aşağıdaki gibi bir şey elde edeceksin

M1 -> Islem 1 Sonucu
M1 -> Islem 2 Sonucu
M2 -> Islem 1 Sonucu
M3 -> sonucu olmayan işlem fakat makinnın adı görünüyor
M4 -> Islem 1 Sonucu
...
..


NOT:
Küçük boyutlu resimleri forum içerisinde bulunan dosya yükle ile ekleyip yazının içine ilave edersen daha iyi olur

Join için basit bir anlatım linki https://www.sqlkodlari.com/20-sql-left-j...lanimi.asp
Bu dünyada kendine sakladığın bilgi ahirette işine yaramaz. 
Cevapla
#8
(13-02-2020, Saat: 10:53)adelphiforumz Adlı Kullanıcıdan Alıntı: Tabi ki yardımcı oluruz.
Fakat öncelikle soruyu sorarken adımları ayırarak metni okunaklı hale getirsen daha iyi olur.
konuyu yanlış anlaşılmadan kurtarmak için basit bir şekillendirme yaparsan daha doğru ve net cevaplar alabilirsin

sorunun direkt cevabını vermeden ve tablolar arasında Join kavramını basitçe gözden geçirmeni öneririm
Özellikle senin ihtiyacın olacak olan Left join
yani 1. tabloda var olan makinalar 2.tablonda olan sonuçlara karşılık gelecek
böylece aşağıdaki gibi bir şey elde edeceksin

M1 -> Islem 1 Sonucu
M1 -> Islem 2 Sonucu
M2 -> Islem 1 Sonucu
M3 -> sonucu olmayan işlem fakat makinnın adı görünüyor
M4 -> Islem 1 Sonucu
...
..


NOT:
Küçük boyutlu resimleri forum içerisinde bulunan dosya yükle ile ekleyip yazının içine ilave edersen daha iyi olur
çok sağolun bi  Left Join'e odaklanayım o zaman   Idea
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  PDF-WORD-EXCEL Binary olarak kaydetme ve geri okuma hk MugenPower 7 1.051 16-10-2020, Saat: 14:54
Son Yorum: m_ekici
  Pdf dosyayı Excel'e aktarmak hbulus 6 414 16-09-2020, Saat: 21:28
Son Yorum: resatarikan
  Excel import yapma (Güncelleme) cinarbil 2 508 28-07-2020, Saat: 17:39
Son Yorum: cinarbil
  DbGrid To Excel & DataSet To Excel yhackup 18 7.758 26-05-2020, Saat: 21:12
Son Yorum: onur balkan
  Cxgrid- Export to Excel HuseyinF 6 1.453 13-04-2020, Saat: 12:59
Son Yorum: Bay_Y



Konuyu Okuyanlar: 1 Ziyaretçi