2015-08-24 4 views
7

ich einen SSRS-Bericht haben, auf die ich ein Startdatum und Enddatum Parameter bin vorbei, aber ich halte die Aufnahme des folgenden Fehler:SSRS Prozedur oder Funktion „“ erwartet Parameter ‚‘, die nicht geliefert wurde

Procedure or function 'MyReport' expects parameter '@startDate', which was not supplied.

Ich habe einen Parameter in meinem Bericht erstellt und in meinem DataSet zugeordnet. Ich verstehe nicht, was mir hier fehlt. Irgendwelche Ideen? Jede Hilfe wird sehr geschätzt.

Param Mapping

SQL

ALTER PROCEDURE [dbo].[MyReport] 
    @startDate datetime, 
    @endDate datetime 
AS 
BEGIN 
    -- SET NOCOUNT ON added to prevent extra result sets from 
    -- interfering with SELECT statements. 
    SET NOCOUNT ON; 

    SELECT * 
    FROM myReportTbl tbl 
    WHERE tbl.[Updated] >= @startDate 
    AND tbl.[Updated] <= @endDate 
END 

Berichtscode

<DataSet Name="DataSet1"> 
    <Query> 
    <DataSourceName>Dev</DataSourceName> 
    <QueryParameters> 
     <QueryParameter Name="@startDate"> 
     <Value>=Parameters!StartDate.Value</Value> 
     <rd:UserDefined>true</rd:UserDefined> 
     </QueryParameter> 
     <QueryParameter Name="@endDate"> 
     <Value>=Parameters!EndDate.Value</Value> 
     <rd:UserDefined>true</rd:UserDefined> 
     </QueryParameter> 
    </QueryParameters> 
    <CommandText>MyReport</CommandText> 
    </Query> 
+0

Ich öffnete meinen Code hinter der Seite und alles scheint korrekt eingestellt zu sein ... – ExceptionLimeCat

+0

Können Sie auch die Screenshots der Parameter Eigenschaften von StartDate und EndDate zeigen. Denken Sie daran, dass SSRS die Groß-/Kleinschreibung unterscheidet. Diese Art von Fehlern kann auftreten, wenn Sie den Parameter startDate definiert haben und als StartDate aufrufen. –

Antwort

4

Ich habe das Problem gefunden. Es war ziemlich dumm von mir, aber ich schwöre, dass ich das in der Vergangenheit getan hatte. Ich hatte Query Type im Datensatz auf gesetzt und es sollte Stored Procedure sein.

+0

Ich habe das gleiche Problem, aber sehe nicht, wo Abfragetyp festgelegt ist; In der Registerkarte Daten habe ich einfach "Gespeicherte Prozedur:" und dann ein Dropdown. Es wurde ausgeführt, bis ich die Schriftgröße in einem Textfeld in der Layoutansicht änderte. –

2

Überprüfen Sie, ob der Fall der Parameter korrekt ist. Ich habe in der Vergangenheit Fehler aufgrund von Fallproblemen erhalten.

Report parameters are case-sensitive.

https://msdn.microsoft.com/en-us/library/ms155391.aspx

+1

Ich habe sie direkt aus dem gespeicherten Proc kopiert und eingefügt .. siehe auch Bild .. Dies ist ein super nerviges Problem. – ExceptionLimeCat

+0

@ExceptionLimeCat Sie haben Recht, da ich dieses Problem anscheinend nicht reproduzieren kann. Ich habe einen einfachen Bericht erstellt, der genauso ist wie oben beschrieben und kann ihn ausführen. – duffn

1

Versuchen Sie, die Parameter löschen und dann in die Datensatzeigenschaften gehen und treffen refresh Felder, die sie für Sie neu sollte.