教程:设置文本格式(报表生成器)

在本教程中,可以通过多种方式练习设置文本格式。 使用数据源和数据集设置空白报表后,可以选取并选择要浏览的步骤。

下图显示了一个类似于要创建的报表。

rs_FormatTextFinal

在一个步骤中,你故意犯了一个错误,这样你就能看到为什么这是一个错误。 然后,您可以纠正该错误以便实现预期效果。

本教程中创建的报表的增强版本可用作示例 SQL Server 2014 报表生成器报表。 有关下载此示例报表和其他报表的详细信息,请参阅 报表生成器示例报表

学习内容

设置报表

  1. 使用数据源和数据集创建空白报表

  2. 在报表设计图面中添加字段(先错误,后正确)

  3. 向报表设计图面添加表

挑挑拣拣

向报表添加超链接

旋转报表中的文本

使用 HTML 格式显示文本

格式化货币

保存报表

完成本教程的估计时间:20 分钟。

要求

有关要求的详细信息,请参阅教程的先决条件(报表生成器)。

创建一个空白报告并附带数据源和数据集

创建空白报表

  1. 依次单击“ 开始”、“ 程序”、“ Microsoft SQL Server 2014报表生成器”,然后单击“ 报表生成器”。

    注释

    此时会显示“ 入门 ”对话框。 如果没有,请在“报表生成器”按钮中单击“ 新建”。

  2. “入门” 对话框的左窗格中,确保已选择 “新建报表”

  3. 在右窗格中,单击“ 空白报表”。

创建数据源

  1. 在“报表数据”窗格中,单击“ 新建”,然后单击“ 数据源”。

  2. “名称 ”框中,键入: TextDataSource

  3. 单击“使用嵌入在我的报表中的连接”。

  4. 验证连接类型是否Microsoft SQL Server,然后在 连接字符串 框中键入: 数据源 = <servername>

    注释

    表达式 <服务器名称>(例如 Report001)指定安装了 SQL Server 数据库引擎实例的计算机。 本教程不需要特定数据;它只需要连接到 SQL Server 2014 数据库。 如果数据源连接下已列出数据源 连接,则可以选择它并转到下一过程“创建数据集”。有关详细信息,请参阅 “获取数据连接(报表生成器)的替代方法”。

  5. 单击 “确定”

创建数据集

  1. 在“报表数据”窗格中,单击“ 新建”,然后单击“ 数据集”。

  2. 确保数据源为 TextDataSource

  3. “名称 ”框中,键入: TextDataset。

  4. 验证是否选择了 “文本 ”查询类型,然后单击“ 查询设计器”。

  5. 单击“ 编辑为文本”。

  6. 将以下查询粘贴到查询窗格中:

    SELECT CAST('2009-01-05' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory, 'Accessories' as Subcategory,'Carrying Case' as Product, CAST(16996.60 AS money) AS Sales, 68 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(13747.25 AS money) AS Sales, 55 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory, 'Accessories' as Subcategory,'Carrying Case' as Product, CAST(9248.15 AS money) As Sales, 37 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1350.00 AS money) AS Sales, 18 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1800.00 AS money) AS Sales, 24 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1125.00 AS money) AS Sales, 15 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1147.50 AS money) AS Sales, 17 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory, 'Accessories' as Subcategory,  'Lens Adapter' as Product, CAST(742.50 AS money) AS Sales, 11 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1417.50 AS money) AS Sales, 21 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(13497.30 AS money) AS Sales, 54 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(11997.60 AS money) AS Sales, 48 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(10247.95 AS money) As Sales, 41 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory, 'Accessories' as Subcategory, 'Tripod' as Product, CAST(1200.00 AS money) AS Sales, 16 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(2025.00 AS money) AS Sales, 27 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1425.00 AS money) AS Sales, 19 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(887.50 AS money) AS Sales, 13 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory, 'Accessories' as Subcategory, 'Lens Adapter' as Product, CAST(607.50 AS money) AS Sales, 9 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1215.00 AS money) AS Sales, 18 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate,  'Lauren Johnson' as FullName,'Central' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(10191.00 AS money) AS Sales, 79 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate,  'Warren Pal' as FullName,'North' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(8772.00 AS money) AS Sales, 68 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate,  'Fernando Ross' as FullName,'South' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(10578.00 AS money) AS Sales, 82 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory,'Digital' as Subcategory, 'Slim Digital' as Product, CAST(7218.10 AS money) AS Sales, 38 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory,'Digital' as Subcategory, 'Slim Digital' as Product, CAST(8357.80 AS money) AS Sales, 44 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-05' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory,'Digital' as Subcategory,'Slim Digital' as Product, CAST(9307.55 AS money) AS Sales, 49 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,  'Lauren Johnson' as FullName,'Central' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(3870.00 AS money) AS Sales, 30 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,  'Warren Pal' as FullName,'North' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(5805.00 AS money) AS Sales, 45 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate,  'Fernando Ross' as FullName,'South' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(8643.00 AS money) AS Sales, 67 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Lauren Johnson' as FullName,'Central' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(9877.40 AS money) AS Sales, 52 as Quantity, 'Installing Report Builder' as LinkText, 'https://go.microsoft.com/fwlink/?LinkId=154882' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Warren Pal' as FullName,'North' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(12536.70 AS money) AS Sales, 66 as Quantity, 'Getting Started with Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=160556' AS URL  
    UNION SELECT CAST('2009-01-06' AS date) as SalesDate, 'Fernando Ross' as FullName,'South' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(6648.25 AS money) AS Sales, 35 as Quantity, 'What is New in Report Builder' as Link, 'https://go.microsoft.com/fwlink/?LinkId=165064' AS URL  
    
  7. 单击“运行”()以运行查询。

    查询结果将是可用于在您的报表中显示的数据。

  8. 单击 “确定”

向报表设计图面添加字段

如果希望数据集中的字段显示在报表中,则第一个冲动可能是将其直接拖动到设计图面。 本练习指出为什么无法这样做以及相应替代步骤。

向报表添加字段(并获取错误结果)

  1. FullName 字段从“报表数据”窗格中拖到设计图面中。

    报表生成器创建一个包含表达式的文本框,该文本框表示为 <Expr>。

  2. 单击 “运行”

    请注意,只有一条记录 费尔南多·罗斯,该记录按字母顺序排列为查询中的第一条记录。 该字段不重复显示该字段中的其他记录。

  3. 单击“ 设计 ”返回到设计视图。

  4. 在文本框中选择表达式 <Expr> 。

  5. 在“属性”窗格中,对于 “值 ”属性,将看到以下内容(如果未在 “视图 ”选项卡上看到“属性”窗格,请检查 “属性”):

    =First(Fields!FullName.Value, "TextDataSet")  
    

    First 函数旨在仅检索字段中的第一个值,这就是它所做的。

    将该字段直接拖到设计图面上创建了一个文本框。 文本框本身不是数据区域,因此它们不显示报表数据集中的数据。 数据区域(例如表、矩阵和列表)中的文本框显示数据。

  6. 选择文本框(如果您已经选择了表达式,则按下 Esc 以便选择该文本框),然后按 Delete 键。

向报表添加字段(并获取正确的结果)

  1. 在功能区的 “插入 ”选项卡上的 “数据区域 ”区域中,单击“ 列表”。 单击设计图面,然后拖动以创建一个大约两英寸宽和一英寸高的框。

  2. FullName 字段从“报表数据”窗格中拖到列表框中。

    此时,报表生成器将创建一个文本框,表达式 [FullName] 将位于该文本框中。

  3. 单击 “运行”

    请注意,此时该框重复显示查询中的所有记录。

  4. 单击“ 设计 ”返回到设计视图。

  5. 在文本框中选择该表达式。

  6. 在“属性”窗格中,对于“值”属性,将看到以下内容:

    =Fields!FullName.Value  
    

    通过将文本框拖到列表数据区域,可以显示数据集中的数据。

  7. 选择列表框并按 Delete 键。

向报表设计区域添加表格

创建此表,以便有一个放置超链接和旋转文本的位置。

向报表添加表

  1. “插入 ”菜单上,单击“ ”,然后单击“ 表向导”。

  2. 在“新建表或矩阵”向导的“ 选择数据集 ”页上,单击 “选择此报表或共享数据集中的现有数据集”,然后单击 “TextDataset”(在此报表中),然后单击“ 下一步”。

  3. 在“ 排列字段 ”页上,将 “区域”、“ LinkText”和“ 产品 ”字段拖动到 “行”组,将 “销售 ”字段拖动到 “值”,然后单击“ 下一步”。

  4. “选择布局 ”页上,清除 “展开/折叠组 ”复选框,以便可以看到整个表,然后单击“ 下一步”。

  5. “选择样式 ”页上,单击 “石板”,然后单击“ 完成”。

  6. 拖动表格,使其位于标题块下方。

  7. 单击 “运行”

    该表看起来没问题,但具有两个总计行。 LinkText 字段不需要总计行。

  8. 单击“ 设计 ”返回到设计视图。

  9. 右键单击包含 [LinkText]的文本框,然后单击“ 拆分单元格”。

  10. 选择单元格下方的[LinkText]空单元格,然后按住 SHIFT 键,然后选择右侧的两个单元格:“产品”列中的“总计”单元格和“销售”列中的[Sum(Sales)]单元格。

  11. 选中这三个单元格后,右键单击其中一个单元格,然后单击“ 删除行”。

  12. 单击 “运行”

在本节中,您将向前一节中的表中的文本添加超链接。

  1. 单击“ 设计 ”返回到设计视图。

  2. 右键单击包含 [LinkText]的单元格,然后单击 “文本框属性”。

  3. “文本框属性”框中,单击“操作”

  4. 单击 转到 URL

  5. “选择 URL ”框中,单击 “[URL]”,然后单击“ 确定”。

  6. 请注意,文本看起来没有任何不同。 您需要使其看起来像链接文本。

  7. 选择 [LinkText]

  8. 在“开始”选项卡的“字体”部分中,单击“下划线”按钮,然后单击颜色按钮旁边的下拉箭头,然后单击“蓝色”。

  9. 单击 “运行”

    文本现在看起来像链接了。

  10. 单击链接。 如果计算机连接到 Internet,浏览器将打开报表生成器帮助主题。

旋转报表中的文本

在本节中,您将旋转前一节的表中的某些文本。

旋转文本

  1. 单击“ 设计 ”返回到设计视图。

  2. 单击包含 [Territory]. 的单元格

  3. “开始”选项卡的“字体”区域,单击“加粗”按钮。

  4. 如果“属性”窗格未打开,请在“视图”选项卡上选中“属性”复选框 。

  5. 在“属性”窗格中找到 WritingMode 属性。

    注释

    对“属性”窗格中的属性进行分类时,WritingMode 位于“本地化”类别中。 请确保您选择的是单元,而非文本。 WritingMode 是文本框的属性,而非文本的属性。

  6. 在列表框中,单击“ Rotate270”。

  7. 在“主页”选项卡的“段落”部分,单击“中间”和“居中”按钮,使文本在单元格中垂直和水平居中。

  8. 单击“运行”()。

现在, [Territory] 单元中的文本将从单元的底部到顶部垂直放置。

使用 HTML 格式显示文本

显示格式为 HTML 的文本

  1. 单击“ 设计 ”切换到设计视图。

  2. 在“ 插入 ”选项卡上,单击 “文本框”,然后在设计图面上单击并拖动以在表格下创建一个文本框,宽约四英寸,高三英寸。

  3. 复制此文本并将其粘贴到文本框中:

    <h4>Limitations of cascading style sheet attributes</h4>  
          <p>Only a basic set of <b>cascading style sheet (CSS)</b> attributes are defined:</p>  
          <ul><li>  
              text-align, text-indent  
            </li><li>  
              font-family, font-size  
            </li><li>  
              color  
            </li><li>  
              padding, padding-bottom, padding-top, padding-right, padding-left  
            </li><li>  
              font-weight  
            </li></ul>  
    
  4. 选择文本框中的所有文本。

    这是文本的属性,而不是文本框,因此在一个文本框中,你可以混合使用纯文本和文本,这些文本使用 HTML 标记作为样式。

  5. 右键单击所有所选文本,然后单击“ 文本属性”。

  6. “常规 ”页上的 “标记类型”下,单击“ HTML - 将 HTML 标记解释为样式”。

  7. 单击 “确定”

  8. 单击“运行”()预览报表。

文本框中的文本将显示为标题、段落和带项目符号的列表。

设置货币格式

将数字格式化为货币

  1. 单击“ 设计 ”切换到设计视图。

  2. 单击包含 [Sum(Sales)]的顶部表格单元格,按住 Shift 键,然后单击包含 [Sum(Sales)]的底部表格单元格。

  3. 在“ 开始 ”选项卡上的“ 数字 ”组中,单击“ 货币 ”按钮。

  4. (可选)在“ 开始 ”选项卡上的“ 数字 ”组中,单击“ 占位符样式 ”按钮,然后单击“ 示例值 ”以查看数字的格式。

  5. (可选)在“ 开始 ”选项卡上的“ 数字 ”组中,单击“ 减少小数点 ”按钮两次以显示没有美分的美元数字。

  6. 单击“运行”()预览报表。

报表现在将显示设置了格式的数据并且更易于阅读。

保存报表

您可以将报表保存到报表服务器、SharePoint 库或本地计算机。

在本教程中,将报表保存到报表服务器。 如果无权访问报表服务器,请将报表保存到计算机。

在报表服务器上保存报表

  1. “报表生成器 ”按钮中,单击“ 另存为”。

  2. 单击“ 最近使用的网站和服务器”。

  3. 选择或键入有权保存报表的报表服务器的名称。

    此时将显示“正在连接到报表服务器”消息。 当连接完成时,您将看到报表服务器管理员指定为报表默认位置的报表文件夹的内容。

  4. 在“名称”中,用选择的名称替换默认名称。

  5. 单击“ 保存”。

报表即已保存至报表服务器。 连接到的报表服务器的名称将显示在窗口底部的状态栏中。

在您的计算机上保存报告

  1. “报表生成器 ”按钮中,单击“ 另存为”。

  2. 单击 “桌面”、“ 我的文档”或 “我的计算机”,然后浏览到要保存报表的文件夹。

  3. 在“名称”中,用选择的名称替换默认名称。

  4. 单击“ 保存”。

后续步骤

报表生成器教程中有许多设置文本格式的方法 :创建自由窗体报表(报表生成器) 包含更多示例。

另请参阅

教程(报表生成器)
设置报表项的格式(报表生成器和 SSRS)
SQL Server 2014 中的报表生成器