Kod: Tümünü seç
SET TERM ^ ;
CREATE PROCEDURE TBL_PUAN_DETAY_EKLE
AS
DECLARE VARIABLE IADE INTEGER;
DECLARE VARIABLE ALISVERISNO INTEGER;
DECLARE VARIABLE MUSTERI_ID INTEGER;
DECLARE VARIABLE TOPMIKTAR INTEGER;
DECLARE VARIABLE TOPBRUTTUTAR NUMERIC(8,2);
DECLARE VARIABLE TOPISKTUTAR NUMERIC(8,2);
DECLARE VARIABLE TOPNETTUTAR NUMERIC(8,2);
DECLARE VARIABLE TOPPUANI INTEGER;
DECLARE VARIABLE KAYIT_SAYISI INTEGER;
DECLARE VARIABLE TOPPTUTAR NUMERIC(8,2);
begin
MUSTERI_ID=12;
FOR
SELECT TBL_ALISVERIS.IADE,
TBL_ALISVERISDETAY.MUSTERI_ID,
TBL_ALISVERISDETAY.ALISVERISNO,
SUM( TBL_ALISVERISDETAY.MIKTAR ) AS MIKTAR,
SUM( TBL_ALISVERISDETAY.TUTAR ) AS TUTAR,
SUM( TBL_ALISVERISDETAY.ISKTUTAR ) AS ISKTUTAR,
SUM( TBL_ALISVERISDETAY.NET_TUTAR ) AS NET_TUTAR,
SUM( TBL_ALISVERISDETAY.PUANI ) AS PUANI,
SUM( TBL_ALISVERISDETAY.PTUTAR) AS PTUTAR
FROM TBL_ALISVERIS TBL_ALISVERIS
INNER JOIN TBL_ALISVERISDETAY TBL_ALISVERISDETAY
ON (TBL_ALISVERIS.ALISVERISNO = TBL_ALISVERISDETAY.ALISVERISNO)
WHERE TBL_ALISVERISDETAY.MUSTERI_ID=:MUSTERI_ID AND TBL_ALISVERIS.IADE=1
GROUP BY TBL_ALISVERIS.IADE,TBL_ALISVERISDETAY.ALISVERISNO,TBL_ALISVERISDETAY.MUSTERI_ID
INTO IADE, ALISVERISNO,MUSTERI_ID , TOPMIKTAR, TOPBRUTTUTAR,TOPISKTUTAR,TOPNETTUTAR,TOPPUANI,TOPPTUTAR
DO BEGIN
SELECT COUNT(*) FROM TBL_PUAN_DETAY WHERE TBL_PUAN_DETAY.ALISVERISNO=:ALISVERISNO INTO KAYIT_SAYISI;
if (KAYIT_SAYISI=0) then
INSERT INTO TBL_PUAN_DETAY (MUSTERI_ID,ALISVERISNO,TOPMIKTAR,TOPTUTAR,TOPISKTUTAR,TOPNET_TUTAR,TOPPUANI,TOPPTUTARI)
VALUES (:ALISVERISNO,:MUSTERI_ID,:TOPMIKTAR,:TOPBRUTTUTAR,:TOPISKTUTAR,:TOPNETTUTAR,:TOPPUANI,:TOPPTUTAR);
ELSE
UPDATE TBL_PUAN_DETAY SET
TOPMIKTAR=:TOPMIKTAR,
TOPTUTAR=:TOPBRUTTUTAR,
TOPISKTUTAR=:TOPISKTUTAR ,
TOPNET_TUTAR=:TOPNETTUTAR,
TOPPUANI=:TOPPUANI,
TOPPTUTARI=:TOPPTUTAR;
END
suspend;
END^
SET TERM ; ^