Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SSRS 2014 segnala un problema di distribuzione

Sono su un telefono in questo momento, quindi non posso ricontrollare la sintassi esatta 😕 Mi sono imbattuto in questo di recente. Probabilmente sei abituato a distribuire .rdls direttamente dalla tua cartella di origine. Con la nuova versione rispetto al 2015 in esecuzione su una versione del server precedente, dovrai seguire alcuni semplici passaggi.

  1. Assicurati che l'ambiente di destinazione sia impostato correttamente nelle proprietà del progetto. Probabilmente è perché l'aggiornamento dovrebbe riconoscerlo.
  2. Costruisci il tuo progetto. I file di origine saranno ancora nel nuovo formato ma .rdls (e altri file) verranno creati nella versione di destinazione nella sottocartella bin. Questi possono essere implementati senza problemi.

Sembra che a partire da Report Server 2016 ci sia una nuova struttura di file e le modifiche xmlns nel file rdl. Vs 2015 con SSDT-BI aggiornato aggiornerà ogni report che apri automaticamente al nuovo formato e lo utilizzerà come nuovo file di origine. Ma la creazione nell'ambiente di destinazione creerà rdls usando il vecchio xmlns e il formato file.

MODIFICA Aggiungendo solo alcune informazioni aggiuntive ho inserito una risposta diversa.

Nelle proprietà del progetto puoi avere fino a 3 opzioni per TargetServerVersion a seconda della versione VS e della versione SSDT-BI installata:

  • SQL 2008
  • SQL 2008 R2, SQL 2012, SQL 2014
  • SQL 2016+ (nuovo in VS 2015 con l'ultimo SSDT-BI)

Ciascuno di questi utilizza un diverso xmlns nel codice XML del report. Quando apri ogni rapporto, il file .rdl del tuo rapporto di origine verrà aggiornato all'ultimo xmlns, che ti piaccia o no.

Tuttavia, durante la distribuzione o la compilazione, i file .rdl nella cartella bin verranno compilati in modo che corrispondano alla destinazione. Finché utilizzi le versioni della cartella bin (automatiche con VS deploy), puoi distribuirle correttamente sul tuo server.