Oracle Warehouse Builder 9.2 版和更高版本提供了一个图形化映射调试器,使您可以通过图形界面中的映射查看数据流。映射调试器嵌入在 Mapping Editor 中。
|
1. |
此调试会话要求您首先部署两个目标对象:CUSTOMER 维和 UNASSIGNED_CUSTOMERS 表。
在 Runtime Repository Connections 节点中,使用口令 connect_user 打开 OBE_RUNTIME_CONNECTION。
展开 TARGET_LOC 位置和 WH 模块。展开 Dimensions 并选择 CUSTOMER。展开 Tables,按住 Ctrl 键并选择 UNASSIGNED_CUSTOMERS。单击 Default Action 键将部署状态更改为 Create。

生成并部署这两个对象。
该调试会话还要求您首先部署一个源对象:CUSTOMERS_VIEW_STG 视图表。在 TARGET_LOC 位置,依次展开 STG 模块和 Views 并选择 CUSTOMERS_VIEW_STG。单击 Default Action 键将部署状态更改为 Create。生成并部署此对象。
关闭 Deployment Manager。
|
|
2. |
依次展开 OWB10g_DEMO、Databases 和 WH 并双击 MAP_CUSTOMER 打开映射编辑器。最大化该窗口。

|
|
3. |
单击工具栏中的 Debug Start 按钮 。指定目标模式的连接详细信息。
Schema Name:target_schema Password:target_schema Hostname:localhost Port Number:1521 Service Name obeowb

单击 OK。
|
|
4. |
调试器将尝试根据操作符的名称在目标模式中找到对象。当首次在调试模式下运行映射时,Warehouse Builder 将无法识别所有源表的链接。

单击 OK。
|
|
5. |
再次显示映射编辑器,并在左下角和右下角显示调试面板。左下角面板中的 Test Data 选项卡显示需要找到 REGIONS 和 COUNTRIES 的源表。需要为 CUSTOMERS_VIEW_STG 创建一个新的调试表。
REGIONS 突出显示。单击左下角面板中的 Edit。

|
|
6. |
显示一个警告,指示未找到 REGIONS 的源对象。

单击 OK。
|
|
7. |
显示 Define Test Data 窗口。单击 Browse 按钮。

|
|
8. |
显示 Choose Entity 窗口。选择 HR 模式。Warehouse Builder 自动选择 REGIONS 表。

单击 OK。
|
|
9. |
再次显示 Define Test Data 窗口,其中显示了从 HR 模式中选择的 REGIONS 表的测试数据。

单击 OK。
|
|
10. |
再次显示映射编辑器。注意,Test Data 选项卡现在在 REGIONS 的旁边显示了一个选中标记,指示已经找到了该测试表的数据。
在 Test Data 选项卡中,选择 COUNTRIES 表,单击 Edit,然后执行您在第 6 步到第 9 步中对 REGIONS 执行的相同步骤。
(像您在第 8 步中一样,选择 HR 模式,Warehouse Builder 将自动选择 COUNTRIES 表。)
|
|
11. |
找到 COUNTRIES 测试表的数据后,返回到 Test Data 选项卡,选择 CUSTOMERS_VIEW_STG 并单击 Edit 为 CUSTOMERS_VIEW_STG 创建一个新的调试表。

|
|
12. |
显示 Define Test Data 窗口。不要按照像对 REGIONS 和 COUNTRIES 那样浏览测试数据,而是单击 Create New Table 按钮。这将创建实际视图表的副本,从而使您可以修改数据来进行调试。

随后,该表将命名为 DBG_<操作符名称>,并当对象名与现有对象冲突时带一个序列号后缀。
.
|
|
13. |
要修改某些测试数据,请选择 Test Data 窗口左上角中的 User Data Edit Mode 复选框。显示一个有关操作数据的警告。

单击 OK。
|
|
14. |
再次显示 Define Test Data 窗口。更改一些 CUST_FIRST_NAME 值。单击 Commit。单击 OK。显示一条 OWB 注释 Commit data edits,单击 Yes |
|
1. |
再次显示映射编辑器。单击工具栏中的 Reinitalize 按钮生成调试程序包。

|
|
2. |
弹出一条 OWB 注释,确认这些定义就是您要使用的定义。

单击 OK。
|
|
3. |
关联提交是 OWB 9.2 版新增的一个特性。该特性可以帮助您管理多目标情形,在这种情形下,将根据行选择而非逐个目标的选择进行提交。
调试器将考虑此设置,并提醒将同时处理所有目标。

单击 OK。
|
|
4. |
再次显示映射编辑器。左下角面板中的 Messages 选项卡显示调试初始化成功。

|
|
1. |
在运行会话之前,选择映射右侧的 CUSTOMER 目标维,然后单击 Set Breakpoint 按钮。

|
|
2. |
注意,Breakpoints 选项卡显示在映射编辑器左下角的面板中。
可以在映射调试运行过程中设置断点,并可以在映射运行时激活和停用断点。
|
|
1. |
多次单击 Step 按钮以检索调试运行的行。

在映射编辑器右下角面板的 Step Data 选项卡中查看数据行。
|
|
2. |
单击 Skip 按钮运行该操作符的所有剩余行。
.
再次单击 Step。
|
|
3. |
弹出 Map Path Choice 对话框。在该对话框中,您可以选择要单步调试其数据的映射中的下个组(路径)。选择 EXPR.OUTGRP1 并单击 OK。

|
|
4. |
单击 Step,查看 OUTGRP1 面板中显示的行。

|
|
5. |
单击 Resume 按钮继续执行,直到到达断点或直到映射结束。

在本示例中,在 CUSTOMER 维处遇到断点。左下角面板中的 Messages 选项卡将显示这一点。
|
|
6. |
单击几次 Step,并注意记录将获得 INSERT 操作,某些记录可能获得 UPDATE 操作,具体情况取决于您在前几个课程中执行的操作。

|
|
7. |
单击 Resume 按钮运行到映射路径结尾。
|
|
8. |
再次单击 Step 按钮。弹出一条 OWB 注释,显示已经完成映射执行。

注意,Warehouse Builder 警告您已将 Correlated commit 设置为 true。如果早先将 Correlated commit 设置为 false,则您现在就能够调试其他路径了。但现在您仍然可以查看其他路径中的操作。单击 OK。
|
|
9. |
选择 FLTR 操作符并单击 Set Watch Point。

注意,过滤器只允许具有空 ACCOUNT_MGR_ID 的记录通过。
|
|
10. |
单击 Debug End 按钮 退出调试会话。关闭 Mapping Editor。
|
Oracle Warehouse Builder 提供了一个强大的图形化调试器。通过在调试模式下运行映射,用户可以仔细了解运行时的行为,并可以前瞻性地解决潜在的问题。绑定和验证映射从未像现在这样简单!