Rapor üretici ile Tarih filtresini sorguya gömme

Gönderen Konu: Rapor üretici ile Tarih filtresini sorguya gömme  (Okunma sayısı 2410 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı LsuErsoy

  • LOGO Bayi
  • Logo Uzmanı
  • *****
  • Karma: 33
  • Kişisel ileti
Rapor üretici ile aşağıdaki gibi bir rapor yaptım...tek sıkıntı tarih filtresini giydirememem , konu hakkında fikri olan var mı ?

Kod: [Seç]
SELECT
PLN.DATE_ AS 'Vade_TARİHİ',
PLN.PROCDATE AS 'İşlem_TARİHİ',
PLN.PAYNO AS 'Ö.D.P.SATIR NO',
CL.TRANNO AS 'Fiş_No',
BANK.CODE AS BANKA_KODU,
BANK.DEFINITION_ AS BANKA,
HESAP.CODE AS HESAP_KODU,
HESAP.DEFINITION_ AS HESAP_AÇIKLAMASI,
CC.CODE AS Öğrenci_No,
CC.DEFINITION_ AS ÜNVANI,
PLN.TOTAL AS 'HS.Düşmesi_Gereken',
CL.AMOUNT AS 'POS_dan_Çekilen'
FROM LG_011_01_PAYTRANS AS PLN JOIN  LG_011_BANKACC AS HESAP ON HESAP.LOGICALREF=PLN.BANKACCREF JOIN
LG_011_BNCARD AS BANK ON BANK.LOGICALREF = HESAP.BANKREF JOIN LG_011_CLCARD AS CC ON CC.LOGICALREF=PLN.CARDREF LEFT OUTER JOIN
LG_011_01_CLFLINE AS CL ON CL.LOGICALREF=PLN.FICHEREF
Where PLN.TRCODE=70 --AND PLN.DATE_ BETWEEN {FLTDATEBEG} AND {FLTDATEEND}
GROUP BY
HESAP.DEFINITION_,
HESAP.CODE,BANK.CODE,
BANK.DEFINITION_,
CC.CODE,
CC.DEFINITION_,
PLN.TOTAL,
PLN.DATE_,
PLN.PROCDATE,
PLN.PAYNO,
CL.TRANNO,
CL.AMOUNT

Çevrimdışı fast7

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #1 : 07.08.2012, 11:33 »
Bu sorguda gruplamayı gerektirecek herhangi bir toplama işlemi göremedim. Onun için GROUP BY ve sonrakiler gereksiz.
--AND PLN.DATE_ BETWEEN {FLTDATEBEG} AND {FLTDATEEND}
-- ile bu koşulu devre dışı bırakmışsınız. Ayrıca gömülü filtre kullanabilmeniz için filtrenin hangi satırda kullanıldığını belirtmeniz
(açıklama :     {FLTDATEBEG(1)} AND {FLTDATEEND(1)} yazdığınızda bunun filtreler sayfasında 1. satırda kullanılan bir filtre olduğunu belirtmiş olursunuz.)
 ve filtreler sayfasında "Sorgu içinde kullanılacak" kutucuğunun işaretlenmesi gerekiyor.

Çevrimdışı LsuErsoy

  • LOGO Bayi
  • Logo Uzmanı
  • *****
  • Karma: 33
  • Kişisel ileti
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #2 : 07.08.2012, 13:13 »
Şu şekil de denedim , sonuç 0 rows Affected.

Kod: [Seç]
SELECT
PLN.DATE_ AS 'Vade_TARİHİ',
PLN.PROCDATE AS 'İşlem_TARİHİ',
PLN.PAYNO AS 'Ö.D.P.SATIR NO',
CL.TRANNO AS 'Fiş_No',
BANK.CODE AS BANKA_KODU,
BANK.DEFINITION_ AS BANKA,
HESAP.CODE AS HESAP_KODU,
HESAP.DEFINITION_ AS HESAP_AÇIKLAMASI,
CC.CODE AS Öğrenci_No,
CC.DEFINITION_ AS ÜNVANI,
PLN.TOTAL AS 'HS.Düşmesi_Gereken',
CL.AMOUNT AS 'POS_dan_Çekilen'
FROM LG_011_01_PAYTRANS AS PLN JOIN  LG_011_BANKACC AS HESAP ON HESAP.LOGICALREF=PLN.BANKACCREF JOIN
LG_011_BNCARD AS BANK ON BANK.LOGICALREF = HESAP.BANKREF JOIN LG_011_CLCARD AS CC ON CC.LOGICALREF=PLN.CARDREF LEFT OUTER JOIN
LG_011_01_CLFLINE AS CL ON CL.LOGICALREF=PLN.FICHEREF
Where PLN.TRCODE=70 AND PLN.DATE_ BETWEEN {FLTDATEBEG(1)} AND {FLTDATEEND(1)}

Şu şekil de de sonuç aynı ,

Kod: [Seç]
SELECT
PLN.DATE_ AS 'Vade_TARİHİ',
PLN.PROCDATE AS 'İşlem_TARİHİ',
PLN.PAYNO AS 'Ö.D.P.SATIR NO',
CL.TRANNO AS 'Fiş_No',
BANK.CODE AS BANKA_KODU,
BANK.DEFINITION_ AS BANKA,
HESAP.CODE AS HESAP_KODU,
HESAP.DEFINITION_ AS HESAP_AÇIKLAMASI,
CC.CODE AS Öğrenci_No,
CC.DEFINITION_ AS ÜNVANI,
PLN.TOTAL AS 'HS.Düşmesi_Gereken',
CL.AMOUNT AS 'POS_dan_Çekilen'
FROM LG_011_01_PAYTRANS AS PLN JOIN  LG_011_BANKACC AS HESAP ON HESAP.LOGICALREF=PLN.BANKACCREF JOIN
LG_011_BNCARD AS BANK ON BANK.LOGICALREF = HESAP.BANKREF JOIN LG_011_CLCARD AS CC ON CC.LOGICALREF=PLN.CARDREF LEFT OUTER JOIN
LG_011_01_CLFLINE AS CL ON CL.LOGICALREF=PLN.FICHEREF
Where PLN.TRCODE=70 AND PLN.DATE_ BETWEEN {FLTDATEBEG(2)} AND {FLTDATEEND(2)}

Çevrimdışı fast7

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #3 : 07.08.2012, 15:54 »
0 sonuç dönmesi üzerine rapor üreticiden raporun tamamlanmadan sql üzerinden alındığını düşünüyorum.
Where PLN.TRCODE=70 AND PLN.DATE_ BETWEEN {FLTDATEBEG(2)} AND {FLTDATEEND(2)}

burada parantez içinde belirtiğiniz 2 rakamı filtreler sayfasındaki 2. satır anlamına gelmektedir.
Bu durumda filtreler sayfasında 2. satıra Tarih (tarih aralığı) (pln.date_) filtresi eklemeniz gerekiyor (sorgu içinde kullanılsın kutucuğunu işaretlemeyi unutmayın) Raporu tamamlayıp test edin.



Çevrimdışı LsuErsoy

  • LOGO Bayi
  • Logo Uzmanı
  • *****
  • Karma: 33
  • Kişisel ileti
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #4 : 07.08.2012, 16:15 »
iler butonuna tıkladığım zaman aldığım hata aşağıdaki gibidir.

Çevrimdışı fast7

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #5 : 07.08.2012, 16:29 »
Sorgunuzu rapor üreticide çalıştırdım herhangi bir sorun çıkmadı. Hata iletisinden de anlaşılacağı üzere sorununuz DECLARE ettiğiniz tarihlerle ilgili. Sorgunun tamamını ve tam olarak ne yapmak istediğinizi söylerseniz yardım etmeye çalışırım.

Çevrimdışı LsuErsoy

  • LOGO Bayi
  • Logo Uzmanı
  • *****
  • Karma: 33
  • Kişisel ileti
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #6 : 07.08.2012, 17:41 »
Amacım , Kredi Kartıhesaplarımıza hangi tarihler arasında ne kadar para düşeceğini tespit etmek.

Ön muhasebe deki , sonuç evrağımız KREDİ KARTI FİŞİ.

Kredi Kartı fişlerinde , ÖDEME PLANlarımız seçiliyor...

PAYTRANS dan DATE_ alanı (Vade Tarihi) na göre , iki tarih arası , raporu alabilirsem , sorunum çözülecek.

Rapor üretici ile aşağıdaki aşamlar da problemler yaşıyorum.

1 ) Tarih1 ve Tarih2 değişkenlerini T-SQL ile tanımlayıp , istediğim değer ile set edebiliyorum , gayet güzel sonuçlara da ulaşabiliyorum.Fakat aynı kodu Tiger2 de test ettiğimde O Rows affected. sonucu dönüyor.....


Çevrimdışı fast7

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #7 : 07.08.2012, 18:12 »
Bu sorguda neden  tarih değişkeni kullandığınızı anlayamadım.  Sorgunuz aşağıdaki şekilde çalışmakta ve istediğiniz sonuçları üretmekte.

SELECT
PLN.DATE_ AS 'Vade_TARİHİ',
PLN.PROCDATE AS 'İşlem_TARİHİ',
PLN.PAYNO AS 'Ö.D.P.SATIR NO',
CL.TRANNO AS 'Fiş_No',
BANK.CODE AS BANKA_KODU,
BANK.DEFINITION_ AS BANKA,
HESAP.CODE AS HESAP_KODU,
HESAP.DEFINITION_ AS HESAP_AÇIKLAMASI,
CC.CODE AS Öğrenci_No,
CC.DEFINITION_ AS ÜNVANI,
PLN.TOTAL AS 'HS.Düşmesi_Gereken',
CL.AMOUNT AS 'POS_dan_Çekilen'
FROM LG_011_01_PAYTRANS AS PLN JOIN  LG_011_BANKACC AS HESAP ON HESAP.LOGICALREF=PLN.BANKACCREF JOIN
LG_011_BNCARD AS BANK ON BANK.LOGICALREF = HESAP.BANKREF JOIN LG_011_CLCARD AS CC ON CC.LOGICALREF=PLN.CARDREF LEFT OUTER JOIN
LG_011_01_CLFLINE AS CL ON CL.LOGICALREF=PLN.FICHEREF
Where PLN.TRCODE=70

Filtre sayfasında Tarih filtresi ekleyin (tarih aralığı PLN.DATE_ AS 'Vade_TARİHİ'  "sorgu içinde kullanılsın" kutusu işaretli olMAsın)

Çevrimdışı LsuErsoy

  • LOGO Bayi
  • Logo Uzmanı
  • *****
  • Karma: 33
  • Kişisel ileti
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #8 : 08.08.2012, 08:35 »
Bir teşekkürü hak ettiniz ,  :) ama kuru kuruya olmaması lazımdı...  ;)

Küçük nüanslar başka bir ifade ile küçük detaylar , ben, hep "sorgu içerisinde kullanılacak" derdim...






Çevrimdışı fast7

  • Yeni Kullanıcı
  • *
  • Karma: 0
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #9 : 08.08.2012, 09:37 »
 ;) önemli değil. Yeni birşey öğrendiğinize sevindim.

Çevrimdışı LsuErsoy

  • LOGO Bayi
  • Logo Uzmanı
  • *****
  • Karma: 33
  • Kişisel ileti
Ynt: Rapor üretici ile Tarih filtresini sorguya gömme
« Yanıtla #10 : 08.08.2012, 11:56 »
Ben de sevindim....

Öğrenmenin yaşı ve zamanı olmaz , son nefesimize kadar öğreniriz...