2013-01-14 13 views
14

Jestem projektowania niektóre raporty SSRS w Visual Studio i każde pole datetime jest wyświetlany jako dd/mm/yyy zamiast moje preferencje dd/mm/rrrrZmień Visual Studio „Bieżące ustawienia regionalne” wartość

moje okna Ustawienia regionalne to angielski (Irlandia), ale jeśli spojrzę na dowolne okno zastępcze datetmie, wyświetli się "Bieżące ustawienia regionalne: angielski (Stany Zjednoczone)". Nie wiem, skąd się to bierze (całkiem pewne, że to nie jest login SQL zdefiniowany w zbiorze danych) ani jak go zmienić. Jakieś pomysły?

(mogłem przymusowo zmienić wyjście z każdego pola datetime do mojego preferowanego formatu byłoby chciałby nie trzeba robić to za każdym razem, a zamiast tego po prostu środowiska we właściwym kontekście regionalnym)

Update: Zapomniałeś aby dodać, widzę tag języka w RDL, który jest ustawiony na "en-US" i kiedy próbuję zmienić to na cokolwiek innego i zapisuję go automatycznie, zmienia się z powrotem na "en-US"

Odpowiedz

29

Każdy raport ma swoje własne ustawienia regionalne.

Kliknij część powierzchni raportowania projektu, która nie ma obiektów i spójrz na okno Właściwości raportu. Pod numerem Localization znajduje się ustawienie o nazwie Language, które domyślnie przyjmuje wartość English (United States) lub en-US. Możesz ustawić to na własne ustawienia regionalne, ale chcę ustawić je na =User!Language, aby wyświetlało się w preferencjach regionalnych ustawień użytkownika.

+0

Pozdrawiam. Zmieniono go w oknie właściwości (nie wiem, dlaczego nie pozwoliłbym tego zrobić bezpośrednio w pliku RDL). Z ciekawości, czy zawsze jest to domyślne dla en-US, bez względu na wszystko? Czy mogę zmienić ustawienie gdzieś w VisualStudio, aby domyślnie było coś innego? – KrustyGString

+0

Myślę, że zawsze jest to "en-US". Mam kilka pustych raportów szablonów, które kopiuję podczas tworzenia raportów; zawierają one ustawienia regionalne, nagłówek, stopki, marginesy, rozmiar strony, itd., więc mam już ustawienia na poziomie podstawowym (lub po prostu skopiuj istniejącą repot i edytuj stamtąd). –

3

Odpowiednie rozwiązanie jest jednym z Chrisem, ale jak już napisałem aktualizację, można spróbować zmodyfikować formułę wyrażenie swojego zastępczego w następujący sposób:

=Format(Fields!FieldName.Value, "dd/MM/yyyy")

+0

Odpowiedź od Chrisa wykonała zadanie, ale musiałaby użyć formuły wyrażenia, gdyby nie. W porządku dla jednego pola lub prostego raportu, ale gdy są bardziej skomplikowane, nie jest to coś, co chcę śledzić! – KrustyGString

+0

Chociaż wydaje się, że rozwiązuje to problem, ma on inne implikacje; na przykład eksportowanie do programu Excel wyeksportuje teraz to pole jako tekst, a nie podczas sortowania z datą. Prezentacja powinna zawsze być oddzielona od danych. Lepszym sposobem (jeśli nie zmienia się ustawienia języka) byłoby zachowanie wartości komórki jako 'Fields! FieldName.Value' i zmiana właściwości' Format' na 'dd/MM/rrrr' - w ten sposób typ danych pozostaje Data, ale wyświetla tak, jak chcesz. –

5

następstwie Chris' poprawny odpowiedź - W OFERTACH DLA VS 2012 kliknięcie prawym przyciskiem myszy powierzchni projektu nie wyświetlało ekranu lokalizacji. Naciśnij klawisz f7, aby edytować kod źródłowy raportu, w którym można znaleźć odpowiedni węzeł i zmienić go na ustawienie lokalne:

 ....</ReportSections> 
     <Language>en-GB</Language> 
     ... 
    </Report> 
+0

Na moim VS2012 F7 nie działa, ale kliknij prawym przyciskiem myszy plik RDL w eksploratorze rozwiązań ma opcję edycji kodu. – DomBat

+1

Odpowiedź Chrisa dotyczyła standardowego okna właściwości w VS po wybraniu obiektu raportu, a nie ekranu lokalizacji - wystarczy więc spojrzeć tam, zamiast edytować kod źródłowy. – Rich

+0

Nie mogłem tego zrobić Chris za pośrednictwem właściwości raportu, musiałem F7 i zaktualizować go w ten sposób –

Powiązane problemy