FormsRefresh

Student forms / form2-course-delete-refused

form2-course-delete-refused

Remove Record on a course. FORM2's COURSE block has Delete Allowed No, so Forms refuses with FRM-41049 before the master-detail check (ON-CHECK-DELETE-MASTER) could run.

0defects
360values match
0tolerated by policy
0waived
0unmapped

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.

#StepActionChecked on the original
0Open form QAFE_FORM2
1show coursesClick INSTRUCTOR.PUSH_BUTTON1
2deleteClick Toolbar.Remove Record

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_FORM2

Original (Oracle Forms 14.1.2), step 00-open
Original (Oracle Forms 14.1.2)
Migrated (.NET, PostgreSQL), step 00-open
Migrated (.NET, PostgreSQL)

Step 1: show courses

Original (Oracle Forms 14.1.2), step 01-show-courses
Original (Oracle Forms 14.1.2)
Migrated (.NET, PostgreSQL), step 01-show-courses
Migrated (.NET, PostgreSQL)

Step 2: delete

Original (Oracle Forms 14.1.2), step 02-delete
Original (Oracle Forms 14.1.2)
Migrated (.NET, PostgreSQL), step 02-delete
Migrated (.NET, PostgreSQL)

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.

#StepAction (by name)Focus afterDisplayed values that changedMessage lineAlertExpect
0Open form QAFE_FORM2INSTRUCTOR.FIRST_NAME[0]INSTRUCTOR.FIRST_NAME[0] = Fernand
INSTRUCTOR.FIRST_NAME[1] = Tom
INSTRUCTOR.FIRST_NAME[2] = Nina
INSTRUCTOR.FIRST_NAME[3] = Gary
INSTRUCTOR.FIRST_NAME[4] = Anita
INSTRUCTOR.FIRST_NAME[5] = Todd
INSTRUCTOR.FIRST_NAME[6] = Marilyn
INSTRUCTOR.FIRST_NAME[7] = Charles
INSTRUCTOR.FIRST_NAME[8] = Rick
INSTRUCTOR.FIRST_NAME[9] = Jesse
INSTRUCTOR.LAST_NAME[0] = Hanks
INSTRUCTOR.LAST_NAME[1] = Wojick
INSTRUCTOR.LAST_NAME[2] = Schorin
INSTRUCTOR.LAST_NAME[3] = Pertez
INSTRUCTOR.LAST_NAME[4] = Morris
INSTRUCTOR.LAST_NAME[5] = Smythe
INSTRUCTOR.LAST_NAME[6] = Frantzen
INSTRUCTOR.LAST_NAME[7] = Lowry
INSTRUCTOR.LAST_NAME[8] = Chow
INSTRUCTOR.LAST_NAME[9] = Thomasson
INSTRUCTOR.PHONE[0] = 2125551212
INSTRUCTOR.SALUTATION[0] = Mr
INSTRUCTOR.STREET_ADDRESS[0] = 100 East 87th
INSTRUCTOR.ZIP[0] = 11510
1show coursesClick INSTRUCTOR.PUSH_BUTTON1COURSE.DESCRIPTION[0]COURSE.DESCRIPTION[0] = Dutch Grammar
COURSE.DESCRIPTION[1] = English Grammar
COURSE.DESCRIPTION[2] = Mathematics
SECTION.CAPACITY[0] = 25
SECTION.CAPACITY[1] = 25
SECTION.CAPACITY[2] = 25
SECTION.LOCATION[0] = Glass Room
SECTION.LOCATION[1] = Glass Room
SECTION.LOCATION[2] = Glass Room
SECTION.START_DATE_TIME[0] = 29-APR-2016
SECTION.START_DATE_TIME[1] = 29-MAY-2016
SECTION.START_DATE_TIME[2] = 28-JUN-2016
2deleteClick Toolbar.Remove RecordCOURSE.DESCRIPTION[0]FRM-41049: You cannot delete this record.

Database effects

None: the scenario changes no row and draws no sequence value.

Classified diff against the migrated app

Diff: form2-course-delete-refused
counts: match 360, tolerated 0, 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)

Waivers

No waiver applies to this scenario: every compared value matches or is within the tolerance policy.