Delen via


Een externe gegevensbron gebruiken voor abonneegegevens (gegevensgestuurd abonnement)

In een gegevensgestuurd abonnement worden dynamische abonnementsgegevens geleverd door een query of opdracht waarmee gegevens worden opgehaald uit een externe gegevensbron. Abonnementsgegevens kunnen worden opgehaald uit elke ondersteunde gegevensbron die voldoet aan de vereisten voor gegevensgestuurde abonnementsverwerking. De syntaxis van de query of opdracht moet geldig zijn voor een gegevensverwerkingsextensie die is geïnstalleerd met uw rapportserver.

Vereisten voor gegevensverwerking

Reporting Services maakt gebruik van extensies voor gegevensverwerking om abonnementsgegevens op te halen. Aanbevolen gegevensbrontypen zijn:

  • Relationele SQL Server-databases

  • Oracle-databases

  • Multidimensionale gegevensbronnen en gegevensanalyse van Analysis Services

  • XML-gegevensbronnen

    Wanneer u de XML-extensie voor gegevensverwerking gebruikt voor abonneegegevens, moet u ervoor zorgen dat u de time-outinstellingen voor query's in het abonnement verhoogt. De XML-extensie voor gegevensverwerking maakt gebruik van milliseconden in plaats van seconden voor time-outwaarden van query's. Als u de time-outwaarde niet verhoogt, kan het abonnement mislukken vanwege onvoldoende verwerkingstijd.

    Gebruik niet de optie Referenties zijn niet vereist wanneer u de verbinding met de abonneegegevensbron configureert. Het wordt aanbevolen om opgeslagen referenties te gebruiken met de XML-extensie voor gegevensverwerking om abonnementsgegevens tijdens uitvoering op te halen.

U kunt mogelijk andere ondersteunde gegevensbrontypen gebruiken, maar niet allemaal werken gegarandeerd. De volgende gegevensbrontypen kunnen bijvoorbeeld niet worden gebruikt voor abonneegegevens:

  • SAP Netweaver BI-databases

  • Rapportmodellen

Als u een aangepaste extensie voor gegevensverwerking hebt die u wilt gebruiken in gegevensgestuurde abonnementen, moeten de IDbCommand en de IDataReader interfaces worden geïmplementeerd. De extensie voor gegevensverwerking moet ondersteuning bieden voor het uitvoeren van uitsluitend schema-query's. Deze query wordt gebruikt om kolommetagegevens op te halen tijdens het ontwerpen, zodat gebruikers kolommen kunnen toewijzen aan leveringsopties en rapportparameters in de abonnementsdefinitie. De uitvoering van query's met alleen schema's vindt plaats in een vroeg stadium wanneer de gebruiker het abonnement definieert.

Queryvereisten

Houd rekening met de volgende punten bij het maken van query's waarmee abonnementsgegevens worden opgehaald:

  • U kunt slechts één query voor het abonnement maken.

  • De query moet alle waarden retourneren die u wilt gebruiken voor leveringsopties en om rapportparameters op te geven.

  • De rapportserver maakt een rapportlevering voor elke rij in de resultatenset. Als de resultatenset uit 300 rijen bestaat, probeert de rapportserver 300 rapporten te leveren.

Leveringsopties instellen met variabele gegevens uit een abonneedatabase

U kunt gegevens in de abonneedatabase gebruiken om leveringsopties voor elke geadresseerde aan te passen. Het type leveringsuitbreiding dat u gebruikt, bepaalt welke opties beschikbaar zijn. Als u de e-mailbezorgingsextensie van de rapportserver gebruikt, moet de query een e-mailalias voor elke abonnee bevatten. Als u de levering van bestandsshares gebruikt, moeten de abonneegegevens waarden bevatten die kunnen worden gebruikt om abonneespecifieke rapportbestanden te maken of om een bestemming voor de levering te bieden. Zie E-mailbezorging in Reporting Services voor meer informatie.

Parameterwaarden van de abonneedatabase doorgeven aan het rapport

Als u een gegevensgestuurd abonnement voor een geparameteriseerd rapport maakt, kunt u variabele parameterwaarden gebruiken om de uitvoer van elk rapport aan te passen. De abonneedatabase kan bijvoorbeeld werknemersidentificatienummers, huurdatums, functietitels en kantoorlocatiegegevens bevatten die kunnen worden gebruikt om rapportgegevens te filteren. Als het rapport parameters accepteert die zijn gebaseerd op deze of andere beschikbare kolomgegevens, kunt u de parameter toewijzen aan de juiste kolom.

Wanneer u abonneevelden toewijst aan rapportparameters, moet u ervoor zorgen dat de gegevenstypen en kolomlengten compatibel zijn. Als er een gegevenstype niet overeenkomt, treedt er een fout op tijdens de verwerking van het abonnement. Zie SSRS-zelfstudie (Een gegevensgestuurd abonnement maken) voor meer informatie over het gebruik van abonneegegevens in een geparameteriseerd rapport.

De abonneegegevensbron wijzigen

De volgende wijzigingen in de abonneegegevensbron kunnen verhinderen dat het abonnement wordt uitgevoerd:

  • Kolommen verwijderen waarnaar wordt verwezen in het abonnement.

  • De tabelstructuur van de gegevensbron wijzigen.

  • Gegevenstype en andere kolomeigenschappen wijzigen.

Als u een van deze wijzigingen aanbrengt, moet u het abonnement bijwerken.