hallo,
ich möchte mit dem "Reporting Services" von sql-2005 einen Bericht erzeugen, dabei habe ich ja die "StoredProcedure" verwendet, aber ich habe jetzt ein Problem mit dem temporären Tabellen , welche in der "StoredProcedure" enthalten sind. Die Prozedur sieht so aus:
ALTER PROCEDURE dbo.spKassenabrechnung_GetResults(
@AbrKassenID INT
)
AS
BEGIN
set nocount on
select * into #Abrechnung from tblAbrKassen
where ID=@AbrKassenID
select * into #Kassen from tblAbrKassenKassen
where AbrKassenID=@AbrKassenID
select * into #Details from tblAbrKassenDetails
where AbrKassenKasseID in (select ID from #Kassen)
declare @ReJahr varchar(4)
select @ReJahr=cast(year(ReDat) as varchar(4))
from tblAbrkassen where ID=@AbrKassenID
select
cast(ks.StammID as varchar(6)) + '/' + @ReJahr +
'/' + cast(@AbrKassenID as varchar(6)) as ReNr,
cast(Null as datetime) as ReDat,
cast(Null as datetime) as VonDat, cast(Null as datetime) as BisDat,
cast(0 as money) as AbrSumme, k.KasseID, ks.Name1 as Kasse,
ks.Strasse, ks.PLZ, ks.Ort, cast(0 as money) as KassenSumme,
case KKStatus
when 1 then 'Hauptvers.'
when 2 then 'Familienvers.'
when 3 then 'Rentner'
else 'Sonstige' end as KKStatus,
vo.GueltigAb as VOVon, vo.GueltigBis as VOBis,
Name, Vorname, GebDat, MgNr, Kursart, FZBeleg, AnzTermine, Betrag, d.Summe
into #Selection from #Details d
inner join tblAbrKassenKassen k on k.ID=d.AbrKassenKasseID
inner join tblKassen ks on ks.ID=k.KasseID
inner join tblVerordnungen vo on vo.ID=d.VerordnungID
update #Selection set KassenSumme=k.Summe
from (select KasseID,Summe from #Kassen) k
where #Selection.KasseID=k.KasseID
update #Selection set
ReDat=a.ReDat,
VonDat=a.VonDat,
BisDat=a.BisDat,
AbrSumme=a.Summe
from (select ReDat,Vondat,BisDat,Summe
from #Abrechnung where ID=@AbrKassenID) a
select * from #Selection
order by Kasse, Name, Vorname
END
der sql-server zeigt den Fehler an:
"Ungültiger Objektname '#Selection'. (Microsoft SQL Server, Fehler: 208)"
ich verstehe nicht , warum dieser Fehler auftritt? gibt es eine Alternative überhaupt?
ich bin sehr dankbar für irgendeine Lösung!
ich möchte mit dem "Reporting Services" von sql-2005 einen Bericht erzeugen, dabei habe ich ja die "StoredProcedure" verwendet, aber ich habe jetzt ein Problem mit dem temporären Tabellen , welche in der "StoredProcedure" enthalten sind. Die Prozedur sieht so aus:
ALTER PROCEDURE dbo.spKassenabrechnung_GetResults(
@AbrKassenID INT
)
AS
BEGIN
set nocount on
select * into #Abrechnung from tblAbrKassen
where ID=@AbrKassenID
select * into #Kassen from tblAbrKassenKassen
where AbrKassenID=@AbrKassenID
select * into #Details from tblAbrKassenDetails
where AbrKassenKasseID in (select ID from #Kassen)
declare @ReJahr varchar(4)
select @ReJahr=cast(year(ReDat) as varchar(4))
from tblAbrkassen where ID=@AbrKassenID
select
cast(ks.StammID as varchar(6)) + '/' + @ReJahr +
'/' + cast(@AbrKassenID as varchar(6)) as ReNr,
cast(Null as datetime) as ReDat,
cast(Null as datetime) as VonDat, cast(Null as datetime) as BisDat,
cast(0 as money) as AbrSumme, k.KasseID, ks.Name1 as Kasse,
ks.Strasse, ks.PLZ, ks.Ort, cast(0 as money) as KassenSumme,
case KKStatus
when 1 then 'Hauptvers.'
when 2 then 'Familienvers.'
when 3 then 'Rentner'
else 'Sonstige' end as KKStatus,
vo.GueltigAb as VOVon, vo.GueltigBis as VOBis,
Name, Vorname, GebDat, MgNr, Kursart, FZBeleg, AnzTermine, Betrag, d.Summe
into #Selection from #Details d
inner join tblAbrKassenKassen k on k.ID=d.AbrKassenKasseID
inner join tblKassen ks on ks.ID=k.KasseID
inner join tblVerordnungen vo on vo.ID=d.VerordnungID
update #Selection set KassenSumme=k.Summe
from (select KasseID,Summe from #Kassen) k
where #Selection.KasseID=k.KasseID
update #Selection set
ReDat=a.ReDat,
VonDat=a.VonDat,
BisDat=a.BisDat,
AbrSumme=a.Summe
from (select ReDat,Vondat,BisDat,Summe
from #Abrechnung where ID=@AbrKassenID) a
select * from #Selection
order by Kasse, Name, Vorname
END
der sql-server zeigt den Fehler an:
"Ungültiger Objektname '#Selection'. (Microsoft SQL Server, Fehler: 208)"
ich verstehe nicht , warum dieser Fehler auftritt? gibt es eine Alternative überhaupt?
ich bin sehr dankbar für irgendeine Lösung!