2008-08-25 38 views
14

Tôi có một báo cáo với nhiều lĩnh vực mà tôi đang cố gắng để có được xuống đến 1 trang theo chiều ngang (tôi không quan tâm cho dù đó là 2 hoặc 200 trang theo chiều dọc ... chỉ không muốn phải đối phó với 2 trang rộng bởi x trang dài đào tạo-wreck). Điều đó nói rằng, nó đề cập đến thông tin liên lạc.Làm cách nào để đặt hộp văn bản thành nhiều dòng trong SSRS?

Ý tưởng của tôi là phải làm:

Name:  Address: City:  State: ... 
Jon Doe Addr1  ThisTown XX  ...  
      Addr2 
      Addr3 
----------------------------------------------- 
Jane Doe Addr1  ThisTown XX  ... 
      Addr2 
      Addr3 
----------------------------------------------- 

Có một số cách để thiết lập một textbox được nhiều dòng (hoặc kết quả SQL)? Tôi đã bỏ lỡ một cái gì đó đẫm máu rõ ràng?


Thuộc tính CanGrow được bật theo mặc định và tôi đã kiểm tra kỹ điều này là đúng. Vấn đề của tôi là tôi không biết làm thế nào để buộc phải ngắt dòng. Tôi nhận được 3 trường địa chỉ mà chỉ điền vào một dòng, sau đó kết thúc tốt đẹp với một dòng khác. Tôi đã thử /n, \n (vì tôi không bao giờ có thể nhớ đó là dấu gạch chéo chính xác để đặt), <br>, <br /> (vì báo cáo sẽ được xem trong một điều khiển ReportViewer trong một trang web ASP.NET). Tôi không thể nghĩ ra bất kỳ cách nào khác để bao bọc văn bản.

Có cách nào để lấy kết quả từ cơ sở dữ liệu dưới dạng 3 dòng văn bản/ký tự không?

Trả lời

18

Alter hộp văn bản của báo cáo:

= Fields!Addr1.Value + VbCrLf + 
    Fields!Addr2.Value + VbCrLf + 
    Fields!Addr3.Value 
+2

thay vì sử dụng 'VbCrLf' bạn có thể nên sử dụng' System.Environment.NewLine' làm phương pháp hay nhất – WiiMaxx

+1

@WiiMaxx Và thay thế '+' thành '&' – thinco

1

link nghỉ làm

chr này (10)

+0

Vui lòng cung cấp câu trả lời của bạn một số chi tiết. –

5

Tôi đã có một vấn đề bổ sung sau khi đặt trong chr(10) vào cơ sở dữ liệu.

Trong lĩnh vực (trong báo cáo) thêm vào:

=REPLACE(Fields!Addr1.Value, CHR(10), vbCrLf) 
4

Hitting Shift + Enter khi gõ trong hộp văn bản tạo ra một ngắt dòng.

3

dữ liệu của tôi đã bị bắt trong một ứng dụng SL, cần thiết này cho sự biểu hiện lĩnh vực

=REPLACE(Fields!Text.Value, CHR(13), vbCrLf) 
+0

[post] (http://stackoverflow.com/a/3582842/1993545) từ Sam nói đã giống nhau, vì vậy -1 để lặp lại – WiiMaxx

+2

upvoted gây ra 'Chr (10)! = Chr (13)' –

0

Hãy thử điều này một:

= Fields!Field1.Value + System.Environment.NewLine + Fields!Field2.Value 
0

Trong báo cáo RDLC, bạn có thể chuyển đổi một textbox để placehoder. Sau đó, nhấp chuột phải vào chỗ dành sẵn cho hộp văn bản đó, chọn thuộc tính placehoder và chọn HTML. Sau đó, để multiline có hiệu lực, bạn phải chèn <br/> thẻ giữa các dòng đó.

Các vấn đề liên quan