Retail order system / customers-browse
customers-browse
Open customers from the main menu, browse first/last/next/previous, exit to the menu.
Unmapped values are recorded on the original but have no counterpart the mapping names in the migrated app, so they are listed, not compared, and are not defects. Here: the Forms record indicator ("Record: 1/2" in the status bar) (7); the list of open Forms windows (7).
Three runs from a fresh database gave byte-identical diffs. Behaviour that looks odd in the migrated app but is the original's: faithful to the original and waivers. Files: scenario, golden record, target record, diff (JSON).
Scenario steps
Items are addressed by their Forms name (BLOCK.ITEM[row]), the same name in the
original and, through the mapping, in the migrated app.
| # | Step | Action | Checked on the original |
|---|---|---|---|
| 0 | Open form MAIN_MENU | ||
| 1 | open customers | Click BLOCK7.PUSH_BUTTON11 | CUSTOMERS.NAME[0] = Fixture Customer |
| 2 | last record | Click CUSTOMERS.ITEM16 | CUSTOMERS.NAME[0] = Second Customer |
| 3 | first record | Click CUSTOMERS.ITEM15 | CUSTOMERS.NAME[0] = Fixture Customer |
| 4 | next | Click CUSTOMERS.NEXT_BTN | CUSTOMERS.NAME[0] = Second Customer |
| 5 | previous | Click CUSTOMERS.PRE_BTN | CUSTOMERS.NAME[0] = Fixture Customer |
| 6 | exit to menu | Click CUSTOMERS.PUSH_BUTTON14 |
Screens, step by step
Left: the original Oracle Forms application, recorded on a virtual display. Right: the migrated application in headless Chromium. Screenshots are evidence only; the comparison works on the recorded values.
Step 0: open MAIN_MENU
Step 1: open customers
Step 2: last record
Step 3: first record
Step 4: next
Step 5: previous
Step 6: exit to menu
Golden record of the original
After each step: the focus, the displayed values that changed, the message line and any alert. The full record (every item of every step, windows, lists of values) is in the JSON file.
| # | Step | Action (by name) | Focus after | Displayed values that changed | Message line | Alert | Expect |
|---|---|---|---|---|---|---|---|
| 0 | Open form MAIN_MENU | BLOCK7.PUSH_BUTTON11[0] | FRM-41003: This function cannot be performed here. | ||||
| 1 | open customers | Click BLOCK7.PUSH_BUTTON11 | CUSTOMERS.CUSTOMER_ID[0] | CUSTOMERS.CUSTOMER_ID[0] = 1CUSTOMERS.NAME[0] = Fixture CustomerCUSTOMERS.PHONE[0] = 0100000000CUSTOMERS.REGISTER_DATA[0] = 01-OCT-2026 | pass | ||
| 2 | last record | Click CUSTOMERS.ITEM16 | CUSTOMERS.CUSTOMER_ID[0] | CUSTOMERS.CUSTOMER_ID[0] = 902CUSTOMERS.NAME[0] = Second CustomerCUSTOMERS.PHONE[0] = 0100000902CUSTOMERS.REGISTER_DATA[0] = 02-OCT-2026 | Customer Id Required902 | pass | |
| 3 | first record | Click CUSTOMERS.ITEM15 | CUSTOMERS.CUSTOMER_ID[0] | CUSTOMERS.CUSTOMER_ID[0] = 1CUSTOMERS.NAME[0] = Fixture CustomerCUSTOMERS.PHONE[0] = 0100000000CUSTOMERS.REGISTER_DATA[0] = 01-OCT-2026 | Customer Id Required902 | pass | |
| 4 | next | Click CUSTOMERS.NEXT_BTN | CUSTOMERS.CUSTOMER_ID[0] | CUSTOMERS.CUSTOMER_ID[0] = 902CUSTOMERS.NAME[0] = Second CustomerCUSTOMERS.PHONE[0] = 0100000902CUSTOMERS.REGISTER_DATA[0] = 02-OCT-2026 | Customer Id Required902 | pass | |
| 5 | previous | Click CUSTOMERS.PRE_BTN | CUSTOMERS.CUSTOMER_ID[0] | CUSTOMERS.CUSTOMER_ID[0] = 1CUSTOMERS.NAME[0] = Fixture CustomerCUSTOMERS.PHONE[0] = 0100000000CUSTOMERS.REGISTER_DATA[0] = 01-OCT-2026 | Customer Id Required1 | pass | |
| 6 | exit to menu | Click CUSTOMERS.PUSH_BUTTON14 | BLOCK7.PUSH_BUTTON11[0] |
Database effects
None: the scenario changes no row and draws no sequence value.
Classified diff against the migrated app
Diff: customers-browse counts: match 62, tolerated 0, waived 0, defect 0, unmapped 14, harness 0 generated-id pairs (source -> target): none waivers: W1 [proposed] ORDER_DATA saved as NULL: applied to 0 value(s) W2 [proposed] Order number consumed when the form opens: applied to 0 value(s) W3 [proposed] Line ITEM_ID typed by the user: applied to 0 value(s) W4 [proposed] Two modal alerts after saving: applied to 0 value(s) W5 [proposed] Key debug message on record navigation (single-table forms): applied to 0 value(s) W6 [proposed] Customer debug message in ORDERS: applied to 0 value(s) W7 [proposed] Placeholder alert on leaving Employees: applied to 0 value(s) W8 [proposed] Error message when the application starts: applied to 0 value(s) W9 [proposed] Keyboard hint of the Forms client while a question is open: applied to 0 value(s) W10 [proposed] An order added with Add cannot be saved: applied to 0 value(s) [unmapped] ui.record (no target counterpart) x7 [unmapped] ui.windows (no target counterpart) x7
Waivers
No waiver applies to this scenario: every compared value matches or is within the tolerance policy.













