Files
mip/Data/BulkLoad/EFT/Nominations/plsql/cg$bur_gtt_spreadsheet.trg

119 lines
7.1 KiB
Plaintext

CREATE OR REPLACE TRIGGER EFT_NOM.cg$BUR_GTT_SPREADSHEET
BEFORE UPDATE ON GTT_SPREADSHEET FOR EACH ROW
DECLARE
cg$rec cg$GTT_SPREADSHEET.cg$row_type;
cg$ind cg$GTT_SPREADSHEET.cg$ind_type;
cg$old_rec cg$GTT_SPREADSHEET.cg$row_type;
BEGIN
-- Application_logic Pre-Before-Update-row <<Start>>
-- Application_logic Pre-Before-Update-row << End >>
-- Load cg$rec/cg$ind values from new
cg$rec.SPREADSHEET_ID := :new.SPREADSHEET_ID;
cg$ind.SPREADSHEET_ID := (:new.SPREADSHEET_ID IS NULL AND :old.SPREADSHEET_ID IS NOT NULL )
OR (:new.SPREADSHEET_ID IS NOT NULL AND :old.SPREADSHEET_ID IS NULL)
OR NOT(:new.SPREADSHEET_ID = :old.SPREADSHEET_ID) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).SPREADSHEET_ID := :old.SPREADSHEET_ID;
cg$rec.X_AXIS := :new.X_AXIS;
cg$ind.X_AXIS := (:new.X_AXIS IS NULL AND :old.X_AXIS IS NOT NULL )
OR (:new.X_AXIS IS NOT NULL AND :old.X_AXIS IS NULL)
OR NOT(:new.X_AXIS = :old.X_AXIS) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).X_AXIS := :old.X_AXIS;
cg$rec.Y_AXIS := :new.Y_AXIS;
cg$ind.Y_AXIS := (:new.Y_AXIS IS NULL AND :old.Y_AXIS IS NOT NULL )
OR (:new.Y_AXIS IS NOT NULL AND :old.Y_AXIS IS NULL)
OR NOT(:new.Y_AXIS = :old.Y_AXIS) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).Y_AXIS := :old.Y_AXIS;
cg$rec.CELL_VALUE := :new.CELL_VALUE;
cg$ind.CELL_VALUE := (:new.CELL_VALUE IS NULL AND :old.CELL_VALUE IS NOT NULL )
OR (:new.CELL_VALUE IS NOT NULL AND :old.CELL_VALUE IS NULL)
OR NOT(:new.CELL_VALUE = :old.CELL_VALUE) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_VALUE := :old.CELL_VALUE;
cg$rec.CELL_DATATYPE := :new.CELL_DATATYPE;
cg$ind.CELL_DATATYPE := (:new.CELL_DATATYPE IS NULL AND :old.CELL_DATATYPE IS NOT NULL )
OR (:new.CELL_DATATYPE IS NOT NULL AND :old.CELL_DATATYPE IS NULL)
OR NOT(:new.CELL_DATATYPE = :old.CELL_DATATYPE) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_DATATYPE := :old.CELL_DATATYPE;
cg$rec.CELL_FORMAT_MASK := :new.CELL_FORMAT_MASK;
cg$ind.CELL_FORMAT_MASK := (:new.CELL_FORMAT_MASK IS NULL AND :old.CELL_FORMAT_MASK IS NOT NULL )
OR (:new.CELL_FORMAT_MASK IS NOT NULL AND :old.CELL_FORMAT_MASK IS NULL)
OR NOT(:new.CELL_FORMAT_MASK = :old.CELL_FORMAT_MASK) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_FORMAT_MASK := :old.CELL_FORMAT_MASK;
cg$rec.CELL_BORDER := :new.CELL_BORDER;
cg$ind.CELL_BORDER := (:new.CELL_BORDER IS NULL AND :old.CELL_BORDER IS NOT NULL )
OR (:new.CELL_BORDER IS NOT NULL AND :old.CELL_BORDER IS NULL)
OR NOT(:new.CELL_BORDER = :old.CELL_BORDER) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_BORDER := :old.CELL_BORDER;
cg$rec.CELL_BACKGROUND := :new.CELL_BACKGROUND;
cg$ind.CELL_BACKGROUND := (:new.CELL_BACKGROUND IS NULL AND :old.CELL_BACKGROUND IS NOT NULL )
OR (:new.CELL_BACKGROUND IS NOT NULL AND :old.CELL_BACKGROUND IS NULL)
OR NOT(:new.CELL_BACKGROUND = :old.CELL_BACKGROUND) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_BACKGROUND := :old.CELL_BACKGROUND;
cg$rec.CELL_MERGE := :new.CELL_MERGE;
cg$ind.CELL_MERGE := (:new.CELL_MERGE IS NULL AND :old.CELL_MERGE IS NOT NULL )
OR (:new.CELL_MERGE IS NOT NULL AND :old.CELL_MERGE IS NULL)
OR NOT(:new.CELL_MERGE = :old.CELL_MERGE) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_MERGE := :old.CELL_MERGE;
cg$rec.CELL_FONT := :new.CELL_FONT;
cg$ind.CELL_FONT := (:new.CELL_FONT IS NULL AND :old.CELL_FONT IS NOT NULL )
OR (:new.CELL_FONT IS NOT NULL AND :old.CELL_FONT IS NULL)
OR NOT(:new.CELL_FONT = :old.CELL_FONT) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_FONT := :old.CELL_FONT;
cg$rec.CELL_FONTSIZE := :new.CELL_FONTSIZE;
cg$ind.CELL_FONTSIZE := (:new.CELL_FONTSIZE IS NULL AND :old.CELL_FONTSIZE IS NOT NULL )
OR (:new.CELL_FONTSIZE IS NOT NULL AND :old.CELL_FONTSIZE IS NULL)
OR NOT(:new.CELL_FONTSIZE = :old.CELL_FONTSIZE) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_FONTSIZE := :old.CELL_FONTSIZE;
cg$rec.CELL_ALIGN := :new.CELL_ALIGN;
cg$ind.CELL_ALIGN := (:new.CELL_ALIGN IS NULL AND :old.CELL_ALIGN IS NOT NULL )
OR (:new.CELL_ALIGN IS NOT NULL AND :old.CELL_ALIGN IS NULL)
OR NOT(:new.CELL_ALIGN = :old.CELL_ALIGN) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_ALIGN := :old.CELL_ALIGN;
cg$rec.COL_WIDTH := :new.COL_WIDTH;
cg$ind.COL_WIDTH := (:new.COL_WIDTH IS NULL AND :old.COL_WIDTH IS NOT NULL )
OR (:new.COL_WIDTH IS NOT NULL AND :old.COL_WIDTH IS NULL)
OR NOT(:new.COL_WIDTH = :old.COL_WIDTH) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).COL_WIDTH := :old.COL_WIDTH;
cg$rec.ROW_HEIGHT := :new.ROW_HEIGHT;
cg$ind.ROW_HEIGHT := (:new.ROW_HEIGHT IS NULL AND :old.ROW_HEIGHT IS NOT NULL )
OR (:new.ROW_HEIGHT IS NOT NULL AND :old.ROW_HEIGHT IS NULL)
OR NOT(:new.ROW_HEIGHT = :old.ROW_HEIGHT) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).ROW_HEIGHT := :old.ROW_HEIGHT;
cg$rec.CELL_WRAP := :new.CELL_WRAP;
cg$ind.CELL_WRAP := (:new.CELL_WRAP IS NULL AND :old.CELL_WRAP IS NOT NULL )
OR (:new.CELL_WRAP IS NOT NULL AND :old.CELL_WRAP IS NULL)
OR NOT(:new.CELL_WRAP = :old.CELL_WRAP) ;
cg$GTT_SPREADSHEET.cg$table(cg$GTT_SPREADSHEET.idx).CELL_WRAP := :old.CELL_WRAP;
cg$GTT_SPREADSHEET.idx := cg$GTT_SPREADSHEET.idx + 1;
if not (cg$GTT_SPREADSHEET.called_from_package) then
cg$GTT_SPREADSHEET.validate_arc(cg$rec);
cg$GTT_SPREADSHEET.validate_domain(cg$rec, cg$ind);
cg$GTT_SPREADSHEET.validate_domain_cascade_update(cg$old_rec);
cg$GTT_SPREADSHEET.upd(cg$rec, cg$ind, FALSE);
cg$GTT_SPREADSHEET.called_from_package := FALSE;
end if;
:new.CELL_VALUE := cg$rec.CELL_VALUE;
:new.CELL_DATATYPE := cg$rec.CELL_DATATYPE;
:new.CELL_FORMAT_MASK := cg$rec.CELL_FORMAT_MASK;
:new.CELL_BORDER := cg$rec.CELL_BORDER;
:new.CELL_BACKGROUND := cg$rec.CELL_BACKGROUND;
:new.CELL_MERGE := cg$rec.CELL_MERGE;
:new.CELL_FONT := cg$rec.CELL_FONT;
:new.CELL_FONTSIZE := cg$rec.CELL_FONTSIZE;
:new.CELL_ALIGN := cg$rec.CELL_ALIGN;
:new.COL_WIDTH := cg$rec.COL_WIDTH;
:new.ROW_HEIGHT := cg$rec.ROW_HEIGHT;
:new.CELL_WRAP := cg$rec.CELL_WRAP;
-- Application_logic Post-Before-Update-row <<Start>>
-- Application_logic Post-Before-Update-row << End >>
END;
/