1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
|
/******************* PROCEDURES ******************/
SET TERM ^ ;
CREATE PROCEDURE SIMUL_NEW_EQUIPEMENT (
NUM_EQUIPEMENT Integer,
TYPE_EQUIPEMENT Integer )
RETURNS (
NUMERO Integer,
ORDRE Integer,
ORGANE Integer,
DESIGNATION Varchar(13) )
AS
BEGIN SUSPEND; END^
SET TERM ; ^
SET TERM ^ ;
CREATE PROCEDURE SIMUL_NEW_EQUIPEMENT_ENTRETIEN (
NUM_EQUIPEMENT Integer,
TYPE_EQUIPEMENT Integer )
RETURNS (
NUMERO Integer,
ENTRETIEN Integer,
ORGANE Integer,
DESIGNATION_ORGANE Varchar(13),
DESIGNATION_ENTRETIEN Varchar(13) )
AS
BEGIN SUSPEND; END^
SET TERM ; ^
/******************** TABLES **********************/
CREATE TABLE ENTRETIEN_TYPE
(
CODE_TYPE_ENTRETIEN Integer NOT NULL,
CODE_ORGANE Integer NOT NULL,
DESIGNATION Varchar(13),
CONSTRAINT PK_ENTRETIEN_TYPE PRIMARY KEY (CODE_TYPE_ENTRETIEN,CODE_ORGANE)
);
CREATE TABLE EQUIPEMENTS
(
NUM_EQUIPEMENT Integer NOT NULL,
NOM_EQUIPEMENT Varchar(13),
CODE_TYPE_EQUIPEMENT Integer,
CONSTRAINT PK_EQUIPEMENT PRIMARY KEY (NUM_EQUIPEMENT)
);
CREATE TABLE EQUIPEMENT_TYPE
(
CODE_TYPE_EQUIPEMENT Integer NOT NULL,
CODE_ORGANE Integer NOT NULL,
NUM_ORDRE Integer,
DESIGNATION Varchar(13),
CONSTRAINT PK_EQUIPEMENT_TYPE PRIMARY KEY (CODE_TYPE_EQUIPEMENT,CODE_ORGANE)
);
SET TERM ^ ;
ALTER PROCEDURE SIMUL_NEW_EQUIPEMENT (
NUM_EQUIPEMENT Integer,
TYPE_EQUIPEMENT Integer )
RETURNS (
NUMERO Integer,
ORDRE Integer,
ORGANE Integer,
DESIGNATION Varchar(13) )
AS
BEGIN
FOR
SELECT :NUM_EQUIPEMENT,NUM_ORDRE,CODE_ORGANE,DESIGNATION FROM EQUIPEMENT_TYPE
WHERE CODE_TYPE_EQUIPEMENT=:TYPE_EQUIPEMENT
INTO :NUMERO,:ORDRE,:ORGANE,:DESIGNATION
DO SUSPEND;
END^
SET TERM ; ^
SET TERM ^ ;
ALTER PROCEDURE SIMUL_NEW_EQUIPEMENT_ENTRETIEN (
NUM_EQUIPEMENT Integer,
TYPE_EQUIPEMENT Integer )
RETURNS (
NUMERO Integer,
ENTRETIEN Integer,
ORGANE Integer,
DESIGNATION_ORGANE Varchar(13),
DESIGNATION_ENTRETIEN Varchar(13) )
AS
BEGIN
FOR
SELECT :NUM_EQUIPEMENT,ET.CODE_TYPE_ENTRETIEN,OT.CODE_ORGANE,OT.DESIGNATION,ET.DESIGNATION FROM EQUIPEMENT_TYPE OT
INNER JOIN ENTRETIEN_TYPE ET ON OT.CODE_ORGANE=ET.CODE_ORGANE
WHERE CODE_TYPE_EQUIPEMENT=:TYPE_EQUIPEMENT
INTO :NUMERO,:ENTRETIEN,:ORGANE,:DESIGNATION_ORGANE,:DESIGNATION_ENTRETIEN
DO SUSPEND;
END^
SET TERM ; ^ |
Partager