SQL INFO YARDIM

Gönderen Konu: SQL INFO YARDIM  (Okunma sayısı 3563 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı mudbey28

  • Yeni Kullanıcı
  • *
  • Karma: -1
SQL INFO YARDIM
« : 12.06.2007, 09:38 »
ARKADAŞLAR AŞAĞIDAKİ QUERYİ SQL INFO YA ÇEVİREBİLİRMİSİNİZ

Select SIGN from lg_001_01_clfLINE k

,
(

select max(LOGICALREF) as lref from lg_001_01_clfLINE l

where DATE_ IN

(
select max(DATE_) as MaxDate from lg_001_01_clfLINE n  
)


)u

where k.logICALREF = u.lref




KOLAY GELSİN ŞİMDİDEN TEŞEKKÜRLER

Çevrimdışı Monsieur®

  • LogoDestek Yönetim
  • Logo Uzmanı
  • *****
  • Karma: 38
Ynt: SQL INFO YARDIM
« Yanıtla #1 : 13.06.2007, 15:24 »
Merhaba,

sana çevirmektense çevirme tekniğini göndersem daha iyi olacak. her seferinde bizi bulamayabilirsin sanırım ;)

RAPOR VE FORM TASARIMLARINDA SQLINFO KULLANIMI

Unity programı içerisinde Rapor ve Form tasarımlarında Query' ler ile farklı table' lara ulaşmak için kullanılır.
Rapor tasarımında tanımlı alan içerisinde SQLINFO fonksiyondan sonuç METIN olarak dönüyor.
Tanımlı alan türü metin olacak… Her field için tırnak işareti kullanılacak…
_SQLINFO ("Field", "Table", "Where")
Örnek SQLINFO fonksiyon kullanımı
·         Cari Hesap Listesi raporunda Ödeme plan kodunun yanında Ödeme plan açıklamasının raporlanması.
_SQLINFO("DEFINITION_","LG_003_PAYPLANS","CODE='"+[Ödeme plan kodu]+"'")
(SELECT DEFINITION_ FROM LG_003_PAYPLANS WHERE CODE='P.01')
·         Cari Hesap Listesi raporunda C/H Özel kodunun yanında C/H Özel kod açıklamasının raporlanması.
_SQLINFO("DEFINITION_","LG_003_SPECODES","CODETYPE=1 AND SPECODE='"+[Cari hesap özel kodu]+"'")
(SELECT DEFINITION_ FROM LG_003_SPECODES WHERE CODETYPE=1 AND SPECODE='S01')
·         Genel Amaçlı Raporlar içerisinde 100 Kasa hesabı' nın Hareket Borç toplam bilgilerine ulaşmak.
VAL(_SQLINFO("SUM(S.DEBIT)","LG_003_EMUHACC AS H, LG_003_02_EMFLINE AS S","H.LOGICALREF=S.ACCOUNTREF AND H.CODE='100'"))
(SELECT SUM(S.DEBIT) FROM LG_003_EMUHACC AS H, LG_003_02_EMFLINE AS S

WHERE (H.LOGICALREF=S.ACCOUNTREF AND H.CODE='100'))

 

·         Seri / Lot Envanter raporunda Son Kullanım tarihinin listelenmesi

 

Aşağıdaki alanlar tek tek tanımlı alan yapıldıktan sonra

 

[MALZ] = R1.logicalRef (Türü = Sayı )

[LINE] = R2.logicalRef (Türü = Sayı )

[LOT] = R4.logicalRef (Türü = Sayı )

 

(Türü = Metin)

 

_SQLINFO("EXPDATE","LG_003_02_SLTRANS","STTRANSREF="+STR([LINE])+" AND ITEMREF="+STR([MALZ])+" AND SLREF="+STR([LOT])+"")

 

·         Verilen Hizmet Kartları listesi raporunda Hizmet kartı içerisindeki girilen Muhasebe kodlarının listelenmesi

 

 

Metin fno

 

JUSTIFY(STR([Firma no]),1,"0",3)

 

Metin DN

 

SUBSTR([Çalışma Dönemi],1,2)

 

 

Metin MuhasebeKodu

 

"M.CODE"

 

Metin TableNames

 

"LG_" + [fno] + "_SRVCARD H, LG_" + [fno] +"_CRDACREF B, LG_" + [fno] +"_EMUHACC M "

 

Metin VerilenHizmetWhere

 

"H.LOGICALREF=B.CARDREF AND M.LOGICALREF=B.ACCOUNTREF AND TRCODE=4 "

 

Metin KODU

 

" AND H.CODE = '" + [Hizmet Kodu] + "'"

 

Sayı WRTT

 

FUVL1

 

Metin Hizmet

 

" AND B.TYP=" + STR([WRTT])

 

 

Metin İndirim

 

" AND B.TYP=2 "

 

Metin AAA

 

_SQLINFO([MuhasebeKodu],[TableNames],[VerilenHizmetWhere]+[KODU]+[Hizmet])

Tanımlı filtre ile "Türü = Listeden Seçim" , "İçerik = Bağlantısız"

FONKSİYONLAR

 

 

VAL(text)

Text olarak yazılmış bir sayıyı sayı formatına çevirir.

VAL("1000") = 1000

 

 

AFTER(days, date)

Birtarihten verilen gün sayısı kadar sonraki tarihi verir.

AFTER(10, DATE(10,02,2001)) = 20.02.2001

AFTER(10, Günün tarihi) = 15.02.2055 (Günün tarihi 05.02.2055 ise)

 

DAYS(firstdate, lastdate)

İki tarih arasındaki gün sayısını verir.

DAYS(DATE(10,10,2000), DATE(20,10,2000)) = 10

 

ROUND(number)

Verilen sayıyı en yakın tamsayıya çevirir.

ROUND(5.25) = 5

ROUND(5.61) = 6

 

TRUNC(number)

Verilen sayının ondalıklı kısmını kaldırarak tamsayıya çevirir.

TRUNC(5.25) = 5

TRUNC(26.85) = 26

FLOOR(number)

Verilen sayıyı ondalık kısmını kaldırarak tamsayıya çevirir.

FLOOR(15,85) = 15

FLOOR(-15,85) = -15

 

STR(number)

Sayı formatını metin formatına çevirir.

STR(1000) =1000

 

 

WRNUM(language, number, part)

Bir sayının tamsayı ya da ondalık kısmının belirtilen dilde yazı haline getirir.

WRNUM(1,100,1) = Yüz

WRNUM(2,1000,1) = OneThousand

WRNUM(1,100.05,2) = Beş

WRNUM(4,100.05,1) = Ein(s)Hundert

 

IF(expression, value1, value2)

Belirtilen koşul (expression) sağlanıyorsa birinci değeri(value1); sağlanmıyorsa ikinci değeri (value2) getirir.

IF(2*2=4, "İki kere iki dört eder", 1500) = İki kere iki dört eder

IF(2*2=100, "İki kere iki dört eder", 1500) = 1500