Gibt es eine Möglichkeit, den Benutzernamen des Windows-Kontos des Clients zu ermitteln, der auf den ssrs-Bericht zugreift? Wenn ein Benutzer von Rechner A aus auf Berichte auf Server B zugreift, wie können wir den Windows-Benutzernamen des Benutzers im SSRS-Bericht abrufen?
Ich habe User!UserID verwendet und es hat gut funktioniert, da ich es von meinem lokalen Rechner aus ausgeführt habe. Sobald es auf einem anderen Server bereitgestellt wurde, funktionierte es nicht mehr, da keine gültige User!UserID verfügbar ist.
Bitte vorschlagen.
Mein Fehler. Ich bekomme den Benutzernamen. Aber es scheint, dass der "Code", den ich auf dem Server ausführen musste, nicht funktioniert hat. Ich habe einen vb.net-Code unter "Berichtseigenschaften -> Code" hinzugefügt. Auf dem lokalen Rechner funktioniert er einwandfrei. Ich habe einfach mit der rechten Maustaste geklickt und den Bericht auf den Server übertragen. Gibt es einen zusätzlichen Schritt, der ausgeführt werden muss, damit der "Code" auch auf dem Server bereitgestellt oder ausgeführt wird? Es handelt sich um eine sehr einfache vb.net-Funktion wie unten gezeigt
Public Shared Function GetUserName(ByVal input as String) As String
Try
input = input.Replace("<domain>\", "")
Dim details(2) As String
details = input.Split(".".ToCharArray())
input = String.Concat(details(1), ", ", details(0))
Catch ex As Exception
Return ex.Message
End Try
Return input
End Function
Aktualisierung:
Es scheint, dass aus irgendeinem Grund input=input.Replace("\","") nicht funktioniert. Der restliche Teil des Codes scheint zu funktionieren. Der Code wird also definitiv zusammen mit dem Bericht bereitgestellt. Ich bin verwirrt, warum input.Replace() auf dem lokalen Rechner funktioniert und nicht auf dem Server.
Aktualisierung: Es scheint, dass der Domänenname, den ich auf dem lokalen Rechner erhielt, in Kleinbuchstaben war, während der auf dem Server in Großbuchstaben war, so dass das Ersetzen nicht funktionierte. Jetzt wende ich ToLower() auf die Eingabe vor dem Ersetzen an und es funktioniert. Mein Fehler. Ich hätte es besser debuggen müssen.
Ich hoffe, dass diese Frage für jemanden nützlich ist, der den Windows-Benutzernamen in den ssrs-Bericht aufnehmen möchte.
Gracias