You are on page 1of 5

Building the Output Record

in0: in1:
record record
decimal(4) id; decimal(4) id;
string(6) name; date(”YYMMDD”) dt;
string(8) city; decimal(9.2) cost;
decimal(3) amount; end
end

• out:
• record
• decimal(4) id;
• string(8) city;
• decimal(3) amount;
• date(”YYYY/MM/DD”) dt;
• end

Confidential & Proprietary


What if in1 record is missing?

in0: in1:
record record
decimal(4) id; decimal(4) id;
string(6) name; date(”YYMMDD”) dt; ???
string(8) city; decimal(9.2) cost;
decimal(3) amount; end
end

• out:
• record
• decimal(4) id;
• string(8) city;
• decimal(3) amount;
• date(”YYYY/MM/DD”) dt;
• end

Confidential & Proprietary


Prioritized Assignment
Destination Priority Source

out.dt :1: in1.dt;


out.dt :2: “1900/01/01”;

• In DML, a missing value (say, if there is no in1


record) causes an assignment to fail.

• If an assignment for a left hand side fails, the next


priority assignment is tried. There must be one
successful assignment to each output field.

Confidential & Proprietary


Assigning Priority to
Business Rules

Confidential & Proprietary


Resulting Display

Confidential & Proprietary

You might also like