none
Errore Reporting Services RRS feed

  • Domanda

  • Ciao a tutti, ho aperto con VS2017 un vecchio progetto ed ora quando edito il Report e poi compilo ottengo l'errore.



    Severity Code Description Project File Line Suppression State
    Error The report definition is not valid. Details: The report definition has an invalid target namespace 'http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition' which cannot be upgraded. C:\Users\Administrator\Desktop\App.Web\Reports\Rep ort_Lio.rdlc 1 


    Googlando ho già provato a cambiare 2016 in 2005 (quello che avevano prima i miei RDLC... 2005) ma poi in fase di compilazione ottengo altri errori perché il file RDLC nel frattempo è stato trasformato nella nuova versione e quindi alcuni elementi dell'XML non vengono riconosciuti.

    Qualcuno mi può aiutare a poter gestire questo report, e compilare senza problema?

    Grazie infinite!!!
    martedì 6 settembre 2022 10:49

Tutte le risposte

  • Buongiorno, 

    Direi che, normalmente penseresti semplicemente impostando TargetServerVersion della soluzione risolvera' il problema. Purtroppo, no. 

    Una soluzione sarebbe:

    1) Sostituire la riga report xmlns con la seguente:

    <Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
    


    2) Rimuovere le righe ReportSections e ReportSection, mantenendo il tag del corpo della struttura ad albero figlio, ecc. sotto di esso). Quindi rimuovi questi:

    <ReportSections> <ReportSection>

    e questi...

     </ReportSection>
      </ReportSections>


    3) Rimuovere l'intera sezione ReportParametersLayout. Quindi (ad esempio) rimuovi questo:

     <ReportParametersLayout>
        <GridLayoutDefinition>
          <NumberOfColumns>4</NumberOfColumns>
          <NumberOfRows>2</NumberOfRows>
        </GridLayoutDefinition>
      </ReportParametersLayout>



    Premi Salva, torna al design ed esegui il rapporto. Se non hai modificato il design, funzionerà in SQL2014. Nel momento in cui modifichi qualsiasi campo, verrà ripristinato lo schema 2016.


    • Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto fornito “as is“ non comporta alcuna responsabilità da parte dell’azienda.

    martedì 6 settembre 2022 14:36
    Moderatore
  • Prima di tutto grazie per l'aiuto

    Punto 1 fatto

    Punto 2, ho cancellato

    <ReportSections> <ReportSection>

    E la chiusura del TAG

     </ReportSection>
      </ReportSections>

    Quindi dove
    io avevo

      <ReportSections>
        <ReportSection>
          <Body>
            <ReportItems>
              <Tablix Name="table1">
                <TablixBody>
                  <TablixColumns>
                    <TablixColumn>
                      <Width>6.75cm</Width>
                    </TablixColumn>
                    <TablixColumn>
                      <Width>3.75cm</Width>
                    </TablixColumn>
                    <TablixColumn>
                      <Width>1cm</Width>
                    </TablixColumn>
                    <TablixColumn>
                      <Width>2.75cm</Width>

    ....

    quindi ho tenuto da

    <Body>
            <ReportItems>
              <Tablix Name="table1">
                <TablixBody>

    ....

    Punto 3 fatto.


    Sono tornato all'editor visuale del report, lancio la compilazione ed ottengo:


    Severity

    Code

    Description

    Project

    File

    Line

    Suppression State

    Error

    The report definition is not valid.  Details: The report definition has an invalid target namespace 'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition' which cannot be upgraded.

    C:\Users\Administrator\Desktop\App\....\Reports\Report.rdlc

    1

    Grazie per l'aiuto!!



    • Modificato il_dandi martedì 6 settembre 2022 22:22
    martedì 6 settembre 2022 22:21
  • Strano...comunque, cambia l'errore - da 2016, a 2008.

    La definizione del report ha uno spazio dei nomi di destinazione non valido.
    (la versione specifica del report che hai impostato come proprietà TargetServerVersion viene creata nella cartella BIN (\debug o ovunque tu crei) fintanto che non si utilizzano funzionalità 2016)

    Se viene visualizzato l'errore "Spazio dei nomi di destinazione non valido" durante la distribuzione/apertura di un report in una connessione SQL Server, significa che la definizione del report non è valida all'interno del report. Ciò si verifica in genere se un report è stato creato in una versione diversa di SQL Server e quindi importato in una versione precedente.


    Per correggere questo errore, i step sono sempre questi:

    Passaggio 1: apri il blocco note del file rdl o il blocco note ++

    Passaggio 2: sostituire la riga xmlns del report con la seguente:

    <Report xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition" xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner">
    Passaggio 3: rimuovere le righe ReportSections e ReportSection, mantenendo il tag del corpo della struttura ad albero figlio, ecc. sotto di esso). Quindi rimuovi questi:

    <ReportSections>
        <ReportSection>
            ....                          --Don't remove
            ....                          --Don't remove
         </ReportSection>
    </ReportSections>

    Passaggio 4: rimuovere l'intera sezione ReportParametersLayout. Quindi (ad esempio) rimuovi questo:

     <ReportParametersLayout>
        <GridLayoutDefinition>
          <NumberOfColumns>4</NumberOfColumns>
          <NumberOfRows>2</NumberOfRows>
        </GridLayoutDefinition>
      </ReportParametersLayout>

    Premi Salva, torna al design ed esegui il rapporto.


    Oppure puoi seguire i passaggi seguenti


    Puoi ottenere report in diversi formati di versione da Visual Studio con i passaggi seguenti:

     - Nelle pagine delle proprietà del progetto impostare TargetServerVersion sul formato desiderato (in questo caso SQL Server 2008 R2, 2012 o 2014)

     - Costruisci il progetto

     - Trova gli rdl nel formato desiderato nella cartella di output della build (specificata anche nelle pagine delle proprietà del progetto: Build => OutputPath)

    • Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto fornito “as is“ non comporta alcuna responsabilità da parte dell’azienda.

    mercoledì 7 settembre 2022 08:48
    Moderatore
  • Grazie ancora per l'aiuto!!! Sono davvero in alto mare e non capisco come procedere

    Ora, seguendo le due istruzioni, ottengo questo

    Severity

    Code

    Description

    Project

    File

    Line

    Suppression State

    Error

    The report definition is not valid.  Details: The report definition has an invalid target namespace 'http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition' which cannot be upgraded.

    C:\Users\Administrator\Desktop\....\Reports\Report_Lo.rdlc

    1

    HO sbagliato qualche cosa??

    Questo non l'ho fatto

    --

    Puoi ottenere report in diversi formati di versione da Visual Studio con i passaggi seguenti:

     - Nelle pagine delle proprietà del progetto impostare TargetServerVersion sul formato desiderato (in questo caso SQL Server 2008 R2, 2012 o 2014)

     - Costruisci il progetto

     - Trova gli rdl nel formato desiderato nella cartella di output della build (specificata anche nelle pagine delle proprietà del progetto: Build => OutputPath)

    --

    Non ho capito trove trovare proprietà del progetto e  TargetServerVersion

    Grazie!!

    • Modificato il_dandi mercoledì 7 settembre 2022 22:59
    mercoledì 7 settembre 2022 22:56
  • È possibile accedere alle proprietà del progetto facendo clic con il pulsante destro del mouse sul nodo del progetto in Esplora soluzioni e scegliendo Proprietà oppure digitando le proprietà nella casella di ricerca sulla barra dei menu e scegliendo Finestra delle proprietà dai risultati.

    Sinceramente, non saprei che altro suggerire, tranne di usare il VS vecchio per questo progetto in particolare. 


    • Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto fornito “as is“ non comporta alcuna responsabilità da parte dell’azienda.

    giovedì 8 settembre 2022 11:05
    Moderatore
  • In Propriety Page vedo questo (allegato)

    https://www.dropbox.com/s/yf1zfuv3h7cizs3/Schermata%202022-09-08%20alle%2019.27.58.png?dl=0

    https://www.dropbox.com/s/ewc3nsx3xyhbtva/Schermata%202022-09-08%20alle%2019.28.52.png?dl=0

    https://www.dropbox.com/s/3p194h2zvwp8z8f/Schermata%202022-09-08%20alle%2019.29.06.png?dl=0

    https://www.dropbox.com/s/lmvraa1z31mk8jq/Schermata%202022-09-08%20alle%2019.29.14.png?dl=0

    Ma non trovo quello che mi hai detto

    giovedì 8 settembre 2022 17:30
  • Scusa se disturbo ancora ma non riesco proprio a risolvere e trovare quello che dici

    In Propriety Page vedo questo (allegato)

    https://www.dropbox.com/s/yf1zfuv3h7cizs3/Schermata%202022-09-08%20alle%2019.27.58.png?dl=0

    https://www.dropbox.com/s/ewc3nsx3xyhbtva/Schermata%202022-09-08%20alle%2019.28.52.png?dl=0

    https://www.dropbox.com/s/3p194h2zvwp8z8f/Schermata%202022-09-08%20alle%2019.29.06.png?dl=0

    https://www.dropbox.com/s/lmvraa1z31mk8jq/Schermata%202022-09-08%20alle%2019.29.14.png?dl=0

    Ma non trovo quello che mi hai detto

    lunedì 12 settembre 2022 10:00
  • vedi qui - https://docs.microsoft.com/it-it/visualstudio/ide/reference/project-properties-reference?view=vs-2022

    Le screenshot che mi mandi sono diversi. 


    • Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto fornito “as is“ non comporta alcuna responsabilità da parte dell’azienda.

    lunedì 12 settembre 2022 12:35
    Moderatore
  • Salve, Dandi,

    l'informazione fornita, ha aiutato?


    • Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto fornito “as is“ non comporta alcuna responsabilità da parte dell’azienda.


    giovedì 15 settembre 2022 15:42
    Moderatore