使用 OMPM - 第 2 部分 – 执行批量转换

原文发布于 2012 年 1 月 12 日(星期四)

由我们的兼容性专家 Curtis Sawin 提供。

概述

在本系列的第 1 部分中,我们讨论了如何使用 OMPM 识别“转换候选对象”,即那些从二进制格式(例如 xls、doc 和 ppt 文件)转换到 Open XML 格式(例如 xlsx、docx、pptx)时几乎不会引发任何兼容性风险的文档。

现在让我们来了解一下这些文档的实际转换过程。这涉及使用 Office 文件转换器工具 (OFC.EXE),以及使用从 OMPM 报告工具 (OMPM.accdr) 导出的列表。

转换候选对象

重申一下,您可以使用 OMPM 报告工具创建“低风险”筛选器以识别以下文档:

  • n 天内未修改过(例如 n = 30)
  • 仅存在 OMPM 识别的“绿色”转换问题
  • 不存在 OMPM 识别的任何 转换问题
  • 不存在 OMPM 识别的宏问题

下面的 WHERE 子句可用于满足该条件:

WHERE MaxIssueLevelID > 2 AND DATEADD(d,-30,GETDATE()) > ModifiedDate AND FileID not in (SELECT FileID from Uv_FilterMacroIssue)

要转换满足这些条件的文件,您可以使用 OMPM 报告工具导出筛选过的列表。在选择“应用筛选器”(Apply Filter) 添加您的条件之后,再单击“导出…”(Export…) 按钮导出文件列表。

输出将是一个或多个 XML 文件,其中包含指向您结果集中所有文件的完整路径。导出文件所在的文件夹将被文件转换工具 OFC.exe 所引用

接下来,打开 OFC.ini 文件(下载并解压缩 OMPM 工具集之后可在“TOOLS”文件夹中找到),并修改 FileListFolder 项以指向从中导出这些文件的同一文件夹。例如,如果您将文件列表导出至 D:\DataExport 文件夹,那么 FileListFolder 项将如下所示:

FileListFolder=D:\DataExport

使用 FileListFolder 项将导致 OFC.exe 转换 OMPM 报告工具已导出的所有文件。另外,使用 OFC.ini 的 FileListFolder 而非 [FoldersToConvert] 部分可以确保仅转换那些您已专门标记为低风险“转换候选对象”的文件。使用 [FoldersToConvert] 部分只是简单地将 OFC.exe 指向一个或多个文件夹,然后指示“转换所有文件”。在某些情况下这可能有用,但如果您的目标是在保留自动转换功能的同时有选择地转换文件,则使用 FileListFolder 能让您享有更多的控制权。

要方便将转换后的文件移至原来的位置,ofc.ini 文件具有一个 [ConversionInfo] 部分允许您指定目标文件夹结构。例如,您可以通过指定以下内容重新生成文件夹结构:

[ConversionInfo]

SourcePathTemplate=*\*\*\*\*\*\*\*\*\

DestinationPathTemplate=X:\*1\*2\*3\*4\*5\*6\*7\*8\*9

这将导致转换后的文件被放置在“X:\”驱动器上与源文件夹类似的文件夹结构中。OFC.exe 还将计算机名添加到目标路径中。如果您可以重新生成文件夹结构,便可以实施可重复的流程来移动新文件并删除旧文件。您甚至可以创建一个脚本来自动执行此流程。

另外,OFC 可转换的最大深度为 10 层文件夹。例如,DestinationPathTemplate=I:\Converted\*1\*2\*3\*4\*5\*6\*7\*8\*9\ 可以正常工作。但是 DestinationPathTemplate=I:\Converted\*1\*2\*3\*4\*5\*6\*7\*8\*9\*10\ 则无效。

解决此问题的一个方法是将驱动器号映射到文件夹结构中(即,将“x:\”驱动器连接到 \\myserver\myshare\folder1\folder2\folder3\folder4),然后在导出的 XML 文件中执行查找与替换,以替换具有该驱动器号的文件夹结构。

此限制的影响可能不算什么,但是故障排查起来却很麻烦,所以我们希望您能够意识到这个限制的存在。

下面的一些屏幕截图显示了各个组件的示例。

下面是从 OMPM 报告工具导出的 XML 文件:

注意:

  1. 检查 XML 文件的路径 (D:\Office Compat\DataExport)。这是使用 OMPM 报告工具导出筛选后列表的位置
  2. 检查 ComputerNamePath 值。它们应该出现在目标文件夹结构中。

还有一个 OFC.INI 文件(删除了所有注释):

注意:

  1. 检查 FileListFolder 值 (D:\Office Compat\DataExport)。这是使用 OMPM 报告工具导出筛选后列表的位置
  2. 检查 DestinationPathTemplate 值。其指示转换后的文件将放置在 D:\Converted 文件夹内的文件夹结构中。

您可以在 TechNet 文章使用 Office 文件转换器 (OFC) 和版本提取工具 (VET) 转换二进制 Office 文件中找到更多有关 OFC.ini 文件中项目的详细信息

下面是我旧文件的源位置:

下一步是从命令提示符运行 OFC.exe。如果 ofc.ini 位于同一文件夹中,则不需要任何命令行参数。下面是 OFC.exe 运行的屏幕截图:

下面是生成文件夹的屏幕截图:

检查文件夹结构 D:\Converted\Ninja99\f$\Converted。目标路径在文件夹结构中包括计算机名和驱动器号(或 UNC 名)。这样可以方便将文件移回原始位置。

另外,请注意“修改日期”(Date Modified) 和“大小”(Size) 列。转换过程保留了原来的修改日期、访问日期和创建日期时间戳(在您具有使用这些时间戳触发的归档/存储解决方案时,这很有用),但是大小却明显小于之前的版本。

所以请记住,使用 OFC.exe 转换文件将要求您清除旧文件并将其替换为转换后的文件。因此,在确定批量转换项目的 ROI 时,该清除活动的时间投资也必须考虑在内。

摘要

执行批量转换是一项环境优化 任务,可通过降低您的存储需求(即为您省钱)帮助您实现对于 Office 2010 的投资价值。批量转换应视为一项可选的任务,不应在准备部署 Office 2010 时执行它,只能在部署之后且针对低风险文件使用它。

这是一篇本地化的博客文章。请访问 Using OMPM Part 2 – Performing Bulk Conversion 以查看原文