Pokaż
Ignoruj:
Data:
2009-01-26 16:53:07 (17 years ago)
Autor:
marek
Opis:

re #32 - poprawiona procedura PROC_WYLICZ_I_ZAPISZ_PROWIZJE_DO_REKLAM oraz raport RozliczenieProwizjiZaReklame?2009

Pliki:
1 zmodyfikowane

Legenda:

Bez zmian
Dodane
Usunięte
  • trunk/SQL/StoredProcedures/PROC_WYLICZ_I_ZAPISZ_PROWIZJE_DO_REKLAM.txt

    r241 r242  
    88@ROK INTEGER = 2003, 
    99@MS INTEGER = 2 
    10 As 
     10AS 
     11 
     12DECLARE @Reklama TABLE 
     13( 
     14ID INT, 
     15Rok INT, 
     16Miesiac INT, 
     17Agent NVARCHAR(4000), 
     18DataWplaty DATETIME 
     19) 
     20 
     21INSERT INTO @Reklama(ID, Rok, Miesiac, Agent, DataWplaty)  
     22SELECT ReklamaID, YEAR(W.DataWplaty), MONTH(W.DataWplaty), [SYMBOL AKWIZYTORA], W.DataWplaty 
     23FROM dbo.REKLAMA R LEFT OUTER JOIN dbo.Wplaty W on R.[ID_Faktury] = W.idFaktury 
     24WHERE   
     25([ZATWIERDZONO DO DRUKU] = 1)  
     26AND ([FAKTURA WYSTAWIONO] = 1)  
     27AND (YEAR(W.DataWplaty) = @ROK)  
     28AND (MONTH(W.DataWplaty) = @MS)  
     29AND  (zablokuj_prowizje = 0) 
     30AND W.rodzajPotwierdzenia <> 'ECARD' 
     31AND R.Typ NOT IN ('BARTER', 'BEZP£ATNA') 
     32 
     33 
    1134--WYZEROWANIE PROWIZJI (POZBYCIE SIÊ BZDUR) 
    1235UPDATE REKLAMA SET [PROCENT PROWIZJI]=0, PROWIZJA=0  
    1336WHERE 
    14           ([ZATWIERDZONO DO DRUKU] = 1) AND  
    15           (ZAP£ACONO = 1) AND  
    16           ([FAKTURA WYSTAWIONO] = 1) AND  
    17           ({ fn YEAR([DATA ZAP£ATY]) } = @ROK) AND  
    18           ({ fn MONTH([DATA ZAP£ATY]) } = @MS) AND  
    19           (zablokuj_prowizje = 0) 
     37ReklamaID IN (SELECT ID FROM @Reklama) 
     38 
    2039--NANIESIENIE PROWIZJI 
    2140UPDATE REKLAMA SET 
     
    2544( 
    2645--WYBRANIE REKORDÓW DO PROWIZJI 
    27 SELECT R.ReklamaID, R.ROK, R.MS, R.[SYMBOL AKWIZYTORA] AS AGENT, dbo.[PLAN].PR_PROWIZJI 
    28  FROM  
    29   (SELECT ReklamaID, { fn YEAR([DATA ZAP£ATY]) } AS ROK, { fn MONTH([DATA ZAP£ATY]) } AS MS, [SYMBOL AKWIZYTORA]  
    30     FROM dbo.REKLAMA 
    31       WHERE  
    32           ([ZATWIERDZONO DO DRUKU] = 1) AND  
    33           (ZAP£ACONO = 1) AND  
    34           ([FAKTURA WYSTAWIONO] = 1) AND  
    35           ({ fn YEAR([DATA ZAP£ATY]) } = @ROK) AND  
    36           ({ fn MONTH([DATA ZAP£ATY]) } = @MS) AND  
    37           (zablokuj_prowizje = 0)) R  
    38     INNER JOIN dbo.[PLAN] ON  R.[SYMBOL AKWIZYTORA] = dbo.[PLAN].SYMBOL AND  R.ROK = dbo.[PLAN].ROK AND R.MS = dbo.[PLAN].MS 
     46SELECT R.ID, R.ROK, R.Miesiac, R.Agent, dbo.[PLAN].PR_PROWIZJI 
     47FROM  
     48( 
     49                SELECT ID, Rok, Miesiac, Agent FROM @Reklama 
     50)  
     51R INNER JOIN dbo.[PLAN] ON  R.Agent = dbo.[PLAN].SYMBOL COLLATE DATABASE_DEFAULT 
     52AND  R.Rok = dbo.[PLAN].ROK AND R.Miesiac = dbo.[PLAN].MS 
    3953) RR 
    4054--Koñcówka instrukcji Update 
    41 inner join REKLAMA on  
    42  REKLAMA.ReklamaID = rr.ReklamaID 
     55INNER JOIN REKLAMA ON REKLAMA.ReklamaID = rr.ID 
    4356return 
    4457GO