Merhaba;
Cari kartları basit bir query alıyorum. Ancak teminat tutarında kodla halledilmesi gereken konular var. Örneğin dövizli ise dövize çevrim vs gerektiğinden kodla alınmalı. Yalnız ben cari kodları aldığım sql de bu alan için boş bir yer ayırmak istiyorum. delphi tabanında field editorde kendim ellemi alan ekleyim yoksa
sql için space(20) gibi bir alanı sql demi ekleyim. ama bu alan hesaplamarada girecek. Kısaca kafam karıştı....
Saygılar
Cari kart ve Teminat toplamı için Sql sorunsalı
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Merhabalar,
kullandığınız database firebird,ms sql , sybase , oracle tarzı kapsamlı bir veri tabanı ise, direk veritabanından calculated bir alan oluşturabilirsiniz.
Misal Firebird için ;
gibi bir ddl yazarak işi bitirebiliriniz. Bilmem doğru mu anladım.
Kolay Gele
kullandığınız database firebird,ms sql , sybase , oracle tarzı kapsamlı bir veri tabanı ise, direk veritabanından calculated bir alan oluşturabilirsiniz.
Misal Firebird için ;
Kod: Tümünü seç
CREATE TABLE ISEMRI (
ISEMRINO VARCHAR (25) character set ASCII NOT NULL collate ASCII,
DUZELTMENO INTEGER NOT NULL,
MAKINENO INTEGER,
PERSONELNO INTEGER,
MUSTERINO INTEGER,
URETIMMIKTARI FLOAT,
STATUS SMALLINT DEFAULT 0,
LASTPROCESSING DATE,
TOPLAMTAHMINISURECOMPUTED COMPUTED BY ((SELECT SUM(ORTALAMASURECOMPUTED) FROM ISEMRI_DETAIL WHERE ISEMRINO=ISEMRI.ISEMRINO AND DUZELTMENO=ISEMRI.DUZELTMENO)),
TAMAMLANMASURESI COMPUTED BY (((select (BITISZAMANI-BASLAMAZAMANI)*1440 FROM ISEMRIBASLABITIR WHERE ISEMRINO=ISEMRI.ISEMRINO AND DUZELTMENO=ISEMRI.DUZELTMENO))),
NETTAMAMLANMASURESI COMPUTED BY ((SELECT ISEMRI.TAMAMLANMASURESI-SUM(BITISZAMANI-BASLAMAZAMANI)*1440 FROM ISEMRIDURMANEDENLERI WHERE ISEMRINO=ISEMRI.ISEMRINO AND DUZELTMENO=ISEMRI.DUZELTMENO GROUP BY ISEMRINO,DUZELTMENO)),
BASLAMAZAMANI COMPUTED BY ((SELECT BASLAMAZAMANI FROM ISEMRIBASLABITIR WHERE ISEMRINO=ISEMRI.ISEMRINO AND DUZELTMENO=ISEMRI.DUZELTMENO)),
BITISZAMANI COMPUTED BY ((SELECT BITISZAMANI FROM ISEMRIBASLABITIR WHERE ISEMRINO=ISEMRI.ISEMRINO AND DUZELTMENO=ISEMRI.DUZELTMENO)),
TOPLAMDURMASURESI COMPUTED BY (((SELECT SUM(BITISZAMANI-BASLAMAZAMANI)*1440 FROM ISEMRIDURMANEDENLERI WHERE ISEMRINO=ISEMRI.ISEMRINO AND DUZELTMENO=ISEMRI.DUZELTMENO GROUP BY ISEMRINO,DUZELTMENO))),
SAPMAORANI COMPUTED BY ((TOPLAMTAHMINISURECOMPUTED-NETTAMAMLANMASURESI)*100/TOPLAMTAHMINISURECOMPUTED),
TOPLAMMIKTAR COMPUTED BY ((SELECT SUM(URETIMMIKTARI) FROM ISEMRIALTPARTILER WHERE ISEMRINO=ISEMRI.ISEMRINO AND DUZELTMENO=ISEMRI.DUZELTMENO GROUP BY ISEMRINO,DUZELTMENO)));
gibi bir ddl yazarak işi bitirebiliriniz. Bilmem doğru mu anladım.
Kolay Gele
