2011-11-14 10 views
5

Używam SQL Reporting i pisemne zapytanieWeryfikacja parametru nie powiodła się. Nie można podać poprawnych wartości dla wszystkich parametrów. raportowania (rsParameterError) SQL 2008

SELECT * FROM users WHERE created_by = @createdby 

i przechodzącej parametr przy użyciu tego kodu w kodzie za plik, aby zadzwonić do tego raportu.

param[0] = new ReportParameter("@createdby", "1"); 
     reportviewer.ServerReport.SetParameters(param); 

również w pliku rdl. Ustawiłem ten paramerter "Ustaw wizualizację parametrów" na ukryty. Działa dobrze, gdy wykonuję tę kwerendę za pomocą konstruktora zapytań, pojawia się okno definiuj parametr zapytania i zapytaj o parametr zapytania. i działa świetnie.

ale podczas przekazywania tego parametru za pomocą pliku .cs. Daje błąd "Niepowodzenie sprawdzania poprawności parametrów Nie można podać poprawnych wartości dla wszystkich parametrów (rsParameterError)".

Odpowiedz

10

Per niektóre googlowania na ciebie imieniu znalazłem możliwego kandydata:

„przejdź do strony zarządzania zdalnego serwera raportu (http: ///Reports/Pages/Folder.aspx). Drill down i najechaniu kursorem na raporcie, otwórz menu i wybierz Zarządzaj.

na stronie, które zostanie otwarte, wybierz parametry i upewnić się, że jest zaznaczone pole Ukryj parametru niepokoju.

Zastosuj aktualizację i test.”

Daj mi znać, jeśli ci to pomoże.

+0

Na drildown zgłaszania, otrzymuję ten błąd msg „walidacja parametrów nie powiodło się. Nie jest możliwe, aby zapewnić prawidłowe wartości dla wszystkich parametrów. (RsParameterError)”. a także chcę wysłać parametry z pliku .aspx zawierającego listę rozwijaną przez wysłanie jej wybranej wartości jako parametru. – SST

+0

Założę, że masz taki sam błąd z drążeniem w raporcie, który właśnie napotkałeś. Jeśli chodzi o przekazywanie elementu rozwijanego do raportu, zobacz tutaj: http://forums.asp.net/t/1376774.aspx/1. – KreepN

+0

To zadziałało dla mnie. Można się zastanawiać, dlaczego MS musi po prostu mieć pole wyboru "ukryj". – Adam

0

Możliwe, że masz problem z innym parametrem (wiadomość jest tak pomocna). W naszym przypadku ustawiliśmy wartość domyślną, która nie została zastosowana dla innego parametru, który nie został wymieniony w komunikacie o błędzie:

Wykryliśmy, że używanie Konstruktora raportów do zapisywania parametrów nie zawsze ustawiało prawidłowe wartości pustej, puste i domyślne .

Znaleźliśmy musieliśmy ustawić te na interfejsie Report Manager pracował jako łącznik między ich ustawienia „parametr” XML i nie kolejce

  1. Znajdź raport począwszy od http://server/Reports/Pages/Folder.aspx?ViewMode=List
  2. Zarządzać raport (prawo strzałka w dół)
  3. wybrać parametry
  4. dostosować ustawienia
  5. Zastosuj

Mieliśmy również problemy próbuje ustawić puste lub null domyślne

nadzieję, że pomoże komuś

1

I napotkał podobny problem przy korzystaniu z parametru zapytania napędzany więc mogę ustawić wartości w stopce dynamicznie.

Byłoby dobrze działać w VS, na serwerze raportów - ręcznie wprowadzając wartości parametrów w razie potrzeby oraz w ramach subskrypcji.

To było wywołanie z zewnętrznego mechanizmu wsadowego innej firmy - mogłem skonfigurować selektor i raport szczegółów (selektor wysłałby zapytanie, by utworzyć listę rezerwacji, do których będą generowane raporty podrzędne) i mógł wykonać krok w GUI grzywny, jednak, na przetwarzanie (gdzie silnik powinien również ustawić wartości w bazie danych klientów po każdym wygenerowanym raporcie) raport podrzędny nie powiedzie się z tym problemem, który, gdy masz kilka parametrów, nie ma dla nikogo żadnego pożytku

Wrzuciłem serwer raportowania do trybu szczegółowego (https://support.microsoft.com/en-us/help/2146315/recommended-configuration-for-verbose-logging-in-reporting-services), który ujawnił, który parametr generuje błąd.

Ten parametr dotyczy danych pochodzących z udostępnionego źródła danych z procedury składowanej. Ustawienie parametru na akceptowanie wartości NULL - nawet jeśli nie było żadnych wartości pustych, naprawiło problem (i ustawiono go również na wartość Internal).

Wiem, że to jest kilka lat, ale osiągnęliśmy wysokie wyniki w Google, więc pomyślałem, że dodam to dla każdego, kto może napotkać ten problem.

Steve