Utworzono raport za pomocą Crystal Reports XIr2, aby zgłosić informacje z bazy danych dla naszej aplikacji. Jest to raport z wieloma kartami, raportujący różne dane zwracane podczas uruchamiania procedury składowanej.Nie można znaleźć tabeli [nazwa tablicy] -2147189180
Szybki opis aplikacji, przez którą uruchamiany jest ten raport - jest to aplikacja napisana w VB6, po załadowaniu aplikacji pojawia się monit o podanie nazwy użytkownika i hasła, które są skonfigurowane na serwerze SQL jako loginy SQL, więc po zalogowaniu się do aplikacji uwierzytelniasz się przed bezpieczeństwem serwera SQL.
Raport działa absolutnie dobrze w programie Crystal Reports, jednak mam dziwne zachowanie w tym raporcie, gdy jest uruchamiany z poziomu naszej aplikacji w witrynie klienta. Działa dobrze dla wszystkich użytkowników z dostępem do bazy danych na poziomie "sa", ale powoduje następujący błąd po uruchomieniu jak każdy inny użytkownik;
Gdybym połączyć się z serwerem bazy danych bezpośrednio jako użytkownik, który pobiera powyższy błąd w aplikacji, uruchamianie procedur przechowywanych ręcznie działa bez żadnych błędów.
Jeśli podaję użytkownika, który otrzymuje błąd w naszych uprawnieniach aplikacji na serwerze SQL, błąd przestaje się dziać.
Sprawdziłem wszystkie powiązane uprawnienia do wykonywania dla danej procedury składowanej, ale jak stwierdzono, jeśli łączę się z serwerem SQL ręcznie i wykonuję procedurę, nie dostaję błędu z powyższego łącza.
Jeśli użytkownik, który otrzymuje ten błąd, uruchamia kolejny raport przed tym raportem, działa, jednak jeśli po otrzymaniu tego błędu wygeneruje raport, wszystkie raporty przestaną działać i będą wymagać ponownego uruchomienia aplikacji.
Wszelkie pomysły proszę?
Proszę otworzyć raport w programie Crystal i znajdź tabelę, której dotyczy problem, w Eksploratorze pól. Kliknij prawym przyciskiem myszy na stole i wybierz "Ustaw położenie źródła danych ...". Rozwiń drzewo pod tabelą, której dotyczy problem, i wyświetl jego właściwości. Kto jest właścicielem? – Dorian
@XToro właścicielem jest dbo –
Czy procedura składowana wykonuje w ogóle jakiekolwiek PISANIE w bazie danych? Czy jest to po prostu uruchomiony 'Wyrażenie'? Zakładając, że masz dostęp do serwera SQL; we właściwościach bazy danych> Uprawnienia, czy użytkownik lub role próbujące uruchomić procedurę mają jakieś uprawnienia? – Dorian