Student forms / form1-update
form1-update
Change the first course's description and save: PRE-UPDATE sets MODIFIED_DATE to SYSDATE and MODIFIED_BY to :GLOBAL.USER_ID.
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 QAFE_FORM1 | ||
| 1 | Type COURSE.DESCRIPTION[0] = Dutch Grammar II | ||
| 2 | save | Click Toolbar.Save |
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 QAFE_FORM1
Step 1: type
Step 2: save
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 QAFE_FORM1 | COURSE.COURSE_NO[0] | COURSE.COST[0] = 40COURSE.COURSE_NO[0] = 456COURSE.CREATED_BY[0] = QafeCOURSE.CREATED_DATE[0] = 29-APR-2016COURSE.DESCRIPTION[0] = Dutch GrammarCOURSE.MODIFIED_BY[0] = QafeCOURSE.MODIFIED_DATE[0] = 29-APR-2016 | ||||
| 1 | Type COURSE.DESCRIPTION[0] = Dutch Grammar II | COURSE.DESCRIPTION[0] | COURSE.DESCRIPTION[0] = Dutch Grammar II | ||||
| 2 | save | Click Toolbar.Save | COURSE.DESCRIPTION[0] | COURSE.MODIFIED_DATE[0] = <date> | FRM-40400: Transaction complete: 1 records applied and saved. |
Database effects
COURSE updated: {"key": {"COURSE_NO": 456}, "changed": {"DESCRIPTION": {"before": "Dutch Grammar", "after": "Dutch Grammar II"}, "MODIFIED_DATE": {"before": "2016-04-29T00:00:00", "after": "<date>"}}}
Classified diff against the migrated app
Diff: form1-update counts: match 50, tolerated 1, waived 0, defect 0, unmapped 0, harness 0 generated-id pairs (source -> target): none waivers: S1 [proposed] Screen-reader announcement of the COURSE_NO item read as a message: applied to 0 value(s) [tolerated] ui.values.COURSE.MODIFIED_DATE rule=mask:audit-dates x1
Waivers
No waiver applies to this scenario: every compared value matches or is within the tolerance policy.





