Pokaż
Ignoruj:
Data:
2009-07-10 11:57:31 (17 years ago)
Autor:
marek
Opis:

poprawiono raporty ReklamyDoDodania?, ReklamyDoUsuniecia? oraz ZestawienieMiesieczneFaktur?2009

Pliki:
1 zmodyfikowane

Legenda:

Bez zmian
Dodane
Usunięte
  • trunk/RaportySQL/ReklamyDoUsuniecia.rdl

    r744 r748  
    107107          <rd:TypeName>System.String</rd:TypeName> 
    108108        </Field> 
    109         <Field Name="reklama1"> 
    110           <DataField>reklama1</DataField> 
     109        <Field Name="Reklama"> 
     110          <DataField>Reklama</DataField> 
    111111          <rd:TypeName>System.String</rd:TypeName> 
    112112        </Field> 
     
    135135          <rd:TypeName>System.String</rd:TypeName> 
    136136        </Field> 
     137        <Field Name="NastepnaReklama"> 
     138          <DataField>NastepnaReklama</DataField> 
     139          <rd:TypeName>System.String</rd:TypeName> 
     140        </Field> 
     141        <Field Name="NastepnyGrzbiet"> 
     142          <DataField>NastepnyGrzbiet</DataField> 
     143          <rd:TypeName>System.String</rd:TypeName> 
     144        </Field> 
    137145      </Fields> 
    138146      <Query> 
    139147        <DataSourceName>BAZA_REKLAM</DataSourceName> 
    140         <CommandText>SELECT * FROM 
     148        <CommandText>DECLARE @NastepnyNumer TABLE 
     149( 
     150        ReklamaId INT, 
     151        Reklama varchar(50), 
     152        StaryGrzbiet varchar(10) 
     153) 
     154 
     155INSERT INTO @NastepnyNumer 
     156SELECT R.ReklamaId, R.[Id reklamy] AS Reklama, dbo.getSectionForDTP (T.Id, R.grzbiet, R.ogl_dzial) AS StaryGrzbiet FROM REKLAMA AS R  
     157                INNER JOIN [UKAÅ»E SIĘ W NR] ON R.ReklamaID = [UKAÅ»E SIĘ W NR].ReklamaId  
     158                INNER JOIN [Lista tytułów] T ON T.Symb=R.[Tytuł] 
     159                LEFT OUTER JOIN GRZBIETY AS G ON R.GRZBIET = G.ID  
     160                WHERE [UKAÅ»E SIĘ W NR].[Nr Wydania] = @nr2  
     161                AND R.tytuł =@tytul  
     162                AND R.[zatwierdzono do druku]=1 
     163 
     164SELECT * FROM  
    141165( 
    142166SELECT  
     
    145169[UKAÅ»E SIĘ W NR].[Nr Wydania] as nrwyd1,  
    146170G.[nazwa] as grzbiet1,  
    147 r.[id reklamy] as reklama1,  
     171r.[id reklamy] as Reklama,  
    148172R.strona  AS Uwagi,  
    149173REKLAMA_STRONA.Strona,  
    150174R.[zatwierdzono do druku], 
    151 D.Name AS Dzial, Roz.Name AS Rozdzial, Lok.Text AS Lokalizacja 
     175D.Name AS Dzial, Roz.Name AS Rozdzial, Lok.Text AS Lokalizacja, 
     176NastepnyNr.Reklama AS NastepnaReklama, NastepnyNr.StaryGrzbiet AS NastepnyGrzbiet 
    152177FROM REKLAMA AS R  
    153178INNER JOIN [UKAÅ»E SIĘ W NR] ON R.ReklamaID = [UKAÅ»E SIĘ W NR].ReklamaId  
    154179INNER JOIN [Lista tytułów] T ON T.Symb=R.[Tytuł] 
    155 LEFT OUTER JOIN REKLAMA_STRONA ON R.ReklamaID = REKLAMA_STRONA.ReklamaId AND  [UKAÅ»E SIĘ W NR].[Nr Wydania] = REKLAMA_STRONA.NR_WYDANIA  
     180LEFT OUTER JOIN REKLAMA_STRONA ON R.ReklamaID = REKLAMA_STRONA.ReklamaId AND [UKAÅ»E SIĘ W NR].[Nr Wydania] = REKLAMA_STRONA.NR_WYDANIA  
    156181LEFT OUTER JOIN GRZBIETY AS G ON R.GRZBIET = G.ID  
     182LEFT OUTER JOIN Agenci AS A ON R.[SYMBOL AKWIZYTORA] = A.symbol  
     183LEFT OUTER JOIN Agencje AS A2 ON A.id_agencji = A2.id_agencji 
    157184LEFT OUTER JOIN Dzial AS D ON R.ogl_dzial = D.Id 
    158185LEFT OUTER JOIN Rozdzial AS Roz ON R.ogl_rozdzial = Roz.Id 
    159186LEFT OUTER JOIN ReklamaLokalizacja AS Lok ON R.AdLocationId = Lok.Id 
    160  
     187LEFT OUTER JOIN @NastepnyNumer AS NastepnyNr ON SUBSTRING(NastepnyNr.Reklama,1,7) COLLATE SQL_Latin1_General_CP1250_CI_AS = SUBSTRING(R.[Id reklamy],1,7) COLLATE SQL_Latin1_General_CP1250_CI_AS 
    161188WHERE  
    162189[UKAÅ»E SIĘ W NR].[Nr Wydania] = @nr1   
    163 and r.tytuł =@tytul  
    164 and (r.[zatwierdzono do druku]=1 or (r.[zatwierdzono do druku]=0 and REKLAMA_STRONA.strona is not null)) 
    165 and substring(R.[Id reklamy],1,7) not in (  
    166         SELECT substring(R.[Id reklamy],1,7) FROM REKLAMA AS R  
    167                 INNER JOIN [UKAÅ»E SIĘ W NR] ON R.ReklamaID = [UKAÅ»E SIĘ W NR].ReklamaId  
    168                 LEFT OUTER JOIN REKLAMA_STRONA ON R.ReklamaID = REKLAMA_STRONA.ReklamaId AND [UKAÅ»E SIĘ W NR].[Nr Wydania] = REKLAMA_STRONA.NR_WYDANIA  
    169                 LEFT OUTER JOIN GRZBIETY AS G ON R.GRZBIET = G.ID  
    170         WHERE [UKAÅ»E SIĘ W NR].[Nr Wydania] = @nr2  AND r.tytuł =@tytul AND r.[zatwierdzono do druku]=1 
    171  
     190AND r.tytuł =@tytul  
     191AND REKLAMA_STRONA.strona is not null 
    172192) Reklama 
    173 WHERE Reklama.staryGrzbiet IN (@grzbiet) 
     193WHERE StaryGrzbiet IN (@grzbiet) AND (NastepnaReklama IS NULL OR (NastepnaReklama IS NOT NULL AND StaryGrzbiet&lt;&gt;NastepnyGrzbiet)) 
    174194ORDER BY Reklama.Strona</CommandText> 
    175195        <QueryParameters> 
     
    327347                      <ZIndex>8</ZIndex> 
    328348                      <CanGrow>true</CanGrow> 
    329                       <Value>=Fields!reklama1.Value</Value> 
     349                      <Value>=Fields!Reklama.Value</Value> 
    330350                    </Textbox> 
    331351                  </ReportItems>