Rapor üreticisi ile ilgili uzmanlık soruları

Gönderen Konu: Rapor üreticisi ile ilgili uzmanlık soruları  (Okunma sayısı 1501 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı westshine

  • Yeni Kullanıcı
  • *
  • Karma: 1
RAPORLAMA ÖNCESİ ÇALIŞACAK SORGU :

DELETE ATARIH WHERE ID=1
INSERT INTO ATARIH (ID,BASTAR,BITTAR)
VALUES (1,{FLTDATEVAL(1)},{FLTDATEVAL(2)})

RAPOR SORGUSU

select I.GTIPCODE, P.BASTAR, P.BITTAR,

DEVIRTUT= CASE WHEN DAY(P.BASTAR)=1 AND MONTH(P.BASTAR)=1 THEN
ROUND(ISNULL((SELECT SUM(L.AMOUNT*M.GIRBFYT)
FROM LG_118_01_STLINE L
LEFT OUTER JOIN LA_118_MALMALIYET M ON M.MALREF=L.STOCKREF
INNER JOIN LG_118_ITEMS A ON A.LOGICALREF=L.STOCKREF
WHERE L.CANCELLED=0 AND L.LINETYPE=0 AND L.TRCODE=14 AND L.CANCELLED=0 AND A.GTIPCODE=I.GTIPCODE),0),0)
ELSE
ROUND(ISNULL((SELECT SUM(CASE WHEN L.TRCODE IN (1,2,3,4,5,13,14,50) THEN (L.AMOUNT*M.GIRBFYT) ELSE ((L.AMOUNT*-1)*M.GIRBFYT) END)
FROM LG_118_01_STLINE L
LEFT OUTER JOIN LA_118_MALMALIYET M ON M.MALREF=L.STOCKREF
INNER JOIN LG_118_ITEMS A ON A.LOGICALREF=L.STOCKREF
WHERE L.CANCELLED=0 AND L.LINETYPE=0 AND L.LINETYPE=0 AND L.CANCELLED=0 AND A.GTIPCODE=I.GTIPCODE AND L.DATE_<P.BASTAR),0),0) END
.....
FROM LG_118_ITEMS I
INNER JOIN ATARIH P ON P.ID=1
WHERE I.ACTIVE=0  AND (SELECT TOP 1 S.LOGICALREF FROM LG_118_01_STLINE S
WHERE S.STOCKREF=I.LOGICALREF AND S.CANCELLED=0 AND S.LINETYPE=0
AND S.DATE_<=P.BITTAR) IS NOT NULL
GROUP BY I.GTIPCODE,P.BASTAR,P.BITTAR

işlemi bu kadar sıkıntılı olması GROUP BY işlevinden kaynaklanmakta.
GROUP BY bazı yöntemleri sorgu içinde kullandırmamakta.
Bundan dolayı ancak bu yöntem çalışıyor.

vedat_ozer

  • Ziyaretçi
Ynt: Rapor üreticisi ile ilgili uzmanlık soruları
« Yanıtla #16 : 03.04.2018, 22:14 »
Selamlar

Ben o group by kısmını select kısmına tarihi max vererek çözdüm. Sizin ilk başta verdiğiniz örnek sorguda uyguladim hata almadım.


Çevrimdışı ByBirol®

  • Logo Sistem Administrator
  • Logo Uzmanı
  • *****
  • Karma: 18
  • admin@artibilisim.com Logo Çözüm Ortağı
Ynt: Rapor üreticisi ile ilgili uzmanlık soruları
« Yanıtla #17 : 03.04.2018, 22:22 »
2.50 ve öncesi icin aktif , sunu unutmayın dilediniz rapora dilediniz alanı filtre olarak ekleyebilirsiniz.

bizim millet programı TV gibi algılıyor alayım yatayım ,en basit apple 10 sene hızlı ekrandan hücresel veriyi aç kapa özelini getirmedi daha yeni geldi , malesef belkide doğru ama dünya böyle .

bu arada select’ e almadan da filtre eklenebilir , üzerinde biraz daha çalışılarak.

Çevrimdışı westshine

  • Yeni Kullanıcı
  • *
  • Karma: 1
Ynt: Rapor üreticisi ile ilgili uzmanlık soruları
« Yanıtla #18 : 04.04.2018, 08:38 »
Merhaba Birol Bey

Logo'nun kendi dökümanlarında da filtre olarak eklenecek değerin sorgu alanlarında olması gerektiği yazmakta.
bir çok alternatif denememe rağmen sorgu alanında kullanılmayan filtre ekleyemedim.
Fitre ekranında eklenmiş gibi görünmesine rağmen eklememekte.
Eğer sorgu alanında olmayan (ama query içinde kullanılacak) filtre ekleyebiliyorsanız yöntemi paylaşabilirseniz çok iyi olur.

Vedat Bey,

Benim sorgu yöntemimde sizin önerdiğiniz işlem olmuyor.
Bununla ilgilide bir çok deneme yaptım

Ancak yazdığım yöntem ile bilgiye ulaşabiliyorum.

Çevrimdışı ByBirol®

  • Logo Sistem Administrator
  • Logo Uzmanı
  • *****
  • Karma: 18
  • admin@artibilisim.com Logo Çözüm Ortağı
Ynt: Rapor üreticisi ile ilgili uzmanlık soruları
« Yanıtla #19 : 04.04.2018, 12:06 »
* Bir fonksiyon yazınız.
* Select ' in içinde çağırıp deneyiniz .