Kod: Tümünü seç
CREATE PROCEDURE P_TAKSIT_BOL (ADET INTEGER,PESINAT DOUBLE PRECISION,HIZMET_IDNO INTEGER,TOPLAM_TUTAR DOUBLE PRECISION)
AS
DECLARE VARIABLE VARMI INTEGER;
DECLARE VARIABLE KALAN DOUBLE PRECISION;
DECLARE VARIABLE TARIH VARCHAR(10);
DECLARE VARIABLE AY INTEGER;
DECLARE VARIABLE GUN INTEGER;
DECLARE VARIABLE YIL INTEGER;
DECLARE VARIABLE i INTEGER;
BEGIN
i=0;
GUN=SUBSTRING (TARIH FROM 1 FOR 2);
AY=SUBSTRING (TARIH FROM 3 FOR 2);
YIL=SUBSTRING (TARIH FROM 7 FOR 4);
SELECT IDNO FROM HIZMET_TAKSITLERI WHERE HT_HIZMET_IDNO=:HIZMET_IDNO INTO VARMI;
IF (not VARMI IS NULL) THEN
BEGIN
KALAN=(TOPLAM_TUTAR-PESINAT)/ADET;
WHILE (i=0) DO
BEGIN
ay=ay+1; if (ay>=13) then
begin
ay=1;
yil=yil+1;
end
tarih=gun+'.'+yil+'.'+tarih;
INSERT INTO HIZMET_TAKSITLERI (HT_ALINAN,HT_KALAN,HT_TUTAR,HT_TARIH,HT_HIZMET_IDNO,HT_PESINAT)
VALUES (0,:KALAN,:TOPLAM_TUTAR,:TARIH,:HIZMET_IDNO,:PESINAT);
END
EXIT;
END
KALAN=0;
ADET=0;
INSERT INTO HIZMET_TAKSITLERI (HT_ALINAN,HT_KALAN,HT_TUTAR,HT_TARIH,HT_HIZMET_IDNO,HT_PESINAT)
VALUES (0,:KALAN,:TOPLAM_TUTAR,:TARIH,:HIZMET_IDNO,:PESINAT);
END
Fakat tarih olayında tıkandım.
Kod: Tümünü seç
ay=ay+1; if (ay>=13) then
begin
ay=1;
yil=yil+1;
end
tarih=gun+'.'+yil+'.'+tarih;
Kod: Tümünü seç
tarih=gun+'.'+yil+'.'+tarih;
gibi bir fonksiyon var mı?
yardımlarınız için şimdiden teşekkürler;
Saygılar;