Rdlc rapport à l'alignement lorsqu'elle a déposé vide ou null
Je suis en train de travailler avec Rdlc rapport.
J'ai ces champs:
First name
Address1
Address2
City, state, zip
Si l'un de ces champs est vide, il ne doit pas montrer le vide de l'espace.
Par exemple (sortie attendue)
First name,
Address1,
City, state, zip
Mais, comme le montre l'image ci-dessus, j'obtiens ceci:
First name,
Address1,
........................<-(blankspace is showing here)
City, state, zip
J'ai essayé de changer Visiblity
-> Expression
->
=IIF(String.IsNullOrEmpty(Fields!Address2.Value), false,True)
Vous devez vous connecter pour publier un commentaire.
Je pense que l'expression avec
String.IsNullOrEmpty
ne fonctionne pas.Essayer avec une de ces deux options:
1.
=IIF(IsNothing(Fields!Address2.Value),False,True)
2.
=IIF(Len(Fields!Address2.Value) = 0,False,True)
Selon les commentaires, la solution est de créer une zone de texte unique où mettre deux (ou plus) de champs et de concaténer la valeur si le deuxième champs a une valeur réelle ou est vide.
Donc l'expression:
Pour plus de lisibilité:
Dynamic show and hide elements are not supported in PDF. The PDF document is rendered to match the current state of any items in the report. For example, if the item is displayed when the report is run initially, then the item is rendered. Images that can be toggled are not rendered, if they are hidden when the report is exported.
=Fields!Address1.Value + IIF(String.IsNullOrEmpty(Fields!Address2.Value),"", System.Environment.NewLine + Fields!Address2.Value)
Trim
fonction comme ceci:IIF(Len(Fields!Address2.Value) = 0,Trim(""),System.Environment.NewLine+Fields!Address2.Value)
=Fields!Name.Value + System.Environment.NewLine + Fields!SAddr_Line1.Value + IIF(Len(Fields!Address2.Value) = 0, System.Environment.NewLine + Fields!ShipTo.Value, System.Environment.NewLine + Fields!Address2.Value + System.Environment.NewLine + Fields!ShipTo.Value)
Juste au cas où cela aide quelqu'un.
J'ai souffert de la même chose (et j'ai eu assez complexe groupement) jusqu'à ce que j'ai fait:
Champs!FieldName.Valeur * 1
(Vous pouvez ensuite convertir en Chaîne à l'aide de CStr() si nécessaire)
Et voilà!!
Vous Pouvez Utiliser si d'autre déclaration dans les cas suivants rdlc rapport
dernier lorsqu'aucun enregistrement trouvé et affichage 0 sa de travail!