W tej chwili rozmawiam przez telefon, więc nie mogę sprawdzić dokładnej składni 😕 Ostatnio wpadłem na to. Prawdopodobnie jesteś przyzwyczajony do wdrażania .rdls bezpośrednio z folderu źródłowego. W przypadku nowej wersji w porównaniu z 2015 r. ze starszą wersją serwera musisz wykonać kilka prostych kroków.
- Upewnij się, że środowisko docelowe jest poprawnie ustawione we właściwościach projektu. Prawdopodobnie dzieje się tak dlatego, że aktualizacja powinna go rozpoznać.
- Zbuduj swój projekt. Pliki źródłowe nadal będą w nowym formacie, ale rdls (i inne pliki) zostaną utworzone w wersji docelowej w podfolderze bin. Można je wdrożyć bez problemu.
Wygląda na to, że począwszy od Report Server 2016 jest nowa struktura plików i zmienia się xmlns w pliku rdl. Vs 2015 ze zaktualizowanym SSDT-BI zaktualizuje każdy raport, który otworzysz automatycznie do nowego formatu i użyje go jako nowego pliku źródłowego. Ale budowanie w docelowym środowisku spowoduje utworzenie rdls przy użyciu starego xmlns i formatu pliku.
EDYTUJ Po prostu dodając kilka dodatkowych informacji, wstawiam inną odpowiedź.
We właściwościach projektu możesz mieć do 3 opcji TargetServerVersion w zależności od wersji VS i zainstalowanej wersji SSDT-BI:
- SQL 2008
- SQL 2008 R2, SQL 2012, SQL 2014
- SQL 2016+ (nowość w VS 2015 z najnowszym SSDT-BI)
Każdy z nich używa innego kodu xmlns w kodzie XML raportu. Gdy otworzysz każdy raport, plik raportu źródłowego .rdl zostanie zaktualizowany do najnowszego formatu xmlns — czy ci się to podoba, czy nie.
Jednak podczas wdrażania lub kompilowania pliki .rdl w folderze bin zostaną skompilowane zgodnie z celem. Dopóki używasz wersji folderów bin (automatycznie w przypadku wdrażania VS), możesz z powodzeniem wdrożyć je na swoim serwerze.