Checks a record buffer and returns a TRUE value if the record in that buffer is newly created. If the record was read from the database, NEW returns a FALSE value.
To use the NEW function with a record in a table defined for multiple databases, you must qualify the record's table name with the database name. See the Record phrase reference entry for more information.
This procedure enters new Orders, optionally creating a Customer record if one does not exist. The NEW function is later used to select alternate processing depending if a Customer is newly created or already exists.
r-newrecord.p
REPEAT: PROMPT-FOR Customer.CustNum. FIND Customer USING Customer.CustNum NO-ERROR. IF NOT AVAILABLE Customer THEN DO WITH FRAME newcus: MESSAGE "Creating new customer". CREATE Customer. ASSIGN Customer.CustNum. UPDATE Customer.Name Customer.Address Customer.City Customer.State Customer.Country. END. CREATE Order. Order.CustNum = Customer.CustNum. IF NEW Customer THEN DO: UPDATE Order.OrderNum Order.PromiseDate. Order.Terms = "COD". DISPLAY Order.Terms. END. ELSE UPDATE Order.OrderNum Order.PromiseDate Order.Terms. END. |