RP REPORTSERVER
Материал из GedeminWiki
CREATE TABLE rp_reportserver
( id dintkey, computername dtext20 NOT NULL, resultpath dtext255, starttime dtime, endtime dtime, frqdataread dtime, actualreport dinteger DEFAULT 1, unactualreport dinteger DEFAULT 2, ibparams dtext255, localstorage dboolean DEFAULT 1, usedorder dinteger, serverport dintkey DEFAULT 2048, reserved dinteger );
ALTER TABLE rp_reportserver ADD CONSTRAINT rp_pk_reportserver PRIMARY KEY (id);
CREATE UNIQUE INDEX RP_X_REPORTSERVER_NAME ON RP_REPORTSERVER (COMPUTERNAME);
ALTER TABLE rp_reportserver ADD CONSTRAINT rp_chk_reportserver_act CHECK(actualreport <= unactualreport);
ALTER TABLE rp_reportlist ADD CONSTRAINT rp_fk_reportlist_serverkey FOREIGN KEY (serverkey) REFERENCES rp_reportserver(id) ON UPDATE CASCADE ON DELETE SET NULL;
COMMIT;
SET TERM ^ ;
CREATE TRIGGER rp_before_insert_reportserver FOR rp_reportserver BEFORE INSERT POSITION 0 AS BEGIN IF (NEW.id IS NULL) THEN NEW.id = GEN_ID(gd_g_unique, 1) + GEN_ID(gd_g_offset, 0);
IF ((NEW.frqdataread < '1:00:00') OR (NEW.frqdataread IS NULL)) THEN NEW.frqdataread = '1:00:00';
IF (NEW.starttime IS NULL) THEN BEGIN NEW.starttime = '18:00:00'; NEW.endtime = '21:00:00'; END
IF (NEW.endtime IS NULL) THEN NEW.endtime = NEW.starttime + 2; END ^
SET TERM ; ^