Skip to content

5.2 XER 文件风险教程 · 三步完成离线分析

阅读提示: 本教程使用 PRA 自带的样例文件 TutorialPrimaveraWithRiskData.xer,无需安装 P6 软件即可完成全部操作。所有菜单路径和按钮名称保留英文原文。

XER 文件方式是 PRA 风险分析的最低门槛入口——不需要 P6 安装,不需要数据库配置,只要有一个 .xer 文件就能做完整的风险分析。本章带你走通全部流程:打开项目 → 配置映射 → 运行模拟 → 解读结果。


教程概述

使用 XER 文件进行 P6 项目风险分析只需要 PRA 软件即可,无需额外的软件安装或配置。

本教程包含三个步骤:

  1. 在 PRA 中打开 XER 项目
  2. 运行风险分析
  3. 解读风险结果

如果需要打印参考,PRA 安装目录下的 Documentation 文件夹提供了 PDF 格式的教程文档。


教程准备

PRA 自带一个预置了完整风险数据的 XER 样例文件。打开方式:

Help | Open Samples...

找到 TutorialPrimaveraWithRiskData.xer 并点击 Open。

该文件通常安装在 C:\Program Files\Oracle\Primavera Risk Analysis\Samples 目录下。

这个文件包含一个名为 "HOUSE" 的住宅建造项目(房屋翻新工程),作业中已预填了三点估算工期、概率分支、工期相关性和费用风险数据。


第一步:打开 XER 项目

导入选项设置

打开 XER 文件后,会弹出 Primavera XER Import Options 对话框:

设置项选择说明
Planning UnitDay按天导入
One day equals8 hours样例项目日历为 8 工作小时/天
Organize by WBS勾选按 WBS 结构组织项目

XER 文件可包含多个项目。此样例只有一个项目 "HOUSE"。

点击 OK 后进入字段映射设置。

配置输入映射

样例 XER 文件中部分活动的用户自定义字段已填入风险数据。要使用这些数据,需要设置正确的映射关系。

Tasks 选项卡映射:

将 P6 用户字段映射到 PRA 的风险输入字段:

PRA 字段映射来源
Minimum DurationP6 中对应用户字段(最小工期)
Likely DurationP6 中对应用户字段(最可能工期)
Maximum DurationP6 中对应用户字段(最大工期)
Duration CorrelationP6 中对应用户字段(工期相关性)
Duration FunctionP6 中对应用户字段(分布函数)

图:映射 P6 字段到 PRA - Tasks 选项卡

注意:XER 文件只包含有值的用户字段。如果某个用户字段在 P6 中创建了但没有为任何活动赋值,则该字段不会出现在 XER 文件中,PRA 的映射下拉列表中也就无法选择该字段。这是 XER 格式的限制。

Probabilistic 选项卡映射:

PRA 字段映射来源
Probabilistic BranchP6 中对应用户字段(概率分支)
Task ExistenceP6 中对应用户字段(任务存在概率)

打开项目

点击 OK 开始导入。导入完成后出现 Save As 对话框,使用默认名称和位置保存,或自行修改。

如果勾选了 "Organize by WBS",可能需要在甘特图中展开顶层作业才能查看详情——双击最左侧的加号展开全部子活动。

图:使用加号按钮展开汇总任务

Import Check 验证

导入完成后,PRA 会加载默认工作区 Primavera.wkspc`,其中包含 Import Check 工作表。

验证列内容
Start CheckP6 开始日期 vs PRA 开始日期的差异
Finish CheckP6 结束日期 vs PRA 结束日期的差异
灰色条(Graphical)P6 进度日期
灰色条上方条PRA 进度日期

里程碑或零工期活动可能有 1 天的差异——这不影响分析结果。

查看已导入的风险数据

两种方式:

  • 查看所有风险输入:Risk | Risk Summary
  • 查看单项活动的风险数据:点击活动 → 在 Task Details 中选择 Risk and Uncertainty 选项卡

点击 Risk Inputs 工作表查看甘特图列中的已导入不确定性数据。


第二步:运行风险分析

启动分析

Risk | Run Risk Analysis 或点击工具栏按钮。

配置分析选项

点击 Options... 打开 Risk Analysis Options 对话框,设置以下参数:

选项推荐设置
Number of Iterations1000(或按项目复杂度调整)
Create Task Percentiles勾选(生成 P50/P80 日期)
Resource level after each iteration按需启用

配置分位数

点击 Percentiles... 按钮,设置需要计算的分位数值:

图:设置风险分位数以计算 P50 和 P80 日期与成本

例如设置 P50 和 P80,PRA 会在每次迭代后计算并保存这些分位值到活动用户字段中。

开始分析

点击 Analyze 按钮启动蒙特卡洛模拟。

警告信息解读

分析启动后可能出现警告对话框:

"The duration for '0100 - Electrics fail' is outside the range of the distribution."

这是正常现象——概率活动的工期被设为零(在 P6 计划中),目的是让它们不影响项目的确定性完成日期。PRA 在建模概率活动时会在运行时动态插入。

同理适用于 '0140 - Dry Rot' 活动。

图:风险分析运行时的警告对话框

Step 模式 vs Complete 模式

模式按钮特点
StepStep每次迭代后重绘甘特图,可以观察活动出现/消失、关键路径变化
CompleteComplete不重绘,运行速度快得多

建议: 用 Step 模式查看前几次迭代,确认分析按预期运行后,再用 Complete 模式完成剩余迭代。特别是可以观察概率活动(如 '0100 - Electrics fail' 和 '0090 - Electrics pass')交替出现和消失,以及项目成本和关键路径的实时变化。


第三步:解读风险结果

分布图(Distribution Graph)

分析完成后自动弹出 Distribution Graph。可显示以下维度的分布:

  • Finish Dates(结束日期)
  • Start Dates(开始日期)
  • Durations(工期)
  • Total Float(总浮时)
  • Resources(资源)
  • Costs(成本)

查看项目完工概率:

步骤操作
1选择 Finish Date 选项卡
2右侧 Highlighters 区域查看 Deterministic Probability(确认性完工概率 = 19%)
3查看 80% 日期(P80 = 5 Jul)

查看单个活动完工概率:

步骤操作
1从左侧任务树中选择活动(如 '0160 - Recover roof')
2查看 Deterministic Probability(19%)
3查看 80% 日期(P80 = 21 May)

返回甘特图:关闭 Distribution Graph 即可。

风险输出列(Risk Outputs)

点击 Risk Outputs 工作表,甘特图列中显示如下指标:

指标含义
Criticality Index活动在关键路径上出现的频率(百分比)。越高越可能导致延期
Duration Sensitivity活动工期与项目总工期之间的相关程度。越高越可能导致延期
Cost Sensitivity活动成本与项目总成本之间的相关程度。越高越可能超支
Task Existed概率活动在分析中出现的频率

解读要点: Duration Sensitivity 需要和 Criticality Index 结合看。一个高 Duration Sensitivity 但低 Criticality Index 的活动,说明工期波动大但不在关键路径上——实际影响可能有限。

P50 和 P80 甘特图

P50/P80 日期存储在活动的用户字段中(P50 Start、P50 Finish、P80 Start、P80 Finish)。

使用预定义视图:

步骤操作
1关闭 Distribution Graph
2View
3勾选 "Insert View as New Sheet"
4选择 'Gantt Chart: P50 - P80 Markers'
5点击 OK

现在可以看到显示 P50 和 P80 风险进度的条或标记。

前提条件:必须在分析选项中勾选Create Task Percentiles 才能生成这些日期。如果没勾选,用户日期字段不会被填充,也就无法绘制标记。

自定义任务条的设置可在 Format | Custom Task Bars` 中查看和修改。

龙卷风图(Tornado Graph)

龙卷风图可图形化显示 Duration Sensitivity、Cost Sensitivity、Criticality Index、Duration Cruciality 和 Schedule Sensitivity Index。

操作:Reports | Tornado Graph

选择 Duration Sensitivity 选项卡即可看到最可能影响项目完成的活动排名。

图:龙卷风图显示最可能影响项目完成日期的活动

双击龙卷风图中的任一柱子可跳转到甘特图中对应的活动。


XER 文件的完整导入流程(参考用)

Step 1:从 P6 导出 XER

步骤操作
1在 P6 中打开目标项目
2`File
3选择 XER 格式,按导出向导完成

详细导出步骤请参考 P6 官方文档。

Step 2:在 PRA 中导入 XER

步骤操作
1启动 PRA
2`File
3定位并选择 .xer 文件
4如果 P6 中有用户字段存储风险数据,映射对应字段
5PRA 显示导入进度和警告
6PRA 加载工作区,显示 Import Check

Step 3:运行风险分析

步骤操作
1如尚未映射风险数据,在 PRA 中手工输入或用 `Risk
2`Risk
3生成 P50/P80 日期、Criticality Index、Sensitivity 等指标

实战案例:某高速公路项目 XER 风险分析

案例:西南某高速公路第3标段 XER 风险分析

项目背景

西南山区某高速公路第 3 标段(K45+000 ~ K78+500),全长 33.5km,包含 7 座桥梁、3 条隧道。合同工期 36 个月,合同金额 ¥18.7 亿。P6 计划有 3,200 条作业,由总包计划部维护。

分析需求

业主在中期检查时要求提供工期风险量化评估。总包方没有 P6-PRA 数据库直连环境(P6 在总部服务器上,现场只有客户端),于是选择 XER 方式。

操作步骤

  1. 总部导出 XER:File | Export` → XER 格式,导出工程主计划和 3 级 WBS
  2. 文件传输:3,200 条作业的 .xer 文件约 18MB,通过企业网盘传至现场
  3. 现场 PRA 导入:Planning Unit = Day,One day = 8h,Organize by WBS
  4. 输入风险数据:
    • 桥梁基础:Min=80% / Likely=Original / Max=150%(雨季施工风险)
    • 隧道开挖:Min=70% / Likely=Original / Max=200%(地质条件不确定)
    • 路面铺装:Duration Quick Risk 批量设置 ±20%
    • 概率分支:雨季道路中断(15% 概率,+15d)
  5. 运行分析:1000 次迭代,Risk Analysis Options 勾选 Create Task Percentiles

分析结果

指标确定性计划风险分析结果结论
完工日期2025-06-30P50 = 2025-08-15有 50% 概率延期 1.5 个月
完工日期P80 = 2025-10-20有 80% 概率在 10 月底前完工
Top 3 敏感活动隧道 K58 开挖(DS=0.68)、桥梁 5# 基础(DS=0.52)、K72 高边坡(DS=0.41)隧道和桥梁是关键风险驱动力

成果交付

生成的风险分析报告包含:

  • 工期分布图(用于向业主展示 80% 置信度工期)
  • 龙卷风图(识别 Top 10 风险驱动活动)
  • P80 进度甘特图(作为内部控制的"风险预留基线")
  • 结论建议:在隧道作业中预留 2.5 个月缓冲,桥梁基础预留 1 个月

教训

  • XER 文件中 WBS 结构被正确导入,但部分自定义日历(雨季特殊日历)因 XER 格式限制丢失了细节。解决方案是让总部导出前在 P6 中将日历信息核对完整。
  • 3,200 条作业导入耗时约 5 分钟(含映射配置),资源数据较大是主因。

本章小结

要点一句话
最低门槛XER 方式只需 PRA,无需安装 P6
样例文件Help
导入设置Planning Unit + One day equals + Organize by WBS
字段限制XER 只含赋过值的用户字段,未赋值的字段不会出现
Import CheckStart/Finish Check 列验证导入一致性,0 工期活动有 1 天差异属正常
Step vs CompleteStep 逐迭代观察,Complete 快速完成
分布图查看 Finish Date / Cost 分布和 P50/P80 值
龙卷风图识别 Top 敏感活动,双击跳转对应作业
P50/P80 甘特图需勾选 Create Task Percentiles 才能生成

英文原版内容版权归 Oracle Corporation 所有。中文翻译、案例、习题由 计划工程师 独立创作。

广告位 · 合作联系