2011-07-11 5 views
2

J'ai un rapport SSRS 2008 où je dois cacher quelques colonnes & exporter pour exceller et après l'exportation pour exceller, l'exigence dit que les colonnes doivent être affichées dans l'excel. S'il vous plaît suggérer un moyen de le faire car j'ai entendu dire que cela ne peut pas être du tout.SSRS Exporter vers Excel Masquer/afficher Numéro

Merci d'avance !!

Répondre

8

Cela peut être fait, mais je crois que lorsqu'il est déployé sur un serveur SSRS 2008 R2. C'est comme ça que je l'utilise maintenant. La façon dont vous le faites est que vous utilisez une condition propriété « Caché » sur les colonnes qui est défini comme suit: EDIT: commutées le vrai faux autour de sorte qu'il ne soit pas caché dans Excel

=IIF(Globals!RenderFormat.Name = "EXCEL",false,true) 

qui efficacement cache la colonne sauf si elle est sortie dans Excel.

Vous accédez aux colonnes si vous utilisez VS2008 en sélectionnant le mode avancé dans la liste déroulante en haut à droite de l'explorateur de groupe près du bas de l'interface. Les colonnes listent de haut en bas représentant la représentation de gauche à droite des colonnes. Définissez la propriété "Hidden" avec l'un de ceux sélectionnés.

+0

+1 bien. C'est nouveau dans R2, donc cela dépend de la version exacte que l'OP utilise – gbn

0

Non, il ne peut pas.

Les colonnes (ou toute zone de données) de SSRS non visible ne sont pas rendues. Il ne peut pas apparaître dans Excel car il n'y est pas. Du point de vue de l'utilisateur, si j'exporte, je m'attendrais à obtenir ce que je vois à l'écran.

Vous pourriez avoir un URLAccess based report qui

  • repointe le même rapport
  • a un caché parameter RenderAllForExcel (..&RenderAllForExcel=true)
  • rend direct to Excel (...&rs:Format=Excel&rs:Command=Render)
1

Il est possible! :)

Il vous suffit de sélectionner les colonnes que vous souhaitez cacher dans Excel, allez dans le panneau de propriétés (vous pouvez appuyer sur F4) et en bas, à l'intérieur de visibilité, écrire cette expression dans l'option cachée:

=IIF(Globals!RenderFormat.Name = "EXCELOPENXML",true,false) 

Même si Visual Studio souligne l'attribut 'name' en rouge, cela fonctionne très bien!

Vous pouvez masquer tout ce que vous voulez dans Excel, mais il doit d'abord être rendu dans la RPL. En fait, lorsque vous le cachez, il apparaît comme une colonne blanche.

0

Si Excel 2012 est utilisé, s'il vous plaît essayer à la place

=IIF(Globals!RenderFormat.Name = "EXCELOPENXML",true,false) 
+0

Essayez ceci à la place si pas sûr = IIf (Globals! RenderFormat.Name Comme "EXCEL *", Vrai, Faux) –

0

La formule a fonctionné ci-dessous bien pour ce scénario - Je veux des sauts de page dans la visionneuse de rapports, mais lors de l'exportation dont j'ai besoin de toutes les données de lignes en simple feuille de calcul Excel.

=IIF(Globals!RenderFormat.Name = "EXCELOPENXML" OR Globals!RenderFormat.Name = "EXCEL", false, true)