Sorguda kullanılan bir değişkenin, başka bir değişkende kullanılması

Katılım
3 Nisan 2007
Mesajlar
235
Excel Vers. ve Dili
2003 TR


Fark değişkeni: [USD SATIŞ] - [USD ALIŞ] tır
Dene değişkeni: "Fark" değişkeni + 1 olacaktır. Ancak olmuyor hatam nedir, teşekkürler.

Sorum ekteki dosyada Sorgu3'tür
 

Ekli dosyalar

Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Paki şöyle denediniz mi?

Deyim1: [USD SATIŞ]-[USD ALIŞ]+1

İyi çalışmalar
 
Katılım
3 Nisan 2007
Mesajlar
235
Excel Vers. ve Dili
2003 TR
Paki şöyle denediniz mi?

Deyim1: [USD SATIŞ]-[USD ALIŞ]+1

İyi çalışmalar
Aslında sorumu örnekle kısaltarak gönderdim. Değişken kullanmak istememin sebebi şu:

ToplamUSD: IIf([SEVK TARİHİ]<Date();[SİPARİS LDOLAR]*[SADET]*[USD SATIŞ];[SİPARİS LDOLAR]*[SADET]*DLast("[USD SATIŞ]";"DvzSonUSD"))

ToplamEUR: IIf([SEVK TARİHİ]<Date();[SİPARİS LEURO]*[SADET]*[EUR SATIŞ];[SİPARİS LEURO]*[SADET]*DLast("[EUR SATIŞ]";"DvzSonEUR"))

KDV: (TL + ToplamEUR + ToplamUSD) + * 0,18 gibi bir şey yapacaktım.
sizin cevabınıza göre şöyle yapmam gerekecek:

([SİPARİS LTL]*[SADET])+(IIf([SEVK TARİHİ]<Date();[SİPARİS LDOLAR]*[SADET]*[USD SATIŞ];[SİPARİS LDOLAR]*[SADET]*DLast("[USD SATIŞ]";"DvzSonUSD"))+ IIf([SEVK TARİHİ]<Date();[SİPARİS LEURO]*[SADET]*[EUR SATIŞ];[SİPARİS LEURO]*[SADET]*DLast("[EUR SATIŞ]";"DvzSonEUR")))*0,18

Bu formülde doğru sonuç döndirmüyor. Çünkü hücrelerde boş (null) olan bölümler var
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın erkankamilonas,

O zaman boş olan hücrelerin hatasını geçebilmek için Nz fonksiyonunu kullanın.

Nz([SİPARİS LDOLAR];0) ozaman hücre boş yerine 0 olur.

İyi çalışmalar
 
Katılım
15 Kasım 2006
Mesajlar
583
Excel Vers. ve Dili
Ms Office 2003 Türkçe
Sorguyu bu kadar karmaşıklaştırmanıza gerek yok aslında,
view lara bölerek daha kolay içinden çıkarsınız. Hem takibi de kolay olur.

Yani, önce temel işleminizi yapan sorgu1 i oluşturun, sonra
sorgu2 içinde sorgu1 i bir tablo gibi kullanın.
 
Katılım
3 Nisan 2007
Mesajlar
235
Excel Vers. ve Dili
2003 TR
grupla yerine deyim kullanın
Tüm sonuçlar sıfır çıktı.
Asıl sorgu şu:
SELECT DISTINCT SİPARİS.[SIPARIS NO], SİPARİS.[YMAMÜL TANIMI], SİPARİS.SADET, SİPARİS.[FİRMA KODUGELİR], SİPARİS.[MAMÜL KODU], SİPARİS.[MAMÜL TANIMI], SİPARİS.[SİPARİS TARİHİ], SİPARİS.[TESLIM TARIHI], SİPARİS.[SEVK TARİHİ], SİPARİS.[ÜRETİM TARİHİ], SİPARİS.[SİPARİS LTL], SİPARİS.[SİPARİS LEURO], SİPARİS.[SİPARİS LDOLAR], [SİPARİS LDOLAR]*[SADET] AS USD, [SİPARİS LEURO]*[SADET] AS EUR, [SİPARİS LTL]*[SADET] AS TL, IIf([SEVK TARİHİ]<Date(),[SİPARİS LDOLAR]*[SADET]*[USD SATIŞ],[SİPARİS LDOLAR]*[SADET]*DLast("[USD SATIŞ]","DvzSonUSD")) AS ToplamUSD, IIf([SEVK TARİHİ]<Date(),[SİPARİS LEURO]*[SADET]*[EUR SATIŞ],[SİPARİS LEURO]*[SADET]*DLast("[EUR SATIŞ]","DvzSonEUR")) AS ToplamEUR, SİPARİS.KDV, SİPARİS.[TESLİM TL], SİPARİS.YMAMÜLGRUP, SİPARİS.[ÜRETİM TUTARI], SİPARİS.[FATURA NO], SİPARİS.[FATURA TARİHİ], SİPARİS.[FATURA ACIKLAMASI], SİPARİS.[FATURA TUTARI], SİPARİS.[KKONTROL TARİHİ], SİPARİS.[KKONTROL YAPILDI], SİPARİS.[YI/YD], SİPARİS.[SİPARİS MALZEME], SİPARİS.KAPANIS, First([STOK MALZEMEHAREKET].[TALEP TERMİNİ]) AS [TALEP TERMİNİ], First([STOK MALZEMEHAREKET].[BİRİM FİYATYTLSTH]) AS [BİRİM FİYATYTLSTH], First([STOK MALZEMEHAREKET].[BİRİM FİYATEUROSTH]) AS [BİRİM FİYATEUROSTH], First([STOK MALZEMEHAREKET].[BİRİM FİYATDOLARSTH]) AS [BİRİM FİYATDOLARSTH], First([STOK MALZEMEHAREKET].[SİPARİŞ ADET MALİYETİ]) AS [SİPARİŞ ADET MALİYETİ], First([STOK MALZEMEHAREKET].TEDARİKCİSTH) AS TEDARİKCİSTH, First([STOK MALZEMEHAREKET].TERMİNSTH) AS TERMİNSTH, First([STOK MALZEMEHAREKET].[MALZEME CİNSİSTH]) AS [MALZEME CİNSİSTH], First([STOK MALZEMEHAREKET].[İRSALİYE TARİHSTH]) AS [İRSALİYE TARİHSTH], First([STOK MALZEMEHAREKET].[KAPANIS STH]) AS [KAPANIS STH], First([RED TUTANAK].[RED ADEDİ]) AS [RED ADEDİ], First([RED TUTANAK].[RED TARİHİ]) AS [RED TARİHİ], First([RED TUTANAK].[RED MALZEME]) AS [RED MALZEME], First([RED TUTANAK].[RED TUTAR]) AS [RED TUTAR], First([RED TUTANAK].TEZGAH) AS TEZGAH, First([RED TUTANAK].OPERATOR1) AS OPERATOR1, First([RED TUTANAK].OPERATOR2) AS OPERATOR2, First([RED TUTANAK].[RED NEDENİ]) AS [RED NEDENİ], First([RED TUTANAK].RACIKLAMA) AS RACIKLAMA, FİRMALAR.ÜLKE, [Günlük Kurlar].[EUR SATIŞ], SİPARİS.[ÜRÜN NO], SİPARİS.[YI/YD], [Günlük Kurlar].[USD SATIŞ], ([TL]+[ToplamEUR]+[ToplamUSD])*0.18 AS KDV
FROM (FİRMALAR INNER JOIN ((SİPARİS LEFT JOIN [STOK MALZEMEHAREKET] ON SİPARİS.[ÜRÜN NO] = [STOK MALZEMEHAREKET].[ÜRÜN NOSTH]) LEFT JOIN [RED TUTANAK] ON SİPARİS.[ÜRÜN NO] = [RED TUTANAK].[RÜRÜN NO]) ON FİRMALAR.[FİRMA KODU] = SİPARİS.[FİRMA KODUGELİR]) LEFT JOIN [Günlük Kurlar] ON SİPARİS.[SEVK TARİHİ] = [Günlük Kurlar].TARİH
GROUP BY SİPARİS.[SIPARIS NO], SİPARİS.[YMAMÜL TANIMI], SİPARİS.SADET, SİPARİS.[FİRMA KODUGELİR], SİPARİS.[MAMÜL KODU], SİPARİS.[MAMÜL TANIMI], SİPARİS.[SİPARİS TARİHİ], SİPARİS.[TESLIM TARIHI], SİPARİS.[SEVK TARİHİ], SİPARİS.[ÜRETİM TARİHİ], SİPARİS.[SİPARİS LTL], SİPARİS.[SİPARİS LEURO], SİPARİS.[SİPARİS LDOLAR], [SİPARİS LDOLAR]*[SADET], [SİPARİS LEURO]*[SADET], SİPARİS.KDV, SİPARİS.[TESLİM TL], SİPARİS.YMAMÜLGRUP, SİPARİS.[ÜRETİM TUTARI], SİPARİS.[FATURA NO], SİPARİS.[FATURA TARİHİ], SİPARİS.[FATURA ACIKLAMASI], SİPARİS.[FATURA TUTARI], SİPARİS.[KKONTROL TARİHİ], SİPARİS.[KKONTROL YAPILDI], SİPARİS.[YI/YD], SİPARİS.[SİPARİS MALZEME], SİPARİS.KAPANIS, FİRMALAR.ÜLKE, [Günlük Kurlar].[EUR SATIŞ], SİPARİS.[ÜRÜN NO], SİPARİS.[YI/YD], [Günlük Kurlar].[USD SATIŞ]
HAVING (((SİPARİS.[SEVK TARİHİ]) Between ([Formlar]![Rapor Tarih Aralığı]![İlkTarih]) And ([Formlar]![Rapor Tarih Aralığı]![SonTarih])) AND ((SİPARİS.[FATURA ACIKLAMASI])='PLAN'));
 
Katılım
3 Nisan 2007
Mesajlar
235
Excel Vers. ve Dili
2003 TR
Arkadaşlar ilginize teşekkür ediyorum, bu toplama işlemini nasıl yapabileceğim hakkında fikri olan var mı
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın erkankamilonas,

Kısır bir döngü çizip başa döndük.

Tekrar alanları kullanmak istemiyorsunuz
Deyim1: [USD SATIŞ]-[USD ALIŞ]+1
, ikinci bir sorgu kullanmak istemiyorsunuz
Sorguyu bu kadar karmaşıklaştırmanıza gerek yok aslında,
view lara bölerek daha kolay içinden çıkarsınız. Hem takibi de kolay olur.

Yani, önce temel işleminizi yapan sorgu1 i oluşturun, sonra
sorgu2 içinde sorgu1 i bir tablo gibi kullanın. Dün 11:26
Esas uygulamanızı eklemiyorsunuz. Bu iş nasıl halolacak?
 
Üst