(16/07/2025, 17:33)atoykan yazdı: hgs tablonuzda 2 tarih var hangisi baz alınacak? yoğunluktan hemen ilgilenme şansım yok ancak bakmaya çalışacağım
tşk ederim atoykan bey. büyük sabırsızlıkla bekliyorum. sorunu şöyle çözmeye çalıştım; 3 farklı tablo verisini dışa aktardan
Excel formatıyla raporlar isimli klasöre yükledim. 1 tanede ben
Excel açtım. diğer 3 tablodan olması gerekenleri bağ yapıştır ve çoketopla formulu ile sadeleştirdim. sonra acceste tablo hazırladım. dıştan veri al yöntemiyle tabloya yapıştırdım. o tabloya bağlı rapor oluşturdum. tablodaki excele aktar makrolarıyla aktarıyorum, sonra otomatik yaptığım
Excel sayfasına otomatik aktarıyor. sonra veriyi acceste tabloya yapıştırıyorum. daha kolay yöntem arıyorum
(hgs baz alınacak tarih ilk tarih, yani otobana giriş tarihi)
(17/07/2025, 10:28)mzizmir35mz yazdı: sorunu şöyle çözmeye çalıştım; 3 farklı tablo verisini dışa aktardan Excel formatıyla raporlar isimli klasöre yükledim. 1 tanede ben Excel açtım. diğer 3 tablodan olması gerekenleri bağ yapıştır ve çoketopla formulu ile sadeleştirdim. sonra acceste tablo hazırladım. dıştan veri al yöntemiyle tabloya yapıştırdım. o tabloya bağlı rapor oluşturdum. tablodaki excele aktar makrolarıyla aktarıyorum, sonra otomatik yaptığım Excel sayfasına otomatik aktarıyor. sonra veriyi acceste tabloya yapıştırıyorum. daha kolay yöntem arıyorum
Sağ kulağınızı sol elle amuda kalkarak göstermeye çalışmaktan farksız anlattıklarınız ancak çözüm geliştirmeye çalışmanızı son derece takdir ettim. Açıkçası yorgunluk ve yoğunluktan sorunuzu net anladığımdan emin değilim ancak
SELECT
A.Plaka, Nz(G.ToplaTutar, 0) AS ToplaGiderTutar, Nz(F.ToplaFaturaTutarı, 0) AS ToplaFaturaTutarı, Nz(AK.ToplaAlinanLitre, 0) AS ToplaAlinanLitre, Nz(AK.ToplaAlinanTl, 0) AS ToplaAlinanTl, Nz(H.ToplaIslemTutarı, 0) AS ToplaIslemTutarı
FROM ((([01_TumAraclar] AS A
LEFT JOIN (
SELECT PlakaNo, Sum(Tutar) AS ToplaTutar
FROM [08_AracGiderKayit]
WHERE Tarih > #1/1/2025# AND Tarih < #3/31/2025#
GROUP BY PlakaNo) AS G ON A.Plaka = G.PlakaNo)
LEFT JOIN (
SELECT Plaka, Sum(FaturaTutarı) AS ToplaFaturaTutarı
FROM [05_HabasGelir]
WHERE Tarih > #1/1/2025# AND Tarih < #3/31/2025#
GROUP BY Plaka) AS F ON A.Plaka = F.Plaka)
LEFT JOIN (
SELECT PlakaNo, Sum(AlinanLitre) AS ToplaAlinanLitre, Sum(AlinanTl) AS ToplaAlinanTl
FROM [06_AkaryakitSarf]
WHERE Tarih > #1/1/2025# AND Tarih < #3/31/2025#
GROUP BY PlakaNo) AS AK ON A.Plaka = AK.PlakaNo)
LEFT JOIN (
SELECT Plaka, Sum(IslemTutarı) AS ToplaIslemTutarı
FROM [07_HgsKayit]
WHERE GirisTarihi > #1/1/2025# AND GirisTarihi < #3/31/2025#
GROUP BY Plaka) AS H ON A.Plaka = H.Plaka;
sorgusu sanırım yapmak istediğiniz işlem. Kontrol edin lütfen. Tarih aralıklarını manuel farazi girdim, bunları bir form aracılığı ile belirleyebilirsiniz.
atoykan hocam elleriniz dert görmesin. boş sorgu oluşturdum.
Sql sayfasına yapıştırdım sorun kalmadı. toplam lt kısmını çıkardım sadece. çok çok tşk ederim.
Sql kodlama olayını bilmiyorum ama kısa zamanda onu öğreneceğim. bu sorguya bağlı rapor oluşturacağım ancak tarih aralığı olayını nasıl yapıcam onu bilemedim.
bir de hocam akaryakıt gideri, hgs gideri, habaş gelir bunlar tek başlık zaten ama giderler kısmında alt başlıklarda isim ve tutarda gerekli .. şöyle anlatayım;
ilk tarih....... son tarih .......
...plaka
gider tablosu adblue[tarih aralığına göre toplam] 500,00
gider tablosu akaryakıt[tarih aralığına göre toplam] 35000,00
gider tablosu yemek[tarih aralığına göre toplam] 3000,00
gider tablosu diğer[tarih aralığına göre toplam] 2500,00
...
akaryakıt tablosu akaryakıt[tarih aralığına göre toplam] 186000,00
hgs tablosu hgs[tarih aralığına göre toplam] 26000,00
habaş gelir tablosu ... [tarih aralığına göre toplam] 654000,00
yani bitince buna benzer bir rapor görüntüsü almak istiyorum
Sorgunun mantığına bakın ve eklemek istediğiniz alanları ToplaGiderTutar, ToplaFaturaTutar vb. şekilinde sorgunun join öncesine ekleyin, left joinler ise kabaca verileri almak istediğiniz tablolara dayalı sorgular ve eklemeniz gereken alanlar varsa bu sorgulara o alanları da eklemelisiniz.
Access ile uygulama geliştirecekseniz olmazsa olmaz sorgu tasarımını öğrenmeniz gerekli. İlk etapta
Sql olarak yazamasanız bile sorgu tasarımında deneye yanıla select, insert vb temel komutları uygulamayı ve
Sql syntaxını öğrenmek, daha sonra left, right, inner join ile sorguları birleştirmeyi vs öğrenmek zorundasınız.