.BEGIN LOAD SESSIONS 34; .LAYOUT EQTTB535; .FIELD Pool_Upd_Code * CHAR(01); .FIELD Eqmt_Init * CHAR(04); .... .DML LABEL UPSERTAC DO INSERT FOR MISSING UPDATE ROWS; UPDATE EQTDBT50.EQTTB535_TAL SET TCS_POOL_IDFR_NUM =:TCS_POOL_IDFR_NUM ..... WHERE ..... ; INSERT INTO EQTDBT50.EQTTB535_TAL VALUES( POOL_EXPN_DATE =:POOL_EXPN_DATE (DATE, FORMAT 'YYYYMMDD') ..... ); .DML LABEL UPSERTDL; UPDATE EQTDBT50.EQTTB535_TAL SET ..... WHERE ..... ; .IMPORT INFILE INFILE LAYOUT EQTTB535 APPLY UPSERTAC WHERE (POOL_UPD_CODE = 'C' OR POOL_UPD_CODE = 'A') APPLY UPSERTDL WHERE POOL_UPD_CODE = 'D' ; .END LOAD; /* For the upsert: */ /* (first statement in .DML UPSERTAC) */ /* make sure we have the 50 updates */ .IF &IMP1_UPSERTAC_1 <> 50 THEN .LOGOFF 100; /* ... and 50 inserts */ /* (second statement in .DML UPSERTAC) */ .IF &IMP1_UPSERTAC_2 <> 50 THEN .LOGOFF 101; /* And for the plain update: */ /* (first statement in .DML UPSERTDL) */ /* we should have 10 of these. */ .IF &IMP1_UPSERTDL_1 <> 10 THEN .LOGOFF 102; .LOGOFF;