Zbiór zmian 485 dla trunk/SQL

Pokaż
Ignoruj:
Data:
2009-03-25 14:39:19 (17 years ago)
Autor:
marek
Opis:

re #139

Pliki:
1 zmodyfikowane

Legenda:

Bez zmian
Dodane
Usunięte
  • trunk/SQL/Triggers/zapisz_do_reklamy.txt

    r484 r485  
    88FOR UPDATE 
    99AS 
    10 declare @Status bit 
    11 declare @Status_data datetime 
    12 declare @IDFaktury int 
    13 declare @ORDERNUMBER int 
     10DECLARE @Status bit 
     11DECLARE @dataWplaty datetime 
     12DECLARE @idFaktury int 
     13DECLARE @ORDERNUMBER int 
     14DECLARE @currency INT 
     15DECLARE @amountINT INT 
    1416 
    15 select @ORDERNUMBER = ORDERNUMBER, @Status = Status, @Status_data = Status_data, @IDFaktury = IDFaktury from inserted 
    16 if @Status = 1 
     17select @ORDERNUMBER = ORDERNUMBER, @Status = Status, @dataWplaty = Status_data, @idFaktury = IDFaktury, @currency=CURRENCY, @amountINT=AMOUNT from inserted 
     18IF @Status = 1 
     19BEGIN 
    1720 
    18 --update REKLAMA set [Rodzaj potwierdzenia] = 'ECARD', [Symbol potwierdzenia] = @ORDERNUMBER, [Data zap³aty] = @Status_data, Zap³acono = @Status where [ID_Faktury] = @IDfaktury 
     21DECLARE @amount DECIMAL(9,2) 
     22SET @amount = CAST(@amountINT AS DECIMAL(9,2))/100 
     23--PRINT CAST(@amount AS NVARCHAR(100)) 
     24DECLARE @waluta_miano VARCHAR(3) 
     25DECLARE @amountPLN decimal(9,2) 
     26DECLARE @kurs decimal(9,4) 
    1927 
    20 update dbo.Wplaty set 
    21  [rodzajPotwierdzenia] = 'ECARD',  
    22  [symbolPotwierdzenia] = @ORDERNUMBER,  
    23  [dataWplaty] = @Status_data 
    24  where [idFaktury] = @IDfaktury 
     28SELECT @kurs=waluta_kurs FROM Faktury WHERE [id_Faktury]=@idFaktury 
     29 
     30SET @waluta_miano= CASE WHEN @currency=978 THEN 'EUR' WHEN  @currency=826 THEN 'GBP' ELSE 'PLN' END 
     31 
     32IF(@waluta_miano='PLN') 
     33 SET @amountPLN=@amount 
     34ELSE  
     35 SET @amountPLN = ROUND(@amount * @kurs, 2) 
     36 
     37IF (SELECT COUNT(*) FROM dbo.Wplaty WHERE [idFaktury]=@idFaktury)>0 
     38        BEGIN 
     39        UPDATE dbo.Wplaty  
     40        SET  
     41         [rodzajPotwierdzenia] = 'ECARD',  
     42         [symbolPotwierdzenia] = @ordernumber,  
     43         [dataWplaty] = @dataWplaty, 
     44         brutto = @amountPLN, 
     45         waluta_brutto=@amount, 
     46         waluta_miano=@waluta_miano 
     47                 
     48         WHERE [idFaktury] = @idFaktury 
     49        END 
     50ELSE 
     51BEGIN 
     52INSERT INTO dbo.Wplaty([idFaktury], [rodzajPotwierdzenia], [symbolPotwierdzenia], [dataWplaty], [brutto], waluta_brutto, waluta_miano)  
     53VALUES (@idFaktury, 'ECARD', @ordernumber, @dataWplaty, @amountPLN, @amount, @waluta_miano) 
     54END  
     55 
     56END 
    2557GO 
    2658