SSRS 2008 multi-ligne de données de l'affichage sur une seule ligne dans le rapport
J'ai un rapport qui retourne un champ de données de tableau matriciel champ de contrôle. Le champ de données contient multi-line l'information dans la base de données. L'exemple ci-dessous.
Dans SQL Server,
"Dan, Chef De La Direction - Indiana Bureau"
"Dan Chef -" & vbcrlf & "Pdg" & " - "Indiana Office"
La vbcrlf de ne pas afficher dans SQL Server, mais je lui ai confirmé qu'ils sont présents en utilisant instr() dans SSRS.
Je veux les données à afficher comme ça. Je peux supprimer les tirets et des espaces.
Dan Chef
Chef de la direction
Indiana Office
Mais dans le rapport SSRS il affiche sur une seule ligne. J'ai l'étendue automatique case à cocher de sélection, et toujours rien.
Toutes les idées sont les bienvenue.
Grâce.
OriginalL'auteur user1186256 | 2012-03-29
Vous devez vous connecter pour publier un commentaire.
Il y a deux directions de l'accomplir. La méthode dépend de si oui ou non vous êtes à la mise en forme du texte au format HTML (clic Droit sur le texte dans la cellule, sélectionnez
Placeholder Properties
. Si le Balisage HTML, utilisez la première méthode ci-dessous.)Dirait que vous vous présentez comme HTML, depuis le vbcrlf sera affiché si vous défini sur Aucun.
Traitement de texte au format HTML:
Vous avez besoin pour remplacer la vbcrlf avec
<br/>
balises. C'est plus facile si vous utilisez le code inclus dans le rapport. Créer une fonction dans le rapport de code: menu Rapport, Rapport de Propriétés -> section de Code.Maintenant configurer votre domaine pour utiliser ce code:
=Code.ReplaceLineBreaks(Champs!ColumnA.Valeur)
Si vous n'êtes pas le traitement de texte au format HTML
vbCrLf doit être conservé et affiché dans ce cas, si c'est vraiment ce que vous avez stockées dans SQL, alors vous devriez être bien. Si vous avez quelques autres caractères à la place dans la chaîne, vous pouvez modifier la ReplaceLineBreaks fonction que j'ai fournis ci-dessus pour insérer vbCrLf.
OriginalL'auteur Jamie F
Si vous avez vbCRLF dans votre table, alors ce n'est pas la bonne façon d'aborder le problème.
SSRS rendra vbcrlf comme une chaîne de caractères et non pas comme un retour chariot saut de ligne de cette façon.
Vous devez retourner 3 colonnes distinctes pour votre jeu de données:
Nom, Le Rôle, Le Bureau
Dan Chef, chef de la direction, Bureau en inde
Dans votre tableau matriciel vous pouvez ensuite faire une expression où vous souhaitez que cette ligne s'affiche:
OriginalL'auteur Darren
Je n'ai pas travaillé beaucoup trop sur la SSR. Mais une chose que je suggère, c'est de créer un espace réservé dans le champ texte. Vous pouvez ensuite utiliser le langage html les balises de style pour briser les données sur plusieurs lignes. Mais bien sûr, je crois que vous ne pouvez utiliser cette méthode quand u ont plusieurs expressions à pourvoir dans le même domaine. Havent essayé une situation dans laquelle la base de données elle-même contient plusieurs lignes d'informations. J'espère que le lien ci-dessous vous expliquera la procédure de mieux.
http://sqlserverpedia.com/blog/sql-server-bloggers/using-different-formats-within-a-single-textbox-in-ssrs/
Vous pouvez voir toutes les balises html sont pris en charge en ssr ici
http://social.msdn.microsoft.com/Forums/en/sqlreportingservices/thread/3bffb40a-c67f-4cb2-a3dd-ce711200e8db
OriginalL'auteur Joss01
Dans mon cas, le Full_Address domaine, j'ai été sortie d'une zone de texte contenait un CR (CHAR(10), dans SQL), mais pas un LF (CHAR(13)). (Découvert en utilisant la fonction CHARINDEX.)
Donc ce que j'ai pensé que les différentes lignes de l'adresse complète n'étaient pas de saut de ligne sur la SSR sortie. Ce genre de ligne-a éclaté quand il a couru hors de la salle dans le rapport SSRS la zone de texte de champ, horizontalement parlant.
Donc ce que j'ai fait dans ma procédure stockée:
SÉLECTIONNEZ REMPLACER ...(Full_Address, CHAR(13), CHAR(10) + CHAR(13)) FullAddress, ...
OriginalL'auteur Amorphous Blob