Wayfinder / Case study / Topic detail

Source-derived document; reported behaviour, inference and evidence gaps are identified in the text.

Return to: C05 — Business Rules and Decisions — topic detail

Order selection flag

In this document

Rule: Order selection flag

In menu1.4gl.main, view_ord() reportedly sets exist = 0 when no order is found. However, det_ord() calls view_ord() and then unconditionally executes LET exist = 1, despite a nearby comment saying that view_ord() should reset the flag to zero when no rows are retrieved. The later assignment can therefore restore an order-exists indication after an empty result. E0010

The likely consequence is that Detail, Update, or Delete may proceed as though an order were selected, using stale or uninitialized order-record values. The source-level defect is well supported, but the exact runtime consequence depends on subsequent record usage and 4GL handling of those values. E0010